(navigation image)
Home American Libraries | Canadian Libraries | Universal Library | Community Texts | Project Gutenberg | Children's Library | Biodiversity Heritage Library | Additional Collections
Search: Advanced Search
Anonymous User (login or join us)
Upload
See other formats

Full text of "Byte Magazine Volume 04 Number 10 - Genealogy (RESCAN)"

OCTOBER 1979 Volume 4, Number 10 $2.00 in USA/$2.40 in Canada 




/ 



the small systems journal 

A MCGRAW-HILL PUBLICATION 





MC6809 PROCESSOR -20-BIT ADDRESS BUS 
DIRECTLY ADDRESSES UP TO 768K OF RAM 



Performance and capabilities never before possible are now 
available to you in the SWTPC S/09. Computer System. The 
S/09 uses the Motorola MC6809 processor, the most 
powerful 8-bit general purpose MPU available. It features 
more addressing modes than other 8-bit MPU's and an 
optimized consistent instruction set enhanced by powerful 
16-bit instructions. This, plus 24 indexing submodes, 
promote the use of modern programming techniques like 
position independent code, re-entrancy and recursion. 

The 20-bit address bus makes possible direct addressing of 
up to 768K of memory without any slow or clumsy pro- 
cesses such as bank switching. RAM memory is designed 
with independent control and array cards for economical 
expansion of memory. The DMA and the processor boards 
can access memory independently for different tasks. 



Multiuser capability is "built-in". No additional hardware 
is required to operate additional terminals. A dynamic 
memory management system can allocate available RAM in 
as small as 4 K blocks to the various users or tasks. 

The dual-bus motherboard design used in the S/09 makes 
adding I/O ports to the system quick and economical. I/O 
address decoding for all I/O slots is supplied with the sys- 
tem. All serial I/O cards may be quickly programmed to run 
at standard baud rates from 1 10 to 38,400. 

Both multiuser and multitasking/multiuser operating sys- 
tems are available for the S/09. BASIC, PASCAL and an 
Assembler are immediately available. Editor and Debug 
programs are also available for use in system development. 



S/09 complete as shown with 128K bytes of RAM memory, one parallel and two serial I/O ports. . .$2,995.00 
128K memory expansion card $1,995.00 

Circle 356 on inquiry card. 

SOUTHWEST TECHNICAL PRODUCTS CORPORATION 

219 W. RHAPSODY 

SAN ANTONIO, TEXAS 78216 (512) 344-0241 





Low-cost hard disk computers 

are here 

11 megabytes of hard disk and 64 kilobytes of fast RAM in a 

Z80A computer for under $10K. Two floppy drives, too. 

Naturally, it's from Cromemco. 



It's a reality. In Cromemco's new 
Model Z-2H you get all of the above 
and even more. With Cromemco you 
get it all. 

In this new Model Z-2H you get 
not only a large-storage Winchester 
hard disk drive but also two floppy 
disk drives. In the hard disk drive you 
get unprecedented storage capacity 
at this price — 11 megabytes unfor- 
matted. 

You get speed — both in the 4 MHz 
Z80A microprocessor and in the fast 
64K RAM which has a chip access 
time of only 150 nanoseconds. You 
get speed in the computer minimum 
instruction execution time of 1 micro- 
second. You get speed in the hard 
disk transfer rate of 5.6 megabits/sec. 

EXPANDABILITY 

You get expandability, too. The 
high-speed RAM can be expanded to 
512 kilobytes if you wish. 

And the computer has a full 12-slot 
card cage you can use for additional 
RAM and interface cards. 

BROADEST SOFTWARE SUPPORT 

With the Z-2H you also get the 
broadest software support in the 



microcomputer field. Software Cro- 
memco is known for. Software like 
this: 

• Extended BASIC 

• FORTRAN IV 

• RATFOR (RATional FORtran) 

• COBOL 

• Z80 Macro Assembler 

• Word Processing System 

• Data Base Management 

with more coming all the time. 

SMALL, RUGGED, RELIABLE 

With all its features the new Z-2H, 
including its hard disk drive, is still 
housed in just one small cabinet. 




Included in that cabinet, too, is 
Cromemco ruggedness and reliability. 
Cromemco is time-proved. Our 
equipment is a survey winner for 
reliability. Of course, there's Cro- 
memco's all-metal cabinet. Rugged, 
solid. And, there's the heavy-duty 
power supply (30A @ 8V, 15A @ 
+ 18 V, and 15A @ -18V) for cir- 
cuitry you'll sooner or later want to 
plug into those free card slots. 

CALL NOW 

With its high performance and low 
price you KNOW this new Z-2H is 
going to be a smash. Look into it 
right now. Contact your Cromemco 
computer store and get our sales 
literature. Find out when you can 
see it. Many dealers will be showing 
the Z-2H soon — and you'll want to 
be there when they do. 



Hard disk drive at lower left can be inter- 
changed just by sliding out and disconnecting 
plug. Seven free card slots are available. 
Z-2H includes printer interface card. 



PRESENT CROMEMCO USERS 

We've kept you in mind, too. Ask 
about the new Model HDD Disk 
Drive which can combine with your 
present Cromemco computer to give 
you up to 22 megabytes of disk 
storage. 



Circle 80 on inquiry card. 



G 



Cromemco 

incorporated 

280 BERNARDO AVE., MOUNTAIN VIEW, CA 94040 • (415)964-7400 

Tomorrow's computers now 



BYTE October 1979 



Latched 
Outputs 



4 MHz 
Crystal Clock 



On Card 

Voltage 

Regulation 



Parallel 

I/O Port #1 

\ 



Parallel 
I/O Port #2 

/ 



Parallel 
I/O Port #3 

\ 



8KROM 
Capacity 



IK RAM 



RS-232 or 
Current Loop 
I/O Port #4 

L. 




Standard Bus 

for System 

Expandability 



Programmable 
Baud Rate 
UARTwith 

Interval Timers 



4MHzZ-80A 



Completely Buffered 
Bus Interface 



The single card computer 

with the features 
that help you in real life 



COMPLETE COMPUTER 

In this advanced card you get a pro- 
fessional quality computer that meets 
today's engineering needs. And it's one 
that's complete. It lets you be up and 
running fast. All you need is a power 
supply and your ROM software. 

The computer itself is super. Fast 
4 MHz operation. Capacity for 8K bytes 
of ROM (uses 2716 PROMs which can 
be programmed by our new 32K BYTE- 
SAVER® PROM card). There's also 1K of 
on-board static RAM. Further, you get 
straightforward interfacing through an 
RS-232 serial interface with ultra-fast 
speed of up to 76,800 baud — software 
programmable. 

Other features include 24 bits of bi- 
directional parallel I/O and five on- 
board programmable timers. 

Add to that vectored interrupts. 



ENORMOUS EXPANDABILITY 

Besides all these features the Cro- 
memco single card computer gives you 
enormous expandability if you ever need 
it. And it's easy to expand. First, you 
can expand with the new Cromemco 
32K BYTESAVER PROM card mentioned 
above. Then there's Cromemco's broad 
line of S100-bus-compatible memory 
and I/O interface cards. Cards with fea- 
tures such as relay interface, analog 
interface, graphics interface, opto- 
isolator input, and A/D and D/A con- 
version. RAM and ROM cards, too. 




Card Cage 32K BYTESAVER PROM card 



EASY TO USE 

Another convenience that makes the 
Model SCC computer easy to use is our 
Z-80 monitor and 3K Control BASIC (in 
two ROMs). With this optional software 
you're ready to go. The monitor gives 
you 12 commands. The BASIC, with 36 
commands/functions, will directly ac- 
cess I/O ports and memory locations — 
and call machine language subroutines. 

Finally, to simplify things to the ulti- 
mate, we even have convenient card 
cages. Rugged card cages. They hold 
cards firmly. No jiggling out of sockets. 

AVAILABLE NOW/LOW PRICE 

The Cromemco Model SCC is avail- 
able now at a low price of only $450 
factory assembled ($395 kit). 

So act today. Get this high-capability 
computer working for you right away. 



a Cromemco 
incorporated 
Specialists in computers and peripherals 



280 BERNARDO AVE., MOUNTAIN VIEW, CA 94040 • (415) 964-7400 



BYTE October 1979 



Circle 80 on inquiry card. 



m 




i 



In The Oueue 




EITI October 1979 
Volume 4, Number 10 



Foreground 



22 
48 
58 
124 
140 
150 
196 
200 

76 
90 
100 
113 
168 
186 
206 



TRACING YOUR OWN ROOTS by Stan W Merrill 
Genealogical research with a microcomputer 

POWER HELPS ANALYZE ELECTRIC BILLS by Karen 5 Wolfe 
Determine power usage from appliance ratings 

SELF-REFRESHING LED GRAPHICS DISPLAY by Steve Ciarcia 
Add a digital display to your computer system 

INTERFACING THE S-100 BUS WITH THE INTEL 8255 by David L Condra 
Design advice for the person starting out in hardware 

THE XYZ PHENOMENON: Stereoscopic Plotting by Computer by William T Powers 
Three-dimensional simulation using optical devices and computer graphics 

CURVE FITTING WITH YOUR COMPUTER by Fred R Ruckdeschel 
A simplified approach to nonlinear regression 

SPACE GAME by Loring C White 

Develop your reflexes with this fast-moving game 

EASY TO USE HASHING FUNCTION by Don Kinzer 
Random symbol distribution aids recall process 




page 6 



- 



Background 



PICKING UP THE PIECES by Alfred S Baker 
Recovering from disk write errors 

VARIABLES WHOSE VALUES ARE STRINGS byDrWD Maurer 
String variables can be easy to use 

IBM COMPATIBLE DISK DRIVES by Jefferson H Harman 
Floppy disk sectoring rules 

THE TRS-80 SPEAKS by Tim Gargagliano and Kathryn Fons 
Discussion of a vocal output peripheral for the Radio Shack TRS-80 

LOW-LEVEL PROGRAM OPTIMIZATION: Some Illustrative Cases by James Lewis 
How to decrease memory requirements and increase execution speed 

SOME LAWS OF PERSONAL COMPUTING by Dr T G Lewis 
Some unnatural, natural laws 

BUDGET BUILDING ON A BARE BOARD by Dan S Parker 
Building computer systems inexpensively 




Nucleus 




page 140 



Editorial, 6 
Letters, 16 
Technical Forum, 70 
BYTE News, 107 
Event Queue, 162 
Languages Forum, 174 
BYTE's Bits, 192 
BYTE's Bugs, 209 



Clubs and Newsletters Directory, 210 

Book Reviews, 242 

Programming Quickies, 246 

What's New?, 249 

Unclassified Ads, 295 

Reader Service, 296 

BOMB, 296 



Cover Art: Genealogy by Tina Mion 



BYTE is published monthly by BYTE Publications Inc. 70 Main St, Peterborough NH 03458, a wholly-owned subsidiary of McGraw-Hill, Inc. Address all mail except subscriptions 
to above address: phone (603) 924-7217. Address subscriptions, change of address, USPS Form 3579, and fulfillment questions to BYTE Subscriptions, PO Box 590, Martinsville 
NJ 08836. Second class postage paid at Peterborough NH 03458 and at additional mailing offices— USPS Publication No. 102410 (ISSN 0360-5280). Subscriptions are $18 for one 
year, $32 for two years, and $46 for three years in the USA and its possessions. In Canada and Mexico, $20 for one year, $36 for two years, $52 for three years. $32 for one year air 
delivery to Europe. $32 surface delivery elsewhere. Air delivery to selected areas at additional rates upon request. Single copy price is $2 in the USA and its possessions, $2.40 in 
Canada and Mexico, $3.50 in Europe, and $4 elsewhere. Foreign subscriptions and sales should be remitted In United States funds drawn on a US bank. Printed in United States of 
America. 

Address all editorial correspondence to the editor at the above address. Unacceptable manuscripts will be returned if accompanied by sufficient first class postage. Not 
responsible for lost manuscripts or photos. Opinions expressed by the authors are not necessarily those of BYTE. Entire contents copyright © 1979 by BYTE Publications Inc. All 
rights reserved. 

BYTE® is available in microform from University Microfilms International, 300 N Zeeb Rd, Dept PR, Ann Arbor Ml 48106 USA or 18 Bedford Row, Dept PR, London WC1R 4EJ 
ENGLAND. 



Subscription WATS Line: (800) 258-5485 office hours: 



Mon-Thur 8:30 AM - 4:30 PM 
Friday 8:30 AM - Noon 



October 1979 © BYTE Publications Inc 



In This BYTE 




About the Cover 

This month's cover theme 
is provided by an article on 
using one's personal com- 
puter for personal genealogy 
tasks, "Genealogy" by Tina 
Mi on. Taking off on this 
theme, autumn colors, and 
the day of the great pumpkin 
at the end of October, artist 
Tina Mion has created an 
autumnal tree with some 
ghostly leaves reflecting a 
history of science and 
technology. 



iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii 



Putting you in touch with 
yourself and improving family 
relationships are just two of the 
rewards of Tracing Your Own 
Roots. The microcomputer is a 
perfect companion in the search 
for ancestors. Stan W Merrill 
introduces some simple ways to 
compile your genealogy, and 
provides a BASIC program to 
involve your computer in the 
quest. Page 22 



Since your computer is using 
precious (and often high priced) 
electricity, it seems only right 
that it should help analyze your 
electric bill. Karen S Wolfe has 
developed a program called 
Power, and tells us how Power 
Helps Analyze Electric Bills. 
Page 48 



There are a variety of output 
devices which could be added 
to your computer system. One 



such device is an LED display. 
Steve Ciarcia discusses several 
methods of interfacing an LED 
display to a computer, and 
culminates his discussion with a 
Self-Refreshing LED Graphics 
Display. Page 58 



Disks provide much more 
convenient storage than tape. 
When write errors occur, 
however, they can also be much 
more catastrophic. Alfred S 
Baker provides a brief descrip- 
tion of the two main data file 
organizations used on floppy 
disks, and also describes a 
major problem that can occur 
when using one of them. Don't 
give up hope. A program is 
provided which will aid you 
when Picking Up the Pieces. 
Page 76 



At some time almost every 
programmer has wanted to 



write a program containing 
variables whose values are 
strings. Dr W Douglas Maurer 
explores two techniques for im- 
plementing this task in 
Variables Whose Values Are 
Strings. Page 90 



Jefferson H Harman describes 
how IBM Compatible Disk 
Drives should perform. Not all 
manufacturers who say that 
they are IBM compatible mean 
fully compatible. 

Page 100 



The talking computer is now 
within the grasp of personal 
computer users. Tim 
Gargagliano and Kathryn Fons 
discuss the Votrax voice syn- 
thesizer that is available for the 
Radio Shack TRS-80 in The 
TRS-80 Speaks: Using BASIC to 
Drive a Speech Synthesizer. 
Page 113 



The Intel 8255 programmable 
peripheral interface is a large 
scale integration part that 
makes interface designing easy. 
David L Condra gives advice on 
the procedure and includes a 
design in Interfacing the S-100 
Bus With the Intel 8255. 
Page 124 



Using a principle invented 
years ago, simulated three- 
dimensional graphics may be 
produced on a personal com- 
puter equipped with a plotter or 
similar device. William T 
Powers explains the method in 
The XYZ Phenomenon. 
Page 140 



In Curve Fitting With Your 
Computer, Fred R Ruckdeschel 
describes a simplified method 
for obtaining a reasonably 



accurate equation as a "best fit" 
to a collection of data points. 
Page 150 



When working with time- 
critical or memory-critical pro- 
grams, optimization techniques 
are often employed. James 
Lewis discusses some of these in 
his article on Low-level Pro- 
gram Optimization: Some Illu- 
strative Cases. 

Page 168 



What is the "Conservation of 
Agony?" It is one of the rules of 
personal computing proposed 
by Dr T G Lewis in his thought 
provoking article, Some Laws 
of Personal Computing. Read it 
and find out why Dr Lewis sug- 
gests that "software should be 
shared, but hardware should be 
replicated." 

Page 186 



Loring C White describes a 
real-time Space Game which re- 
quires you to maneuver a ship 
within gun sights and then 
destroy the enemy. 
Page 196 



Hashing is a common method 
of handling lists, widely used in 
assemblers and compilers for 
handling the symbol table. In 
this issue Don Kinzer discusses 
an Easy to Use Hashing Func- 
tion for the 6800 micropro- 
cessor. Page 200 



Many companies are offering 
blank S-100 compatible com- 
puter boards. Dan S Parker 
describes the substantial savings 
that can be achieved by popu- 
lating these boards and fol- 
lowing some simple guidelines 
in Budget Building on a Bare 
Board. Page 206 



Publishers 

Virginia Londoner 
Gordon R Williamson 
Associate Publisher 
John E Hayes 
Assistant 
Jill ECallihan 

Editorial Director 
Carl T Helmers Jr 
Executive Editor 
Christopher P Morgan 
Editor in Chief 
Raymond G A Cote 
Senior Book Editor 
Blaise W Liffrck 
Editors 

Richard S Shuford 
Gregg Williams 
Assistant Editors 
Kent Richard 
Bob Braisted 
Editorial Assistants 
Gafe Br/Mon 
Faith Ferry 
New Products Editor 
Clubs, Newsletters 
Charles Freiberg 



Drafting 

Jon Swanson 

Production Director 

Nancy Estle 

Production Editors 

David William Hayward 

Ann Graves 

Faith Hanson 

Warren Williamson 

Robin M Moss 

Anthony J Lockwood 

Art Director 

Ellen Bingham 

Production Art 

Wai Chlu Li 

Christine Dixon 

Holly Carmen LaBossiere 

Deborah Porter 

Typographers 

Cheryl A Hurd 
Debe L Wheeler 
Sherry McCarthy 
Kathy Becker 



Advertising Director 

Patricia E Burgess 
Assistants 
Ruth M Walsh 
Marion Gagnon 
Janet Ames 
Eileen Kindl 
Adv/Prod Coordinator 
Thomas Harvey 
Advertising Billing 
Noreen Bardsley 
Don Bardsley 

Circulation Manager 

Gregory Spltzfaden 
Assistants 
Pamela R Heaslip 
Agnes E Perry 
Melanie Bertoni 
Barbara Ellis 
Dealer Sales 
Ginnie F Boudrieau 
Anne M Baldwin 

Traffic Department 

Mark Sandagata 
Thomas Yanni 



Receptionist 

Jacqueline Earnshaw 

Comptroller 

Kevin Maguire 
Assistant 

Mary E Fluhr 

National Advertising 
Sales Representatives: 

Hajar Associates Inc 

East 

280 Hillside Av 

Needham Heights MA 02194 

(617) 444-3946 

521 Fifth Av 

New York NY 10017 

(212)682-5844 

Midwest 

664 N Michigan Av 

Suite 1010 

Chicago iL 60611 

(312) 337-8008 

West, Southwest 

1000 Elwell Ct 

Suite 227 

Palo Alto CA 94303 

(415) 964-0706/(714) 540-3554 



Officers of McGraw-Hill 
Publications Company: Gordon 
L Jones, President; Group Vice 
Presidents: Daniel A. McMillan, 
James E. Boddorf; Senior Vice 
Presidents: Russell F. Anderson, 
Ralph R, Schulz, Editorial; Vice 
Presidents: James E. Hackett, 
Controller; Thomas H. King, 
Manufacturing; Robert L. 
Leyburn, Circulation; John W. 
Patten, Sales; Edward E. 
Schlrmer, International. 

Officers of the Corporation: 
Harold W. McGraw Jr., President, 
Chief Executive Officer and 
Chairman of the Board; Robert F. 
Landes, Senior Vice President 
and Secretary; Ralph J. Webb, 
Treasurer. 



October 1979 © BYTE Publications Inc 













JUST WRAP Wire-Wrapping 

ex 




U.S.A..FOREIGN 
PATENTS PENDING 



JUST WRAP TOOL WITH ONE 50 FT. ROLL OF WIRE 


COLOR 


PART NO. 


U.S. LIST PRICE 


BLUE 

WHITE 

YELLOW 

RED 


JW1B 
JW-1W 
JW-1Y 
JW1R 


$14.95 
14.95 
14.95 
14.95 


REPLACEMENT ROLL OF WIRE 50 FT. 


BLUE 

WHITE 

YELLOW 

RED 


RJWB 
RJW-W 
RJWY 
RJWR 


$ 2.98 
2.98 
2.98 
2.98 


JUST WRAP-UNWRAPPING TOOL 




JUW 1 $ 3.49 




OK MACHINE & TOOL CORPORATION 3455 CONNER ST., 
BRONX, N.Y. 10475 (212) 994-6600/TELEX 125091 

* MINIMUM BILLING $ 25.00/ADD SHIPPING CHARGE $ 2.00/ NEW YORK CITY/STATE RESIDENTS ADD APPLICABLE TAX. 



Circle 291 on inquiry card. 



BYTE October 1979 5 



Look for 

Shugart drives 

in personal 

computer systems 

made by these 

companies 



Altos Computer Systems 

2378-B Walsh Avenue 
Santa Clara, CA 95050 

Apple Computer 

10260 Bandley Dr. 
Cupertino, CA 95014 

Digital Microsystems Inc. 

(Formerly Digital Systems) 
4448 Piedmont Ave. 
Oakland, CA 94611 

Imsai Mfg. Corporation 

14860 Wicks Blvd. 

San Leandro, CA 94577 

Industrial Micro Systems 

633 West Katella, Suite L 
Orange, CA 92667 

North Star Computer 

2547 9th Street 
Berkeley, CA 94710 

Percom Data 

318 Barnes 
Garland, TX 75042 

Polymorphic Systems 

460 Ward Dr. 

Santa Barbara, CA 93111 

Problem Solver Systems 

20834 Lassen Street 
Chatsworth, CA 91311 

Processor Applications Limited 

2801 E. Valley View Avenue 
West CovinaCA 91792 

SD Sales 

3401 W. Kingsley 
Garland, TX 75040 

Smoke Signal Broadcasting 

6304 Yucca 
Hollywood, CA 90028 

Technico Inc. 

9130 Red Branch Road 
Columbia, MD 21045 

Texas Electronic Instruments 

5636 Etheridge 
Houston, TX 77087 

Thinker Toys 

1201 10th Street 
Berkeley, CA 94710 

Vista Computer Company 

2807 Oregon Court 
Torrance, CA 90503 



Editorial 



^.Shugart 

6 October 1979 © BYTE Publications Inc 



Designing the Logic 
of the System — 
Processor Board Design, 

Part 2: Will the Parts Fit on the Board? 

by Carl Helmers 



This month's editorial is the latest in a series begun last July describing a new 
homebrew 6809 personal computer system. The general backplane design was 
presented last month. This month we describe the processor board. Its ideal 
features would include: 

• 6809 processor (40 pins) and buffers for external signals. 

• 4 K bytes of 2708 read-only memory for systems software. 

• Interrupt flags for lines IO through 17 and peripheral interface adapter 
(PIA) port with its interrupt request (IRQ) output tied to the fast inter- 
rupt request (FIRQ) input of the processor. 

• If it fits, logic for a primary serial terminal port and connector. 

In order to find out whether this is a reasonable allocation of function for 
the 4.5 by 9.0 inch area of 1 card in the system, we must systematically 
estimate the parts required for each of these segments of the logic. The series of 
photographs la through Id show how integrated circuit sockets are used as 
markers in the layout of the board space requirements. Each socket has a 
sticky paper label attached which is marked with its assigned number. Place- 
ment of the socket on an unused prototyping board can be done to help plan 
the layout. 

Processor Logic Requirements 

The processor alone occupies a 40-pin socket, which we will call ICl since it 
is the most important part of the whole computer. In addition, the discrete 
components of the clock crystal's parallel-resonant circuit will conservatively 
require the space equivalent of 1 24-pin socket. The buffers required for the 
data bus are a pair of DM8833 tristate, bidirectional bus buffers. These are 
labeled IC2 and IC3. Three SN74367 tristate drivers provide the buffering for 
the 16 address lines. Two sections of 1 of the address buffer chips remain un- 
used. These circuits are labeled IC4 through IC6. Another SN74367, which 
will be labeled IC7, is required so that 3 of its 6 buffer sections can be used for 
the ENABLE, QENABLE, and RW signals of the backplane. These 7 socket 
positions plus the 1 24-pin dummy for the clock crystal and related discretes 
are shown in position for layout purposes in photo la. 

In order to provide a uniform connection to the backplane bus, every major 
segment of the system will be isolated by a set of bus buffers, such as the 
DM8833 parts which are included in the processor section. For the remainder 
of the logic on the processor board which will interface to the data bus, a pair 
of DM8833 parts labeled IC8 and IC9 will suffice to define a local bus exten- 
sion. This local bus extension will service the 2708 read-only memory, the 
peripheral interface adapter used for interrupt logic, and the asynchronous 
communications interface adapter (ACIA) used for the primary terminal of the 
system. 



it isn't minifloppy. 





Shugart invented the minifloppy in 1976. 
Today there are more than 100,000 of the little drives 
in use. That's because users want the affordable 
random access data storage of the minifloppy. 

Shugart packs years of proven floppy 
drive technology into this tiny package. Up to 110 
kbytes of data storage. Fast random access of 
about one-half second. And high speed data trans- 
fer of 125 kbits per second. Plus sensible, 
maintenance-free features like write protect to 
prevent accidental data loss, an activity light to 
indicate when the drive is selected by your 
computer and a door interlock to protect your 
media from damage. 

Our proprietary read/write head provides 
maximum data interchange margins, and it is 



positioned precisely on the selected track by a 
patented spiral cam actuator. The DC drive motor 
with integral tachometer assures accurate diskette 
rotation and low heat dissipation. A die cast 
aluminum base plate provides a solid foundation 
for the drive. 

At Shugart, technology leadership is more 
than a slogan, it's a commitment. Get reliability 
and value when you invest your money for floppy 
disk storage. Ask for the standard of the industry, 
minifloppy. If it isn't Shugart, it isn't minifloppy. 



Shugart Associates 



435 Oakmead Parkway, Sunnyvale, California 94086 



TM minifloppy is registered trademark of Shugart Associates 



BYTE October 1979 




Photo 1: By using a prototyping board as a matrix, it is easy to mark wire-wrap sockets with logical identification numbers and use 
them as markers in creating a layout of parts for the board. This series of photographs documents the discussion of the main parts of 
the central processor card of the new 6809 homebrew system. 

(a) The first segment of the layout is the processor itself and its crystal timing standard, data bus extension buffers, and address 
buffers. 

(b) The second segment of the layout adds 4 read-only memory circuits and 2 socket positions needed to decode and select the indi- 
vidual 1024 byte segments (10, 11, 12 and 13). 

(c) The third segment of the layout process adds a peripheral port (16) and logic associated with 8 interrupt flags. Miscellaneous 
logic at this stage includes decoding of the address of the parallel port. 

(d) Finally, the logic of the central processor card is completed with the addition of a communications adapter, 25, and associated 
decoding and buffer circuits. 



The next logic item to consider is the read-only 
memory bank. Four 2708 parts will be used to store up to 
4 K (4096) bytes total. This memory bank will contain the 
resident systems software of the machine, including the 
fixed handlers for the 3 different classes of interrupts, the 
power on reset routines, etc. We will thus require 4 
24-pin sockets for these integrated circuits, IC10, ICll, 
IC12 and IC13. In addition to the requirements of the 
read-only memory parts, we also require logic to decode 
the high-order 6 bits of an address and the read signal. 
The read-only memory bank must overlap addresses 
FFFO to FFFF in order to provide the vector addresses for 
interrupts. Thus decoding logic should be provided to 
place this 4 K segment of memory at the upper end of the 
memory address space of the 6809, locations F000 to 
FFFF. Decoding the high-order 4 bits of addressing can be 
done with one half of a 7420 integrated circuit, IC14. The 
active-low output of this 7420, along with the RW signal 
and the next 2 address bits (All and A10) can then be 
decoded by a single 7442 integrated circuit, IC15, to pro- 
duce a 1 of 4 selection for the active-low chip select lines 
of the 2708 read-only memory parts. Photo lb shows the 
tentative layout of the board with the addition of the 
read-only memory parts and the local bus extension buf- 
fers. 

The handling of interrupts in this processor will be pro- 
vided by use of a single 6821 peripheral interface adapter 
which will be used to read a bank of 8 set-reset flip-flops 
found in a pair of SN74279 integrated circuits. The 6821 
called IC16 will require address decoding for its location 



in memory address space. This leads to the problem of 
allocating address space within the whole system, for the 
parts needed to decode an address differ depending upon 
what address is chosen. 

So far, the only address commitment we have made is 
the placement of the read-only memory segment at ad- 
dresses F000 to FFFF so that it overlaps the hardware 
requirements of interrupt vectors at FFFO to FFFF. Let us 
build an address space allocation which takes into ac- 
count some of the future expansion possibilities: 

E000— >FFFF read-only memory (upper 4 K imple- 
mented initially). 

D000->DFFF I/O (input/output) and peripheral ad- 
dresses (sparsely populated). 

0000— > CFFF 52 K main memory space (lower 16 K 
implemented initially). 

The decision to allocate 8 K bytes for read-only 
memory space is a conservative one which allows for the 
addition of up to 4 more 2708 sockets on another board. 
The 4096 byte address space reserved for I/O will be 
more than adequate. The balance of the 64 K address 
space is left to the main memory. 

Within the I/O address space of D000 to DFFF, let us 
arbitrarily decide that all parallel I/O will be via peri- 
pheral interface adapters, and that these parts will be 
located at address D000 and continuing through DOFF. 
Since each 6821 requires 4 address locations for its inter- 
face, this gives a maximum of 64 such parallel ports in the 



8 October 1979 © BYTE Publications Inc 



*f&K 



*>* 



*&** 



IVe seen Lanier, Vydec, 

Xerox, Olivetti, and Wang. 

I've chosen WORDSMITH 

from MICRO DIVERSIONS. 



Congressman Charlie Rose 

Chairman, Policy Group 

on Information and 

Computers 



ax)R£>sroftb 



TEXT EDITOR 



Yes, I'd like to learn more about Wordsmith.™ Send me your information packet. 
Name 



Company. 
Address _ 
City 



. State . 



Zip. 



Micro Diversions, Inc. 

8455-D Tyco Road, 

Vienna, Virginia 22180 

(703) 827-0888 

BYTE October 1979 9 



system. At the same time, thinking ahead, let us allocate 
6850 asynchronous communications adapters to address 
locations D100 through DlFF. This reserves 128 logical 
slots for potential 6850 parts — again far in excess of 
what will actually be implemented. The main reason for 
making these allocations start at even hexadecimal digit 
boundaries (DO and Dl in the high-order) is to simplify 
interpretation of machine code and references to ad- 
dresses in the hand-assembled systems software to be 
created later. We could just as easily have compressed the 
allocations into a contiguous segment of address space 
without holes. 

After this detour into address space allocation, we can 
return to the problem of estimating the parts needed to 
decode the 6821 peripheral interface adpater used for the 
interrupt flag input. First, we note that the decoding of 
the DOxx and Dlxx addresses for the 2 peripherals on this 
board will share common logic for 7 bits of high-order 
information. These 7 bits include 3 which must be logical 
1 and 4 which must be logical 0. Two 8-input 7430 
NAND gates, IC17 and IC18, will be used to form the 
high-order decoding logic, with 1 7404 hex-inverter 
package (IC19) used to invert the 4 bits which must be 
logical 0. An additional 7404 section will be required for 
the DO decode to invert bit line A8. The outputs of the 2 
7430 parts are active-low selections of high-order ad- 
dresses DOxx and Dlxx. 

Returning to the 6821 part, IC16, let us allocate its 
detail addresses as D000 to D003. The 2 register select 
inputs of the circuit will get connected to the low-order 




computer mart 
of new jersey 




(Computer Mart of New Jersey 
501 Route 27 
Iselin, N.J. 08830 
(201)283-0600 



HOURS, 

Open ot 10 am, 

Tuesday through Saturday 



the 

microcomputer 

people® 

THE VITAL 
INGREDIENT: 

EXPERTISE 



Before you buy your new 
microcomputer, chances ore 
you hove a lot of questions. 
Important questions that 
could mean the difference 
between a working system 
and a wasted system. The 
vital ingredient is expertise. 
The microcomputer people at 
Computer Mort ore expert at 
answering your questions 
and helping you put together 
the best system for your 
application. Whether It's for 
business, the home, or the 
laboratory? come see the 
experts at Computer Mort 
of New Jersey. We hove the 
vital ingredient. 



address lines, A0 and Al. We need to verify that all bits, 
A7 through A2, are when these addresses are selected: 
to do this, logic of another 7404 inverter IC20 and a 7430 
8-input NAND gate IC21 is required. The final result is 
the definition of 1 chip select input to the 6821 from the 
high-order address selection of DO and a second chip 
select input from the low-order address selection from 
IC2L 

With its addresses decoded, the 6821 now talks to the 
bus extension of the system, but we have one more item 
to consider: the 74279 interrupt flag chips and pull-up 
resistors. We will assign the numbers IC22 and IC23 to 
the flag registers, and assign the number IC24 to a 16~pin 
socket which will be used to hold 8 resistors which tie the 
8 interrupt lines (10-17) up to + 5 V when no input is pre- 
sent. Photo lc shows a layout of the board after all the 
sockets connected with the interrupt peripheral interface 
adapter have been added, IC16 through IC24. 

The one remaining device to consider is the addition of 
a 6850 asynchronous communications interface adapter 
which we will call IC25. This will be the terminal port 
through which initialization information will be sent in 
an American Standard Code for Information Interchange 
(ASCII) encoded form from the primary computer and 
mass storage device of the multiple processor system. In 
separate tests of the 6809 system, this port can be driven 
by a terminal, since the initialization sequences will use 
standard ASCII characters as opposed to a more compact 
binary form. 

The address decoding for this port was begun in earlier 
considerations. We have a line decoding the Dl address 
of serial ports in the high-order, an output of IC18. With 
an asynchronous communications interface adapter, we 
have to decode 7 out of 8 low-order bits in order to assign 
the necessary 2 addresses. Using addresses D100 and 
D101 for this port, we need a single 7430 8-input NAND 
gate IC26 for the low-order selection. The inverted states 
of address bits A2 through A7 are shared with the 
decoding of the 6821 part discussed earlier, and inversion 
of the Al bit can use a spare section from either the 7420 
IC14 or one of the hex-inverter packages. 

Also required for the serial interface is some form of a 
socket header for a D connector attached to a cable and 
level conversion integrated circuits. Thus IC27 which is 
an MC1488 and IC28 which is an MC1489 provide our 
level conversion. IC29 is a socket devoted to attachment 
of the cable to the D connector. By popping off the plastic 
cover on a wire-wrap socket, such as IC29, it is possible 
to insert a small (#20 gauge) stranded wire into the con- 
tacts of the socket. This wire can then be carefully 
soldered so that no bridges to the next pin occur, or every 
other pin can be assigned to this I/O function where only 
a subset of the 14 or 16 pins is necessary. Photo 2 illus- 
trates this point of fabrication by way of an example. 

There is one minor detail which still remains with 
respect to the communications interface: we need a clock 
which can supply a frequency of 16 times the data rate of 
19,200 bps, or 307.2 kHz. It turns out that given a 5 MHz 
central processor clock source, we come very close to the 
desired data rate by simply dividing by 16 to get 312.50 
kHz. The error in this frequency is 1.7%, with respect to 
the proper clock of 307.20. Will this work? Yes, for the 

Text continued on page 14 



10 October 1979 © BYTE Publications Inc 



Circle 66 on inquiry card. 



Super value 






'111 IUI IV 



e computers 



liUUUilUViHU iiiniuinMuu, 




WH14 Serial Printer 
$895 suggested list 




WH27 Dual Floppy Disk System 
$2595 suggested list 



i § 



^§? 




WH19 Smart Video Terminal 
$995 suggested list 







WH89 All-ln-One 

Computer 

$2295 suggested list 



WH11A 16-bit Computer 
$1895 suggested list 



You get flexible computer systems designed, built and tested to 
serve you in many ways — priced to pay for themselves quickly. 
Choose from 8-bit or 16-bit power, then add the peripherals 
to configure the system that best fits your needs. You get flexi- 
bility, expandability, reliability. 



The WH27 / s disk operating system was developed in conjunc- 
tion with DEC and supports BASIC, FORTRAN and Assembly 
Languages... all available from Heath Data Systems Dealers. 
The disk operating system for the WH89 All-ln-One Computer 
supports MICROSOFT BASIC, MICROSOFT™ FORTRAN and 
Assembly Languages. 



The WH89 All-ln-One Computer includes two Z80 microproc- 
essors, 5V4" floppy, high-resolution CRT terminal, professional 
keyboard and 16K RAM (expandable to 48K) — all in one com- 
pact unit. It's a complete, balanced system ideal for word proc- 
essing or any small business need. 

The powerful 16-bit WH11A Computer (DEC® PDP 11/03 com- 
patible) is designed around the DEC KD11-HA CPU and ac- 
commodates up to 64K bytes of memory. Add the WH27 Dual 
8" Floppy (DEC RX01 compatible) for vast storage capacity and 
immediate access to programs and data. For video output, add 
the WH19 Smart Terminal with professional keyboard, direct 
cursor addressing and eight user programmable keys. The 
WH1 9 is compatible with the DEC VT52 and ANSII Escape Mode. 
The WH11A System is ideal for the complex problems of busi- 
ness and education. 



The WH11A Computer runs all systems and applications soft- 
ware written for the DEC PDP-11 /03 and that includes scores 
of practical programs for business, technical users and educa- 
tion. It also accepts the powerful DIBEX™ Operating System 
which is compatible with Dibol, and all Dibol-based software. 



The people who build Heath Data Systems hardware stand be- 
hind it. Service is available from 55 locations throughout the 
U.S. and at many more locations in Canada and Europe. There's 
always someone nearby. Your investment is protected. 



Heath Data Systems are on display at your nearby Byte Shop, 
Computerland, Heathkit Electronic Center, Microage Dealer or 
other qualified computer store. 



They're available and they're generous. Call (616) 982-3361 for 
details. 



SHEATH 



Isram 



Heath Data Systems, Schlumberger Products Corporation 

Hilltop Road, St. Joseph, M! 49085 

DEC is a registered trademark of Digital Equipment Corporations. 






CP-171 



Circle 99 on inquiry card. 



When you 
set your 

standards 

high, 




Pick 
ADaisy. 

Diablo invented the Daisy Wheel. 
Which is why today, more people 

Eick one of over 100 different Diablo 
)aisy Wheels when they want print 
quality at its finest. 

So, the next time you want to 
set your standards high, pick our daisy 
ana you're sure to look your best. 

Diablo Systems 
XEROX 



Diablo* and Xerox arc registered trademarks of 
XEROX CORPORATION. 




Photo 2: A good technique for interfacing wire-wrap cards with the external world is to 
use a socket as a header. Here is an example of how a 14-pin socket has its top cap being 
popped off (a). Then (b), it is possible to carefully insert small stranded wires which are 
firmly soldered in place and run the wires to the external device. After popping the top, 
it is possible to very carefully remove every other pin in order to space out the termin- 
ations and help eliminate the possibility of a solder bridge. Here we have taken a 14-pin 
socket and wired it with the following pin assignments for an RS-232C female D 
connector: 



RS-232C pin 

1 
2 
3 
4 
5 
7 



to 

< > 1 

< > 3 

< > 5 

< --..-> 7 

< > 8 

< > 10 



Socket header pin 

chassis ground 

output 

input 

request to send 

clear to send 

signal ground 



id 

IC1 

IC2 

IC3 

IC4 

IC5 

IC6 

IC7 

IC8 

IC9 

IC10 

IC11 

IC12 

IC13 

IC14 

IC15 

IC16 

IC17 

IC18 

IC19 

IC20 

IC21 

IC22 

IC23 

IC24 

IC25 

IC26 

IC27 

IC28 

IC29 

IC30 



pins type 



40 
16 
16 
16 
16 
16 
16 
16 
16 
24 
24 
24 
24 
14 
16 
40 
14 
14 
14 
14 
14 
16 
16 
16 
24 
14 
14 
14 
14 
14 



6809 

DM8833 

DM8833 

74367 

74367 

74367 

74367 

DM8833 

DM8833 

2708 

2708 

2708 

2708 

7420 

7442 

6821 

7430 

7430 

7404 

7404 

7430 

74279 

74279 

5 K ohm 

6850 

7430 

MC1488 

MC1489 

7473 



comments 

microprocessor 

tristate bidirectional buffers D0-D3 

tristate bidirectional buffers D4-D7 

tristate buffers A0-A6 

tristate buffers A7-A11 

tristate buffers A12-A15 

tristate buffers ENABLE,QENABLE,RW 

tristate bidirectional buffers D0-D3 local bus extension 

tristate bidirectional buffers D4-D7 local bus extension 

read-only memory, F000-F3FF 

read-only memory, F400-F7FF 

read-only memory, F800-FBFF 

read-only memory, FC00-FFFF 



peripheral interface adpater, D000-D003 interrupt port 
high-order decode select for IC16 
high-order decode select for IC25 



low-order decode fo IC16 

interrupt flag latch, I0-I3 

interrupt flag latch, I4-I7 

resistors for interrupt line pullups 

asynchronous communications adapter, D100-D101 

low-order decode for IC25 

TTL to RS-232C line drivers 

RS-232C to TTL line receivers 

14 pin socket for RS-23 9r cable termination 

divide by 4 for communications clock rate 



Table 1: List of integrated circuits for new 6809. 



12 October 1979 © BYTE Publications Inc 



Tinker, Tailor, Soldier, Sailor . . . 
Doctor, Lawyer . . . the Chieftain's here. 

No matter whether you're a serious 
hobbyist or a serious businessman, the 
Chieftain 6800 microcomputer with ca- 
pabilities that surpass the Z-80 is made 
for you. 

Smoke Signal's quality -packed 
Chieftain I features two 5.25-inch mini- 
floppy drives and Chieftain II fea- 
tures two 8-inch floppy drives. . c 

Bothmicrocomputers ^ * v^ - 
provide 32K static memory, 
two serial I/O ports, a 2 
MHz processor board, a2K 
RAM monitor, a nine-slot 
motherboard with built- 
in baud rate generator 
and gold connectors for 
high reliability. The 
Chieftain's stylish leath- 
er-grained cabinet houses 
the above with its own 
cooling fan and regulated 
power supply. 



Every Chieftain is complete with 
system software and is totally burned-in 
as well as tested to further insure high 
reliability. 

And it's expandable to 64K memory 
with up to 2 megabytes floppy disk 
storage. 

So see your nearest Smoke Signal 
dealer, he'll be glad to show you how to 
get your wampum's worth. Systems 
start at $2,595. 



**+ 



**K 



Send information on your Chieftain 
microcomputer 
□ Send name of nearest dealer 

Name 



Address. 



Company 

,<S <€> Citv 

AV State/Zip 



SMOKE SIGNAL 
BROADCASTING 

31336 Via Colinas. Westlake Village, 
California 91361. (213) 889-9340 



Dealer inquiries invited. 




Hail to the Chieftain 

Smoke Signal Broadcasting, 31336 Via Colinas, Westlake Village, CA 91361, (213) 889-9340 



Circle 328 on inquiry card. 



BYTE October 1979 



13 



Circle 224 on inquiry card. 



Improve TRS-80 

performance 

with new DOS' 

Enjoy the wizardry of yourTRS-80 to its fullest; maximize and 
expand all of its magical capabilities with the new DOS+. Just look at 
the capabilities you can evoke. 

Modifications, corrections, and enhancements to Radio Shack's 
TRSDOS2.1. 

• A Basic REFerence command for variables and numbers. 

• A super-fast machine language RENUM program execu- 
table under BASIC. 

• A built in kevboard-debounce routine. 

• A print screen option under DOS or BASIC to your line printer. 
Simply press JKL keys. 

• New copy commands for backup, allows you to copy from drive 
to drive keeping the same filespec. 

• Execution of DOS commands while in BASIC. 

• New BASIC scrolling and invocation commands and more. 

• Apparat's own SUPERZAP, a Hex dump utility to examine or 
or modify disk or memory locations. 

• Modified EDITOR ASSEMBLER with Disk I/O and new cross 
reference feature. 

• A super-fast machine language DISASSEMBLER program. 

• A LOAD MODULE for transferring machine tapes to disk. 

• Faster disk access. 

• Level I ROM relocated in Level II RAM. 

• The capability of storing and retrieving Level I programs on Disk. 

• An improved DISKDUMP program. 

• A DIRCHECK program to test a directory & list/display the 
contents in alphabetical order with extensions. 

You don't have to pull a rabbit out of a hat . . . Send $99 for the 
Apparat/MTI New DOS+ (on diskette). See all the magic unfold 
before your eyes. 

INTRODUCTORY SPECIAL 
NEW DOS+ and the very Best of Apparat's disk utility programs 
S99.00(a S250.00 value). 40-Track Version S1 10.00. 

To order your diskette of tricks, write or call one of our dealers. 



/MCROCO/VPUER 

TECHNOLOGY 
INCORPORATED 



2080 South Grand Ave. 

Santa Ana. CA 92705 

(714) 979-9923 



A' 



6000 E. Evans Ave.. Bldg. 2 
Denver, CO 80222 
(303) 758-7275 



cl^mApporot, Inc. 




Text continued from page 10: 

total time of 1 character, the error in the last bit sent is 
what counts. A character is a sequence of 11 bit times; 1 
bit has a width of 1/llth or 9.1% of the total time in- 
volved. The worst case of the last stop bit in the 11 bit se- 
quence (start bit, 8 data bits, 2 stop bits) will have the full 
timing error of 1.7% of the total period for 1 character. 
We could probably get away with as much as a 5% to 6 % 
error in the frequency of the data rate clocks. 

Thus by providing a 2-bit divider in the form of a 7473 
circuit IC30, we get the clock needed for the communica- 
tions circuit from the crystal controlled 1.25 MHz 
ENABLE output of the processor. It turns out that the 
serendipity of the 5 MHz junk box crystals really worked 
in planning this system. If it is necessary to use a 4 MHz 
crystal for the system because the 6809 will not run 25% 
faster than its specification then use of a divisor of 13 in- 
stead of 16 produces a data rate of 307.7 kHz which is 
only 0.2% off the desired 307.2 kHz rate. In this case of a 
4 MHz source, a 74193 would be used instead of a 7473 
for IC30, and input to the 74193 would be taken from the 
tank circuit through a relatively high-impedance buffer. 

This completes the preliminary consideration of the 
central processor card design. As can be seen in photo Id, 
the 30 integrated circuits sockets required for this central 
processor design fit the space available on the proto- 
typing card with room to spare. Table 1 summarizes the 
integrated circuit and socket list as it stands now. This 
verbal discussion ahead of drawing a diagram of the cir- 
cuit is an experiment. In past designs, I have jumped right 
in to the drawing of a logic diagram. The actual circuit 
diagram has not been drawn as of this writing (June 18 
1979), and 1 or 2 integrated circuits may be necessary to 
provide an additional random logic gate or inverter 
beyond those anticipated in this discussion. 

In the next installment of this series on building a 
homebrew general purpose computer for use as a com- 
munications controller, we shall start with a verification 
of these design considerations as an actual diagram, then 
proceed to discuss construction and testing of this first 
card in the system. As emphasized in the earlier com- 
ments in this series, the timing of the publication of these 
notes depends upon the amount of spare time I have 
available to devote to this activity. The intent of this 
series is to show our readers how simple it is to assemble 
homebrew systems out of standard parts, using design 
information which is available in various publications 
put out by semiconductor manufacturers. ■ 



Articles Policy 

BYTE is continually seeking quality manuscripts written by indi- 
viduals who are applying personal computer systems, designing 
such systems, or who have knowledge which will prove useful to 
our readers. For a more formal description of procedures and 
requirements, potential authors should send a large (9 by 12 inch, 
30.5 by 22.8 cm), self-addressed envelope, with 28 cents US postage 
affixed, to BYTE Author's Guide, 70 Main St, Peterborough NH 
03458. 

Articles which are accepted are purchased with a rate of up to $50 
per magazine page, based on technical quality and suitability for 
BYTE's readership. Each month, the authors of the two leading 
articles in the reader poll (BYTE's Ongoing Monitor Box or 
"BOMB") are presented with bonus checks of $100 and $50. Unso- 
licited materials should be accompanied by full name and address, 
as well as return postage. 



14 October 1979 © BYTE Publications Inc 



Circle 335 on inquiry card. 



SSM "BLUE BOARDS" 



The Standard of Value 




CPU Board 



^p»»^p 



If you're looking for 

outstanding value in 

S-100 boards you cant 

afford to overlook the "Blue 

Boards" from SSM. The best 

combination of design, quality 

and price available anywhere. Innovative designs i 

that feature versatility and reliable performance. 

Quality backed by a strong warranty. And prices 

that wont let you down. 

But value goes beyond the boards themselves. 
It's reflected in the company that stands behind 
them. And SSM has been known for unparalleled 
customer service since the beginning of the 
personal computing industry. 

With one of the broadest product lines in the 

S-100 marketplace, it's likely that SSM has the 

board you need. So, if you're looking for value, ask 

for the "Blue Boards!' They're available at over our product line includes cpu, video 

ISOcomputerstoresnationwideandabroad. KffiSK 




Available 
assembled 
or as kits. 




■^"■J 2116 Walsh Avenue 
mm fit Santa Clara. CA 95C 



Santa Clara, CA 95050 (408) 246-2707 



I/O, RAM, EPROM, EPROM Programmer, Music, 
Prototyping, Terminator, Extender and Mother boards. 

Send for our free brochure and find out why SSM has 
become the favorite of discerning Hobbyists and OEMs. 



We used to be Solid State Music. We still make the blue boards. 



Circle 73 on inquiry card. 



SENSATION! 



You have been reading about our astounding 

Pascal MICROENGINE™* CPU that executes 

Pascal 13x faster than an LSI-11 and 3x 

faster than a PDP11-34. Your orders show 

it! That is our Model X-90. 

Now meet another sensation in our X-pert 

Systems'" configuration. CRT Model X- 

920. 

"Trademark Western Digital Corporation 



DISPLAY/EDIT TERMINAL 
Model X-920 



$968* 

S 856 (Without 18 function keys) 



STANDARD FEATURES (partial list) 

• Microprocessor controlled 

• Serial RS232C and 20 ma current loop 

• 10 baud rates— 75 to 19.200 

• 24 lines x 80 characters 

• 96 ASCII displayable characters 

• Upper and lower case 

• 12 x 10 character resolution 

• Dual intensity display 

• Clear full intensity data only 

• Programmable reverse video 

• Programmable underline 

• 105 keys with alpha lock 

• 14 key numeric pad with decimal 

• 16 special function keys 

• 8 edit function keys 

• 2 block transmission keys 

• Self test mode 

• Protect mode 

• Block mode 

• 80storable tabbing 

• Insert delete character and line 

• Scrolling 

• Addressable cursor 

• A host of other features. including cursor controls 
and remote commands such as clear to nulls, 
spaces, end of line, end of screen: set hi.lo.zero 
intensity: set blink: etc. 

• Optional screen print & 2nd page memory 



For our system or for yours, in commercial, 

technical, educational or personal applications. 

the Computex X-920 is unmatched in its price 

class. 

Coming soon is our Model X-8000. This high 

performance 16-bit CPU, using the Z-8000. 

addresses 8M bytes of memory directly! 



All features of the Hazeltine 1400 and ADM-3A 

Plus: 128 ASCII characters . . , 

7 x 10 matrix. . Reverse 

video , . Print key . . . 

Shif tlock . , . Transparent 

mode... Backspace. . , 

Tabbing ..Integrated 

numeric pad 




$ 799* 

List price $ 956* 
PERKIN-ELMER (Model 550) 



Off the shelf delivery now on the Model X-920 
and P-E Model 550. Same day shipping on all 
orders with certified cash payment Specify 
shipping and add 40 lb cost Any difference 
refunded. A S25 connecting cable free with 
every CRT ordered before December 1 . 
Customer satisfaction is guaranteed. Full refund 
with the return of any product within 10 days. 
Service contracts available Systems catalog 51. 
Pascal MICROENGINE'" owners manual 519.95 
(postpaid) 

*LIMITEDTIME cash price. 10°/odownguarantees 
priority. IL residents add 5% sales tax. Master 
Charge and VISA accepted. 



(312) 684-3183 

COMPUTEX 

"The Computer Expert s"X 
5710 Drexel Avenue 
Chicago. IL 60637 



Letters 



ULTRASONIC TRANSDUCERS 
LOCATED 

Just a short note to ask for a helping 
hand and to let you know that your 
articles in BYTE are read and enjoyed. 

In your article "Building a Computer 
Controlled Security System for Your 
Home"(March 1979 BYTE, pagel50) you 
showed a circuit for generation and 
detection of ultrasonic signals. Would 
you be so kind as to note a company or 
two that I could contact for transducers? 
I have an application for ultrasonics and 
need a little help in knowing where to 
write. 

Thank you for your help, and again I 
enjoy your articles. 

Tom Yocom, WA1RTD 
21 Bayberry Rd 
Acton MA 01720 

Author Ciarcia Replies: 

The particular transducers used in the 
March article are from MASS A in 
Hingham MA, I obtained them through 
Bullet Electronics, POB 401244E 
Garland, TX 75040, (214) 278-3553. I 
suggest calling them to determine price 
and availability. Since I usually purchase 
components in large quantities long 
before I actually need them for an arti- 
cle, I hesitate to quote a price and a 
definite source. The MASS A units had 
an output frequency of 23 kHz. 



LONG DISTANCE 
COMMUNICATION 

I saw your article in the May issue of 
BYTE ("Communicate on a Light Beam," 
page 32) and became very interested. I 
have an application which requires sen- 
ding data up to a kilometer at speeds 
from 2000 to 9600 characters per second 
(cps). Your descriptions of the fiber 
optic cable and the light-emitting diode 
(LED) transmission circuits seem to be 
ideal, if they are cost effective. 

Could you give more details of the 
distances which the circuits can drive 
and the addresses of the suppliers of the 
fiber optic components? 

R H Fields 
1 Wythegate 
Riverside Rd 
Staines, Middlesex 
United Kingdom 



Author Ciarcia Replies: 

Realize, of course, that the circuits 
presented, while possibly usable in com- 
mercial applications, are presented more 
to introduce the reader to the concept of 
fiber optic communications than solve 
any particular application problem. 
Their usability in a 1 kilometer data link 
depends upon more than just the elec- 
tronic parameters of the circuit. The 
laser probably can drive such a length, 
but cable losses and mechanical/ optical 
connections are going to be an impor- 
tant factor in any success. 

When you speak of 9600 cps that is 
approximately 100 k bits per second 
(bps) and is a reasonable transmission 
rate. However, response time of the 
receiver electronics is going to be much 
more critical than a 10 k bit rate. Given 
the length of cable as 1 kilometer, I 
would caution you that a certain inten- 
sity must be maintained at the ouput to 
achieve this response. 

Rather than try to reinvent the wheel 
or try to second-guess the technical 
people who really know the field, I 
think you would be better off purchas- 
ing a commercial system. The following 
is a list of American companies which 
deal in fiber optics. I am sure they will 
have a cost-effective solution for you: 



Corning Glass Works 

Telecommunications Dept 

Corning, NY 14830 

(607)974-8812 

Dupont Co 

Plastic Products and Resins Dept 

Wilmington, DE 19898 

(302) 774-7850 

Fiberoptic Cable Corp 

POB 1492 

Framingham, MA 01701 

(617)875-5530 

Galileo Electro-Optics Corp 

Galileo Park 

Sturbridge, MA 01618 

(617)347-9191 

General Cable Corp 

500 W Putnam Ave 

Greenwich, CT 06830 

(203)661-0100 

ITT 

Electro-Optical Products Div 

Roanoke, VA 24019 

(703) 563-0371 

Quartz Products Corp 

688 Somerset St 

Plainfield, NJ 07061 

(201) 757-4545 

Times Fiber Communications Inc 

358 Hall Ave 

Wallingford CT 06492 

(203) 265-2361 

Valtec Corp 

Electro Fiberoptics Div 

West Boylston, MA 01583 

(617)835-6083 

For further descriptive information on 
the use of fiber optics I suggest you refer 
to the January 5, 1978 issue of EDN 
magazine and an article titled "Designer's 
Guide to Fiber Optics. " 



Text continued on page 18 



16 October 1979 © BYTE Publications Inc 



North Star Horizon- 

COMPUTER WITH CLASS 



The North Star Horizon computer can be found everywhere 
computers are used: business, engineering, home — even the 
classroom. Low cost, performance, reliability and software 
availability are the obvious reasons for Horizon's popularity 
But, when a college bookstore orders our BASIC manuals, 
we know we have done the job from A to Z. 

Don't take our word for it. Read what these instructors have to 
say about the North Star Horizon: 

"We bought a Horizon not only for its reliability record, 
but also because the North Star diskette format is the industry 
standard for software exchange. The Horizon is the first computer 
we have bought that came on-line as soon as we plugged it in, 
and it has been running ever since!" 

— Melvin Davidson, Western Washington University, 
Bellingham, Washington 

"After I gave a V2 hour demonstration of the Horizon 
to our students, the sign-ups for next term's class in BASIC 
jumped from 18 to 72." 

- Harold Nay, Pleasant Hill HS, Pleasant Hill, California 



"With our Horizon we brought 130 kids from knowing 
nothing about computers to the point of writing their own Pascal 
programs. I also use it to keep track of over 900 student files, 
including a weekly updated report card and attendance figures." 

— Armando Picciotto, Kennedy HS, Richmond, California 
"The Horizon is the best computer I could find for my class. 

It has an almost unlimited amount of software to choose from. 
And the dual diskette drives mean that we don't have to waste 
valuable classroom time loading programs, as with computers 
using cassette drives." 

— Gary Montante, Ygnacio Valley HS, Walnut Creek, Calif. 
See the Horizon at your local North Star dealer. 

Circle 



Tie 285 on inquiry card. jfif 

NorthStaf^ 

North Star Computers 

1440 Fourth Street 

Berkeley, Ca 94710 

(415) 527-6950 TWX/TELEX 910-366-7001 







0. 







0^. 





Text continued: 



Phone Company Maps... 

In reference to your article on map 
generation ("Computer Generated 
Maps," May 1979 BYTE, page 10) the 
telephone industry has gridded the US 
with a system of vertical and horizontal 
coordinators ("V & H"s). A discrete set 
of four digit "V & H"s for virtually 
every city, town and village is listed 
Federal Communications Commission 
tariffs. 

"V & H" coordinates offer a quick and 
simple way to plot maps of American 
locations. For example, the program 
listing, at right, written for an 



Apple II, uses "V & H" coordinates for 
72 border towns to sketch an outline 
map of the US. 

Joseph P Garber 
36 Sutton Place S 
New York NY 10022 



64KB MICROPROCESSOR 
MEMORIES 



S-100 -$750.00 
LSI ■ $750.00 



rJlVlVVVli 




CI-S100 64K x 8 



-liiiiiii 
Iiiiiiiu 
'■MM ■■■ 

Iiiiiiiu 



CI-1103 32K x 16 




iMnnnMiiw 
CI-6800 64K x 8 




*MMJ~~-3 t 



CI-8080 64K x 8 



• SBC 80/10 -$750.00 

• 6800 -$750.00 

CI-S100 — 64K x 8 on a single board. 
Plugs directly into the IMSAI, MITS, 
TDL, SOL and most other S-100 Bus 
computers. No wait states even with 
Z80 at 4Mhz. Addressable in 4K in- 
crements. Power requirement 6 watts. 
Price $750.00. 

CI-1103 — 8K words to 32K words in a 
single option slot. Plugs directly into 
LSI 11, LSI 11/2, H11 & PDP 1103. 
Addressable in 2K increments up to 
1 28K. 8K x 1 6 $390.00. 32K x 16 $750.00 
qty. one. 

CI-6800 — 16KB to 64KB on a single 
board. Plugs directly into Motorola's 
EXORcisor and compatible with the 
evaluation modules. Addressable in 
4K increments up to 64K. 16KB $390.00. 
64KB $750.00. 

CI-8080 — 16KB to 64KB on single 
board. Plugs directly into Intel's MDS 
800 and SBC 80/10. Addressable in 
4K increments up to 64K. 16KB $390.00. 
64KB $750.00 



€ 



Tested and burned-in. Full year warranty. 

Chrislin Industries, Inc. 

Computer Products Division 

31352 Via Colinas • Westlake Village, CA 91361 • 213-991-2254 



481 
403 



4m'5 
4«39 
4H3 

4::£i 




REN : E:EGIN MRP ROUTINE 
HGR£ : HCOLOR= 3 
C'EF FN VFCfO = I NT <<R - 3 
30Q> s 35 >: C'EF FN HF-: R > = 

INT <•:* - 9£5@ > s - 35> 
REflC' 00, ZZ 
HLOLOR= 7 
FOR I = 1 TO 72 
RERD XX. PR 
HPLOT FN HF< ZZ > . FN VFv QO '> TO 

FN HFc;pR>, FN VFOvO 

i.-'iTi = :>:;:>:; : zz = pp 

NEXT I 

DRTfl 3303 , 1 57? ,3884 , 1 645 , 43 

19,2063, 46*3 ,,£ 153 

DRTH 475? , 2039 < 5855 , 2373 , 539 

5 . 2440 ,5643 , 26c."? 1 

■"4 1 2886, 5367,2813, 53 
63 , 30y5 , 50t' 1,31 4M 
DRTR 5027 , 344 1 .5437 , 3490 , 56 
95, 3303, 60 f 7^,3354 
OhTh 5782,3539 



03,3661,4362,3472 

CjHlfl 5M79,3y73,5113,40-'.7,52 

9 1,4237, 5:^52 4 4530 

DRTH 5006 ,4*46 , 5074 ,4371,51 

26^5151,5475,6133 

Ofl I R 526 1 , 7642 , 6036 , 89^5 t 6 

V-I, ■* 233,6666,^1 

Oi 

DRTR 7432 < 9 153 , 7532 ,9113, 79 

n5 9087 . 32^-6 . S9k2 

[>H TR w4 9 2 , k7 1 9 , 9 1 40 , 3293 ,9 

b" 2 7 , 792 ,94B2 S <' 6 

DRTR 9335 - 7 1 7 1 ,9466 , 6 1 32 , 92 

32,5655,9505.4370 

DRTR '-'406,4433, 933c' 1 3766 ,3 



OU 

DRTR 



9096, 



60O 
610 
6£0 
t.30 



64,2425,8236,2431 

06 ■ 
[■n 



Rf R 8097 , 2097 1 309 1 , 1 8 1 8 , 80 

6^1271,8203,1206 

R i R 8447 , ©840 , 8439 , 543 , 83 

1 , 0527 , 78b:3 , 0946 

GTO 7C/C (OOfl TiA-? 1 ---^T -1 el iZ 



DRfR 7565,1280.704 

21,1119,6339 ,1012 

DR T H 58 1 5 , 1 1 'Sh' 50 73 , 1 34 



4,tt 
47 
$3 , 1 302 , 4 1 



5 BYTE CONVERSION 

The "5 Byte Hexadecimal to ASCII 
Converter" described by Ashwin L 
Doshi (June 1979 BYTE, page 208) will 
work on the 8080, but not on the 8085 
or Z80. As Doshi points out, the routine 
depends on the carry and the auxiliary 
carry being reset at the start of the 
routine. In practice, the conversion 
routine is preceded by an instruction 
ANI 0FH to mask off the upper 4 bits 
so that only the remaining 4 bits of the 
byte to be converted are passed to the 
routine. In both the 8085 and the Z80, 
however, the logical AND instruction 
sets this flag. The well-known 6-byte 
routine functions properly on both the 
8085 and Z80. 

Robert G Durnal 

POB68 

Junior VW 26275 



INFORMATION WANTED 

I have a Heath microcomputer that I 
am using for market research. I am try- 
ing to locate a company where I can buy 
the weekly closing prices of the New 
York Stock Exchange and the Commo- 
dity exchanges on audio cassette. 

I hope one of your readers can help 
me. Thank you. 

Earl O Williams 

280 Henderson St Apt 7J 

Jersey City NJ 07302B 



18 October 1979 © BYTE Publications Inc 



Circle 47 on inquiry card. 



I 



Li 



OUTPERFORMS 
THEM ALL! 




■ 



•■■ 




CHECK THESE FEATURES... 

• 80 or 120 columns (software 

selectable) 

• Double width printing 

• Plain paper, pin feed 

• 125 CPS, 70 lines per minute 

• 9x7 dot matrix 

• Vertical format unit 

• 96-character ASCII (upper and 

lower case) 

• Adjustable forms width 

• Parallel, serial (RS-232), and 

IEEE-488 interfaces available 

How can we make such a claim when 
the Microtek Printer looks exactly like 
the ones advertised by other 
manufacturers? We're glad you asked. 
We'd like to clear up the confusion. 
A large Japanese hardware manufac- 
turer recently introduced a good, low 
cost print mechanism into the U.S. 
market. They also announced a fully 
packaged printer using this mechanism 
to the OEM market. Then another 
company started to sell this printer to 
hobby, home and small business 
computer users. 

We took a long hard look at this printer 
and liked what we saw. The mechanism 
was reliable. The case was beautifully 
designed. What we didn't care for was 
the 5x7 dot matrix format. We also 
believed some form of condensed 
character set and a few other alterations 
in software would be significant 
improvements. 

So we bought the mechanism and the 
case. But we designed our own logic 
board and wrote new software. The 
Microtek Printer. Looks the same as the 
others but really isn't. It's better. It's one 
giant step ahead of its competition. 

Circle 209 on inquiry card. 



3? 



CHECK THIS CHART... 



FEATURES 


Microtek 
MT-80 


Anadex 
DP-8QQ0 


Centronics 

779-2 

Radio Shack 

26-1152) 


Centronics 

730-1 

(Radio Shack 

26-1154) 


Super Brain 
LP-80 


Dot matrix 
format 


9x7 


9x7 


5x7 


7x7 


5x7 


Characters 
per line 


80/120 


80 


80/132 


80 


80 


96 char ASCII 

(upper + 

lower case) 


Yes 


Yes 


No 


Yes 


Yes 


Throughput 
rate 


70 Ipm 


84 Ipm 


21 Ipm 


21 Ipm 


63 Ipm 


VFU 


Standard 


Standard 


N/A 


N/A 


Standard 


Bi-directional 
printing? 


Yes 


Yes 


No 


No 


Yes 


Built-in 
self test? 


Yes 


No 


No 


No 


Yes 


Unit price 


$750* 


$995 


$1,350-1,559 


$970-995 


$985 



♦Parallel interface 



Comparison data from manufacturer's 
current (August 79) literature. 



NOW CHECK THIS COUPON... 



□ 



Send me more information 
MICROTEK, lnc.,7844 Convoy Court, San Diego, CA 92111 

(714) 278-0633 



1 



Name 



Address 



City 



State 



Zip 



Phone 



Dealer inquiries invited. 



BYTE October 1979 19 



HOWTO 



\ 






New 1.2 megabyte 
quad-density disk. $1545. 

Now you can afford to put a 
million bytes of memory in your 
S-1 00 system. 

Introducing DISCUS 2+2™ 
full-size quad-density floppy disk 
system by Morrow. DISCUS 2+2™ 
gives you 1.2 megabytes per disk- 
ette (600K bytes of double-density 
data per side). And it's all address- 
able as easily as main memory with 
the system's exclusive BASIC-V™ 
virtual disk BASIC software. 

Best of all, DISCUS 2+2™comes 
complete, assembled, and ready 
to run for just $1 545. Included in the 
system price are an S-1 00 con- 
troller, factory- mounted full-size 
disk drive, a complete library of 
pre-interfaced software, even cables 
and connectors. 

But you don't have to get your 
first million in one big megabyte. 
Morrow's DISCUS/2D™ single-side 
double-density floppy disk system 
gives you 600K per full-size diskette 
for just $1149, complete and 
assembled. And when you wantto 
expand to a full megabyte, just plug 
in a second d rive . . . both the hard- 
ware and software are expandable. 

And if economy is a real concern, 
you can still get started on your 
million with Morrow's DISCUS I™ 
250K single-density disc system. 
It's delivered complete and 
assembled for just $995 . . . and 
will accept up to 3 more drives. 

All three Morrow disk systems 
meet the Proposed IEEE S-1 00 
standard and are compatible with 
2MHz, 4 MHz and 5 MHz S-1 00 
systems. A dual-drive cabinet is 
available as an option with any 
density you choose. 

Why set your goals low and slow 
with a mini-floppy system? Get 
started on your first million with a 
DISCUS™ full-size system by 
Morrow. See your local computer 
shop. Or write Thinker Toys™ 
5221 Central, Richmond, California 
94804. Or call (415) 524-2101, 
weekdays 10-5 (Pacific Time). 

\?/ Morrow Designs 

Thinker TYjys M 




Tracing Your Own Roots 



Stan W Merrill 

Computer Resource Associates 

914 E 61st St 

Chicago IL 60637 



Tracing your own roots satisfies an 
intangible craving that many people 
have — a craving to understand your 
place in a heritage that was developed 
by people who are perhaps more like 
yourself (at least genetically) than 
any other people on Earth. The pro- 
cess involves untangling puzzles that 
tax the most intelligent imagination. 
Relationships must be deciphered 
from other people's memories and 
from bits and pieces of written 
records that form a fragile and 
sometimes inadequate link between 
you and your ancestors. It is a natural 
application for a microcomputer. 

Doing Genealogy 

How does a person go about trac- 
ing his or her roots? There are several 
steps that make the process simpler. 
Some of these steps are enumerated in 
the following section. 

Step 1. The best place to start 
searching for your family is, of 
course, at home. You should jot 
down on paper or key into the com- 
puter all the things that you know (or 
think you know) about your 
ancestry, then look for family 
records, such as Bibles and cor- 

About the Author 

Stan W Merrill is a partner in Computer 
Resource Associates, a Chicago based con- 
sulting firm which he recently helped found. 
Between times, he is writing his doctoral disser- 
tation in sociology at the University of 
Chicago. Genealogy is a traditional activity in 
his family, and some of his lines have been 
traced back several centuries. 



respondence. Frequently these will 
contain useful leads that make it 
easier to document facts later on. 
Next, contact family members: 
parents, siblings, the proverbial 
great-great-aunt, and anyone else 
who might possess a piece of family 
information. It is useful to quiz these 
relatives about parents, events, dates, 
and places, beginning with those peo- 
ple who are closest to you in time, 
and working backward. 

If other family members are in- 
terested, it may be possible to 
establish a family organization that 
will hold occasional family reunions 
and share the fun and work of search- 
ing out ancestors. Such an organiza- 
tion already exists in many families. 

It is not unusual for such contact 
with family members to plunge the 
new genealogist into the first mean- 
ingful contacts with some relatives. 
Such contact draws people into 
warmer and closer relationship that 
is, in itself, a substantial reward for 
the effort invested in genealogy. 

Step 2. The memories collected 
from family members cannot usually 
provide adequate proof of the events 
recalled, since the human capacity to 
remember information accurately is 
imperfect. Memories merely provide 
hints for where to look for birth, mar- 
riage, and death certificates (known 
as vital records), or for entries in 
church and civil record books that 
will document the information. These 
documents provide official informa- 
tion about particular ancestors, and 



also give possible clues about other 
ancestors in the chain. 

Several sources exist for finding 
these documents. Often ancestors will 
have resided in a single locality for 
several generations. A letter to the 
clerk of the political jurisdiction 
(county, province, etc) where they 
lived, or to the parish cleric in coun- 
tries where churches kept the vital 
records, will often elicit copies of 
desirable information. These places 
can be visited in person as well. 

A number of institutions collect 
and preserve genealogical records on 
a national or international basis, and 
make these records available to the 
public. The institution with what is 
undoubtedly the most complete col- 
lection is: 

The Genealogical Society 
Church of Jesus Christ 
of Latter Day Saints 
50 E North Temple 
Salt Lake City UT 84102 

You do not have to belong to the 
Church of Latter Day Saints in order 
to use their genealogical data sources. 
While the main library is in Utah, 
branch libraries are scattered 
throughout the United States and 
much of the world. The telephone 
number of a unit of the church can be 
found in most telephone directories, 
and a phone call will produce infor- 
mation about the location of the 
nearest branch library. 

Other excellent sources of 
genealogical data include: 



22 October 1979 © BYTE Publications Inc 



"Our reputation rests on digits, 

decimal points , and details* 

We wouldn't trust them to anything less 

than Scotch Brand Data Cartridges? 




Bill Birkett, Vice President, 
Trade Graphics, Inc*, 
Livonia, Michigan 

The unique design of a data 
cartridge provides great reliability, 
high storage capacity and long 
tape life. And where could you 
possibly get better data cartridges 
than Scotch Brand, made by 
3M, the people who invented the 
data cartridge system itself? 

3M controls every step in manu- 
facturing. Top quality magnetic 
tape and precision components are 
part of every Scotch Data Cartridge. 
Over twenty-five years of service 
to the computer industry assure 
you of the utmost reliability. 

Scotch Data Cartridges are 
available in miniature DC 100A, 
the standard-size DC 300A and 
now, an extra-length DC 300XL 
with 50% more storage capacity. 
They are compatible with most 
cartridge systems including 
Hewlett-Packard, IBM, NCR, 
Tektronix and TI. 

To find out where you can find 
Scotch Data Cartridges or virtually 
any other data recording medium, 
call toll-free: 800-328-1300. 
(In Minnesota, call collect: 
612-736-9625.) Ask for the 
Data Recording Products Division. 

If it's worth remembering, 

it's worth Scotch 

Data Recording Products. 




3M 



Circle 368 on inquiry card. 



BYTE October 1979 23 



Central Reference Div 
National Archives 
Washington DC 20408 

Library of Congress 
Washington DC 20540 

Newberry Library 
60 W Walton St 
Chicago IL 60610 

New York Public Library 
5th Av and 42nd St 
New York NY 10018 

This list is not exhaustive, but 
writing or visiting one of these places 
will help anybody get started. It is 
also useful to talk to a reference 
librarian at a local library. They will 
often know of nearby sources of 
genealogical information. 

Step 3. It is fairly easy and pleasant 
for most people to trace back their 
ancestry 3 or 4 generations. But when 
a line migrates across an ocean, or 
when records become less complete 
(as they invariably do when going 
further back in time), ingenuity 
comes into play. Passenger lists, cen- 



suses, and tax lists may provide clues 
to the identity of ancestors who can- 
not be located in vital records. A 
knowledge of history is acquired 
while searching for clues about mass 
movements in which ancestors may 
have participated. 

This is where the computer comes 
in. To know what is missing becomes 
increasingly difficult as the number of 
ancestors for whom you have infor- 
mation increases. It scarcely needs to 
be said that computerizing the 
records makes it much simpler to 
keep track of the data. 

Still more helpful is the use of the 
computer to solve puzzles. Suppose, 
for instance, that you cannot find any 
more family members in a certain 
line, but you notice from the output 
data that a related family line has 
moved to a new locality at about the 
same time. You have been given a 
hint that the first family line may also 
have migrated there, and you can 
begin to search for information in the 
records of that particular place. 

Using the Program 

You need not be a genealogical 



expert to utilize the program that is 
listed here. Item 1 on the program's 
menu (table 1) automatically prompts 
the user for the most important infor- 
mation about each ancestor. (See 
listing 1.) This information includes 
birth date and place, parentage, mar- 
riages, and date and place of death. 
The program asks for the sources of 
information too, so that the inevi- 
table need to check entries will be 
easier. 

To list the information for any or 
all of the names that have been 
entered into the file, you can use item 
2 on the menu. An example of a 
listing for one individual is shown in 
listing 2. A person can be located by 
name or by number. Because it is 
possible for there to be more than one 
individual in the file with the same 
name, you should make certain that 
the person listed is the correct one. 
The program as now written will not 
search beyond the first occurrence of 
a name unless the all option is 
selected. When all is typed in 
response to the prompt, the 
subroutine will read sequentially 
through all of the records in the file. 



f 



% 



WE HAVE IT 



What is IT? The New Pascal Microeng ine 

JI features the new Western Digital 16 Bit Pascal Microengine CPU, 64K 
RAM, (2) RS232 ports, (2) parallel ports & (2) REMEX RFD 4000 double 
sided double density disk drives. JT will directly execute Pascal 
generated P-Code (the only CPU on the market designed to directly 
execute a high level language), & JT will run compiled BASIC. Wait, 
that's not all — .!I normally sells for $4,495, but you can have JI for 
$4,195. Dealer prices are much lower. Plus we have peripherals and soft- 
ware galore. Call us about JI at (803) 756-6000. 



THE PASCAL 
MICROENGINE 

FROM THE COMPANY 

THAT GIVES YOU 

TOMORROW'S INVENTIONS 

TODAY 




• •••••• \mUkm\mMm 



TECHNOLOGY SYSTEMS SOGTH 

\ Suites 9 & 10 Henry Building, Loris, S.C. 29569. 
fete. 



24 



October 1979 © BYTE Publications Inc 



Circle 369 on inquiry card. 



CCS has everything to expand your Apple II 



Friendly Frankie's roadside 
Apple II stand has plenty to whet 
your appetite for expansion. So, if 
you're ready to have your Apple 1 1 
computer interface with the outside 
world, wheel around to Frankie's 
stand today. 

Expand to your heart's con- 
tent with our full range of delicious 



accessories, including: prom 
modules, asynchronous and 
synchronous serial interfaces, 
arithmetic processors, program- 
mable timers, parallel interfaces, 
A/D converters, and Apple II 
compatible boards galore. 

Let Frankie connect your 
Apple II to the rest of the world 



faster, and for a lot less bucks. 

For all the mouth-watering 
details, contact our northern 
California headquarters or your 
local roadside computer store. If 
Frankie's out, ask for Dennis or 
Jerry. They'll be glad to help you. 

*Apple II is a registered 
trademark of Apple Computers, Inc. 



/ t_ 






FRIENDLY FRANK/f'5 

FRESH APPLES 






A/D 



®|$! 






'I 



V>R0M 

MODULE 

St*"** 

^\SV-* 





Circle 38 on inquiry card 



C 



ems 



California Compute ? Syst 

309 Laurel wood R6ad, |janta Clara, GA 9505(1 (408) S 

So N^ooy Goek Away Mad. 



L M512£ 



1 *3S3Nte 









f BYTE October 1979 25 



In addition to listing file entries, 
menu item 2 will revise entries. If a 
revision is made because new infor- 
mation has been found, simply enter 
the number (or name) of the person 
for whom the revisions are to be 
made, and then select the type of 
information that is to be updated. 
The revision subroutines are docu- 
ment oriented, that is, each asks for 
all of the information that is com- 
monly found on a particular vital 
record. For example, the marriage 
revision subroutine requests the date 
of marriage, the spouse's name, the 
place where the marriage was per- 
formed, and the source from which 
the information was obtained, 



because all of these items are found 
on a marriage certificate. The docu- 
ment orientation of the revision 
routines suits the genealogist's situa- 
tion well, for the need to update 
information about an ancestor will 
usually arise from the discovery of a 
new document. 

If you wish to revise an error that 
was made while entering information 
the first time, you should first finish 
entering all of the information 
requested by the program. The com- 
puter will then prompt for changes by 
going back to the original menu. 

Item 2 will also generate blank 
data-collection forms which can be 
used for gathering information to 



enter into the computer. This is done 
by putting a special symbol in the 
data fields for every relevant name, 



PLEASE ENTER THE NUMBER OF THE 
PROCEDURE YOU WANT: 

(1) ENTER INFORMATION 

(2) READ OR REVISE INFORMATION 

(3) LIST PEDIGREE 

(4) END THE PROGRAM 



Table 1: The genealogy program prompts 
the user for a specific use. The user can 
enter and modify information, list a per- 
son's pedigree for 4 generations, or finish 
the program use. 



TASK: ADD GENEALOGICAL INFORMATION TO THE FILE 

WHAT IS THE PERSON'S NAME? 
(USE MAIDEN NAME WHERE APPROPRIATE) 
? THOMAS MERRILL 



TO PREVENT THOMAS MERRILL 
FROM BEING CONFUSED WITH SOMEONE ELSE 
WHO MAY HAVE A SIMILAR NAME, HE/SHE 
SHOULD HAVE A UNIQUE NUMBER IN THIS FILE. 

HAS A NUMBER ALREADY BEEN ASSIGNED? 
? YES 

PLEASE ENTER THE NUMBER: 
? 14 

I WILL ASK YOU FOR SOME DATES. 
PLEASE ENTER DATES IN THE FOLLOWING 
FORMAT: DAY MONTH YEAR 

EXAMPLE: 23 APRIL 1949 
IF YOU DON'T KNOW A DATE, ENTER 'UNKNOWN'. 



BORN (DA MO YR)? 



WHEN WAS THOMAS MERRILL 
? 20 NOVEMBER 1715 

WHERE WAS HE/SHE RORN? 
? HARTFORD CONNECTICUT 



WHAT WAS THOMAS MERRILL 'S FATHER'S NAME? 

(IF YOU DON'T KNOW, ENTER 'UNKNOWN') 
? ABEL MERRILL 



DOES ABEL MERRILL ALREADY HAVE A NUMBER? 

? Y 

PLEASE ENTER HIS NUMBER: 
? 15 

WHAT WAS THOMAS MERRILL 'S MOTHER'S NAME? 

(USE MAIDEN NAME IF POSSIBLE. IF YOU 
DON'T KNOW HER NAME, ENTER 'UNKNOWN') 
? MEHITABLE EASTON 



DOES SHE ALREADY HAVE A NUMBER? 
? Y 

PLEASE ENTER HER NUMBER: 
? 16 



WHERE DID YOU GET THE INFORMATION ABOUT 
THOMAS MERRILL 'S BIRTH AND PARENTAGE? 

(BE SPECIFIC) 
? BIRTH CERTIFICATE 13347A 



HOW MANY TIMES WAS THOMAS MERRILL MARRIED? 

(ENTER A DIGIT FROM TO 99) 
? 1 



ENTER A DATE FOR MARRIAGE #1 (DA MO YR) 
? 5 OCTOBER 1755 



WHAT WAS THE SPOUSE'S FULL NAME? 
(USE MAIDEN NAME WHERE APPLICABLE) 
? MARTHA WOOD 



WHERE WERE THEY MARRIED? 
? HARTFORD CONNECTICUT 



WHERE DID YOU GET THE INFORMATION ABOUT MARRIAGE ft 1 ? 
? MARRIAGE CERTIFICATE 3445 B 



WHEN DID THOMAS MERRILL DIE (DA MO YR)? 

(IF YOU DON'T KNOW, ENTER 'UNKNOWN'. 
IF HE OR SHE IS STILL LIVING, ENTER 'ALIVE'.) 
? 16 JUNE 1814 



WHERE DID HE/SHE DIE? 
? HARTFORD CONNECTICUT 



WHERE DID YOU GET THE INFORMATION ABOUT HIS/HER DEATH? 
? DEATH CERTIFICATE 3988 C 



Listing 1: When adding information to the file, the program prompts you for every input and describes the form that it should take. If 
an error is made during input, the rest of the information should be completed and the revise option chosen from the main menu upon 
completion. 



26 October 1979 © BYTE Publications Inc 



MOVING DATA AT A SNAILS PACE 
BECAUSE YOU'RE FLOPPY BOUND? 

Let Corvus Systems put you back in the race! 




?r=s : : 



» 



ft 



1 



■ For TRS-80t, Applet (including Apple 

Pascal), S-100 Bus— and now LSI-11. 

Fully compatible hardware/software. 

10-million byte disk: IMI-7710. 

Proven Winchester technology. 
* Z-80 based Corvus disk controller. 

Comprehensive disk diagnostics. 

Up to 4 disks per system. 

System $5350, add-on disk $2990. 

Corvus offers a complete systems solution 
to the mass storage problem of micro 
computers. In a package smaller than a 
briefcase, we provide an intelligent 
controller, disk, and personality module. 
Call or write today for additional information. 
Get up to speed with Corvus. 



Now! Corvus speaks Apple™ Pascal™! 







tTRS-80 is a registered trademark of Radio Shack, a Tandy Co. 
tAppie is a registered trademark of APPLEComputers, Inc. 



CORVUS SYSTEMS, Inc. 



900 S. Winchester Boulevard 
San Jose, California 95128 
408/246-0461 



Circle 83 on inquiry card. 



BYTE October 1979 27 









TASK: READ AND REVISE FILE INFORMATION 



DO YOU WISH TO SEARCH BY 'NAME' OR BY 'NUMBER'? 
? NUMBER 

PLEASE ENTER THE NUMBER: 
? 14 



GENEALOCICAL INFORMATION FOR: 
THOMAS MERRILL 
NUMBER: 14 

BORN: 20 NOVEMBER 1715 
BIRTHPLACE: HARTFORD CONNECTICUT 



(NUMBER: 15 ) 
(NUMBER: 16 ) 



FATHER: ABEL MERRILL 
MOTHER: MEHITABLE EASTON 

MARRIED TO: 
MARTHA WOOD 

DATE: 5 OCTOBER 175 5 

PLACE: HARTFORD CONNECTICUT 



DEATH DATE: 16 JUNE 1814 

PLACE OF DEATH: HARTFORD CONNECTICUT 



RECORDS SOURCE: 

BIRTH AND PARENTAGE: BIRTH CERTIFICATE 13347A 
MARRIAGE if 1 : MARRIAGE CERTIFICATE 3445 B 
DEATH: DEATH CERTIFICATE 3988 C 



DO YOU WISH TO CHANGE ANYTHING? 
? NO 



WOULD YOU CARE TO EXAMINE ANOTHER RECORD? 
? YES 

Listing 2: A file may be found and read by either name or 
number. When the data has been reviewed, the user may 
update the file using the revision command. 



TASK: LIST PEDIGREE 



WHOSE PEDIGREE WOULD YOU LIKE PRINTED? 
(ENTER HIS/HER NUMBER, PLEASE) 
? 14 



THE SYMBOL 'F' STANDS FOR 'FATHER' 
THE SYMBOL 'M' STANDS FOR 'MOTHER' 



PEDIGREE FOR PERSON if 14 



THOMAS MERRILL 

F:ABEL MERRILL 
M:MEHITABLE EASTON 

FF:JOHN MERRILL 
FM: SARAH WATSON 



(NUMBER: 15 ) 
(NUMBER: 16 ) 



MF:JOHN EASTON 

MM: ELIZABETH (EASTON) 

FFF: NATHANIEL MERRILL 
FFM: SUSANNAH WOLTERTON 

FMF:JOHN WATSON 
FMM: MARGARET SMITH 

MFF: JOSEPH EASTON 
MFM: HANNAH (EASTON) 

MMF: UN KNOWN 
MMM: UN KNOWN 



(NUMBER: 17 ) 

(NUMBER: 18 ) 

(NUMBER: 19 ) 

(NUMBER: 20 ) 



(NUMBER: 21 ) 

(NUMBER: 22 ) 

(NUMTiER: 25 ) 

(NUMBER: 26 ) 

(NUMBER: 2 7 ) 

(NUMBER: 28 ) 



(NUMBER: 
(NUMBER: 



) 

o ) 



Listing 3: When a pedigree is requested, a persons ancestry is traced 
back 4 generations. If the ancestry is unknown, then this is stated. 



place, date, and source in item 1. (A 
question mark (?) makes a good sym- 
bol for this purpose. The number 
can be used when the computer 
prompts for a number for the indi- 
vidual and his parents. The number 1 
is a good response when the computer 
asks how many times the individual 
was married.) Either the special sym- 
bol or the number assigned by the 
program to the special form is then 
used in item 2. The number or symbol 
can be requested repeatedly to obtain 
as many copies of the form as are 
desired. 

The program assigns a unique 
number to each ancestor so that it can 
differentiate between people with the 
same name. (My own genealogy con- 
tains cases where as many as 3 indi- 
viduals have identical names.) Uti- 



lizing these numbers, the program 
will link up any person in the file with 
4 generations of his or her ancestors, 
thus forming a pedigree chart. An 
example of such a pedigree is shown 
in listing 3. It is not necessary that 
everyone in the file be related. The 
program can tell who is related to 
whom on the basis of the number 
assigned to each person. 

Other Ideas 

The genealogy program in listing 4 
prompts you to enter important 
identifying information about your 
ancestors. It will print back this infor- 
mation and allow revisions. It will 
also print a 4 generation pedigree for 
any person in the file, but its 
usefulness need not stop there: your 
own imagination can provide per- 



sonal additions. You might wish to 
expand the pedigree section to print 
out more generations, or write a 
subroutine which will sort persons of 
the file into nuclear family groups. 
You might choose to add a subroutine 
to calculate age of death for each 
ancestor and average age of death for 
subgroups of ancestors. This could 
provide insight into the impact of 
historical conditions on longevity in 
your family, and could even be 
applied toward figuring out your own 
life expectancy. Along these same 
lines, you could add a prompt for 
cause of death — an item usually 
found on a death certificate. Inspec- 
tion of the cause of death for a large 
number of ancestors might even alert 
you to special diseases that occur 
regularly in your family. 



28 October 1979 © BYTE Publications Inc 





New easy-to-use educational module. 

"four best ticket to the microprocessor world. 

Ideal for teaching.\fourself . Or others. 



TFs new TM990/189 University 
Module is a stand-alone learning 
lab. Fully assembled and designed 
for maximum hands-on experience. 
To ease and simplify learning and 
teaching. 

Outstanding features include 
powerful 16-bit microprocessor 
with easy-to-learn, easy-to-use 
minicomputer instruction set; 45- 
key alphanumeric keyboard and 
ten-digit seven-segment display 
for easy assembly-language pro- 
gramming; ROM-resident software 
including system monitor for pro- 
gram debug and symbolic assem- 
bler; audio cassette interface; 
easy-to-add EIA and TTY inter- 
face; lK-byte RAM expandable to 
2K; 4K-byte ROM and 2K-byte 
expansion EPROM socket; 16-bit 



programmable I/O controller; user 
addressable LEDs, and sound 
indicator. 

A 570-page tutorial text accom- 
panies the module. It is a detailed 
guide for self -paced learning. Or 
the basis for a three-hour univer- 
sity course. Chapters include an 




overview of microprocessors; pro- 
gramming exercises; assembly 
language; memory systems; I/O 
concepts and designs; software 
engineering; product development; 
a variety of lab experiments, and 
much more. Also with the module: 
a 300-page user's guide. 

The University Module complete 
with tutorial text and user's guide 
is only $299.00. 

Order your University Module 
from your authorized TI distrib- 
utor. For more information, write 
Texas Instruments Incorporated, 
P.O. Box 1443, M/S 6404, Houston, 
Texas 77001. 



TM990/519 power supply is available for $65.00. 



TEXAS INSTRUMENTS 

MOVING AHEAD 
IN MICROCOMPUTERS 




ip 



Circle 372 on inquiry card. 

© 1979 Texas Instruments Incorporated 



Texas Instruments 



INCORPORATED 



85577 



Our MacroFloppy™ 
goes twice the distance. 

For $ 695. 




Introducing the Micropenis MacroFloppy™: 1041 and :1042 disk drive sub- 
systems. Forthe S-100/8080/Z-80 bus. Packing 100% more capacity into a 
5%-inch floppy disk than anyone else. 143K bytes, to be exact. For as little 
as $695. 

The MacroFloppy:1041 comes with the Micropolis Mod I floppy packaged 
inside a protective enclosure (without power supply). And includes an S-100 
controller. Interconnect cable. Micropolis BASIC User's Manual. A diskette con- 
taining Micropolis BASIC, and a compatible DOS with assembler and editor. 
The :1041 is even designed to be used either on your desk top, or to be inte- 
grated right into your S-100 chassis. 

The MacroFloppy:1042 comes with everything the :1041 has, and more. 
Such as d.c. regulators, its own line voltage power supply, and, to top it off, 
a striking cover. Making it look right at home just about anywhere. 

Both MacroFloppy systems are fully assembled, tested, burned-in, and 
tested again. For zero start-up pain, and long term reliability. They're also 
backed up by our famous Micropolis factory warranty 

And both systems are priced just right. $695 forthe MacroFloppy: 1041 
and $795 for the MacroFloppy:1042. 

You really couldn't ask for anything more. 

At Micropolis, we have more bytes in store for you. 

For a descriptive brochure, in the U.S. call or write Micropolis 
Corporation, 7959 Deering Avenue, Canoga Park, California 91304. Phone 
(213) 703-1121. 

Or better yet, see your local dealer. 



MICROPOLIS" 

More bytes in store for you. 



Listing 4: The genealogical program source listing in BASIC Plus 2. Only the input and 
output statements will need to be changed to adapt this program to most microcom- 
puters with disk storage. 



00010 PRINT TAB(19); 'GENEALOGICAL PROGRAM' 
00020 

WRITTEN BY STAN W. MERRILL 

OF COMPUTER RESOURCE ASSOCIATES 
91 A EAST SIXTY-FIRST STREET 
CHICAGO, ILLINOIS 60637 
(312) 363-6183 



ALLOCATE FILE AND COUNT NUMBER OF CASES ALREADY IN IT 
SET COUNTERS 



00030 

00040 

00050 

00060 

00070 

00080 

00090 

00100 

00110 

00120 PRINT\PRINT\PRINT 

00130 ON ERROR GO TO 350 

00140 MAP GENDATA B,C$(3)=16,D$=25,E$«16,F, G$(3)=25,H$»20, J$=16,K$ (3)=20 

,L$=20,Q$=25,S$-25,R,T,D1$=40,D2$(3)*40,D3$=40 

00150 OPEN 'GEN' AS FILE #1, SEQUENTIAL VARIABLE, MAP GENDATA, INVALID 

130 

00160 LET 12-0 

00170 LET 13-0 I 13 COUNTS NUMBER OF CASES IN FILE 

00180 ! 

00190 PRINT "WOULD YOU LIKE A LIST OF THE NAMES CURRENTLY" 

00200 PRINT "IN THE FILE?" 

00210 INPUT Wl$ 

00220 PRINT 

00230 IF W1$='Y' THEN PRINT "THE FILE CONTAINS THE FOLLOWING NAMES:" 

00240 IF W1$«='YES' THEN PRINT "THE FILE CONTAINS THE FOLLOWING NAMES:" 

002 50 PRINT 

00260 GET #1 

00270 LET 13=13+1 

00280 IF W1$-'Y' THEN PRINT D$,B 

00290 IF W1$='YES' THEN PRINT D$,B 

Listing 4 continued on next page 



This genealogy program was 
written on a DEC system 2050 at 
the University of Chicago, using 
DECs BASIC Plus 2. The file I/O 
(input /out put) under BASIC Plus 
2 differs from that in many other 
BASICs and may require some 
revision when running the pro- 
gram under another interpreter or 
compiler. For instance, the MAP 
statement, which BASIC Plus 2 
uses to allocate space for variables, 
is unnecessary in some versions of 
BASIC. 

To make the program smaller, 
reduce the number of prompts. 
Another possibility is to break the 
program into smaller programs, 
each of which can be loaded into 
memory independently as needed. 
The 3 major subroutines (labeled 
"procedure subroutines" in listing 
4) are almost self -sufficient , that is, 
they can be entered as separate 
programs with only slight 
modification. However, procedure 
subroutine 2 calls several revision 
subroutines (lines 4170 thru 4850) 
which should be included with it, if 
it is made into a separate program. 



30 October 1979 © BYTE Publications Inc 



MetaFloppy™ 

The Micropolis MetaFloppy™ gives you more than four times the capacity of 
anyone else's 5%-inch floppy. Because it uses 77 tracks instead of the usual 35. 

The field-proven MetaFloppy with thousands of units delivered, comes 
in a complete family of models. And, like our MacroFloppy™ family of disk 
drives, MetaFloppy is designed for the S-100/8080/Z-80 bus. 

For maximum capacity, choose our new MetaFloppy:1054 system. Which 
actually provides you with more than a million bytes of reliable on-line stor- 
age. For less money than you'd believe possible. 

The MetaFloppy: 1054 comes complete with four drives in dual config- 
uration. A controller: Power supply. Chassis. Enclosure. All cabling. A new BASIC 
software package. And a DOS with assembler and editor: There's even a built- 
in Autoload ROM to eliminate tiresome button pushing. 

If that's more storage than you need right now, try our 
MetaFloppy:1053, with 630,000 bytes on-line. Or our Meta- 
Floppy:1043, with 315,000 bytes on-line. Either way, you can 
expand to over a million bytes on-line in easy stages, when you 
need to. Or want to. 

In other words, if your application keeps growing, we've got 
you covered. With MetaFloppy. 

The system that goes beyond the floppy. 

For a descriptive brochure, in the U.S. call or write Micropolis 
Corporation, 7959 Deering Avenue, Canoga Park, California 91304 
Phone (213) 703-1121. 

Or better yet, see your local dealer. 

MICROPOLIS" 

More bytes in store for you. 



goes 
beyond 




Another use for the information in 
the file is for studying naming tradi- 
tions. Do certain names appear over 
and over in the family? Are surnames 
commonly used for given or middle 
names? Perhaps the file contains ideas 
for naming your own children (pets, 
etc). Studying names can help in the 
understanding of implicit family 
values and the transfer of power and 
prestige in the family. 

You may wish to add a subroutine 
for collecting biographical anecdotes 
about ancestors. This is a real pro- 
gramming challenge, given the 
limited string handling capabilities of 
most versions of BASIC. 

Conclusion 

Genealogy matches you and your 
computer against exciting and worth- 
while puzzles that challenge the best 
abilities of both man and machine. Its 
rewards include a closer relationship 
with your family, increased know- 
ledge of history gleaned from a search 
for facts that may have affected 
ancestral migration and marriage pat- 
terns, and a self-knowledge derived 
from examination of people like 
yourself. 



Listing 4 continued: 



00300 
00310 
00320 
00330 
00340 
00350 
00360 
00370 
00380 
00390 
00400 
00410 
00420 
00430 
00440 
00450 
00460 
004 70 
00480 
00490 
00500 
00510 
00520 
00530 
00540 
00550 
00560 
00570 
00580 
00590 
APPEN 
00600 
00610 



IF B>12 THEN LET I2=B 
IF R>12 THEN LET I2-R 
IF T>12 THEN LET I2=T 
GO TO 260 
RESUME 390 



MENU OF PROCEDURES 



i 

I 

PRINT\PRINT\PRINT 

PRINT 'PLEASE ENTER THE NUMBER OF THE PROCEDURE' 

PRINT 'YOU WANT: ' 

PRINT 

PRINT TAB(10);'(1) ENTER INFORMATION' 

PRINT TAB(10);'(2) READ OR REVISE INFORMATION' 

PRINT TAB(10);'(3) LIST PEDIGREE' 

PRINT TAB (10); '(4) END THE PROGRAM' 

INPUT A 



! ENTER INFORMATION 

1READ THE INFORMATION 

1LIST PEDIGREE 

! END PROGRAM 

! INPUT ERROR— TRY AGAIN 



IF A-l THEN GOSUB 570 

IF A«2 THEN GOSUB 2000 

IF A«3 THEN GOSUB 3090 

IF A«4 THEN GO TO 4900 

GO TO 390 
i 

! PROCEDURE SUBROUTINE #1 

I BIRTH CERTIFICATE INFORMATION 

i 

PRINT\PRINT 

PRINT 'TASK: ADD GENEALOGICAL INFORMATION TO THE FILE' 
OPEN 'GEN' FOR INPUT AS FILE #1, SEQUENTIAL VARIABLE, ACCESS 
D, MAP GENDATA, INVALID 130 
PRINT\PRINT 
PRINT "WHAT IS THE PERSON'S NAME?" 

Listing 4 continued on page 32 



October 1979 © BYTE Publications Inc 31 



Up\bur 
Output. 



TEMPOS 



MULTI-TASKING! 

The TEMPOS Operating System is quickly becoming the standard in Multi- 
User, Multi-Tasking operating systems for 8080 and Z80 microcomputers. 
Multi-Tasking means that, even with only one user at one terminal, more 
than one job can be running on the system simultaneously! If you have ever 
had to go get a cup of coffee while you wait for your computer to print list- 
ings, you know the advantages of a system that will handle one job while 
you are working on another. TEMPOS is a true time sharing system, and 
the maximum number of jobs is limited only by your memory. 

MULTI-USER! 

Want to shareyour computerwithanother user? With TEMPOS all it takes 
is another terminal ... up to seven interactive terminals are allowed! And 
with Re-Entrant programs, each user does not need a complete copy in 
memory. We include three Re-Entrant programs (the OPUS/THREE High- 
Level Language, the TEXTED Text Editor, and FILES, a disc file 
directory/manipulator) or write your own! In addition, we include an 
assembler, a linking loader, over a half-dozen other utility programs and 
over 60 system subroutines, callable by the programmer! 

PROVEN! 

With TEMPOS, you get a package that has been tested in our facilities for 
over two years, and in the field at over 50 different installations. We have 
used this system ourselves for everything from writing high-level languages 
to developing applications to text editing to games. TEMPOS is undoubted- 
ly the most flexible software tool on the market . . . and you can have it for 
much less than you think! 

COMPATIBLE! 

TEMPOS is available for many different systems; pre-written drivers may 
include yours. Or, using our interactive System Generation Routine, you 
can add your own. Call or write now for our free catalog and the name of a 
dealer near you. The TEMPOS Operating System is available for $787.00, 
the manual set (price may be credited toward the purchase of the TEMPOS 
package) for $21.50 (prices include shipping within the U.S.). 

ADMINISTRATIVE 
□□SYSTEMS 
□□□INC 
□□ 

1642 S. Parker Road, Suite 300, Denver, Colorado 80231 
(303) 755-9694 

32 October 1979 © BYTE Publications Inc Circle 8 on inquiry card. 



Listing 4 continued: 

00620 PRINT "(USE MAIDEN NAME WHERE APPROPRIATE)" 

00630 INPUT D$ 

00640 PRINT\PRINT 

00650 PRINT "TO PREVENT ";D$ 

00660 PRINT "FROM BEING CONFUSED WITH SOMEONE ELSE" 

00670 PRINT "WHO MAY HAVE A SIMILAR NAME, HE/SHE" 

00680 PRINT "SHOULD HAVE A UNIQUE NUMBER IN THIS FILE." 

00690 PRINT 

00700 PRINT "HAS A NUMBER ALREADY BEEN ASSIGNED?" 

00710 INPUT V$ 

00720 IF V$«'Y' THEN 820 

00730 IF V$«'YES' THEN 820 

00740 IF V$o'N' THEN IF V$o'N0' THEN GO TO 690 

00750 LET I2-I2+1 

00760 LET B-I2 

00770 PRINT 

00780 PRINT "HE/SHE HAS BEEN ASSIGNED THE NUMBER:" 

00790 PRINT 

00800 PRINT TAB(10);B 

00810 GO TO 850 

00820 PRINT 

00830 PRINT "PLEASE ENTER THE NUMBER:" 

00840 INPUT B 

00850 PRINT\PRINT 

00860 PRINT "I WILL ASK YOU FOR SOME DATES." 

00870 PRINT "PLEASE ENTER DATES IN THE FOLLOWING" 

00880 PRINT "FORMAT: DAY MONTH YEAR" 

00890 PRINT " EXAMPLE: 23 APRIL 1949" 

00900 PRINT "IF YOU DON'T KNOW A DATE, ENTER 'UNKNOWN'. 

00910 PRINT\PRINT 

00920 PRINT 'WHEN WAS ';D$;' BORN (DA MO YR)?' 

00930 INPUT E$ 

00940 PRINT 

00950 PRINT "WHERE. WAS HE/SHE BORN?" 

00960 INPUT H$ 

U0970 PRINT\PRINT 

00980 PRINT "WHAT WAS ";D$;"'S FATHER'S NAME?" 

00990 PRINT "(IF YOU DON'T KNOW, ENTER 'UNKNOWN')" 

01000 INPUT Q$ 

01010 IF Q$='UNKNOWN' THEN GO TO 1200 

01020 PRINT\PRINT 

01030 PRINT "DOES ";Q$;" ALREADY HAVE A NUMBER?" 

01040 INPUT V$ 

01050 IF V$='Y' THEN 1160 

01060 IF V$«'YES' THEN 1160 

01070 IF V$o'N' THEN IF V$o'N0' THEN GO TO 1020 

01080 PRINT 

01090 LET I2«=I2+1 

01100 LET R-=I2 

OHIO PRINT "HE HAS BEEN ASSIGNED THE NUMBER:" 

01120 PRINT 

01130 PRINT TAB(10);R 

01140 PRINT\PRINT 

01150 GO TO 1220 

01160 PRINT 

01170 PRINT "PLEASE ENTER HIS NUMBER:" 

01180 INPUT R 

01190 GO TO 1220 

01200 LET R-0 

01210 PRINT\PRINT 

01220 PRINT "WHAT WAS ";D$;"'S MOTHER'S NAME?" 

01230 PRINT "(USE MAIDEN NAME IF POSSIBLE. IF YOU" 

01240 PRINT "DON'T KNOW HER NAME, ENTER 'UNKNOWN')" 

01250 INPUT S$ 

01260 IF S$«'UNKNOWN' THEN GO TO 1430 

01270 PRINT\PRINT 

01280 PRINT "DOES SHE ALREADY HAVE A NUMBER?" 

01290 INPUT V$ 

01300 IF V$«'Y' THEN GO TO 1400 

01310 IF V$«'YES' THEN GO TO 1400 

01320 IF V$o'N' THEN IF V$o'NO' THEN GO TO 1270 

Listing 4 continued on page 42 



0m, 

* WITH 





ifllEII 




IfilEllg 








DBISO SCIENTIFIC 




You know about computers. 
In fact, you probably own 
one now. One that you might 
be thinking of expanding. 
We have a better idea. Take 
a really giant step into the 
personal computing future 
with a C4P or C8P from Ohio 
Scientific. These two new 
premium computer systems 
offer the best specs in the 
personal computing indus^ 
try with built-in performance 
levels that you could never 
achieve with your present 
system, even with all the 
add-ons available. We'll 
show you why. 



1.2 million instructions per 

second. Average. 

Memory to accumulator ADD 

time — 600NS. 

JUMP extended — 900NS. 



C4P MF/GT & C8P DF/GT 



STANDARD 
C4PMF&C8PDF 



APPLE II, 
PET, C1P 



TRS-80 



J 



Video Game Type Computers 




.5 MIPS 



1.0 MIPS 




C4P & C8P Color 



ATARI 800 Color 



TRS-80 B/ W 



APPLE II Color 



THE FACTS 

SPEED 

Speed separates the computers 
from the toys. The faster the 
processor executes instructions 
the more elaborate and greater 
the I/O can be. The C4P and 
C8P have execution speed that 
is twice as fast as Apple II, or 
Commodore PET and over 
THREE times as fast as TRS-80. 
They are many times faster 
than the recently introduced 
flock of video game type 
computers . 

GT OPTION As if that 

weren't fast enough, the C4P 
and C8P's speed is nearly 
doubled when equipped with 
the Ohio Scientific GT option. 
By utilizing a 6502C 
microprocessor in conjunction 
with ultra-fast static memories, 
a C4P or C8P equipped with 
the GT option, will yield the 
following performance: 

Appie II. Commodore PET, TRS-80, and Atari 800 are registered trade names of Apple 
Computer Inc., Commodore Business Machines Ltd., Radio Shack, Atari, respectively. 



The C4P and the C8P offer 
more display than other 
personal computers — 2048 
characters — 32 rows of 64 
columns with upper and lower 
case. Long display width 
makes user instruction easier 
to program and to read. The 
effective graphics resolution of 
256 x 512 points allows these 
computers to match the display 
limit of even the best color 
television sets. 



Video Game Type Computers 



1024 

CHARACTERS 



2048 




16 COLORS 

The C4P and C8P offer a bril- 
liant array of 16 colors includ- 
ing black available in both 
alphabetics and graphics. 




CONSTRUCTION 

The C4P incorporates a fully 
RF shielded aluminum case 
with 2-step baked on enamel 
finish. It is trimmed with solid 
oiled walnut and die-cast 
chromed dress panels. Com- 
pare its construction to the 
plastic cases that are standard 
on other personal computers. 

The quality doesn't stop at the 
surface. The C4P and C8P 
are modular BUS orientated 
computers with 4 and 8 slots 
respectively. The internal 
electronics are built to rigorous 
industrial standards. 

Modularity means expand- 
ability and obsolescence pro- 
tection. In fact, the original 
1977 vintage C2-4P can be 
upgraded to a C4P by chang- 
ing PC cards at substantially 
less cost than purchasing a 
new computer. 

Circle 300 on inquiry card. 




TheC4PMFissho„ 
accessories (clockwise). Home 
Color TV set (requires RF mod- 
ulator), 2 joy sticks. AC-Remote 
console and 2 modules, wireless 
smoke detector and window 
detector, modem, printer and 
wireless remote security console 
(on top of TV.) 



cU 



\ 


— 


/ 







c 



33 



IT 



/ \ 








M 



r 



3 



IT 







□ 

D 



I/O capabilities. The most 
important feature to look for 
when you purchase your next 
computer. Compare these 
standard features of the C4P 
and C8P disk systems to any 
other computer system. 
Regardless of price, you'll find 
none that even come close. 




CLOCK 

1-Real time clock and 
count down timer 





CONTROL 
INTERFACES 

16 parallel I/O lines 



i^y y X 



1-home security interface with 
fire and intrusion detection 






OHIOSCIHITHC 

Aurora, Ohio 44202 


Model 


Serial 




POWER 
ON 


FUSE 
(2A) 


110 VAC 
60 Hz 




Only on Ohio Scientific 
C4PMForC8PDF 
con offer you all this I/O. 




OO til 1 1 < 



RS - 232 PORTS 

1-300 baud modem port 
1-300/1200 baud printer port 
Directly connect *' 
modem and Jm 
printer ^ 



rcle 30Q on inquiry can 





D 



D 




T 







IT 
LfL 



□ 




s 





ih 



D 



ACCESSORY BUS 

One accessory BUS connector 
for an external 48 line I/O 
board, PROM blaster, analog 
data module or education 
board. 




$ • 



• • 



SOUND 

1 -programmable tone 
generator 200 — 20KHz 
1-8 bit companding digital to 
analog converter (DAC) for y 
music and voice outout 



Cassette IN 
(Cassette Versions Only) 



Color Adj. 





Video D 




&& 



4; L® ^ 



"@ @" 




HUNAN INPUT 



2-8 axis joystick interfaces 
2-10 keypad interfaces J£\ 




300 on inquiry card. 



Cassette OUT 
Cassette Versions Only a 




JTTTrcr 



1— AC-12 AC remote control 



BYTE October 1979 37 



SOFTWARE 

Ohio Scientific offers a full 
comprehensive library of 
both systems and applications 
software for the C4P and the 
C8P. And, because our main 
language is Microsoft BASIC 
like most other personal 
computers, much of your old 
software can be used on the 
C4P and C8P with little or no 
modification except for the 
special I/Ofunctions and the 
much faster speed of your new 
computer. This would include 
software from the TRS-80 Level 
II, Apple floating point BASIC, 
Commodore BASIC and many 
others. 

SYSTEMS 
INTEGRATION 

There is a lot of software avail- 
able for a lot of computers. 



Unfortunately for the user in 
almost every case the computer 
is available from one supplier, 
software is available from a 
dozen independent suppliers 
and accessory devices are 
available from yet other 
suppliers. Ohio Scientific has 
a different approach. We offer 
a comprehensive library of 
systems and applications soft- 
ware for the 4P and 8P. In fact, 
we offer more factory sup- 
ported software than any other 
personal computer company. 
For example, say you have a 
brand X computer and you buy 
a real time clock from com- 
pany Y which supplies software 



to use the clock. Then you 
buy an AC controller from 
company Z who also provides 
software. The system works 
fine as long as you want to 
monitor time or control AC 
devices but you are out of luck 
when you want to use the clock 
in conjunction with controlling 
AC devices. With Ohio 
Scientif ic's systems you can be 
monitoring home security, 
time, controlling AC devices 
and be playing an exciting 
video game, all at the same 
time because the systems 
software, the applications soft- 
ware, and the accessories form 
an integrated package which 
works together without end 
user modification . 




FOREGROUND/ 

BACKGROUND 

OPERATION 

This means that your computer 
can be engaging in home 
monitoring activities at the 
same time it is running other 
programs. 

EXPANSION 

As you can see, the C4P and 
C8P are truly exceptional 
premium computers with just 
their standard features alone. 
Above and beyond that they 
are easily expandable to add 
exciting advanced features 
like word processing, addi- 
tional memory, voice I/O, and 
our new universal telephone 
interface (UTI). 

C4PVS.C8P 

The C4P is a 4-slot portable 
computer with one open slot 
for expansion. The C8P is an 
8-slot mainframe class 
computer with five open slots. 
It features over 3 times the 
expansion capability of the 



C4P for advanced home, 
experimental and small 
business applications. The 
C8P's dual 8" floppies store 
about 8 times the information 
of a single mini-floppy and 
access it many times faster. 

ADVANCED 
FEATURES FOR 
C8PDF EXPANSION 

Voice I/O 

The C8P DF can be optionally 
equipped with a voice I/O 
system that includes a Votrax 
module capable of generating 
English speech phonetically. 
It also has provisions for a user 
populated 5-channel feature 
extractor for voice input 
experimentation. 

Universal Telephone 
Interface (UTI) 

Optionally equipped with a 
Universal Telephone Interface 
system, the C8P DF has the 
ability to dial any telephone 
number, utilizing rotary dial or 
touch tone telephone lines. It 
can respond to touch tone or 



modem signals and can route 
voice to tape recorders. 

It can answer by touch tone, 
modem, stored message or 
Votrax voice output (when 
equipped with Votrax module 
or used in conjunction with a 
CA-14 Voice I/O.) 

A C8PDF with UTI, voice 
output, AC-Remote, home 
security and its clock yield the 
home computer of the future 
with uncannily human-like 
capabilities to communicate 
via phone lines and operate 
and monitor typical home 
functions. 



Buying a new computer is a 
serious, long-term investment. 
So we invite you to shop 
around and compare. The 
closest thing you'll find to a 
C4P or C8P will cost twice as 
much and offer less than half 
the performance. We know. 
Because there's nothing like 
these exceptional premium 
computers at any price, any- 
where. And probably won't be 
for a very long time. 



*TRS-80 Level II, Applelloatingpoint BASIC and Commodore BASIC ore registered 
trade names of. Radio Shack, Apple Computer Inc., Commodore Business Machines Ltd., 
respectively. 



PECiFlGlTli 



FEATURE 



Microprocessor type 
GT option 6502C 



Full 53-key Keyboard 



BASIC in ROM 



BASIC on Disk 



Minimal Config. RAM 



Minimal Config. Total 

Memory RAM + Display + ROM 



Maximum RAM 



TV/Video Monitor 



Cassette Recorder 



Mini-Floppy Disk 



Dual Mini-Floppy Disk 



Dual 8" Floppy Disk 



Video Display 



Color Graphics (up to 16 colors), 
Upper and Lower Case, 
Graphics + Gaming Elements 



Effective Screen Resolution 



Audio Output (200 to 20KHz) 



DAC for Voice and Music 
Generation 



Key Pad Interfaces 



Joystick Interfaces 



AC Remote Control Interface 



Audio Cassette Interface 



Real Time Clock 



Home Security System 
Interface 



Printer Interface 



Modem Interface 



16 Parallel Lines + Acc'y. BUS 



GT Option 



Winchester Hard Disks Option 



Voice I/O 



Telephone Interface 





* 




& 


0* 




6502 


6502A 


6502 


6502A 




Yes 


Yes 


Yes 


Yes 




Yes 


No 


Yes 


No 




No 


Yes 


No 


Yes 




8K 


24K 


8K 


32K 




19.5K 


27.5K 


19.5K 


35.5K 




32K 


48K 


32K 


48K 




Acc'y. 


Acc'y. 


Acc'y. 


Acc'y. 




Acc'y. 


No 


Acc'y. 


No 




Acc'y. 


Yes 


No 


No 




Acc'y. 


Acc'y. 


No 


No 




No 


No 


Acc'y. 


Yes 




32x64 


32x64 


32x64 


32x64 




Yes 


Yes 


Yes 


Yes 




256x512 


256x512 


256 x 512 


256 x 512 




Yes 


Yes 


Yes 


Yes 




Yes 


Yes 


Yes 


Yes 




Yes 


Yes 


Yes 


Yes 




Yes 


Yes 


Yes 


Yes 




Yes 


Yes 


Yes 


Yes 




Yes 


No 


Yes 


No 




No 


Yes 


No 


Yes 




No 


Yes 


No 


Yes 




Yes* 


Yes 


Yes* 


Yes 




No 


Yes 


No 


Yes 




No 


Yes 


No 


Yes 




No 


Acc'y. 


No 


Acc'y. 




No 


No 


Acc'y. 


Acc'y. 




No 


No 


Acc'y. 


Acc'y. 




No 


No 


Acc'y. 


Acc'y. 




*Not wired to connector. 



Circle 300 on inquiry card. 



Computers come with keyboards and floppies where specified. Other 
equipment shown is optional. 




SOFTWA 




CONI 


»UTERS 

8K BASIC in ROM, 8K RAM, 








y^tr 


Demo Cassette 
24K RAM, Single Mini-Floppy, 


$ 698 








C4PMF 


OS-65D 3.1 operating system 










and 2 demo disks 
8K BASIC in ROM, 8K RAM, 


1,695 














v^or 


Demo Cassette 
32K RAM Dual 8" floppies, 


895 
















u>rur 


OS-65D 3. 1 and 2 demo disks. 
RIES 


2,597 ! 






ACCESSOl 


• 


• 


• 


• 


AC-3P 


12" B/W Combination 
Monitor/TV 


$ 115 


• 


• 


• 


• 


AC-15P 


12" Color Monitor 


399 


• 


• 


• 


• 


AC-16P 


2 — 8 Axis Joy sticks with cables 


39 




• 




• 


AC-HP 


Answer/Originate 300 baud 
modem with cable 


199 


• 


• 


• 


• 


AC-12P 


AC-Remote starter set, console, 
2 lamp modules, 2 appliance 
modules, OS-65D home 
control operating system. 


175 




• 




• 


AC-17P 


Home security starter set (wire- 
less), console, 1 fire detector 
2-window units, one door unit 
and Demonstration software. 


249 






• 


• 


CA-15 


Universal telephone interface 
with touch tone encoder / 
decoder, 300 baud orginate / 
answer modem, analog signal 
mux / demux. 


499 






• 


# 


CA-15V 


As above with Votrax voice 












module for computer 














generated voice response. 


799 










PRINTER 


s 




• 


• 


• 


• 


AC-18P 


Low cost high speed 8 J /2 " 
aluminized paper printer 
with upper/lower case. 


$ 695 






• 


• 


AC-9TP 


Centronics 779 110 cps tractor 
feed Business printer with 
interface. 


1,250 




• 


• 


• 


AC-14 


NEC Spinwriter — word 

processing printer with high 
speed parallel Interface. 


2.795 










GT OPTIONS (must be purchased with computer) 




• 






C4P MF/G1 


r 24K, 120NS Memory, 

6502C processor, 2-speed 














clock. add $ 950 








• 


C8P DF/3T 


48K, 120NS Memory, 

6502C processor, 2 speed 
clock. add 


1,825 










For other expansion accessories such as add-on memory, additional 










floppy drives 


and other accessory boards consult the current full 










line price list 







Here is a partial listing of diskettes for the C4P 
and C8P. For a complete listing of diskettes 
and cassettes consult the current full line 


price list. 






APPLICATIONS SOFTWARE 




Game Disk 1 


Arcade games $ 


29 


Game Disk 2 


Arcade games 


29 


Game Disk 3 


Popular Conventional 
Computer games 


29 


Game Disk 4 


Popular Conventional 
Computer games 


29 


Game Disk 5 


Advanced Arcade games 


29 


Game Disk 6 


Advanced Arcade games 


29 


Game Disk 7 


Joy stick Arcade games 


29 


Game Disk 8 


Animations and Cartoons 
(2 disk set) 


29 


Personal Disk 1 


Checking/Savings/Loans/Etc. 


29 


Personal Disk 2 


More personal programs 


29 


Education Disk 1 Educational games 


29 


Education Disk 2 BASIC tutor series 


29 


Education Disk 3 Tests/tutors/drills 


29 


BUSINESS SOFTWARE 




Business Disk 1 


Depreciation/return on invest- 
ments etc $ 


29 


Business Disk 2 


Mailing list/Address list/etc 


29 


OS-WP2 


Complete word processing 
system 


200 


OS-MDMS 


65D based Data Base Manager 
and information management 
system. A must for 
business use. 


49 


MDMS-A/R 


Accounts Receivable System 


29 


MDMS-A/P 


Accounts Payable System 


29 


MDMS-Inventory Inventory System 


29 


MDMS-Aux. 1 


Sort/File packer /key File editor 
for ISAM 


29 


UTILITIES 






65D Aux. 1 


Sort/packer/memory test/ 

disassembler $ 


29 


Graphics 1 


Color graphics utilities with 
high resolution plot package 


29 


Home Control 2 


Advanced home control program 
using AC-12 and AC-17 


29 


DAC Routines 1 


Music composition system with 
chord generation capability 


39 


Purchase your C4P or C8P and accessories direct from your 
local Ohio Scientific dealer. Over 300 dealers nationwide. 


OHIO SCIENTIFIC 

1333 S. Chillicothe Road • Aurora, Ohio 44202 • (216) 562-3101 



40 BYTE October 1979 



Circle 300 on inquiry card. 





September 1977 



March 1979 



Byte Cover Prints -- 
Limited Editions. 



The September 77 and March '79 covers of BYTE 
are now each available as a limited edition art print, 
personally signed and numbered by the artist, 
Robert Tinney. 

These prints are strictly limited to a quantity of 750 
for each cover, and no other editions, of any size, 
will ever be published. Each print is 18" x 22", 
printed on quality, coated stock, and signed and 
numbered in pencil at bottom. 



The price of each print is $25. This includes 1) a 
signed and numbered print; 2) a Certificate of 
Authenticity, also signed personally by the artist 
and witnessed, attesting to the number of the edi- 
tion (750), and the destruction of the printing plates; 
and 3) first class shipment in a heavy-duty mailing 
tube. 

To order your limited edition art print, fill out and 
mail the order form below. 



Send me ' 'Breaking the Sound Barrier' ' 

prints at $25 each, and "Trap Door" 

prints at $25 each. I understand this price in- 
cludes Certificate of Authenticity and first class 
shipment. 

□ I have enclosed check or money order 
to Robert Tinney Graphics. 

□ Charge this to my Master Charge or Visa 



Ship my print(s) to: 
Name 



Address- 
City 



. State. 



.Zip. 



Card #_ 



Expires:. 



Send order to: 

robert tinney graphics 

P.O.Box 45047- Baton Rouge, LA 70895 



c 



Circle 380 on inquiry card. 



BYTE October 1979 41 



Circle 379 on inquiry card. 



U.S. ROBOTICS, INC. 



PENRIL 300/1 200 MODEM 
Originate/ Auto-Answer 



ALL 
NEW 



$799.00 




300 or 1200 Baud 
Bell 212 Compatible 
FCC Certified 
RS232 



Half/Full Duplex on 
Dial-up Phone Lines. 
1 year warranty 
Stand Alone 




PERK1N- 

ELMER 

BANTAM 

$799.00 

All the Features of the 
Hazeltine 1400 & LSI ADM-3A 
Plus 



Upper/Lower Case 
7x 10 Char. Matrix 
White or Black Char. 
Transparent Mode 
Addressable Cursor 



Tab Function 
Backspace Key 
Shiftlock Key 
Print Key 

Integrated Numeric 
Pad 



4)4- I .0 I per month 

Lease-Purchase 



$1095.00 



TELETYPE 
MODEL 43 
KSR 




with RS232 
10 or 30 CHAR/SEC 

132 COLUMNS 
UPPER/LOWER CASE 



^Oilf USR-310 

m m Originate 

pP Acoustic 

^^"$159.00 Coupler 

0-300 Baud Stand Alone 

Crystal Controlled RS232 

^^ USR-330 
Bk Originate 

Auto-Answer 

^^$339.00 Modem 

FCC Certified for Direct Connection 
to Phone Lines 
USR-320 Auto-Answer 
Only Modem $3 1 9.00 



All Units include a 120 day warranty. 
Optional Maintenance package available 



Any Product may be returned 
within 10 days for a full refund. 



U.S. ROBOTICS, INC. 

1035 W. LAKE ST. 

CHICAGO, ILL. 6D6D7 

Sales (312)733-0497 

General Offices (3 1 2) 733-0498 
Service (312)733-0499 



Listing 4 continued: 



01330 
013A0 
01350 
01360 
01370 
01380 
01390 
01A00 
01410 
01A20 
01A30 
01AA0 
01A50 
01A60 
01A70 
01A80 
01A90 
01500 
01510 
01520 
01530 
015A0 
01550 
01560 
01570 
01580 
01590 
01600 
01610 
01620 
01630 
016A0 
01650 
01660 
01670 
01680 
01690 
01700 
01710 
01720 
01730 
017A0 
01750 
01760 
01770 
01780 
01790 
01800 
01810 
01820 
01830 
018A0 
01850 
01860 
01870 
01880 
01890 
01900 
01910 
01920 
01930 
019A0 
01950 
01960 
01970 
01980 
01990 
02000 
02010 
02020 
02030 



PRINT 

LET I2«I2+1 

LET T-I2 

PRINT "SHE HAS BEEN ASSIGNED THE NUMBER:" 

PRINT 

PRINT TAB(10);T 

GO TO 1A50 ! GO BACK FOR NUMBER 

PRINT 

PRINT "PLEASE ENTER HER NUMBER:" 

INPUT T 

PRINT\PRINT 

LET T-=0 

PRINT\PRINT 

PRINT "WHERE DID YOU GET THE INFORMATION ABOUT" 

PRINT D$; n 'S BIRTH AND PARENTAGE?" 

PRINT "(BE SPECIFIC)" 

INPUT Dl$ 

i 

I MARRIAGE CERTIFICATE INFORMATION 

i 

PRINT\PRINT 

PRINT "HOW MANY TIMES WAS ";D$;" MARRIED?" 

PRINT '(ENTER A DIGIT FROM TO 99)' 

INPUT F 

IF F-0 THEN GO TO 1730 

FOR I«l TO F 

PRINT\PRINT 

PRINT 'ENTER A DATE FOR MARRIAGE #';I;' (DA MO YR)' 

INPUT C$(I) 

PRINT 

PRINT "WHAT WAS THE SPOUSE'S FULL NAME?" 

PRINT '(USE MAIDEN NAME WHERE APPLICABLE)' 

INPUT G$(I) 

PRINT 

PRINT 'WHERE WERE THEY MARRIED?' 

INPUT K$(I) 

PRINT\PRINT 

PRINT "WHERE DID YOU GET THE INFORMATION ABOUT MARRIAGE #";F;"?" 

INPUT D2$(I) 
NEXT I 

IF F*0 THEN C$(I)«'NOT APPLICABLE' 
IF F=0 THEN G$(I)-'NOT APPLICABLE' 
i 

! DEATH CERTIFICATE INFORMATION 

i 

PRINT \PRINT 

PRINT 'WHEN DID ';D$;' DIE (DA MO YR)?' 

PRINT "(IF YOU DON'T KNOW, ENTER 'UNKNOWN'." 

PRINT "IF HE OR SHE IS STILL LIVING, ENTER 'ALIVE'.)" 

INPUT J$ 

IF J$='ALIVE' THEN GO TO 1900 

PRINT\PRINT 

PRINT 'WHERE DID HE/SHE DIE?' 

INPUT L$ 

PR INT\ PRINT 

PRINT "WHERE DID YOU GET THE INFORMATION ABOUT HIS/HER DEATH?" 

INPUT D3$ 

IF J$='ALIVE' THEN L$«'NOT APPLICABLE' 

PRINT\PRINT\PRINT 

i 

put n 

CLOSE //l 
RETURN 
i 

! PROCEDURE SUBROUTINE //2 

! READ AND REVISE FILE 

i 

PRINT\PRINT 

PRINT "TASK: READ AND REVISE FILE INFORMATION" 
PRINT\PRINT 

OPEN 'GEN' AS FILE //l, SEQUENTIAL VARIABLE, ACCESS MODIFY, MAP GEN 

Listing 4 continued on page 44 



42 October 1979 © BYTE Publications Inc 



What it means to you 

digM*kitMzer/dij-e*kitMzer/ n: (1): a high- 
value low-cost computer graphic input device 
designed to be assembled by the user (2): the 
most advanced graphics tablet in kit form (3): 
An instrument that, when assembled, allows 
the user innumerable methods of design and 
analysis functions (4): The latest addition to 
the most extensive, accurate and reliable line 
of digitizers, by Tabs 



449 



/ 



No adjustments. No calibration. 

OPTIONS 

• APPLE Interface 

• TRS-80 Interface 

• RS 232 Interface 

• Power Supply 

• I C Sockets 

• Unit Enclosure 

Dealer inquiries invited 



'■^ 



m 



PLEASE RUSH ADDITIONAL INFORMATION ON THE 
TALOS DIGI-KIT-IZER 



Name, 



Company. 
Title 



Address, 
City 



Phone, 



.State. 



-Zip. 



TALOS SYSTEMS INC. 
7419 E. Helm Drive 
Scottsdale, Arizona 85260 
(602) 948-6540 
TWX (910) 950 1183 



CHECK YOUR LOCAL DEALER NOW 



Circle 361 on inquiry card. 



BYTE October 1979 43 



Circle 278 on inquiry card. 



^^softv 



software 
system 



FAMOS™ 
MULTI-TASKING DOS: 

• 8080/Z80 

• Device Independent file system 

• Multi-sessioning/spooling 

• Full user accounting 

• All files dynamic 

• Multi-user file security 

• Intersystem communications 

S100 BUS SUPPORT 

MVT-BASIC™ 
MULTI-USER COMPILER 

• Powerful file, string I/O 

• Chaining . . . parameter passing 

• ISAM/sort facilities 

• Random, sequential files 

• Machine language calls 

• Error trapping 

HARD DISKS SUPPORTED 

MVT-WORDFLOW™ 
MULTI-USER WORD 
PROCESSING SYSTEM 

• Concurrent data processing 

• Automatic field insertion 

• Global search/replace 

• Library file insertion 

• "Cutting & pasting'Vblock moves 

• Full WP printer support 

• Multiple printers/concurrent 

• Wordwrap/variable line spacing 

• All options under user control 

IMMEDIATE DELIVERY 

AVAILABLE TO MANUFACTURERS/ 

OEM FOR PRIVATE LABEL 

MARKETING 



MVT 

MICROCOMPUTER 
SYSTEMS INC. 




44 



9241 Reseda Blvd., Suite 203 
Northridge, CA 91324 
Phone: (213) 349-9076 

October 1979 © BYTE Publications Inc 



Listing 4 continued: 



DATA, 

02040 

02050 

02060 

02070 

02080 

02090 

02100 

02110 

02120 

02130 

021A0 

02150 

02160 

02170 

02180 

02190 

02200 

02210 

02220 

02230 

022A0 

02250 

02260 

02270 

02280 

02290 

02300 

02310 

02320 

02330 

023A0 

02350 

02360 

023 70 

02380 

02390 

02A00 

02A10 

02A20 

02A30 

02AA0 

02A50 

02A60 

02A70 

02A80 

02A90 

02500 

02510 

02520. 

02530 

025A0 

02550 

02560 

02570 

02580 

02590 

02600 

02610 

02620 

02630 

026A0 

02650 

02660 

02670 

02680 

02690 

02 700 

02710 

02720 

02730 



INVALID 130 

PRINT "DO YOU WISH TO SEARCH BY 'NAME' OR BY 'NUMBER'?" 

INPUT W2$ 

PRINT 

IF W2$»'NAME' THEN CO TO 2200 

IF W2$<>'NUMBER' THEN GO TO 20A0 

PRINT "PLEASE ENTER THE NUMBER:" 

INPUT Al 

PRINT 

RESTORE //l 

LET Z5=0 

LET Z5-Z5+1 

IF Z5>13 THEN PRINT "PERSON #";A1;"IS NOT IN THE FILE." 

IF Z5>13 THEN GO TO 29A0 

GET ill 

IF AlOB THEN CO TO 21A0 

CO TO 23A0 

PRINT "IF YOU ARE LOOKING FOR SOMEONE IN PARTICULAR" 

PRINT "PLEASE ENTER HIS OR HER NAME. IF YOU WANT" 

PRINT "TO READ THROUGH THE ENTIRE FILE, ENTER 'ALL'." 

INPUT Pl$ 

PRINT 

LET P2$=P1$ 

RESTORE #1 

LET Z5-0 

LET Z5-Z5+1 

IF Z5>13 THEN PRINT PIS;" IS NOT IN THE FILE." 

IF Z5>13 THEN GO TO 29A0 

GET n 

IF P1$='ALL' THEN LET P2$-D$ 

IF P2$<>D$ THEN CO TO 2280 

PRINT\PRINT 

PRINT 'GENEALOGICAL INFORMATION FOR:' 

PRINT D$ 

PRINT "NUMBER: ";B 

PRINT 

PRINT 'BORN: ';E$ 

PRINT 'BIRTHPLACE: ';H$ 

PRINT 

PRINT "FATHER: ";Q$;" (NUMBER :" ;R ;") " 

PRINT "MOTHER: ";S$;" (NUMBER : ";T;")" 

PRINT 

IF F«0 THEN GO TO 2530 

PRINT 'MARRIED TO: ' 

FOR 1-1 TO F 

PRINT ' ';G$(I) 

PRINT ' DATE: ';C$(I) 

PRINT ' PLACE: ';K$(I) 

PRINT 
NEXT I 

IF J$='ALIVE' THEN GO TO 2560 
PRINT "DEATH DATE: ";J$ 
PRINT 'PLACE OF DEATH: ';L$ 
PRINT\PRINT 

PRINT "RECORDS SOURCE:" 
PRINT " BIRTH AND PARENTAGE: ";D1$ 
FOR 1=1 TO F 

PRINT " MARRIAGE #";F; ":" ;D2$(I) 
NEXT I 

IF J$='ALIVE' THEN GO TO 26A0 
PRINT " DEATH: ";D3$ 
PRINT\PRINT 
j 

PRINT 'DO YOU WISH TO CHANGE ANYTHING?' 

INPUT P3$ 

IF P3$='N' THEN GO TO 2930 

IF P3$='NO' THEN GO TO 2930 



MENU FOR REVISIONS 



PRINT 



Listing 4 continued on next page 



Circle 141 on inquiry card. 



Listing 4 continued: 



02 740 

02750 

02760 

02770 

02780 

02790 

02800 

02810 

02820 

02830 

02840 

02850 

02860 

02870 

02880 

02890 

02900 

02910 

02920 

02930 

02940 

02950 

02 960 

02970 

02980 

02990 

03000 

03010 

03020 

03030 

03040 

03050 

03060 

03070 

03080 

03090 

03100 

03110 

03120 

130 

03130 

03140 

03150 

03160 

03170 

03180 

03190 

03200 

03210 

03220 

03230 

03240 

03250 

03260 

03270 

03280 

03290 

03300 

03310 

03320 

03330 

033A0 

03350 

03360 

03370 

03380 

03390 

03A00 

03A10 

03A2 

03A30 



PRINT 
PRINT 
PRINT 
PRINT 
PRINT 
PRINT 
PRINT 
PRINT 
PRINT 
INPUT 
IF PA> 
IF PA< 
IF P4 
IF PA' 
IF PA' 
PRINT 
i 

PRINT 
GO TO 
UPDATE 
PRINT\ 



'PLEASE ENTER THE NUMBER OF THE ITEM' 
'YOU WISH TO CHANCE: ' 

1) NAME AND NUMBER' 

2) BIRTH AND PARENTAGE' 

3) MARRIAGE INFORMATION' 
A) DEATH INFORMATION' 

5) NOTHING' 



PA 

•1 THEN GOSUB A 190 
= 2 THEN GOSUB A300 
=3 THEN GOSUB AA60 
'A THEN GOSUB A670 
=5 THEN GO TO 29A0 



'DO YOU WISH TO MAKE OTHER CHANGES?' 
2670 

#1, MAP 1A0 
PRINT 



PRINT 'WOULD YOU CARE TO EXAMINE ANOTHER RECORD?' 
INPUT P$ 

IF P$='Y' THEN IF P1$<>'ALL' THEN GO TO 2030 
IF P$ = 'YES' THEN IF Pl$o'ALl/ THEN GO TO 2030 
IF P$«='Y' THEN GO TO 2310 
IF P$ = 'YES' THEN CO TO 2310 
i 

CLOSE #1 

RETURN 

i 

! PROCEDURE SUBROUTINE 03 
I LINK PEDIGREE BY NUMBER 

i 

PRINT\PRINT 

PRINT "TASK: LIST PEDIGREE" 

PRINT\PRINT 

OPEN 'GEN' AS FILE 01, SEQUENTIAL VARIABLE, MAP GENDATA, INVALID 

LET IA-O 

PRINT "WHOSE PEDIGREE WOULD YOU LIKE PRINTED?" 

PRINT "(ENTER HIS/HER NUMBER, PLEASE)" 

INPUT XI 

PRINT\PRINT 

PRINT "THE SYMBOL 'F' STANDS FOR 'FATHER'" 

PRINT "THE SYMBOL 'M' STANDS FOR 'MOTHER'" 

PRINT\PRINT 

! 

i FIND PARENTS AND LIST 

t 

LET 1 4-14+1 

IF IA>I3 THEN PRINT "PERSON #";X1;"IS NOT LISTED IN THE FILE" 

IF IA>I3 THEN GO TO A150 

GET PI 

IF BOX1 THEN GO TO 32A0 

PRINT TAB(15); "PEDIGREE FOR PERSON #";B 

PRINT 

PRINT D$ 

PRINT 

PRINT TAR(5);'F: ' ;0$; ' (NUMBER: ' ;R ;') ' 

PRINT TAB(5);'M:' ;S$; ' (NUMBER :' ;T;')' 

PRINT 
i 

! FIND GRANDPARENTS AND LIST 

I 

LET X2«=R 

LET X3-T 

LET I5«0 

LET 112*0 

IF X2<>0 THEN I12«=I12+1 

Listing 4 continued on page 46 




A.C. POWER 
CONTROL for ALL 
COMPUTERS or 
COMPLETE TURNKEY 
SYSTEMS 

Interface TO the Real World with GIMIX Relay 
Driver Boards. Connects to any Computer 
through a 20 ma. current loop (up to 4 
Boards- 128 Relays per port). 

Interface FROM the Real World with GIMIX 

• OPTO BOARDS (up to 34 switch closures with one 8 bit 
Parallel I/O Port) 

• 16 BUTTON KEYPADS 

• 35 BUTTON ALPHANUMERIC KEYPADS 

A Broad Range of 6800 Systems 
and Boards Compatible 
with the SS50 Bus 





MAINFRAME: Includes chassis, power 

supply, switches, fan and mother board . . $ 798 . 1 9 

16K SYSTEMS: Mainframe, plus 6800 CPU, 

16K Static Ram and choice of I/O.... $1344. 29 
Other packages available. 

16K Static RAM 
Boards for the 
SS-50 Bus 

• Gold bus connectors 

• 4 separate 4K Blocks 

• Individual Addressing, 
Write Protect, and Enable/ 
Disable for eac h bloc j^ Memories . 

$ 298 13 

As above 

with Sockets 

and Software 

control features 

s 368 16 

All GIMIX memory boards are assembled, 

Burnt-ln for 2 weeks, and tested at 2 MHz. 

Add $32.00 for 250 ns parts 

Tl TMS 4044's — 10% SUPPLY 

(Not an "equivalent", but the real thing!) 
450 ns $5.90 each 250 ns $6.90 each 

8KPR0M BOARD $ 98.34 

4K PPD PROM BOARD, Burner and Duplicator. . . 198.35 

2708's each 7.90 

64 or 32 x 16 VIDEO BOARD 198.71 

80 x 24 SUPER VIDEO BOARD with user programmable RAM 

character generator 458.76 

Serial l/0's 1 Port $ 88.41 4 Port 198.43 

Parallel l/0's .... 2 Port $ 88.42 8 Port 198.45 
Add $5. handling charge on orders under $200. 




inc. 



Gimix 

1337 WEST 37th PLACE 
CHICAGO, ILLINOIS 60609 
(312) 927-5510 • TWX 910-221-4055 

Quality Electronic products since 1975. 



October 1979 © BYTE Publications Inc 



45 



Listing 4 continued: 

03440 IF X3<>0 THEN 112=112+1 

03450 IF 112=0 THEN GO TO 4150 

03460 LET 14=14+1 

03470 IF 14=13 THEN GOSUB 4840 

03480 GET ill 

03490 IF X2=B THEN GO TO 3520 

03500 IF X3=B THEN GO TO 3600 

03510 GO TO 3460 

03520 PRINT TAB(IO) ; 'FF: ' ;Q$;' (NUMBER :' ;R ;') ' 

03530 PRINT TAB(IO); 'FM: ' ;S$; ' (NUMBER: ';T ;') ' 

03540 PRINT 

03550 LET X4=R 

03560 LET X5=T 

03570 LET 15=15+1 

03580 IF I5<112 THEN GO TO 3460 

03590 IF I5>=112 THEN GO TO 3730 

03600 PRINT TAB(10);'MF:';Q$;'(NUMBER:';R;')' 

03610 PRINT TAB(10);'MM:';S$;'(NUMBER:';T;')' 

03620 PRINT 

03630 LET X6=R 

03640 LET X7=T 

03650 LET 15=15+1 

03660 IF I5<I 12 THEN GO TO 3460 

03670 IF I5>=112 THEN GO TO 3730 

03680 LET 115=0 

03690 PRINT 

03700 ! 

03710 ! FIND GREAT GRANDPARENTS AND LIST 

03720 I 

03730 LET 15=0 

03740 LET 112=0 

03750 IF X4<>0 THEN 112=112+1 

03760 IF X5<>0 THEN 112=112+1 

03770 IF X6<>0 THEN 112=112+1 

03780 IF X7<>0 THEN 112=112+1 

03790 IF 112=0 THEN GO TO 4150 

03800 LET 14=14+1 

03810 IF I4>13 THEN GOSUB 4840 

03820 IF I16>4 THEN PRINT "FURTHER TRACING OF 

THE PEDIGREE IS IMPOSSIBLE." 

03840 IF I16>4 THEN GO TO 4150 

03850 GET 1t\ 

03860 IF X4«B THEN GO TO 3910 

03870 IF X5=B THEN GO TO 3970 

03880 IF X6=B THEN GO TO 4030 

03890 IF X7-B THEN GO TO 4090 

03900 GO TO 3800 

03910 PRINT TAB(15);'FFF:';Q$;'(NUMBER:';R;')' 

03920 PRINT TAB(1 5) ; 'FFM: '; S$; ' (NUMBER :' ;T ;') ' 

03930 PRINT 

03940 LET I5-I5+1 

03950 IF 1 5 <I 1 2 THEN GO TO 3800 

03960 IF I5>=4 THEN GO TO 4150 

03970 PRINT TAB (1 5 ); 'FMF: '; Q$ ;' (NUMBER: ' ;R ; 

03^80 PRINT TAR(15);'FMM:';S$;'(NUMBER:';T;')' 

03990 PRINT 

04000 LET 15=15+1 

04010 IF I5<112 THEN GO TO 3800 

04020 IF I5>=112 THEN GO TO 4150 

04030 PRINT TAB(15);'MFF:';Q$;'(NUMBER:';R;')' 

04040 PRINT TAB(15);'MFM:';S$;' (NUMRER: ';T;')' 

04050 PRINT 

04060 LET 15=15+1 

04070 IF I5<I 12 THEN GO TO 3800 

04080 IF I5>=112 THEN GO TO 4150 

04090 PRINT TAB(15);'MMF:';Q$;'(NUMBER:';R;')' 

04100 PRINT TAB(15);'MMM:';S$;' (NUMBER: ' ;T; ') ' 

04110 PRINT 

04120 LET 15=15+1 

04130 IF I5<112 THEN GO TO 3800 

04140 ! 

04150 CLOSE 01 

04160 RETURN 



)' 



04170 
04180 
04190 
04200 
04210 
04220 
04230 
04240 
04250 
04260 
042 70 
042 80 
04290 
04300 
04310 
04320 
04330 
04340 
04350 
04360 
04370 
04380 
04390 
04400 
04410 
04420 
04430 
04440 
04450 
04460 
04470 
04480 
04490 
04500 
04510 
04520 
04530 
04540 
04550 
04560 
04570 
04580 
04590 
04600 
04610 
04620 
04630 
04640 
04650 
04660 
04670 
04680 
04690 
04700 
04710 
04720 
04730 
04740 
04750 
04760 
04770 
04780 
04790 
04800 
04810 
04820 
04830 
04840 
04850 
04860 
04870 
04880 
04890 
04900 
04910 



j 

! REVISION SUBROUTINE #1 

! CHANGE NAME AND NUMBER 

i , 

PRINT\PRINT 
INPUT 'NAME:';D$ 
PRINT 

INPUT 'NUMBER: ';B 
RETURN 
i 

! REVISION SUBROUTINE #2 

1 CHANGE BIRTH INFORMATION 

i 

! CHANGE BIRTH INFORMATION 

PRINT\PRINT 

INPUT 'BIRTHDATE: ';E$ 

PRINT 

INPUT 'BIRTHPLACE: ';H$ 

PRINT 

INPUT "FATHER'S NAME";Q$ 

INPUT "FATHER'S NUMBER";R 

PRINT 

INPUT "MOTHER'S NAME";S$ 

INPUT "MOTHER'S NUMBER" ;T 

PRINT 

INPUT "SOURCE OF INFORMATION" ;D 1$ 

RETURN 

j 

! REVISION SUBROUTINE #3 

! CHANGE MARRIAGE INFORMATION 

l 

PRINT\PRINT 

INPUT "WHICH MARRIAGE (ENTER NUMBER)"; I 

PRINT 

PRINT "DATE OF MARRIAGE 0" ; I ; 

INPUT C$(I) 

PRINT 

INPUT "SPOUSE'S NAME";G$(I) 

PRINT 

INPUT "PLACE OF MARRIAGE"; K$(I) 

PRINT 

PRINT "SOURCE OF INFORMATION?" 

INPUT D2$(I) 

PRINT 

PRINT "FOR HOW MANY OF THIS PERSON'S MARRIAGES DOES" 

PRINT "THE FILE NOW CONTAIN INFORMATION?" 

INPUT F 

RETURN 

i 

! REVISION SUBROUTINE #4 

! CHANGE DEATH INFORMATION 

I 

PR INT\ PRINT 

PRINT "DEATH DATE" 

PRINT "(IF YOU DON'T KNOW, ENTER 'UNKNOWN'. IF" 

PRINT "HE OR SHE IS STILL ALIVE, ENTER 'ALIVE'.)" 

INPUT J$ 

IF J$='ALIVE' THEN GO TO 4800 

PRINT 

INPUT "PLACE OF DEATH";L$ 

PRINT 

PRINT "SOURCE OF INFORMATION?" 

INPUT D3$ 

RETURN 

j 

! RESTORATION OF FILE POINTER 
i 

RESTORE if I 

RETURN 

i 

! PROCEDURE SUBROUTINE U 

I END THE PROGRAM 

i 

PRINT 
END ■ 



46 October 1979 © BYTE Publications Inc 



The Paper Tiger. 

At $995, why settle for less. 



K^-^WJ- 



J Xi' 



N^S 



IN^ 



N/ 



jfe* 



,%i 



/ 



S 



*fx 



IVtt^-"- 



«* 



8* 



- y > > 



Him J 



-C...-IK TtCCK" 






'/ JU 



itf 



w»t* n»j> . 



.« 



;[ 



The Paper Tiger sets a new stan- 
dard for low-cost impact printers. 
More capability. More versatility. 

■ Eight software-selectable 
character sizes. 

■ 80 and 132 column formats. 

■ Full forms control. 

■ DotPlot™ graphics option. 

■ Connects directly to Apple II, 
TRS-80, and other personal 
computers. 



Plus lots more. For a free 
brochure, print sample, or the 
name of the Paper Tiger dealer 
nearest you, write or call. Integral 
Data Systems, 14 Tech Circle, 
Natick, Massachusetts 01760. 
Call toll-free 800-343-6412. 

In Massachusetts, Alaska, and Hawaii 
call (617) 237-7610, 



« 



i^/\ Circle 176 on inquiry card. 

XLs Integral Data Systems, Inc. 



Power Helps Analyze 
Electric Bills 



Karen S Wolfe 
2935 E Cannon Dr 
Phoenix AZ 85028 



We all know there are many reasons for 
increasing utility costs, from higher oil prices 
to billion dollar Environmental Protection 
Agency regulations, but that doesn't make 
the paying any easier. 

There has been much rhetoric about per- 
sonal conservation and elimination of waste. 
In order to formulate an effective and effi- 
cient plan for conservation of electricity in 
your home or business, you need to know 
the cost of operation for individual appli- 
ances and other electrical devices. 

The Power program (see listing 1) calcu- 
lates from your electric bill your cost per 
kilowatt-hour of power used. The program 
then generates the cost per month and per 
hour to operate specific appliances, given 
their electrical specifications, 
name plate fastened somewhere on the de- 
vice. However," some appliances list amps 
rather than watts. The Power program con- 
tains an option for calculating wattage from 
amperage and voltage. 

You will also need the listed voltage, 
which will usually appear as 120 V or 120 
V AC. If voltage is given in a range of, say, 
1 1 V to 1 30 V, it means that the appliance 
will operate at any voltage within the range. 
In the program, use the voltage which is 
running through the circuit that the appli- 
ance is plugged into. 

A table of household appliances is pro- 
vided for your convenience in gathering and 
recording needed inputs and monthly costs. 
A word of warning about the estimation of 
hours an appliance is operated in a month: I 
repeatedly underestimate this time, perhaps 
because it seems that months fly by and 
hours are inconsequential. But there are 720 
hours in a 30-day month and in order to 
make this analysis useful one must realistic- 
ally estimate hours of use. 

Another problem can exist in obtaining 
an estimated wattage for some of the high 
power consumption devices such as electric 
furnaces, or air conditioning units. New 



models, today, will have many of their tech- 
nical specifications listed in information 
sheets available to the public. Among these 
specifications will be an estimate of total 
system power requirement in kilowatts. For 
the sample run in listing 2, I used the total 
system kilowatts that were listed for a heat 
pump during its cooling cycle, given various 
other criteria such as outdoor temperature. 

The listed power requirement was 6.3 
kilowatts; however, the program requires 
that watts, not kilowatts, be entered. If the 
data on your equipment is in kilowatts, mul- 
tiply by 1,000 to obtain watts. 

Home electric furnaces are usually rated 
at 5 kW and up depending on how much 
heat is required. A very rough estimate for 
an average home with an electric furnace 
is 1 5 to 25 kW, or 15,000 to 25,000 W. If 
you cannot obtain your particular system's 
wattage, you might try using this average, 
but it could be significantly different from 
your actual system's draw. 

Sample Run 

The Power program, listing 1, is written 
in North Star BASIC. There are no instruc- 
tions for providing hardcopy, but if you 
desire one you could place a statement for 
selecting your printer at, perhaps, line 415. 
You could then select the video monitor 
again at line 495. 

The program presents two options. If you 
already know the cost per kilowatt-hour the 
utility company uses to calculate your bill, 
you can select option 2. This allows you to 
input the cost per kilowatt-hour by jumping 
to the main portion of the program. 

If you do not know the kilowatt-hour 
rate, select option 1, as in the example. 
Actually, your cost per kilowatt-hour will 
probably vary from one month to the next 
because of the rating structure systems used 
by power companies, especially if time of 
day rates are being used. So, you just might 



48 October 1979 © BYTE Publications Inc 



no loose ends 

All-ln-One: computer, floppy, I/Q16K RAM. $1595 



1 i L I L I * * » 



1 ^^^^^^■■■■^B 
I i 4 




CW Tm m ticroproeessort 

ClKfct i.MWHi 

Imrft 1U by tit RM expandable to 48K 

lisilayi 23 lines by 88 characters 

Characters' 5x7 dot eatrix, uppir I louer can 

Graphic*! H special graphics characters 

Kiyboirdi 72 keys, 68 alphameric 1 12 function 
control (8 user-definable) 

Huierie he«?adi 12 keys 

Cursor fltfiretfingi relative I direct for full cursor control 

Co it Functions i Insert or delete character or line 

fiewi Hsrul and revert! by character for hifhllfhilnf . 





New Heathkit® H89 
All-ln-One Computer 

Heath takes the risk out of selecting a 
balanced computer system. Now, video 
terminal, floppy, keyboard and 8-bit 
computer are brought together in one 
self-contained, compact unit. Nothing 
hangs out. 

Two Z80's 

The personal computer has never been 
simpler. Or smarter. Two Z80 microproc- 
essors mean terminal never shares pow- 
er with computer, as do most desk-top 
units. So this terminal is capable of a 
multitude of high-speed functions, all 
controllable by keyboard or software. 

•S1195 without floppy. Mail order kit price, F.O.B. 
without notice. 



■"■■■ 

102K bytes storage 

Built-in floppy disk system gives you fast 
access to programs and data. Each 5 1 A- 
inch diskette has more than 102K bytes 
of storage area, enough to hold entire 
files. The All-ln-One comes with 16K 
RAM, expandable to 48K. 

Hundreds of uses at 
home or work 

The All-ln-One Computer runs programs 
written in MICROSOFT" BASIC and 
ASSEMBLER Languages. And it accepts all 
current software written for the popular 
Heathkit H8 computer. You can choose 
from scores of practical programs for 
home and business. 



Learn by building 

What better way to learn about comput- 
ers than to build one yourself? The All- 
ln-One is available in easy-to-build kit 
form, as well as completely assembled. 
Like all Heath electronic kits, it comes to 
you with its own easy-to-follow assem- 
bly manual and a nationwide network of 
service centers to assure smooth sailing. 

FREE CATALOG 

For complete details on the 
Heathkit H89 All-ln-One 
Computer and nearly 400 
other electronic kits for your 
home, work or pleasure, send 
today for the latest Heathkit 
Catalog of values. 




Benton Harbor, Ml. Also available at Heathkit Electronic Centers at slightly higher prices. Prices subject to change 

CP-170 



Heathkit 

HEATH COMPANY, DEPT. 334-580, BENTON HARBOR, Ml 49022 



Circle 163 on inquiry card. 



BYTE October 1979 49 



out of curiosity calculate your cost per 
kilowatt-hour each month as you get your 
bill and see if it is changing. Sometimes there 
are different rate block structures between 
summer and winter. 

After entering option 1 , you are prompted 
to input the ending kilowatt-hour reading 
from a recent electric bill (66,239, for 
example). Next, input the previous reading, 
which should also appear on the bill 
(62,213, for example). 

The program prompts you to enter the 



amount of the bill. If your utility company 
sells both electricity and gas to you, be cer- 
tain that only the electric portion of the bill 
is entered. There may also be a fuel adjust- 
ment cost figured into the total cost, and 
sales tax will probably appear on the bill. It's 
up to you if you want to include these fig- 
ures in the total cost you enter into the 
program. If you do include them, you can 
apportion their cost to individual appliances. 
The cost per kilowatt-hour will probably not 
be affected significantly whether you do or 



Listing 1: North Star 
BASIC program to calcu- 
late the cost of running 
electrical appliances'. The 
program helps you deter- 
mine the operating cost 
of an appliance based on 
the average wattage or the 
voltage and amperage ra- 
tings of the product. 



THIS PROGRAM CALCULATES POWER USAGE AND COSTS" 

PROGRAM OPTIONS f 

1« CALCULATE COST PER KILOWATT HOUR" 

2* CALCULATE APPLIANCE POWER USAGE AND COST" 

SELECT 1 OR Z SA 



■ENTER BEGINNING KWH READING FROM BILL 



"ENTER AMOUNT OF ELECTRIC BILL 



10 DIM DHS<1> 

20 PRINT " 

30 PRINT\ PRINT 

'10 PRINT " 

50 PRINT 

60 PRINT " 

70 PRINT " 

80 PRINT 

90 INPUT " 

100 PRINT 

110 ON A GOTO 120, 200 

120 INPUT "ENTER ENDING KWH READING FROM ELECTRIC BILL 

130 PRINT 

140 INPUT 

150 PRINT 

160 INPUT 

170 PRINT 

180 LET C « T/CE-B) 

190 GOTO 220 

200 INPUT "ENTER COST PER KWH 

210 PRINTS PFttNT 

220 PRINT 

230 PRINT 

240 PRINT 

250 PRINT 

260 PRINT 

7>70 INPUT 

280 PRINT 

290 ON A GOTO 30 0> 350 

300 INPUT -ENTER APPLIANCE VOLTAGE 

310 PRINT 

320 INPUT "ENTER APPLIANCE AMP DRAW 

330 LET W = Z * V 

340 GOTO 360 

350 INPUT "ENTER APPLIANCE WATTAGE 

360 PRINT 

370 INPUT 

380 PRINT 

390 LET K ■ <W*H>/1000 

400 LET D = K * C 

410 PRINTN PRINTN PRINT 

420 PRINT ■ COST PER KILOWATT HOUR OF USAGE = 

430 PRINT 

'440 PRINT 

450 PRINT 

'460 PRINT 

470 PRINT 

'480 PRINT ■ COST PER EST, HOUR'S USE = ■ r D/H 

490 PRINTN PRINT 

500 INPUT "DO YOU WISH TO CALCULATE ANOTHER APPLIANCE (Y/N)? 

510 IF D* = "Y" THEN 210 

520 END 



OPTIONS- 

1. CALCULATE WATTS" 
2* INPUT WATTS- 

SELECT 1 OR 2 " i 



■ENTER NUMBER OF HOURS USED IN TIME PERIOD ■ ,H 



KILOWATT HOURS OF POWER USAGE 



MONTHLY COST OF THAT POWER USAGE** 



■ »K 



rD* 



50 October J 979 © BYTE Publications Inc 



IWUcralMET 

Big-system performance 
for your personal computer. 




MicroNET is a remote on-line computing serv- 
ice available through local phone lines in 27 
major metropolitan areas. It is a service for 
personal computer users provided by Compu- 
Serve, one of the nation's leading computer 
service companies. 

Services available: 

• Ability to communicate with other small computer 
users 

• Ability to buy and sell software through the network 

• Practical personal programs 

• Time-saving business applications 

• Educational aids 

• Easy-to-use programming languages 

• Advanced programming and diagnostic tools 

• Entertaining games 

Plus up to 64 K bytes of on-line file storage. 

MicroNET users can access our large-scale 
computer systems in offpeak hours, from 6 P.M. 
to 5 A.M. local time weekdays and all day on 
weekends and most holidays. The cost, which 
will be billed to your Master Charge or Visa 
Card, is only $5.00 per hour of computer time. 
There is a one-time sign-up charge of $9.00. 

Circle 54 on inquiry card. 



Equipment required 

A personal computer or computer terminal with 
communications capability and a telephone. 

Please send me more information: 



r 



Mail to: 

CompuServe 

Personal Computing Division 
5000 Arlington Centre Blvd. 
Columbus, Ohio 43220 

Send me information on MicroNET. 

Name 



^ 



Address, 



City/State/ZIP_ 



/Uiora/lfTi 

Cities with local phone service access: Akron, Atlanta, Boston, 
Canton, Chicago, Cincinnati, Cleveland, Columbus, Dallas, 
Dayton, Denver, Detroit, Houston, Indianapolis, Los Angeles, 
Louisville, Memphis, West Caldwell (NJ), New York, Philadel- 
phia, Pittsburgh, San Francisco, Stamford (CT), St. Louis, 
Toledo, Tucson, Washington, D.C. 

Software Authors— see separate ad on page 1 20. 

BYTE October 1979 51 



Table 1: This table 
Power program. 



can be used to collect data from your appliances for the 

Appliance Power Table 



Appliance 


Watts or 
amps and volts 


Hours used 
per month 


Monthly 
cost 


Cost per 
hour of use 


Coffee maker 










Microwave oven 










Oven 










Range 










Dishwasher 










Refrigerator 










Freezer 










Clothes dryer 










Clothes washer 










Electric blanket 










Stereo 










Television 










Lawn mower 










Electric saw 










Lighting 










Sewing machine 










Air conditioner 










Dehumidifier 










Electronic air 
filter 










Fan 










Electric furnace 










Electric hot water 
heater 










Waterbed heater 










Swimming pool 
filter 











Listing 2: A sample run using the Power program. 

THIS PROGRAM CALCULATES POWER USAGE AND COSTS 
PROGRAM OPTIONS: 

1* CALCULATE COST PER KILOWATT HOUR 

£♦ CALCULATE APPLIANCE POWER USAGE AND COST 

BELECT 1 OR 2 J_ 

ENTER ENDING KWH READING FROM ELECTRIC BILL 66239 

ENTER BEGINNING KWH READING FROM BILL 62213 

ENTER AMOUNT OF ELECTRIC BILL 170*71 

OPTIONS 

1 ♦ CALCULATE WATTS 
2* INPUT WATTS 

SELECT 1 OR 2 _1_ 

ENTER APPLIANCE VOLTAGE 120 

ENTER APPLIANCE AMP DRAW 3_ 

ENTER NUMBER OF HOURS USED IN TIME PERIOD 100 

Listing 2 continued on page 54 
52 October 1979 © BYTE Publications Inc 



do not include these additional costs. In the 
sample run, we will enter $170.71 for the 
total cost of electricity. 

The program now presents two more 
options: to calculate watts from amps and 
volts, or to input watts. In the example we 
wish to calculate watts, so we enter 1. We 
are prompted to enter the appliance voltage, 
in this case 120. Then we enter the amps, in 
this case 3. The number of hours used a 
month is estimated at 100. 

The calculations are quickly done and 
four results are presented. The inputs in 
this example were for a sewing machine and 
now I know what it's costing me to keep 
repairing my 5 year old's torn clothes. The 
first result shown is the cost per kilowatt- 
hour, which was calculated from the utility 
bill. Notice the E-02 at the end of the num- 
ber. This floating point notation means that 
you move the decimal point two places to 
the left for a dollars and cents answer. 
Therefore, the utility company rate on my 
last bill averaged out to be $0.04 per kilo- 
watt-hour of use. 

The next result is the number of kilowatt- 
hours of power used for the sewing machine. 
This is the product of the kilowatt draw 
times the estimated hours of use. Your 
electric meter records the total number of 
kilowatt-hours of usage; this is what appears 
on your bill. In this case, 36 kWh of my 
total usage were due to the sewing machine. 

The monthly cost of using the machine is 
shown next. In thisexample, it cost me $1.53 
to operate my sewing machine for 100 hours 
during the month. That doesn't seem too 
bad. In fact, the next result presented shows 
me that one hour's usage of the machine 
costs me about 1/2 cents. That's a bargain! 

The program now asks if we wish to cal- 
culate costs for another appliance. To do so 
we enter Y. 

The program already has calculated the 
cost per kilowatt-hour, so we loop back to 
the options for entering or calculating 
wattage. The next appliance I want to check 
is a portable color television for which I 
know the wattage. So, we enter option 2 for 
this prompt. 

The wattage for the television is 240, so 
this figure is entered as prompted. The esti- 
mated hours of usage in a month are 200. 
The results show me that running that tele- 
vision for 200 hours cost me $2.04 and the 
cost for each hour's use was $0.01. 

I want to enter a third appliance, a heat 
pump air conditioner. The watts are 6,300 
and the estimated hours of use were 300. 
The results are significant, revealing a 
total cost of $80.14 and a cost per hour of 
$0.27. You can see the implications for 
conservation. 




TRS-80 @ Owners • • • ACS makes it easy for you 

to add-on disk storage with mini-disk storage 

systems •.•102k bytes of additional on-line storage. 



• COMPARE AND SAVE 

The FD-200drive from ACS lets you store 102.4k bytes of 
data on one side of the disk. ..compared to only 80k bytes 
on a TRS-80®mini-disk drive. ...and 102.4k bytes on the 
other side, as well. That's almost 205k bytes per mini-disk, 
something you can't do with a TRS-80®drive. 
Completely compatable with your TRS-80? Can be used 
asNo.0, 1,2 or 3-drive. 

4-DRIVE CABLE $35.00 



• AVAILABLE IMMEDIATELY 

Ready when you are ...one-, two-, three-, and four-drive 
systems from ACS. 

• NEW LOWER PRICE 

Good news from ACS. ..a single-drive 
FD-200™cost you only $375. 

Add $20.00 for DOS 3.0 disk 
after September 1, 1979. 




Circle 9 on inquiry card. 

S Orders received by 6:00 p.m. shipped 
within 3 days on Master Charge, Visa, 
Certified Check or Money Order. 
Personal Checks require 14 days to 
clear. No C.O.D. Collect calls not 
accepted. All Hardware warrented for 90 days. 
Software guaranteed for replacement only. 
Prices subject to change without notice. 

Automated 

Computer 

Software service 

(615) 244-2798 

D8nnri|]ij3af 1EljE]flrJ inc. 

625 Main Street • Nashville, TN 37206 



ORDER NOW AND SAVE! 

Send Check or Money Order payable to — 

ACS • 625 Main Street • Nashville, TN 37206 

Quan u Description Unit Price Total 



























HAND 
TENN 


LING CHARGE $1.50 

. RES. ADD 6% SALES TAX 


TOTAL 





D Check 

□ Money Order 
DMasterCharge 

□ Visa 

Card No. 



Exp. Date- 



Name 



Address 
City „ 



State 



Zip, 



Listing 2 continued: 

COST PER KILOWATT HOUR OF USAGE «« ^2101888E~02 
KILOWATT HOURS OF POWER USAGE «= 36 
MONTHLY COST OF THAT POWER USAGE** 1« 526468 
COST PER EST* HOUR'S USE « ♦01526468 

DO YOU WISH TO CALCULATE ANOTHER APPLIANCE <Y/N>? _Y_ 

OPTIONS 

1. CALCULATE WATTS 
2* INPUT WATTS 

SELECT 1 OR 2 J2_ 

ENTER APPLIANCE WATTAGE 210 

ENTER NUMEJER OF HOURS USED IN TIME PERIOD 200 



COST PER KILOWATT HOUR OF USAGE * 4.2401888E-02 
KILOWATT HOURS OF POWER USAGE ■" 18 
MONTHLY COST OF THAT POWER USAGE*' 2*0352906 
COST PER EST* HOUR'S USE ■ 1 ♦ 0176453E---02 
DO YOU WISH TO CALCULATE ANOTHER APPLIANCE (Y/N)?JT_ 

OPTIONS 

1* CALCULATE WATTS 
2* INPUT WATTS * 

SELECT 1 OR 2£ 

ENTER APPLIANCE WATTAGE 6300 

ENTER NUMBER OF HOURS USED IN TIME PERIOD 300 

COST PER KILOWATT HOUR OF USAGE «■ 4.2401888E-02 

KILOWATT HOURS OF POWER USAGE « 1.890 

MONTHLY COST OF THAT POWER USAGE" 80 ♦139368 

COST PER EST* HOUR'S USE * ♦ 2671318 9 

DO YOU WISH TO CALCULATE ANOTHER APPLIANCE <Y/N>? N 



Pay As You Turn On 

After you have calculated individual 
power costs for appliances, the next step is 
to use the information to conserve energy 
and lower your bill. The first thing that 
should strike you is how little most appli- 
ances really cost to operate per month. The 
second impact will be how expensive certain 
other items are to use. 

Look at the appliance table and decide if 
you can decrease the hours used for these 
most costly items. Set a lower hour goal and 
then recalculate the monthly cost. When you 
think you have a workable goal that will 
help your budget, try to realize those desired 
hours of usage. Achieving the goals will 
demand your own personal determination 
and discipline. The Power program can show 
you problem areas and help establish targets 
and priorities, but that's where your battle 
really begins. 

Perhaps, on/off timers would be helpful 
in regulating certain devices. Another 
approach that has been attempted is a "pay 
as you turn on" method. With the cost per 
hour of use figure from the program, you 
can charge yourself accordingly for the 
privilege of turning on specific appliances, 
such as televisions, washing and drying 
machines, ovens, ranges, electric lawn 
mowers or stereos (even your personal com- 
puter, heaven help us!). 

Putting pennies into a bank on top of the 
television may sound a bit primitive but 
perhaps it would make one check the tele- 
vision listings in the paper more carefully 
before switching on the set and turning the 
selector to see if there's anything on worth 
watching. 

I hope the Power program will aid in 
energy conservation. But its informational 
possibilities, alone, make it useful. At least 
you can know more clearly which devices 
are most power hungry and by how much. 
This is certainly better than receiving your 
electric bill and simply grumbling in the 
dark." 



c 



Oli 



KIM ANALOG INPUT 

Analog to Digital Conversion System for the KIM Computer 



Give Uie KIM the ability to sense; 
neasurer and control t*-»e uorlci around 
it. with DAM SYSTEMS nodules. Just plus* 
Uie KIMSET1 into the KIM to set 16 
channels of analos input. Screw 
terminals are provided for each channel 
so you can hook up Joysticks* pots* or 
whatever appropriate sensors ucxj have. 

Each of the 16 analoa inputs* in 
the vsn&e of O to 5.12 volts* is 
converted to a decimal nuni>er between O 
and 255 (20 millivolts F^r^ count-). 
Conversion time is 100 niicrosconds. 

The K1MMOD provides one user port 
as well as a HAM SYSTEMS port,. 

Software is provided. 




3EN9QW» 

'TEMPERATURE 
VELOCITY 
PRESSURE 



ANAKAN];] 



i-AiMiei 

1-KIMMOD 
t -CABLE A24 
1-MANMODl 
1-POW1 



KIMSET1 

16 ANALOG INPUTS - 8 BITS - 100 MICPIOSCC 



24INCH INTERCONNECT CABLE 



POWER MOOULE 



JX - 

f^* 1 TRS-BO MOO 
TRS-BO INTERFACE 



KIMSETla 
KIM SET 1. 



for 110 VAC $285 
for 230 VAC $ 298 



I SPLAY MODULE 



r flS-252 I 
I MOD J 



GPi8<iEEE-4ee> 



Ordar director contact yourlocal computantora. 

CONNECTICUT microCOMPUTER , Inc. 

150 POCONO ROAD 

BROOKFIELD, CONNECTICUT 06804 

TEL: (203) 775-9659 TWX: TLX: 7104560052 

\ ANO M/C ACCEPTED - SEND ACCOUNT NUMBER, EXPIRATION DATE AND SIGN ORDER. 
S3 PER ORDER FOR SHIPPING a HANDLING - FOREIGN ORDERS ADD 10% FOR AIR POSTAGE 



54 



October 1979 © BYTE Publications Inc 



Circle 76 on inquiry card. 



Introducing the First 

CP/M Compatible Desktop Computer 

with Color Graphics. 



The new Intecolor 8063 is the first desktop computer to combine the 
advantages of color alphanumerics and graphics with the versatility 
of CP/M. For unprecedented flexibility at a price within 
the reach of most small businesses, the Intecolor 
8063 is the answer. 

What does CP/M mean to you? An abundant 
selection of readily available software. There are 
CP/M programs for most business applications, 
minimizing the need for specially-prepared 
software. 

Load the CP/M Operating System Disk and 
you're ready to run any CP/M 

program (without modifica- 




tion), whether it's in BASIC, FORTRAN IV, or any other programming 
language. Add the superb readability and improved comprehension 
of color graphics and you've got unparalled desktop performance. 

Standard features of the Intecolor 8063 include a 19" color display 
with an 80 character x 48 line format, 32K of user RAM (expandable 
to 48K), and a dual 8" floppy disk drive with 591K bytes of storage 
(expandable to 1.1 megabytes). 

Plus you get ISCs color version of Microsoft- Business BASIC on 
floppy disk. All for just $5995* Incredible? Indeed, and only from ISC, 
the world's largest supplier of color CR7 termi nals. 

If your application calls for it, Microsoft FORTRAN IV is available 
from ISC for $150. 00. :: 

So if you want to spend more time computing than programming, 
contact your ISC sales representative today. Or check out the 

8063 at selected computer dealers. CP/M in color. Only from ISC. 




U.S. Domestic prices. Unretouched photo of screen Furniture not included CP/M is a 

ISC SALES REPRESENTATIVES: AL: 205/883-8660. AZ 602/994-5400. AR: (TX) 214/661-9633. CA: Alhambra 213/281-2280 Goleta 805/964-8751 . Irvine 714/557-4460. Los Angeles 213/476-1241. 

Mountain View: 4 15/964-9300. San Diego 714/292-8525. CO: 303/779-0666. CT 203/491-3585 DE: (PA) 215/542-9876. DC: (VA) 703/569-1502. FL: Ft Lauderdale 305/776-4800. 

Melbourne 305/723-0766. Orlando 305/425-5505. Tallahassee 904/878-6642. GA: 404/449-5961. HI: 808/524-8633 ID: (UT) 801/973-7969. IL (No ) 312/564-5440. (So ) (MO) 816/765-3337 

IN: (ID 312/564-5440. IA: (MO) 816/765-3337. KS: (MO) 816/765-3337 KY: (OH) 513/429-9040 LA 504/626-9701 ME (MA) 617/729-5770. MD: (VA) 703/569-1502. MA" Cambridge 617/661-9424. 

Winchester 617/729-5770. Ml: 313/227-7067, MN: 612/822-21 19. MS: (AL) 205/883-8660. MO: 816/765-3337. MT: (CO) 303/779-0666 NB (MO) 816/765-3337. NH: (MA) 617/729-5770 

NJ:(No )20T/224-6911,(So ) 215/542-9876. NV: (AZ) 602/994-5400. NM 505/292-1212, NY: Metro/LI 20 1/224-691 1 . Fairport 716/223-4490, No Syracuse 31 5/669-2651 . Utica 315/732-1801. 

NC: 919/682-2383. ND: (MN) 612/822-21 19, OH: Cleveland 216/464-81 13. Columbus 614/436-2051 Dayton 513/429-9040 OK (TX) 214/661-9633, OR. 503/620-5800 PA: East 412/922-51 10. 

West 215/542-9876. Rl: (MA) 617/729-5770, SC: 803/798-8070. SD: (MN) 612/882-21 19. TN: 615/482-5761. TX: Dallas 21 4/66 1-9633. El Paso Area (Las Cruces. NM) 505/523-0601 . 

Houston Only 713/780-251 1. UT: 801/973-7969. VT: (MA) 617/729-5770. VA: 703/569-1502. WA: 206/455-9180 WV (PA) 412/922-5 1 10. Wl: (IL) 312/564-5440 WY: (CO) 303/779-0666. 

EUROPEAN EXPORT SALES: EUROPE: (MA) 61 7/661-9424, BELGIUM: Brussels 02-242 36-04. FRANCE: Rueil Malmaison 749-40-37 GREECE Athens 642-1368. ITALY Roma 805-647/872-457, 

THE NETHERLANDS: Poeldijk 01 749-7640. SPAIN: Barcelona 204 1 7 43. SWEDEN Vallingby 08-380-370 SWITZERLAND: Mutschellen 057-546-55. UNITED KINGDOM Bournemouth 0202-293-1 15. 

WEST GERMANY: Munchen 089-31881, AUSTRALIA & NEW ZEALAND: Auckland 814-9385. Canberra 58-181 1 , Chermside 59-6436. Melbourne 03-543-2077. Sydney 02-808-1444. Wellington 64-4585 

CANADA: Datamex Ltd (Distributor) Dorval 514/636-9774. Ottawa 6 13/224- 1391. Toronto 416/787-1208. Vancouver 604/684-862.5' CENTRALS SOUTH AMERICAS CARIBBEAN: (GA) 404/394-9603 

MEXICO: Monterrey 564-876. FAR EAST (CA) 213/382-1 107 HONG KONG: 5-74221 1 JAPAN Tokyo 402-8596 TAIWAN Taipei 02-7026284 MIDDLE EAST ISC PO Box 48541 Atlanta. GA 30362 

404/581-0284 IRAN: Tehran 891 148. ISRAEL Tel Aviv 266-291. KUWAIT Kuwait 438 180/1/2 LEBANON Beirut 221731 2601 10 SAUDI ARABIA Jeddah 27790. Ryadh 25083-39732 

For sales and service in other countries contact ISC headquarters in Norcross. GA. USA 




intelligent Systems Corp.* L 



Circle 181 on inquiry card. 



a 5965 Peachtree Comers East G Norcross, GA 30071 G Telephone 404-449-5961 D TWX 810-766-1581 

BYTE October 1979 55 




includes H8 Computer with 1 6K memory, 
four-port serial I/O and operating software, plus H17 Floppy 
Disk System (shown here with optional second drive) and 
H19 CRTTerminal - all in kitform. 



• 8080A CPU has more software 
written for it than any other CPU 

• 7 plug-in board positions for flexi- 
bility in configuring your system 

• Up to 65K memory capacity 

• Front panel keyboard for direct ac- 
cess to registers and memory 

$289 kit purchased separately. Was 
$379. You save $90. 
$349.00 assembled 



• Instant access to programs and data 

• 1 02K bytes storage area 

• 250 mS typical random access time 



• Includes interface controller board 

$495.00 kit purchased separately 
$550.00 assembled 



• Z80 microprocessor-controlled 

• 25 x 80, upper and lower case 

• Direct cursor addressing 

• 8 user-programmable keys 

$675.00 kit purchased separately 
$995 assembled 



Special 5% discount applies to all 
software, memory and interface 



boards when purchased with the H8 
system. 

Seven plug-in board positions on the 
H8 let you configure any combina- 
tion of memory and l/O's that suits 
you. Heathkit memory boards come 
in 16K, 8K and 4K increments. Inter- 
face boards are available for parallel, 
serial and cassette l/O's. 



Software for the H8 Computer in- 
cludes operating systems software, 
MICROSOFT™ BASIC, FORTRAN, 
wordprocessing, plus innovative ap- 
plications software for business and 
pleasure. 



An extensive library of programs is 
available to owners of Heathkit Com- 




Circle 163 on inquiry card. 



puters through the Heath User's 
Group (HUG). The experience of this 
computerite group can help you get 
the most from your computer. 



You get the most thorough documen- 
tation ever written when you buy 
your Heathkit Computer. So it's easy 
to get your system assembled and 
operating quickly. 

And you get one of the most reliable 
service organizations after you buy. 
More than 55 service locations 
throughout the U.S., plus a factory 
service phone give you fast access to 
experts when you need them. 



Computers, peripherals, software and 
accessories — in kit or assembled 
form— you'll find them all at your 
Heathkit Electronic Center. You'll 
even find educational support like 



the special self-instruction programs 
that teach you BASIC and Assembly 
languages programming. 



Alexandria, VA 
Anaheim, CA 
Atlanta, GA 
Baltimore, MD 
Boston, MA 
Buffalo, NY 
Chicago, IL 
Cincinnati, OH 
Cleveland, OH 
Columbus, OH 
Dallas, TX 
Denver, CO 
Detroit, Ml 
El Cerrito, CA 
Fair Lawn, NJ 
Frazer, PA 
Hartford, CT 
Houston, TX 
Indianapolis, IN 
Jericho, NY 
Kansas City, KS 
Los Angeles, CA 
Louisville, KY 
Miami, FL 
Milwaukee, Wl 
Minneapolis, MN 



Write for a FREE Heathkit Catalog 
containing the complete line of Heath- 
kit Computers, pius nearly 400 other 
electronic kits for your home, work or 
pleasure. 

Heath Company, Dept. 334-580, 

Benton Harbor, Mich. 49022 

New Orleans, LA 
Norfolk, VA 
Ocean, NJ 
Oklahoma City, OK 
Omaha, NB 
Philadelphia, PA 
Phoenix, AZ 
Pittsburgh, PA 
Pomona, CA 
Providence, Rl 
Redwood, CA 
Rochester, NY 
Rockville, MD 
Sacramento, CA 
Salt Lake City, UT 
San Antonio, TX 
San Diego, CA 
San Jose, CA 
Seattle, WA 
St. Louis, MO 
St. Paul, MN 
Tampa, FL 
Toledo, OH 
White Plains, NY 
Woodland Hills, CA 

"Units of Schlumberger Products Corporation. Prices stated here 
are mail order and may be slightly higher at retail locations. CP-169 




Gispcis's Circuit Cellar 

Copyright © 1979 by Steven A Ciarcia. All rights reserved. 



Self -Refreshing LED 
Graphics Display 



Steve Ciarcia 

POB 582 

Glastonbury CT 06033 



Light emitting diodes (LEDs) have 
been in use for a number of years. 
When first introduced they, like tran- 
sistors, were very expensive, and 
were used only for special applica- 
tions. Fortunately, manufacturing 
techniques have advanced to a point 
where a single red LED costs less than 
$0.10. A further achievement is the 
availability of yellow, orange, and 
green LEDs. 

When we think of graphics dis- 
plays, we usually think of television- 
type video displays. All of the more 
popular personal computing systems 
have video displays, with the majori- 
ty of them supporting graphics. It is 
not inconceivable that we will even- 
tually see economical, flat, high- 
resolution LED displays which have 
the same capabilities as the current 
cathode ray tube displays. A manu- 
facturing breakthrough will be re- 
quired before this is a reality. 

There have been some military pro- 
grams requiring the construction of 
such displays. A few years ago, while 
still a member of the military-indus- 
trial complex, I worked on a bid to 
build a 10 by 10 foot LED display 
comprised of 792,000 discrete LEDs. 
My calculations at the time predicted 
that it would take about 3 kW of 
power to run. 

This article is not going to describe 
how to replace your television screen 



with a flat panel LED display, but will 
attempt something a bit more 
modest. The concept of LED graphics 
is not that far in the future. While 
we're waiting for technology to catch 
up with interest, we can experiment 
with the concept on a limited scale 
and analyze the various logic alter- 
natives. A side benefit is the construc- 
tion of an 8 by 16 LED display as 
your newest peripheral device. 

Light Emitting Diode Displays 

We all know about LEDs, correct? 
They are the little red things that 
glow when a current is passed 
through them. Most of us even re- 
member to use a resistor to limit the 
average current to around 20 mA. 
What many people don't realize is 
that an LED can also be driven by 
much higher currents if pulsed on and 
off, rather than run continuously. 
This is a significant fact to keep in 
mind when building a large LED dis- 
play. 

Figure 1 shows standard methods 
for using transistor-transistor logic 
(TTL) to drive LEDs. The TTL gate 
can be used to either sink or source 
current to the LED without external 
transistors. In general, TTL devices 
will sink 16 thru 20 mA, while some 
go as high as 50 mA. (It's best to 
check manufacturer specification 
sheets if you are unsure.) Open col- 



lector gates, shown in figures la and 
lb, can be wired in either series or 
shunt configuration. 

In figure la the circuit is completed 
and the LED is lit when a logic 1 is ap- 
plied to the inverter input. The low- 
level output of the gate also provides 
a path to ground for the LED. Figure 
lb, on the other hand, is a shunt cir- 
cuit and exhibits an opposite logic. 
Normally current flow is through the 
LED, and it is lit. When a logic 1 is 
applied to the inverter, the resultant 
low output shunts the current to 
ground, shutting off the LED. There 
are advantages to both methods 
which I will discuss later. 

Logic parts such as the 7400 NAND 
gate or 74LS04 inverter have active 
pull-up totem pole outputs. Rather 
than just a single NPN transistor like 
the open collector types, these have 2 
transistors connected in series be- 
tween the supply voltage V cc and 
ground. Depending upon the logic 
state, only 1 of the 2 transistors will 
be conducting. Generally speaking, 
series and shunt LED drivers are more 
easily built with open collector 
devices. Figure Id, however, cannot 
be accomplished with open collector 
logic, because this circuit depends 
upon the internal active pull-up resis- 
tance to source current to the LED. 
The exact amount of available cur- 
rent depends upon the logic type. 



58 October 1979 © BYTE Publications Inc 



LOGIC TYPES 


I OUT LOW 


74 S < 


20mA 


74 H < 


20mA 


74 < 


16mA 


74LS< 


8 mA 


74 L < 


3.6mA 


CMOS 




4049 > 


3mA 


CMOS 




4009 > 


8mA 





OPEN COLLECTOR GATES 

V C C 

A 



o 



> 



> 



V CC 



m 



SERIES 



SHUNT 



ACTIVE PULLUP- TOTEM POLE GATES 



EXTRA PULLUP < 

MAY BE REQUIRED-*? 



> 




SERIES 



SERIES-LED 
POWER SUPPLIED 
THROUGH GATE 



Figure 1: There are several ways of driving LED displays. A method employing a series circuit with an open collector gate turns on the 
LED when a logic 1 is applied to the inverter input. The shunt version of the open collector circuit turns on the LED when a logic is 
applied to the inverter input. 

If active pull-up totem-pole gates are used (the kind found in nearly all TTL gates), the circuits may be wired only in series. In figure 
1c the voltage needed to power the LED comes from the supply voltage V cc . In figure Id the LED is wired in series, and the power to 
light the LED is supplied through the logic gate. Typical output currents are given for various types of logic in the accompanying 
table. 



Returning to the discussion of dis- output. It is suitable as a bar-graph 

plays using LEDs, it is quite simple to display, 8-level indicator, or 8-item 

take the logic concepts of figure 1 and annunciator. We always think first of 

put them to use. Figure 2 outlines a using the video display to display the 

simple 8-bit LED driver with latched results of a logic decision, but if the 



DECODE I/O 
WRITE STROBE 



C^ 



TJ- 



DATA BUS 



D7 O 



D6 O- 



D5 C^ 



D4 C>~ 



D3 O 



D2 O 



Dl C>- 



D0 O- 



22 



21 



10 



15 



16 



23 



G2 G4 
Dl Ql 



D2 
D3 
D4 
D5 
D6 
D7 
D8 



ICI 
74100. 



Q2 
Q3 
Q4 
Q5 
Q6 
Q7 
Q8 



20 



"ft 



-ft 



+ 5V 
270 A 

TYPICAL 

OF EIGHT 

VA 



8-BIT 

LED 

DISPLAY 



+ 5V PIN 24 
GND PIN 12 



Figure 2: A simple 8-bit, latched-output LED display, suitable for use in computer- 
controlled bar graphs or 8-level indicators. 



result is simply yes or no, the binary 
answer can be signified on an LED. In 
my own case, such an 8-bit display is 
used to keep track of enabled peri- 
pherals and I/O (input/output) chan- 
nels. 

Larger LED Displays Have 
to Be Multiplexed 

Using 8 LEDs probably doesn't 
excite too many people, especially 
when I started out with a number like 
792,000. The 8 LEDs can, of course, 
be expanded to 64 by multiplying this 
same circuit 8-fold. With an average 
current of 15 mA for each LED and 
100 mA for each 74100 dual 4-bit 
latch, the grand total to run it is 
slightly under 2 A at 5 V. This fact, 
and the necessity of having 64 resis- 
tors as well, leads us to consider some 
other means of driving the LEDs. 

The logical alternative to contin- 
uous operation is time-multiplexed 
operation. For an LED with a 20 mA 
continuous current rating, this means 



October 1979 © BYTE Publications Inc 59 



im 

I MicroPro 



MicroPro International Corporation 

zL\ofessionai ijuality <uoflwa\e you Can Count On, JL 

Proudly Presents 



ow: 




T.M. 



Now, you can instantly turn your microcomputer into an incomparable word processor. 

Hundreds of delighted users have thrown away their pencils and are using the first truly 
professional and complete word processor ever available on a microcomputer, WORD-STAR. 

Everything you've heard, read, wished, thought about- it's here! it's now! and it's Dynamite! ! ! 

Just look at the product overview copies from our 200 page manual (prepared and printed 
using WORD-STAR). 



Overview 



is entered w "I 1 , and ^y 

the initial ^"a^i later in n 

en tered »B »« concur «■ 

function ^^isbcinq e * 
while another 
^e following^ 

, ttia q: each PM 

A, page nut« «f "& 
^inatloncontral-.^i 



www* iv ^adjust in | 



- breaks 



L 



2-2 



SBCTIOH 2. AM overview OP WordStar 



eaar -"••■^.ssssj: s: saw xjbs 



WordStar's edit PDHCTIOR i- inn.* ,. 

stored on disKetU Features of th° < 2S , '**" d alt " documents 

following; ces ot tne edit function include the 



are quickly 
yZ™¥^;r^^\&«°?*V<* on the screen a S , t w ,l, 



copy appear unw 
accomplished with 

Word Wca p. paragraphs 

les and r«ni n u„. . t . , 



beYore actually p intYno "J?" and COrr < 
h ^e aid of ^fiJ^a^E"*? 



■■"^«S6EiSB65^ 



key is used only to find^ate XI r „rt .Y 10 Just com P let < 



ne just completed. The RETURN 

SffiHjSSKSBEfifWi 

spaced or triple spaced a , J 9 r t^nat, and, opt i — ]• lJllM , 



n to the end of 



-te to and read Fro, -«SSZU^^Jgga«« Sl g R ^5 



Section 2 

Wo*—V-- leS with other 

share Ul» kf 



share tue & 






• ■■■: ' . :- . 



WordSt'' 

iuBt*\V, w idths » 
user-detin &0 ^. 
| SubscnP"' .fry 




I ^ 










MicroPro Price List: 



Software/Manual 



Software/Manual 



Word-Star™- 

Word-Master TM - 

Tex-Writer TM - 



$495/40 
$150/25 
$ 75/15 



Super-Sort l TM - 
Super-Sort ll TM - 
Super-Sort lll TM - 



$250/25 
$200/25 
$150/25 



For more information and the name of your nearest dealer, contact MicroPro International Corporation. 

Dealer/Distributor/O.E.M. Inquires Invited 



60 BYTE October 1979 



MICROPRO INTERNATIONAL CORPORATION 
1299 4th Street, San Rafael, California 94901 
Telephone (41 5) 457-8990 Telex 340388 



Ihe most «iRipfete 3 trfepgfedL w«3 preednhg 

ff!w<Qlf'# ©ptem ®ve>r seen on a rofeir©Q©ropyfer, 




7©Pr© MsrreitoMl C©7p©raton 

idly software you can count on, now 7 



1299 Fourth Street, San Rafael, California 94901 • Telephone (41 5) 457-8990 • Telex 340388 



1.00 





.50 




.4 




.30 


PEAK 




CURRENT 


.20 


IN AMPERES 


.15 



.10 



.05 




REPETITION RATE 



100 

PULSE DURATION 
IN MICROSECONDS 



10,000 



Figure 3: A typical curve for a T-l 3 A LED showing the relationship between maximum 
current and pulse width for specified pulse rates. 



+ 5V +5V +5V + 5V 



►75 



-75 



>75 



LATCHED 
8-BIT 
OUTPUT PORT 



B7 0~ 



B6 C> 



B5 O- 



B4 O- 



B3 £>- 



B2 C^ 



Bl O- 



B0 O^ 



ICI 

7406 



1> 









All 




A21 




A3I 



A4I 



AI2 



A22 



A32 




A42 




AI3 



A23 



A43 



LI-LI6 
GENERAL 
PURPOSE 
RED LED's 





+ 5V 


GND 


ICI 


7406 14 


7 


IC2 


7407 14 


7 



IC2 

J12I J 



Figure 4: A simple 4 by 4 LED matrix which is software driven. 



we'd raise the peak current (I k ) and 
reduce the duty cycle. If the duty 
cycle were 25 % , then 4 LEDs could be 
multiplexed through the same driver, 
and all would appear to operate con- 
tinuously. The more LEDs in the 
loop, the lower the duty cycle. To 
maintain the same brightness, the 
current is raised again to produce a 
reasonable average current. It reaches 



a point of diminishing returns when 
the duty cycle becomes so low that 
the peak current required to maintain 
a sufficient average current burns out 
the LED due to excessive power dis- 
sipation. 

For pulsed applications, a curve of 
maximum peak current, pulse width, 
and repetition rate can be used to 
determine the maximum recom- 



mended operating conditions. Figure 
3 illustrates a typical curve for a 
T-l 3 /4 LED such as that used in this 
article. It is determined by comparing 
peak and average junction temper- 
atures during strobed operations, and 
maintaining a limit equivalent to the 
maximum allowable DC conditions. 
At any specified repetition rate, the 
relationship between maximum cur- 
rent and pulse width is shown. If, for 
example, 5 LEDs were to be multi- 
plexed, and brightness maintained 
equivalent to a 10 mA continuous 
current, each would have to be pulsed 
for 1 ms 100 times a second, with a 
peak current of 100 mA. 

Figure 4 shows a simple 4 by 4 LED 
matrix which demonstrates this con- 
cept. It also serves to point out some 
of the limitations of this bare-bones 
approach. A latched 8-bit parallel 
output port is all that is necessary to 
run this display. Four bits define the 
column and 4 bits define the row. 
Multiplexing is done in software. 

To turn on the LED at location 
A22, bits B2 and B6 would be set to a 
logic 1, while lighting A43 would re- 
quire a combination of bits Bl and 
B4. The logical process is essentially 
an extension of the shunt circuit 
described in figure 1. 

A microprocessor can be used to 
control an X,Y addressable array of 
LEDs. The external circuitry required 
is minimal, and relatively little pro- 
cessor time is used to refresh the 
array. The technique used is to 
periodically strobe a row and column 
address into an output latch. At a 
predetermined later time, new infor- 
mation concerning the next display 
point is sent out to the latch. If this 
addressing can proceed faster than 
100 times per second, then the entire 
display will appear to be DC driven. 
Usually, refresh timing is handled 
through interrupts. 

There are important considerations 
to keep in mind when building this 
type of circuit. 7406 and 7407 inver- 
ting and noninverting drivers are not 
high current drivers, but they can 
sink 40 mA. They were chosen 
because they are cheap and available. 
If brightness is a problem and peak 
current has to be increased, these 
drivers can be replaced with tran- 
sistors which have a higher current 
rating, or more gates of the same type 
can be added in parallel. The fact 



62 October 1979 © BYTE Publications Inc 



Graphics for small systems 
were too expensive... 

tm Until Now 



Circle 171 on inquiry card. 



HIM 



J digital plotters 



The perfect small system output device 

• Displays data in easy to read graphical 
format 

• Both serial and parallel inputs built-in 

• Uses standard 8V2" x 11" paper 

• Plotting speed up to 2.4 ips 

• Resolution of both 0.01 and 0.005 in. 

• Baud rate and step size easily changed 

• Completely assembled and ready to use 

• Priced at $1085* 



Circle 1 72 on inquiry card. 

turn 



TM 




digitizers 



The perfect small system input device 

• Resolution and repeatability of 0.005 in. 

• Origin is completely relocatable 

• RS232C and 8 bit parallel interface se- 
lectable at the connector 

• Accuracies of ±0.015 in. (0.4mm) 

• Optional LC display shows 

actual values being inputted 

• Digitizing surface 11" x 11" 

• Priced at $795* 



1 H6S0I 




*U.S. Domestic Price Only 

TM Trademark of Houston Instrument 



For rush literature requests 

or local sales office information only, 






y tiouston 1 

~ "■ iiM^ DIVISION OF ■AUSCH&LOMI® 

instrument I 

ONE HOUSTON SQUARE AUSTIN, TEXAS 78753 
(51 2) 837-2820 TWX 91 0-881 -2022 

"the graphics - recorder company" 



persons outside Texas call toll free 1-800-531-5205. 



ci idhdc a ki nccirc Rochesterlaan 6 8240 Glstel Belgium 
bUKUHbAN Ur-NOb Phone 059/277445 Telex Bausch 81399 



BYTE October 1979 63 




Photo 1: The prototype board for the light emitting diode (LED) display showing all of 
the LEDs turned on. A piece of red plastic is held in front of the display to increase 
visibility. 




Photo 2: 
LEDs. 



The prototype board displaying GO^ without a red filter in front of the 



collector devices 



that they are open 
readily allows this. 

The second concern is lamp 
brightness. LEDs operated at low cur- 
rents can have widely varying bright- 
ness. It is a good idea to pretest and 
select LEDs which appear to have the 
same intensity at a specific current. 

Build a Self -Refreshing 
LED Display 

So far I've discussed arrays which, 
because of their size, have limited ap- 
peal and application. A 4 by 4 display 
is still in the realm of indicator, rather 
than information display panel. To 



be really effective it should at least be 
able to display an alphanumeric char- 
acter. Such a requirement dictates a 
minimum matrix size of 5 by 7. This 
adequately displays all upper-case 
letters and numbers. But if you are 
going to have 5 by 7, why not 10 by 7 
for 2 letters and so on? 

At some point we have to be 
rational. If it were that easy to make 
200 by 200 LED arrays, someone 
would be making them now. In my 
case I needed a multipurpose flat 
panel display that could flash a 
message (even if only 1 letter at a 
time) and serve as a sophisticated 



annunciator for my alarm system. 
The latter was the true reason for the 
use of LEDs. 

A transparent sheet with an outline 
of my security system is placed over 
the LED array. Significant infor- 
mation is indicated by flashing the 
LED at the point within the array that 
corresponds to appropriate sensor 
activation. It is quite interesting to 
watch the approach of a car down the 
driveway as a series of LED indicators 
track it. 

A 4 by 4 display was too low in 
resolution, and while a 5 by 7 display 
allowed ASCII alphanumeric dis- 
plays, it was also a bit limited. Con- 
sidering the hardware techniques 
employed and relative indifference to 
refresh considerations, I settled on an 
8 by 16 display. 

Photos 1 and 2 show the completed 
display prototype. The prototype 
consists of 128 red LEDs arranged in 
16 columns of 8. Photo 1 illustrates 
them all lit. A red plastic filter is used 
to enhance the display. Photo 2 
shows it without the filter. 

The schematic diagram for this 
interface is outlined in figure 5. As 
with the majority of my designs, I've 
made this to be processor, and pro- 
gram execution-speed independent. It 
works equally well with assembly 
language or BASIC systems, pro- 
vided that a program can directly ad- 
dress output ports. The interface is a 
stand-alone peripheral. Once loaded 
with display data, refresh operation is 
locally controlled, and the computer 
can even be shut off without disturb- 
ing the display. 

Self-Refreshing — 
How Does It Work? 

There are 3 major hardware sub- 
systems in the 10-chip circuit: input 
decoding, data storage, and refresh 
scanning. To the computer, this inter- 
face appears as 16 output port ad- 
dresses numbered 112 thru 127 deci- 
mal (remember BASIC uses decimal 



Number 



Type 



+ 5V GND 



IC1 


7430 


14 


7 


IC2 


7404 


14 


7 


IC3 


74121 


14 


7 


IC4 


7489 


16 


8 


IC5 


7489 


16 


8 


IC6 


7406 


14 


7 


IC7 


7406 


14 


7 


IC8 


74157 


16 


8 


IC9 


7493 


5 


10 


IC10 


74154 


24 


12 



Table 1: Power-wiring table for figure 5. 



64 October 1979 © BYTE Publications Inc 




Apple lets you get 
personal with Pascal. 



There's only one logical way to find out what 
a person wants in a personal computer. 

Ask the person who'll be using one. 

At Apple, we've been very successful at 
identifying just what people look for in 
computers. And then providing them 
with it. 

In spades. 

For serious enthusiasts, this means 
making available sophisticated innovations 
that are often conspicuously absent from 
other personal computers. 

Like Pascal. 

Apple II is one of the few personal com 
puters that has it. And when you turn this 



page and feast your eyes on the many advantages 
this high level, general-purpose language has to 
offer, you'll see why that's very good 
news indeed. 

When you've got it, flaunt it 

If you'd like to let the world know 
who speaks Pascal, here's how: 
Preheat iron (dry-wool setting) for 
3 minutes. Slip garment on ironing board 
over scrap material. Remove wrinkles. 
Position transfer face down and pin edges 
to ironing board cover. Iron transfer slowly 
for one minute. If paper browns, iron is 
too hot. Let transfer cool for one minute, then unpin and 
slowly pull transfer straight up. Results are best when 
t-shirt is at least 50% polyester. 




Pascal by the package. 

Our high-level, full feature Language System 
consists of a plug-in 16K RAM language card, five 
diskettes containing Pascal as well as Integer 
BASIC and Applesoft extended BASIC, plus 
seven manuals documenting the three 
languages. 

The beauty of this Language 
System is that it speeds up 
execution and helps cut unwieldy 
software development jobs down 
to size. Also, because the languages 
are on diskette, loaded into 
RAM, you can quickly and 
economically take advan- 




=.-ci* 



paso$ 




tage of upgrades and 
new languages as 
they're introduced. 

Apple's Pascal 
language takes 
full advantage of 
Apple high reso- 
lution and color 
graphics, analog input 
and sound generation 
capabilities. It turns 
the Apple into the 
lowest priced, high- 
est powered Pascal 
system on the market. 
With Pascal, programs 
can be written, debugged 
and executed in just one-third 
the time required for equivalent BASIC 
programs. With just one-third the memory. 

On top of that, Pascal is easy to understand, 
elegant and able to handle advanced applications 
It allows one programmer to pick up where 
another left off with minimal chance of foul up. 

And, because Apple uses the UCSD Pascal 
standard, you're guaranteed to get the most 
comprehensive version available — and one that 
can be used on any computer that runs Pascal, 
no matter what the size. Which is really some- 
thing an enthusiast can get enthused about. 

To be more specific. 

The Apple IFs specs are tempting enough 
without the Language System and Pascal. With 
them, they're downright irresistible. 



The text, normally displayed as 24 lines 
of 40 characters each, expands to 80 characters 
thanks to the use of horizontal scrolling. 

Characters are normal, inverse or flashing, 
5x7, upper case. Full cursor control is standard. 

Since Pascal runs on an Apple computer 
with 48K bytes of on-board RAM, the additional 
16K bytes on the language card bring the total 
to a full 64K bytes. 

And, Pascal runs on the new Apple II Plus. It 
features an Auto-Start ROM that boots the Disk II 
at power-on for turn-key operation. Applesoft 
extended BASIC is resident in ROM. 

Standard color graphics offer 40h x 48v 
resolution, or 40h x 40 v with 4 lines text, in 
fifteen colors. 

Black/ white high resolution, bit-mapped 
graphics display 8K bytes of memory 
as a 280h x 192v image (140h x 192v in 

six colors). 

Peripheral 
board con- 
nectors are 
fully buffered 
with interrupt 
and DMA 
priority 
structure. 
And finally, 
since it weighs a 
mere 11 lbs. and has its own travel case, 
as an option, not only is it easy to get carried 
away with an Apple, it's easy to carry one away. 

We've got your numbers. 

800-538-9696. (In California, 800-662-9238.) 
Or write us at 10260 Bandley Drive, Cupertino, 
California 95014. When you contact us, we'll give 
you the name, address and telephone number 
of the Apple computer dealer nearest you. 

If you'd like more information on the advan- 
tages of owning an Apple personal computer, he 
can fill you in. Personally. 




w^x 





o J£ 
5? 



< CD O O 



rO Cd - o 
C\J OJ w 



A A A A si A AilA A £ 



$r' $r *f jf sf jf' *f ' *f ' 

S<H S<H S<}J in<-l r-C; S<J £)<-! «<H m<-l i-fc 

j|_2_ + =1* *\* "-T "I "H 



CJ O CD ^ rO 



so 

so 

so- 
so- 

oO- 



^IZ 



J 



lo 



cvl o (D ^- ro 



_i a: cnj _i a: _ 

St gofzt 

ceo £ oro 

uj < 2: uj < 

h- Q- ° w h- Q. 

x<zuj x< 

ujo<ik UJ o 



^ 






KF 



lei 



< < < < 

■tf rO OJ _ 



> 

m<3- 



<L 



4 



^ 






CjO 




-a: 
-a; 
-a: 



-a: 



jO 






-a: 



> < 



LJ£ °<<h 



<3 



!> 



Figure 5: Schematic diagram for the self-refreshing 8 by 16 LED array display. The display is fully static and appears as 16 output 
ports to the computer. Note that the schematic diagram shows the use of 10 integrated circuits, while the prototype board only has 9 
integrated circuits on it. The I/O decoding logic on the prototype system was not constructed on the board, but on the other end of 
the ribbon cable shown in the photographs. 



October 1979 © BYTE Publications Inc 65 



112 113 114 115 116 

»'0 o o o o 

BeO o o o o 

b*o o o o o 

B40 o o o o 

b*o o o o o 

bzO o o o o 

b> o o o o o 

boO o o o o 



PORT NUMBER (DECIMAL) 
117 118 119 120 121 122 123 124 

oooooooo 
oooooooo 
oooooooo 
oooooooo 
oooooooo 
oooooooo 
oooooooo 
oooooooo 



Figure 6: The 128 light emitting diodes (LEDs) are laid out in groups of 
8 is assigned to a consecutive output port. The port numbers are given 



125 126 127 

o o o 

o o o 

o o o 

o o o 

o o o 

o o o 

o o o 

o o o 

8. Each group of 
here in decimal 



notation). Each column represents the 
8 bits of that port. 

The most significant bit (MSB) is at 
the top and the least significant bit 
(LSB) is at the bottom. The leftmost 
column is decoded as port number 
112 and the rightmost is port number 
127. This is depicted in detail in figure 
6. These selections are arbitrary and 
can be any 16 successive port ad- 
dresses you have available. These 
ports can also be memory mapped to 
use PEEK and POKE instructions 



rather than input/output instruc- 
tions, if you wish. (For further infor- 
mation on memory mapped I/O I 
refer you to the book Ciarcias Circuit 
Cellar from BYTE Books. ) ICs 1 and 2 
decode these 16 addresses. 

Integrated circuits IC3, IC4, IC5 
and IC8 perform the data storage 
function. IC4 and IC5 are each 4-bit 
by 16-word programmable memory 
devices which together form an 8-bit 
by 16-word storage. When data is 
ready for display, the computer per- 



forms an output procedure to the 
selected port. The entry-enable line 
goes low, selecting address bus lines 
AO thru A3 to be applied as the ad- 
dress inputs to the 2 memory devices. 

If port decimal 115 were selected in 
BASIC, the binary address would be 
0011. Sections c and d of IC2 are in- 
cluded to forestall a potential race 
condition and serve to delay the firing 
of the one-shot monostable multi- 
vibrator IC3 until the propagation 
delay of ICs 4, 5, and 8 is satisfied. 
Once this port address is set through 
the 74157, the one-shot fires and 
writes the data present on the data 
bus into the memory. This is essen- 
tially the same sequence as any lat- 
ched output port with the exception 
that 16 data bytes can be stored. 

The schematic diagram as shown 
uses transistor-transistor logic (TTL) 
devices. If you have an S-100 system, 
or otherwise have limited bus driving 
capabilities, you may want to sub- 
stitute low power TTL devices where 
necessary, or buffer all incoming 
lines. 

The final area of significance is the 
LED refresh scanner. Figure 7 pro- 
vides an expanded illustration. 
Rather than successively addressing 
128 LEDs, resulting in a very low- 



+ 5V 



+ 5V 



7489 



(a) 




SHUNT-DRIVER 

SINGLE-SECTION 

EQUIVALENT 



+ 5V 
4 



SWI 



AT 



D 



68 



i 



LED 



SW2 



(b) 





SWI 


SW2 


LIGHT OFF 


CLOSED 


CLOSED 


LIGHT ON 


OPEN 


CLOSED 



Figure 7 : Expanded illustration of column scanning techniques used in self -refreshing LED graphics unit shown in figure 5. Each LED 
is not addressed sequentially; the LEDs are addressed by column. This results in a higher refresh rate and lower peak current to main- 
tain a uniform brightness. For any particular LED to be turned on, the equivalent of 2 switches has to be closed (SWI and 5W2 in 7b). 
For this to happen in the circuit of figure 7a, the column must be addressed by the 74154, and then the coinciding byte of memory 
(7489) provides the other switch. The LED is lit when the correct row is addressed and the corresponding bit is set to 1. 



66 October 1979 © BYTE Publications Inc 




Photo 3: Two of the more popular red 
LEDs are the TIL-209 (the smaller LED) 
and the T I L-220 (larger LED). The average 
price for these devices is $0.09 and $0.11 
apiece in quantity. 



duty cycle, this design incorporates 
column scanning. Each light emitting 
diode (LED) is refreshed once every 
16 clock pulses, rather than once 
every 128. The result is that lower 
peak current is required to maintain 
sufficient illumination. 

When no data is being written into 
the memory (ICs 4 and 5), the address 
multiplexer is in the display mode. In 
this case it continually channels the 
output of a 4-bit free-running counter 
(IC9) to the memory address input. 
IC10 also receives this address and 
enables the particular column to 
which the data pertains. 



& 


..B u 

ft •■■ri- 


C3 — r— 7 


M , 


|rl 


82 

■r. 










3 
t 3 




: \ 


w*'* 


\A 2 J < 


^ ^ 


i3 


3 3 




1* 



Photo 4: To experiment with 3-color displays, 3 LEDs must be placed in each position 
on the board. 




Photo 5: The program in listing 2 produces the display shown here. 



In a normal sequence, the first ad- 
dress is 0000 binary. Since the 
memory is in a read condition, the 
output will reflect the data contents 
which had been stored previously as 
an output to port 112. IC10, a 4 to 16 
demultiplexer, enables the first line 
by bringing it to a logic 0. The shunt 
drivers now enabled will allow any 
LED in that column to turn on in 
response to a stored logic 1 on that bit 
position The only LEDs that can 
light at this time are in the first 
column. 

The circuit will stay on this address 
until the next clock pulse from ICs 2a 
and 2b. The next address would 
enable the next column with similar 
results. The scan oscillator should be 
fast enough that the display does not 
flicker. 

Various LEDs can be used. Pro- 
bably the most popular size is the 
T-l 3 /4 (such as the Texas Instruments 
TIL-220) made by most LED manu- 
facturers and priced at about $0.11. If 
space is a problem, a smaller T-l can 
be used with cost at about $0.09. 
Their relative sizes are shown in 
photo 3. 

There is nothing which requires 
that the display be monochromatic. 
Considering that color television 
screens are actually discrete dots 
which seem to blend together when 
viewed from a distance, this same 
possibility is open for use with LEDs 
to a limited extent. The 3 LEDs can be 
mounted quite closely as demon- 
strated in photo 4. Experimenting 
with the tricolor system produced 
some interesting results. You must 
realize, of course, that .a 3-color 
display would require 3 sets of digital 
logic equivalent to the circuit of 
figure 5. 

Using a Flat Panel Display 

The first thing to do after powering 
up and checking out the circuitry is to 
try to write data to it. Listing 1 is a 
BASIC program which sequentially 
exercises all 128 LEDs. Erroneous 
data entry can usually be traced to a 
too long pulse width on the one-shot 
(IC3). 

Once the arrays have been built, 
you are ready for the big time — dis- 
playing a 5 by 7 dot-matrix character. 
Photo 5 illustrates this final achieve- 
ment, and listing 2 shows the simple 
BASIC program required to accom- 
plish this. 



October 1979 © BYTE Publications Inc 



67 



Listing 1: BASIC program to turn each light emitting diode (LED) on and off in order. 



1.00 

J. 1 

120 

130 

140 

150 

160 

1.70 

180 

190 

200 

210 

220 

230 

240 

250 

260 

270 

280 

290 

300 

310 

320 

1000 

10.10 

1020 



NLM 
REM 
REM 
REM 
REM 



THIS PROGRAM CHECKS EVERY LED INDIVIDUALLY 

BY OUTPUT. TNG A SERIES OF" COMPUTED VALUES TO TH 

APPROPRIATE OUTPUT PORT 



DISPLAY 

ON 1 



3X16 
REM WITH LSD 
REM 

REM FIRST THE 
FOR 5-112 TO 
OUT SvO 
NEXT S 
REM 
REM 
REM 
FOR 1=112 

FOR B *:<) TO 

A«2~B 
OUT IvA 
GO BUB 1000 
NEXT B 
OUT 1,0 
NEXT I 
GOTO 240 

FOR T-0 TO 50 

NEXT T 

RETURN 



IS ADDRI 
HE LEFT 



:ssed AS 

AND MSD 



16 PORTS -■ 
ON THE RIGH 



NCKS 
T 



112 TO 127 DECIMAL 



DISPLAY IS BLANKED BY OUTPUT I NG ALL ZEROS 
127 



STARTING FROM THE LOWER LEFT CORNER LEDS ARE F 
UP AND DOWN THE COLUMNS MOVING TOWARD THE R I Gi- 
ft 127 
? 



PROGRESSIVELY LIT 
IT 



Listing 2: BASIC program to write GO^ on the LED display. 



100 REM THIS PROGRAM WRITES GO > 


ON THE DISPLAY 


.1.10 REM USING DATA STATEMENTS TO 


ENTER MATRIX DATA 


120 dim xcioo) :dim S(IOO) 




130 DATA 124 y 130 v 130*138 ? 142 y() 




140 DATA 124 y 130*130 y 130 » 124*0 




150 DATA 1 6> 84 y 56*16 




160 FOR S~l TO 16 




170 READ X(S) 




180 NEXT S 




190 FOR Oil 2 TO 127 




200 OUT CfX(O-HI) 




210 NEXT C 




220 STOP :GOTO 190 





Static displays are interesting, but 
if you really want to do a little crowd- 
pleasing, then I suggest simulating a 
moving marquee. Because this dis- 
play interface is column-oriented, it is 
relatively simple to accomplish this 
feat. Listing 3 is a program for shift- 
ing the letter A across the display. 

The character is left-justified when 
first displayed with the 5 by 7 data 
written in ports 112 thru 116. On the 
next programmed update, the same 
data is written to ports 113 thru 117, 



TUNE-UP YOUR PET®... $109.95 



with 

enclosure SI 34.95 



Exact Pet keyboard layout 

Double-shot keytops with graphics 

legends 

Duplicate Return, Space and Shift 

keys on numeric pad for 

programming ease 



Added function key which can be 
hard wired as a system reset 
Flexible cable and connector 
supplied 




Century Research & 
Marketing, Inc. 

4815 W. 77th St. 
Mpls., MN 55435 

Erhardt & Jost Electronics 

Rossligasse 2 
CH 4450 Sissach 
Switzerland 



TM of Commodore Business Machines. Inc. 



68 October 1979 © BYTE Publications Inc 



Circle 48 on inquiry card. 



Listing 3: BASIC program to move the letter A across the display from left to right. 



100 
:l. 1 
120 
.130 
140 
150 
160 
170 
180 
1 90 
200 
210 
220 
230 
240 
250 
260 
270 
280 
290 
300 
310 
320 
330 
340 
350 
360 
370 
380 
390 
400 
410 



REM 
REM 
REM 
REM 
DIM 
REM 



THIS PROGRAM DEMONSTRATES USING THE DISPLAY PANEL AS A MOVING MARQUEE 
A 5X7 DOT MATRIX LETTER A IS DISPLAYED ON THE LEFT SIDE 
AND THE SHIFTED ACROSS THE DISPLAY TO THE RIGHT* USING THIS CONCEPT 
VIRTUALLY ANY MESSAGE CAN BE WRITTEN* 

a (loo) :dim s(20) :dim xcioo) 

FIRST THE LETTER A IS LEFT JUSTIFIED ON THE DISPLAY 
ACL) =254 :A(2)-144 :A(3)-144 :A(4)-144 : A < 5 ) =254 JREM A(1)~A(5) EQUAL THE LETTER 
FOR Q--6 TO 20 :A(Q)=0 J NEXT Q 
REM 
REM 
REM 
FOR 
REM 
REM 
REM 
8-1 
FOR 



..EAR 
= 112 



THE 
TO 



DISPLAY 

127 :out 



.fO :next 



DEFINE TRANSPOSED MATRIX X ( 1 ) TO XU6) AND SHIFT RIGHT ONE COLUMN 



D = l TO 
X(D)-A(S) 
S=S + 1 

IF S>20 THEN 
NEXT D 
S*S + 3 
GOSUB 370 
GOTO 260 
REM 
REM 

REM WRITE 
FOR L=112 
OUT L»X<L- 
NEXT I... 



16 



S = l 



TRANSPOSED 
TO 127 
1 1 1 ) 



MATRIX TO DISPLAY 



FOR T=0 
RETURN 



to 300 :next t : return 



effectively shifting it to the right by 1 
column. For long messages, the most 
effective method is to utilize a soft- 
ware pointer. Even a 2% character 
moving marquee is very impressive 
and can easily convey intelligent 
information. 

This 8 by 16 matrix can be ex- 
panded by adding more memory and 
column decoders. It can be further 



enhanced by the addition of other 
colors within the same array. 

The video screen need not be the 
only output display on a personal 
computer. It is only a matter of time 
before large arrays are commercially 
available, but in the meantime we can 
experiment with the concept. I hope 
that by presenting a self-refreshing 
interface design which eliminates the 



necessity of interrupts or dedicated 
program refresh, I may spark the in- 
terest of many experimenters. 

If you have any questions on this 
or any previous article, don't hesitate 
to write to me. Please include a self- 
addressed stamped envelope. ■ 

Next Month: A look at the new Intel 8086. 




8086 Boards 

CPU with $650. 

Vectored Interrupts 
PROM-I/O $495. 

RAM $395. 

8K x 16/16KX 8 



ANALOG Boards 

A/D 16 Channel, $495. 
12 Bit, High Speed 

D/A 4 Channel, $395. 
12 Bit, High Speed 





VIDEO 
DIGITIZATION 

Real Time Video $850. 

Digitizer and Display 
Computer Portrait 
System $4950. 



S-100 Boards 

Video and/or Analog 
Data Acquisition 
Microcomputer Systems 



EC HR 



INC. * 

The High Performance S-100 People 

TECMAR, INC. 

23414 Greenlawn • Cleveland, OH 44122 
(216) 382-7599 



Circle 364 on inquiry card. 



October 1979 © BYTE Publications Inc 69 



Technical Fcrom 



Using Finite State 
Machines 

David E Cortesi, 2340 Tasso St, Palo Alto CA 94301 



I was pleased to see a good introductory article on the 
use of finite state machines appear in BYTE (see "Design- 
ing a Command Language" by G A Van den Bout, BYTE, 
June 1979, page 176). I have found the finite state 
machine (or finite state automaton, or just FSA) to be a 
valuable tool in my programmer's toolkit. The finite state 
machine is an aid to organizing one's thoughts while 
designing, a good way of producing a really unam- 
biguous specification document, and as an implemented 
program it can yield very efficient and reliable code. 

The finite state machine has long been a plaything of 
the theoreticians of computer science; you can find it 
described and analyzed in any textbook on compiler 
design (it is a good textbook if you can understand the 
description!). Unfortunately the finite state machine 
rarely moves out of the textbook and into practical pro- 
grams. I would like to extend Van den Bout's article with 
2 examples from my own experience as a professional 
programmer that show how the finite state machine 
solved difficult programming problems in the real world. 

The first case arose during the design of a timesharing 
system that was to have a large number of commands. 
The syntax of the command language was laid down ear- 
ly in the project, but the specification of the commands 
themselves kept changing. If I and my colleagues had 
tried to write detailed code to parse each of the many 
commands and operands, especially in the face of chang- 
ing specifications, we would have been swamped. We 
had to do something to systematize the command-parsing 
code. 

We hit on the idea of using finite state machines 
represented as directed graphs (like the figures in the 
previous BYTE article). Since we were using a macro- 
assembler, we created NODE and ARC macroinstruc- 
tions so that we could '"'draw'' the graph of a command by 
writing a series of macro calls. Listing 1 shows how some 
of the chess game commands in the prior article might 
look in such a macrolanguage. 

Each macroinstruction assembled to a small group of 
constants. We thought of these groups as the machine 
language of an imaginary finite state computer. We then 
wrote a finite state interpreter which could process these 
machine instructions. This interpreter program took as 
its input: (1) the top node of a graph; (2) the tokenized 
command line from the user; and (3) a small working 
storage area where semantic routines could leave their 



si 



S2M 
S2C 



S2 



53 



S4 



55 



58 



59 



S10 



ANODE 

ARC 

ARC 

ARC 

ZNODE 

ANODE 

ARC 

ANODE 

ANODE 
ARC 
ARC 
ZNODE 

ANODE 

ARC 

ZNODE 

ANODE 

ARC 

ZNODE 

ANODE 

ARC 

ZNODE 

ANODE 

ARC 

ZNODE 

ANODE 

ARC 

ZNODE 

ANODE 

ARC 

ZNODE 



5S 



ANODE 
ARC 
ZNODE 
Sll ANODE 



; TOP NODE, ARCS SELECT VERB-TOKENS 
T0KEN=KWD. VALUF='M0VE T , NEXT=52M 
T0KEN=KUD, V/.i Ut = 7 CAP» ,NEXT=32C 
TOKEN -KU!D, V A LUi:=' TAKE 1 .NEXT = £11 
'MOVE, CAP, OR TAKE??' 
VERL-1 ; SET VERB-CODE OF MOVE 
T0KEN=ANY,NEXT=S2 
VERD=2 ; SET VERD-CODE OF CAP 

; COMMON GRAPH FOR MOVE AND CAP 

rOKEN^KUDrVALUE^FRCM' ,NEXT= S3 

token=k:<jd,value='to' ,next=ss 
'?? please say to or from' 

; graph of 'from xx to yy » part 

t0ken=p0s,5emact-frp0s,next=s4 
'a position must follow fkom' 

token=kwd,value- f to * ,nfxt=s5 
'from xx -- expecting to' 

t0ken=pos,semact=topo5,next=s6 
'a position must follow 70' 

; graph of 'to xx from yy' variant 

t0k£n=p0s,semact=t0p0s,next=s9 
'a position must follow to' 

tok en =kwd/ value -'from' , next =510 
'to xx -- expecting trom' 

t0ken=p0s,semact=frp0s,next=s6 
*a position must follow from' 

; end-check for move and cap 

t0ken=end ; omitted mext= means t all done' 

•extra operand' 

v£rb=3 ; set verb-code of take 



. . . -etc, etc, etc . 

Listing 1 : A graph representation of a finite state machine as it 
might look drawn with a macroassembler. The macro- 
instructions would assemble to machine language for a 
hypothetical finite state computer; that in turn would be 
simulated by an interpreter. 



R 


U 


+ 


- 


INPUT TOKEN 
1 1...9 1 


E 


<end> 


1 


2/AO 


2/A1 


3/AO 


4/A2 


5/A3 


0/E1 


0/E2 


2 


0/E3 


0/E3 


3/AO 


<+/A2 


5/A3 


D/E<t 


0/E5 


3 


0/E6 


0/E6 


3/AO 


4/A2 


5/A3 


1 

I 6/A4 

1 


0/Z1 


<f 


1 
0/E7 


0/E7 


4/A2 


4/A2 


5/A3 


6/A4 
1 


0/Z2 


5 


0/E8 


0/E8 


5/A5 


5/A5 


0/E9 


6/A4 


0/Z3 


6 


7/AO 


7/A6 


7/AO 


7/A7 


0/E10 


0/E11 


0/E12 


7 


0/E13 


0/E13 


7/A7 


7/A7 


0/E10 


0/E11 


0/Z<t 



AO: 


do nothing 




Zl = 


exi t » value i s zero 


Al: 


note negative 




Z2 = 


exit, value is integral 


A2: 


collect integer digit 




Z3: 


exit for rational. 


A3: 


note rational 




ZV- 


exit for exponential 


A4- 


note exponent i al 








A5 = 


collect fraction dini 


t 






A6: 


note negative oxponen 


t 






A7: 


collect exponent digi 


t 






El: 


numberC ? ) is <E> . . 




E8: 


. . <decinal><s i gn> . . 


E2: 


number i s nul 1 




E9: 


.. <decimal><decimal>. . 


E3: 


<sign><sign>. . . 




E10 


r.<E><dccimal>. . 


E4: 


<sign><E>. . 




Ell 


. .<E><E>. . 


E5: 


<s i gn><end> 




E12 


. .<e><cnd> 


E6 = 


. .<sign>. . 




E13 


. .<E><sign><sign>. . 


E7: 


<di gi t> . . < s i gn> . . 









Table 1: A finite state machine for processing numeric con- 
stunts, represented as an array. Each row is a state of the 
machine; a column is selected by the next input token. At the in- 
tersection is the row number for the next step, and the name of 
an action to be done. ■ 



70 October 1979 © BYTE Publications Inc 










l5fe?6T ■ VOS-/7 



SYSTEM INCLUDES: 

► 2 Siemens 8" Disk Drives 

► 1 Cabinet with Fan and 
Power Supply. 

1 Tarbell Floppy Disk Inter- 
face, assembled & tested. 
1 CP/M Disk Operating Sys- 
tem. 

1 Tarbell BASIC. 
All Cables and Connectors. 
Complete User Documenta- 
tion. 

Fully factory assembled and 
tested. 

Price $1888.00 



' 




950 DOVLEN PLACE • SUITE B • CARSON, CALIFORNIA 90746 
(213) 538-4251 • (213) 538-2254 



Circle 360 on inquiry card. 



BYTE October 1979 71 



output. It returned either a verb number (from an 
ANODE macroinstruction) or an error message (from a 
ZNODE macroinstruction). The only other code needed 
was a set of small, easily coded semantic routines, one to 
convert and store away each kind of token. 

With this mechanism in place we had only to "draw" 
each command's graph in macroinstructions, and add 
any semantic routines unique to that command. The job 
was much smaller than writing code for all commands, 
and far easier to update as the specifications fluctuated. 
The same interpreter was used again in a later project 
with a similar command language. 

This method of writing a command language turned 
out to have an advantage we had not expected. Every 
time we wrote a ZNODE macroinstruction, we were 
faced with the fact that someday a user would enter a bad 
command that would drop through to that ZNODE. 
Each time we were forced to decide what the system 
should do when that occurred. Every possible user error 
was made evident to us and we had to think about error 
responses in more detail than usual, but the very specific 
circumstances under which each error was trapped made 
it easy to give explicit, helpful messages. 

The second example comes from the construction of an 
interpreter for a programming language. An interpreter 
has to do a lot of converting between the character form 
of numbers and their internal form (binary, in this case). 
The language being implemented supported every form 
of numeric constant, including things like 

1. (for a real 1.0) 

3E25 (decimal not required) 

+ 00319645. 26E-0005 (leading zeroes, signs) 

When I was presented with this problem I had just 
completed a course in compiler writing, where I had seen 
finite state machines applied to exactly this problem. It 
took but a day to work out an array like that in table 1. 
This is a finite state machine, but one represented as an 
array instead of a graph. The 2 representations are 
equivalent; a finite state machine drawn as a graph can be 
drawn as an array or vice versa. The nodes of the graph 
become the rows of the array; the lines become columns. 

The array is processed like this: the finite state machine 
is always active on some row, initially row 1. Get the 
next input token. Find the column with that token at its 
head (of course a clever designer will have arranged that 
a token is just an integer that is a valid column-index). At 
the intersection of that column and the active row, find 2 
items, such as 2/Al. The first item, like 2, becomes the 
new active row. The second item, like Al, is the label of a 
semantic action to be performed. Repeat until the active 
row number is 0, then stop. 

Look at row 1 of table 1. Reading across, if the first 
token of a numeric constant is: 



If you read the other rows the same way, you will see 
how this finite state machine can parse any legitimate 
numeric constant. It also finds every possible syntax 
error in a very explicit way. 

So far I had not gone beyond what any textbook could 
tell me, but I had the additional objective of making the 
fastest assembler language constant converter that I 
could. I wanted to use every hardware advantage 
allowed by my machine, yet keep reliable, readable code 
— and the finite state machine helped me! 

I eventually ended up with an array several rows 
higher than the one in table 1. Each additional row was 
designed to pick up a particular set of input 
characteristics that I could take advantage of. One op- 
timization was row 3 of table 1, which does not appear in 
most textbooks. The finite state machine stays on row 3 
as long as it is seeing leading zeroes on the integer part of 
the number. Action A2, "collect integer digit," will 
typically involve performing arithmetic operations on the 
token. A leading zero contributes nothing to the final 
binary value, so why "collect" it? The finite state machine 
stays on row 3, spinning through the leading zeroes and 
doing almost no work, until a significant digit is found. If 
the finite state machine takes exit action Zl, it has 
recognized a constant of zero (fairly common in pro- 
grams) without doing any arithmetic. 

We expected single-digit constants to be quite common 
in typical programs. It happened that the binary value of 
a single digit could be obtained from the input token with 
a logical AND operation. I put in another row between 
rows 3 and 4 of table 1, so that a special exit action would 
be taken for the case of < digit > < end> . Now the finite 
state machine would process any single-digit constant 
without doing arithmetic. These and other hardware- 
level optimizations were achieved during design; they 
added almost nothing to the complexity of the final code. 

The array form of a finite state machine is easily coded 
using a pair of integer matrices, one for the next-state 
numbers and one for the action-numbers (action-labels, if 
your language allows label variables; action-addresses in 
assembler language). The resulting program almost has 
to be smaller and more readable than the brute force code 
needed to do the same job. Since the act of designing the 
array forces you to consider every possible input 
sequence, the program will usually be much more 
reliable. 

I have drawn these examples from professional soft- 
ware projects, but those are certainly not the only places 
where finite state machines can be used. I hope I have 
shown that the finite state machine can be a valuable tool 
for anyone faced with programming for a complicated in- 
put string. Designing it clarifies the problem and reveals 
all error situations, and coding it yields elegant, efficient 
programs. ■ 



+ do nothing and go to row 2 

— remember to negate the result and go to row 2 

do nothing and go to row 3 

1...9 collect a digit and go to row 4 

. note the number will be rational ("real") and go to 

row 5 
E error — number starts with E, stop 
<end> error, stop 



Technical Forum is a feature intended as an interactive dialog on 
the technology of personal computing. The subject matter is open- 
ended, and the intent is to foster discussion and communication 
among readers of BYTE. We ask that all correspondents supply their 
full names and addresses to be printed with their commentaries. We 
also ask that correspondents supply their telephone numbers, which 
will not be printed. 



72 October 1979 © BYTE Publications Inc 





Play games with the 
6502... magic squares, 
mindbender, blackjack, 
music, echo, tic tac toe, 
spinner, translate, slots and 
hexguess. Each may be 
implemented in less than 
IK of RAM, and all listings 
ore given in 6502 assembly 
language and hexadecimcl 

Rodnay Zaks 

Ref. G402, 200 pp. $12.95 

Circle 349 on inquiry card 




>- 



Also available in this series: 

Programming the 6502 $11.95 
6502 Applications Book $12.95 



, SYBEX 

Depi. B10 

2020 AAilvia Street 

Berkeley, California 94704 

TO ORDER 

By Phone:(415) B48-8233. Visa, Mas- 
ter Charge, American Express 

By Mall: Indicate quantity desired 
Include payment. 

Shipping: Add $1.50 per book (UPS), 
or 75c (4th class-allow 4 weeks 
delivery). 

Tax: m California add tax. 

BYTE October 1079 73 



LET SYBEX SH 



The SYBEX self-study course library features ten professional quality audio re- 
cordings of lectures on a variety of microprocessor topics, from the introductory 
to the advanced levels. Widely used in academic and industrial training en- 
vironments, each course is accompanied by a specially prepared seminar work- 
book. 

SYBEX courses are the result of our extensive experience combining state-of- 
the-art technical information with thoroughly planned instructional programming 
techniques. 

INTRODUCTION TO MICROPROCESSORS 

Reference 0SI 

This seminar is intended for all nonspecialists who wish to acquire a brood 

understanding of the basic concepts and advantages of microprocessors. 

PROGRAMMING MICROPROCESSORS 

Reference (tS2 

This seminar describes the internal operation of a microprocessor system 

including how instructions ore fetched and executed as well as how programs 

ore written and executed in typical cases (arithmetic and input/output). 

DESIGNING A MICROPROCESSOR SYSTEM 

Reference (tS3 

How to interconnect a standard microprocessor system in detail: the ROM, 

RAM, PIO, UART, MPU, clock. Trode-offs in addressing techniques. 

INTRODUCTION TO PERSONAL AND BUSINESS COMPUTING 

Reference #S10B 

Are you planning to buy or use o microcomputer system? This seminar en- 

obles you to understand the choices and possibilities. 

INTRODUCTION TO PERSONAL AND BUSINESS COMPUTING 

Reference #SIOB 

Are you planning to buy or use o microcomputer system? This seminar gives 

you on understanding of the choices and possibilities. 

MICROPROCESSORS 

Reference 0SB1 

The basic hardware course. It will provide you with o comprehensive and 

effective understanding of all the important aspects of microprocessors and 

systems. 

MICROPROCESSOR PROGRAMMING. 
Reference #SB2 

The basic software course. It will toke you step by step through all the im- 
portant aspects of microcomputer programming. 

MILITARY (SEVERE ENVIRONMENT) MICROPROCESSOR SYSTEMS 
Reference #SB3 

A complete study of constraints, techniques, and systems available for severe- 
environment applications. 

BIT-SLICE 

Reference #SB5 

A complete detailed system, including bits, con be built in one day. Other 

innovative applications of slices are also examined. 

INDUSTRIAL MICROPROCESSOR SYSTEMS 

Reference #SB6 

This course stresses actual industrial hardware and software techniques: 

the components, the programs , and the costs. 

MICROPROCESSOR INTERFACING TECHNIQUES 

Reference #587 

How to assemble, interface and interconnect o system. 






TO ORDER: 








By Phone 


: (415) 848-8233. Visa, 


Maste 


rcharge, 


American Express. 








By Mail: 1 


ndicate quantity desired. Include 


pay- 


ment. 










Shipping: 


Add $1.50 per book 


(UPS), 


or 


$.75 


(4th class - allow- 4 weeks for delivery); 


dou- 


ble for casettes and overseas. 








Tax: In California add tax. 










74 BYTE October 1979 



Circle 351 on inquiry card. 



OW YOU HOW 




SYBEX books offer a comprehensive overview of microprocessors from be- 
ginning to advanced levels. Programming techniques, interfacing and imple- 
mentation are thoroughly presented and analyzed in a highly readable and 
informative style, while providing the reader a detailed understanding of var- 
ious computer systems. 



PROGRAMMING THE Z80 

Reference #C280 

RODNAY ZAKS, 330 pages 

A complete introductory text for the ZBO. 

AN INTRODUCTION TO PERSONAL AND BUSINESS COMPUTING 

Reference #C200 

RODNAY ZAKS, 250 pages 

A comprehensive introduction lo small computers, their peripherals, and 

what to select. 

MICROPROCESSORS: FROM CHIPS TO SYSTEMS 

Reference 0C2O! 

RODNAY ZAKS, 416 pages 

The basic text on all aspects of microprocessors and the assembly of a 

system. 

PROGRAMMING THE 6502 

Reference #C202 

RODNAY ZAKS, 400 pages 

A complete introductory programming text for the 6502. 

6502 APPLICATIONS BOOK 

Reference 0D3O2 

RODNAY ZAKS, 288 pages 

Connecting a 6502 board to the outside world: from home alarm lo music 

and industrial control. 





MICROPROGRAMMED APL IMPLEMENTATION 
Reference #Z10 
RODNAY ZAKS, 350 pages 

Presents o uniform conceptual analysis of the parsing and interpreting pro- 
cess for APL, as well as the actual implementation techniques. 

MICROPROCESSOR INTERFACING TECHNIQUES 

Reference #C207 

AUSTIN LESEA & RODNAY ZAKS, 416 pages 

How lo interface o microprocessor to external devices: from keyboard to 

ADC lo floppy disk, including standard busses. 

MICROPROCESSOR LEXICON 

Reference *X1 

All the definitions of the microprocessor world in a convenient pockelbook 

formal. 



fsYBExJ 



SYBEX 

Dept. 

2020 Milvia Street 

Berkeley, California 94704 



□ S10B $21.90 □ SI . 

□ C280 $11.95 □ S2. 

□ C200 $6.95 D S3. 

□ C201 $10.95 □ SB1 

□ C202 $11.95 D SB2 

□ D302 $12.95 D SB3 

D Z10 $25.00 □ SB5 

D C207 $13.95 □ SB6 

D XI $2.95 D SB7 

Name 



$19.95 
$29.95 
$29.95 
$69.95 
$69.95 
$59.95 
$59.95 
$59.95 
$59.95 



Company 

Address 

City 

□ Charge my: 

Number 

Signature_ 



□ 



State 

Visa D M.C 



-Zip- 



□ Amer. 
Exp. Date. 



Exp. 



BYTE October 1979 



75 



Picking Up the Pieces 



Alfred S Baker 
2327 S Westminster 
Wheaton IL 60187 



Everything had been going so 
smoothly. I had just saved several 
important programs on a disk and 
had planned to spend the rest of the 
afternoon doing fun things with 
them. Now the computer was telling 
me that my full disk was completely 
empty. 

I had been using my floppy disk 
system for over 6 months before the 
output error mentioned above 
occurred. I discovered, to my sorrow, 
that while input and output errors on 
a floppy disk are very rare, they can 
still happen. I survived my catas- 
trophe. I hope that my experience can 
help you survive yours. 

Disk Files 

Generally, 2 different methods are 
used to place files on a floppy disk: 
sequential file storage, and track or 
sector allocation. 

In the sequential file storage 
method, a new file is placed on the 
disk in the unused sectors following 
the last file added to the disk. This is 
demonstrated in figure 1. Any files 
that are deleted, such as file B, will 
generate unused space on the disk 
that is not used for storing new files. 
New files go at the end of all 



About the Author 

Al Baker is 30 years old and lives with his 
wife, Janet, and 2 children in Wheaton IL. He is 
currently the programming director for The 
Image Producers Inc. Northbrook IL. He is a 
member of the American Association for the 
Advancement of Science, the National Space 
Institute, and the Chicago Area Computer 
Hobbyist Exchange. He says, "My favorite 
sports are volleyball and handball, and my 
hobbies are playing with computers, 
photography, and playing with computers. " 



previously used space. But what 
about all of the unused space taken 
up by the deleted files? Simple. These 
systems provide a utility program 
which eliminates this unused space by 
shifting the files on the disk. This pro- 
cess, which is called compressing or 
packing the disk, is shown in figure 2. 
If this is the way your system 
works, then the data block that got 
wiped out on my system exists 



on 



your system. However, as you will 
see, its contents and use are totally 
different. 

The track, or sector allocation 
method is also known as the bit map 
method or chained, sequential- 
storage method. It is used by the 
more impressive, and efficient, large- 
system support packages. It is also 
used by my Peripheral Vision floppy 
disk operating system (FDOS). 



Figure 1: In the sequential storage method, files are placed on the disk starting at the 
first empty sector after the last stored file. 




76 October 1979 © BYTE Publications Inc 






. INTETTEC DATA SYSTEMS SUPERBRAIN 



I 1 T i " I 



i\ 



\ ^ 



Tfie Honor Graduate 



There's been a . lot of talk lately 
about intelligent terminals with 
small systems capability. And, it's 
always the same. The systems 
which make the grade in perfor- 
mance usually flunk the test in 
price. At least that was the case 
until the SuperBrain graduated with 
the highest PPR (Price/ Perfor- 
mance Ratio) in the history of the 
industry.. 

For less than $3,000*, SuperBrain 
users get exceptional performance 
for just a fraction of what they'd 
expect to pay. Standard features in- 
clude: two dual-density mini-flop- 
pies with 320K bytes of disk storage, 
64K of RAM to handle even the most 
sophisticated programs, a CP/M 
Disk Operating System with a high- 
powered text editor, assembler and 

^Quantity one. Dealer inquiries invited. 
Circle 180 on inquiry card. 



debugger. And, with SuperBrain's 
S-100 bus adapter, you can even add 
a 10 megabyte disk! 

More than an intelligent terminal, 
the SuperBrain outperforms many 
other systems costing three to five 
times as much. Endowed with a 
hefty amount of available software 
(BASIC, FORTRAN, COBOL), the 
SuperBrain is ready to take on your 
toughest assignment. You name it! 
General Ledger, Accounts Receiv- 
able, Payroll, Inventory or Word Pro- 
cessing ... the SuperBrain handles 
all of them with ease. 

Your operators will praise the 
SuperBrain's good looks. A full 
ASCII keyboard with a numeric key- 
pad and function keys. A non-glare, 
dynamically focused, twelve inch 
screen. All in an attractive desktop 
unit weighing less than a standard 



office typewriter. Sophisticated 
users will acclaim SuperBrain's twin 
Z-80 processors which transfer data 
to the screen at 38 kilobaud! Inter- 
facing a printer or modem is no 
problem using SuperBrain's RS- 
232C communications port. But best 
of all, you won't need a PhD in com- 
puter repair to maintain the Super- 
Brain. Its single board design makes 
servicing a snap! 

So don't be fooled by all the fresh- 
man students in the small systems 
business. Insist on this year's honor 
graduate . . . the SuperBrain. 



3 



sintrtec 
Cdata 
s systems, 



2300 Broad River Road, Columbia, SC 29210 
(803) 798-9100 TWX: 810-666-2115 



BYTE October 1979 



77 



In this method all of the space on 
the disk is represented by a single bit 
map. Each bit in the area called the 
bit map represents 1 physical area on 
the disk. In my system this area is a 
sector. (Refer to figure 3.) On each 
floppy disk there are 74 tracks 
represented in the bit map for that 
disk. (There are actually 77 tracks on 
the floppy disk, but the first 2 tracks 
contain the operating system, and the 
third functions as the directory, con- 
taining the bit map itself and the 
names and addresses of all the files on 

(a) 



the disk. Since each track has 16 sec- 
tors when using FDOS, the bit map 
contains 74 times 16, or 1184 bits. 
This represents 1 bit for each sector 
on the disk. Dividing by 8 gives a bit 
map size of 148 bytes. This fits easily 
into a single 256-byte sector on the 
disk. 

Now we can use the bit map to 
determine which sectors on the disk 
are in use. A file program will read 
the bit map into memory and will 
find a bit in the map. The sector 
represented by this bit is unused. If a 



FILE A 






FILE C 




FILE E 


USABLE SPACE 








v. .-.-_ w 


(b) 


FILE A 


FILE C 




3 ACE - 




FILE E 


USABLE SPACE 






(c) 


FILE A 


FILE C 


FILE E 


^ IICADI C CDArc" w 






w 



Figure 2: In a system which uses the sequential storage method, unusable space is turned 
into usable space by compressing the data. Starting with the data stored on the disk 
(2a), the usable data is shifted toward the beginning of the storage space until the files 
are behind each other (2b). This process is continued until all of the unusable space has 
been pushed to the end of the disk and is usable. 



new file is being created and it needs 
another sector, FDOS turns the bit on 
(makes it a logic 1) and writes the bit 
map back onto the disk. When a file 
is deleted, the bits representing each 
sector in the file are turned off. The 
space is immediately available for use 
by another file. Now we have a way 
of using space on the disk which 
eliminates the problem of wasted 
space caused by the old way of doing 
things. 

Unfortunately this method creates 
its own set of problems. The first pro- 
blem is not very obvious. If a file is 
longer than 1 sector, it won't fit. The 
wrong solution is to try to find an 
area with enough empty sectors 
located adjacently. We might as well 
consider all of those areas with just a 
few free sectors as useless space. 
Also, we never know how big a file is 
going to be until it is too late to look 
for a bigger space. 

The correct solution is to let each 
sector in the file point to the location 
of the next sector in the file. Look at 
figure 4. Here we have a 1000-byte 
file of data contained on four 
256-byte sectors. When a program 
tries to read the 257th byte from the 



DATA TERMINAL EQUIPMENT — FROM MICROMAIL 




SOROC 10 120 



$ 795.oo 



• RS 232C, upper/lower case, full 
ASCII 

• Numeric keypad, protected fields 

• Cursor keys plus addressable cur- 
sor 

• Auxiliary extension port 




LA34 DECwriler IV 

n,i99.°° 

Upper/lower case, 9x7 dot matrix 

10, 12, 13.2, 16.5 characters/inch 

2, 3, 4, 6, 8 or 12 lines/inch 

22"W x 7"H x 15WD, 25 lbs. 

110 or 300 baud, RS 232C serial 

ASCII 

Friction feed, paper width to 15" 



S0R0C 10 140 $1,250.°° 

• RS 232C and 20mA current loop 

• Extensive editing features 

• 25th line terminal status display 

• 16 function keys (32 with shift) 




New 
from DIABLO 

DIABL0 1640 $2,690.°° 
Receive-only $2,331.°° 

High-quality daisywheel printing at 
45 cps. 

DIABLO 1650 $2,779.°° 
Receive-only $2,419.°° 

Metal daisywheel printing at 40 cps. 



T.I. 810 printer $1,695.°° 

• Includes upper/lower case 

• 150 characters per second 

• RS 232C serial interface 
,• Adjustable forms tractor 




NEC Spinwriter 

Call or write for prices 



To Order: Send certified check (personal or company checks require 
two weeks to clear) including handling* and 6% sales tax if delivered 
within California. 

*Handllng: Less than $2,000, add 2%; over $2,000, add 1%. Everything 
shipped freight collect in factory cartons with manufacturer's warranty. 



e KLCHQiafl JL J 



MICROMAIL • BOX 3297 • SANTA ANA, CA 92703 
(714) 731-4338 



78 October 1979 © BYTE Publications Inc 



Circle 223 on inquiry card. 



Solve your personal energy crisis. 
Let VisiCalc Power do the work. 



With a calculator, pencil and paper you can spend hours plan- 
ning, projecting, writing, estimating, calculating, revising, erasing 
and recalculating as you work toward a decision. 

Or with VisiCalc and your Apple* II you can explore many 
more options with a fraction of the time and effort you've spent 
before. 

VisiCalc is a new breed of problem-solving software. Unlike 
prepackaged software that forces you into a computerized 
straight jacket, VisiCalc adapts itself to any numerical problem 
you have. You enter numbers, alphabetic titles and formulas on 
your keyboard. VisiCalc organizes and displays this infor- 
mation on the screen. You don't have to spend your time 
programming. 

Your energy is better spent using the results than get- 
ting them. 

Say you're a business manager and want to project 
your annual sales. Using the calculator, pencil and paper 
method, you'd lay out 12 months across a sheet 
and fill in lines and columns of figures on 
products, outlets, salespeople, etc. You'd cal- 
culate by hand the subtotals and summary 
figures. Then you'd start revising, erasing 
and recalculating. With VisiCalc, you simply 
fill in the same figures on an electronic 
"sheet of paper" and let the computer do 
the work. 

Once your first projection is complete, 
you're ready to use VisiCalc's unique, 
powerful recalculation feature. It lets you 
ask "What if?'/ examining new options 
and planning for contingencies. "What if" 
sales drop 20 percent in March? Just type in 
the sales figure. VisiCalc instantly updates 
all other figures affected by March sales. 

Circle 301 on inquiry card. 



Or say you're an engineer working on a design problem and are 
wondering "What if that oscillation were damped by another 10 
percent?" Or you're working on your family's expenses and 
wonder "What will happen to our entertainment budget if the 
heating bill goes up 15 percent this winter?" VisiCalc responds 
instantly to show you all the consequences of any change. 

Once you see VisiCalc in action, you'll think of many more 
uses for its power. Ask your dealer for a demonstration and dis- 
cover how VisiCalc can help you in your professional work and 
personal life. 

You might find that VisiCalc alone is reason enough to 
own a personal computer. 

VisiCalc is available now for Apple II computers with 
versions for other personal computers coming soon. The 
Apple II version costs just $99.50 and requires a 32k disk 
system. 

For the name and address of your nearest VisiCalc 

dealer, call (408) 745-7841 or write to Personal 

Software, Inc., Dept. B, 592 Weddell Dr., 

§V Sunnyvale, CA 94086. If your favorite 

dealer doesn't already carry Personal 

Software products, ask him to 

give us a call. 




neesSSi 



$Or 



Tsifr* 



VisiCalc was developed exclusively for 
Personal Software by Software Arts, Inc., 
Cambridge, Mass. 

TM— VisiCalc is a trademark of 
Personal Software, inc. 

*Apple is a registered trademark 
of Apple Computer, Inc. 



A. THE BIT MAP 



BYTE 
BYTE 2 
BYTE 4 



BIT7 BIT6 BITS BIT4 BIT3 BIT2 BITI 


BITO BIT7 BIT6 BITS BIT4 BIT3 BIT2 BITI 


BITO 


































































































w *"* 


./ «N 



BYTE I 
BYTE 3 
BYTE 5 



B. THE FLOPPY DISK 




TRACKS 



Figure 3: In the Peripheral Vision FDOS system, each sector is represented by 1 bit in the 
map (3a). If the bit is on (logical 1), then that sector is being used; if the bit is off, that 
sector is free space (3b). 



r fi fty ft* D PQMi 




Figure 4: When a file is too long for one sector, it must be broken into several sections. 
Often, there are not enough contiguous sectors to' contain a file. One method of solving 
this problem is to have bytes in the sector point to the location of the next sector. The 
FDOS system also has a backward pointer so 2 bytes are used. 



file, FDOS automatically follows the 
pointer (contained in the first sector 
of the file) to the second sector, 
retrieves the first byte of that sector, 
and returns it to the user program. 
FDOS also keeps backward pointers, 
so you can read the file backwards, 
tool 

The second problem is that the bit 
map is the most important block of 
data on the disk. If something hap- 
pens to it, every other file space on 
the disk is up for grabs. 

ANALIZ 

One becomes accustomed to the 
way that machines sound in opera- 
tion. I had just saved a file on disk, 
and it didn't sound right. Since the 
disk was nearly full, most of the 
empty sectors were far from the bit 
map. I had become accustomed to 
hearing the disk drive data transfer 
head make a particular sound as it 
moved from the bit map to the next 
empty sector and back to the bit map 
as new files were written out. The 
sound was missing! 

I knew that something was wrong. 
I quickly checked the number of free 
sectors on the disk. The correct 
number should have been around 
300. The answer that I got from my 
inquiry was 1100. Except for the file I 
had just written, the bit map said that 
I had an empty disk! 

It was time for careful thought. I 
listed the directory: it still thought I 
had over 50 files on the disk. But I 
knew that some of those files had 
been destroyed, completely or par- 
tially, by the file I had just written on 
the disk. 

I was left with 2 problems. First, I 
had to correct the bit map. The best 
way to do this was to read every sec- 
tor for every file listed in the direc- 
tory. As each sector was read, I could 
turn on its bit in the bit map. This 
would correct the first problem. 

The second problem was more 
serious. I had to determine which files 
were destroyed. The file I had just 
written had almost certainly used sec- 
tors which had been part of good 
files. Fortunately, FDOS keeps 2-way 
pointers. The solution was simple. 
While solving the first problem, I had 
to read every file on the directory and 
check to see if each sector in a file 
pointed back to the previous sector. If 
it did not, then this sector no longer 



80 October 1979 © BYTE Publications Inc 



PET/ TRS-80 /APPLE: Personal Software brings you the finest! 




Ml 
CHESS 

The Industry's First 

Gold Cassette 

Over 50,000 Sold 




MICROCHESS is the industry's best selling computer game. And 
no wonder— because MICROCHESS gives you more than just a 
chessplaying program: A convenient, foolproof set of commands 
anderrorchecks... complete instructions in a5V2" by &V2" booklet... 
a cassette that's guaranteed to load, with disk versions coming 
soon ... and several levels of difficulty to challenge you not just 
once, but time after time. It's available through well over three 
hundred computer stores and many mail order sources ... always 



originating from Personal Software. What's more, every Personal 
Software product is selected to give you these same benefits of 
easy availability, reliable cassettes, readable documentation, a 
carefully thought out user interface ... and most important, 
continuing challenge and enjoyment, not just once but time after 
time. If you haven't already, order your own gold cassette: 
MICROCHESS, by Peter Jennings, for 8K PETs, 16K APPLEs, and 
4K Level I and II TRS-80s $19.95 




TIM 
TREK 

A Tour De Force 

In Real Time Action 

Strategy Games 




TIME TREK by Brad Templeton for 8K PETs and Joshua Lavinsky 

for 4K Level I and II TRS-80s adds a dramatic new dimension to the 
classicStarTrek type strategy game: REAL TIME ACTION! You'll 
need fast reflexes as well as sharp wits to win in this constantly 
changing game. Be prepared— the Klingons will fire at you asyou 
move, and will move themselves at the same time, even from 
quadrant to quadrant— but with practice you can change course 
and speed, aim and fire in one smooth motion, as fast as you can 
press the keys. Steer under power around obstacles— evade enemy 





shots as they come towards you— lower your shields just long 
enough to fire your phasers, betting that you can get them backup 
in time! With nine levels of difficulty, this challenging game is easy 
to learn, yet takes most users months of play to master. ADD 
SOUND EFFECTS with a simple two-wire hookup to any audio 
amplifier; the TRS-80 also producessoundeffectsdirectlythrough 
the keyboard case, to accompany spectacular graphics 
explosions! You won't want to miss this memorable version of a 
favorite computer game $14.95 




BLOCKADE by Ken Anderson for 4K 

Level I and II TRS-80s is a real time 
action gamefortwo players, with high 
speed graphics in machine language. 
Each player uses four keys to control 
the direction of a moving wall. Try to 
force your opponent into a collision 
without running into a wall yourself! A 
strategy game at lower speeds, 
BLOCKADE turns into a tense game of 
reflexes and coordination at faster 
rates. Play on a flat or spherical course 
at any of ten different speeds. You can 
hear SOUND EFFECTS through a 
nearby AM radio— expect some 
razzing if you lose! 14.95 



GRAPHICS PACKAGE by Dan Fylstra 
for 8K PETs includes programs for the 
most common 'practical' graphics 
applications: PLOTTER graphs both 
functions and data to a resolution of 80 
by 50 points, with automatic scaling 
and labeling of the axes; BARPLOT 
produces horizontal and vertical, 
segmented and labeled bar graphs; 
LETTER displays messages in large 
block letters, using any alphanumeric 
or special character on the PET 
keyboard; and DOODLER can be used 
to create arbitrary screen patterns and 
save them on cassette or in a BASIC 



ELECTRIC PAINTBRUSH by Ken 
Anderson for 4K Level I and II TRS-80s: 
Create dazzling real time graphics 
displays at speeds far beyond BASIC, 
by writing 'programs' consisting of 
simple graphics commands for a 
machine language interpreter. 
Commands let you draw lines, turn 
corners, change white to black, repeat 
previous steps, or call other programs. 
The ELECTRIC PAINTBRUSH manual 
shows you how to create a variety of 
fascinating artistic patterns including 
the one pictured. Show your friends 
some special effects they've never 
seen on a TV screen! $14.95 



program $14.95 

WHERE TO GET IT: Look for the Personal Software® display rack at your local computer store. For the name and address of the dealer 
nearest you, call Personal Software at (408) 745-7841. If you don't have a dealer nearby, you can call or mail us your order with your check, 
money order or VISAIMaster Charge card number. For a free catalog, ask your dealer or use the reader service card at the back of this 
magazine. 

PERSONAL SOFTWARE INC. 

592 WEDDELL DR. • SUNNYVALE, CA 94086 



Circle 302 on inquiry card. 



BYTE October 1979 



81 



Circle 322 on inquiry card. 



<P .£. inc. 

J— I FOB COUPimn SOLUTIONS" £ I 




USE OUR 

BUSINESS SOFTWARE 
for 

GREATER PROFIT 
through 

MORE EFFICIENT 

OPERATION 

INCLUDES : 

GENERAL LEDGER 

ACCOUNTS PAYABLE 

ACCOUNTS RECEIVABLE 

ORDER ENTRY 

INVENTORY CONTROL 

This totally integrated, single entry 
system is easy to learn and easy to 
use because it is "Menu" oriented. 

The software requires a minimum system 
consisting of 48K memory, CRT, 
Printer, dual floppy disc. It is ready 
to run on the following systems : 

■:■ DEC PDP-11 

■:■ AM -100 

•:• PASCAL MICROENGINE 

■:■ CIT PENSEE 

We are working on the following 
systems and feel we can install our 
software on them within 30 days ARO: 
Data General, General Automation, LSI 
4/10,4/30, Some Z80 Systems 

Price for the total system is 
$2995.00. Order a user manual ($25.00 
plus $2.00 shipping & handling) or the 
Demo Floppy & Manual ($65.00 plus 
$2.50 shipping & handling) to reserve 
this price for you beyond our expected 
price increase Nov 1, 1979. 

TO ORDER USE OUR TOLL FREE NUMBER 

1 800 437 4774 

VISA AND MASTERCHARGE WELCOME 
OR SEND CHECK OR MONEY ORDER TO 

P. S. INC, 619 NP AVE, BOX 2017 L 
FARGO, W 58107 
(PH) 701/235-8145 




inc. 

DEALER INQUIRIES INVITED 



belonged to this file. The file had been 
destroyed. 

Now I was ready to make repairs. 
Very quickly, I wrote program 
ANALIZ (listing 1). Since I was in a 
hurry and wanted the program to run 
with no errors as soon as possible, I 
used structured programming tech- 
niques. Structured programming 
usually leads to a much shorter pro- 
gramming time if you include time 
spent debugging the code. 

I'm not going to spend time telling 
you how the program works. 
Hopefully this has been accomplished 
with the comments in the listing. As I 
have said, the program is highly 
structured and should be easy to 
understand. 



Conclusion 

If you have Peripheral Vision 
FDOS, you can use the program as it 
is. If you have another bit-mapped 
disk system, then it should be a fairly 
straightforward matter to tailor it to 
your needs. If you have the sequential 
file storage method, then you have 
your own set of problems. 

One final comment. Six files were 
destroyed on my disk. All of these 
files existed on the backup copy of the 
disk I had taken 2 weeks earlier. It is a 
very good idea to make periodic 
backup copies of your active disks. 
My only loss was a little time. I 
gained a better understanding of the 
way my disk system works, and a 
very interesting program. 



0020' 




. . LPi: 


9026'' 


obUU 


MVI M,0 


0022' 


23 


INX H 


0023' 


10F6 


DJNZ ..LPI 


U025'' 


37 


SUB A 


0024'' 


32 018E' 


STfl NAMEH+9 


0029'" 


C9 


RET 


082A'' 




..Hi: 


002A' 


4849542U43 


. ASCIZ 'HIT CR WHEN CO 



Listing 1: Program ANALIZ is used to rebuild a bit map of the used sectors on a disk. 
This program is written using the TDL Z80 Relocating Assembler version 1.2. The 
workings of the program are explained in the comments. 



. TITLE ' ANALYZE DISK AND FIX BITMAP" 
. SBTTL '" . BV: a BAKER'' 

; THIS IS THE MAIN ROUTINE FOR THE DISK 
; ANALYSIS PROGRAM. THIS PROGRAM TELLS 
; THE USER WHICH FILES ON THE DISK HAVE 
i CHAINING ERRORS. IT DOES THIS IN TWO 
i WAVS. IT SIGNALS THE USER IF A CHAINED 
; BLOCK DOES NOT POINT BACK TO THE BLOCK 
; IT IS CHAINED TO. ALSO, IT TELLS THE 
.;USER IF A BLOCK DOES NOT CONTAIN A 
i VALID COPY OF ITS OWN DISK ADDRESS. 
i FINALLY, IF THE USER WANTS, IT WILL 
.; REWRITE THE DISK BITMAP. SINCE IT 
.; BUILDS UP THE MAP FROM VALID FILES ON 
.; DISK, IT CORRECTLY REFLECTS THE DISK 
i CONTENTS, EVEN IF IT DID NOT BEFORE. 

i THE ROUTINE 'IN1T' SETS UP EVERYTHING, 
i 'SET' DOES ALL THE WORK, AND "END' 
; CLEARS UP AND ENDS THE JOB. 
0£W ANALIZ: 

0000'' CD 090A' CALL IN IT 
8003' CD 00B3'" CALL SET 
0006' CD 8052' CALL END 
0009'" C9 RET 

j THIS ROUTINE FIRST ALLOWS THE USER 

.: A CHANCE TO REMOVE THE CURRENT DISK 

; FROM DRIVE ZERO AND REPLACE IT WITH 

.; ANOTHER ONE. ■ THIS IS DONE BY USING 

; THE MESSAGE TYPING ROUTINE 'TXTYP' 

.: TO TYPE THE MESSAGE ''. . Ml". AND 

; RECEIVING THE REPLY VIA THE TWO 

.; ROUTINES '7XTIN' AND 'TI'. 

j IT LOADS THE BITMAP USING THE FDOS 

; ROUTINE 'MAPIN" AND ZEROS IT. 

.; FINALLY, IT INITIALIZES THE NAME 

i HOLDING AREA BY ENDING IT WITH A ZERO. 

000FT IN IT: 

000ft' 21 O02A- LXI H#.. Ml 

000D' CD D073 CALL TXTYP 

Q010'' CD D079 CALL TXT IN 

U013' . . LP2: 

8013'' CD D878 CALL TI 

0016' 30FB I JRNC . . LP2 

0018' CD D636; CALL MAPIN 

001B' 21 DBAC LXI H, BITMAP 

001E'- 0694 MVI B, 148 



■fcRECT DISK IS* IN DRIVE 0: ' 
j 

i THIS ROUTINE GETS CONTROL AFTER ALL 
.; THE WORK HAS BEEN DONE. IT USES THE 
.: 'TXTYP'' ROUTINE TO ASK THE USER IF 
i HE WANTS THE NEW BIT MAP PUT BACK 
; ON DISK. HIS REPLY IS PICKED UP BY 
.;THE ROUTINES 'WIN' AND ''TI'. IF 
i HE REPLIES YES, EITHER UPPER OR LOWER 
;ChlSE, THE BITMAP IS WRITTEN TO DISK 
; USING THE FDOS ROUTINE 'MAPGT'. 
0052'' END: 

0052' 21 006B' LXI H, . . Ml 
0055' CD D073 CALL TXTYP 
0058' CD D079 CALL TXTIN 
0056' . . LPI: 

005b' CD D076 CALL TI 
005E F620 0RI 28H 
0060" FE79 CPI 'Y' 
0062'" 2883 JRZ . . LP2 
0064' 18F5 JMPR . . LPI 
0066' C9 RET 
0067' . . LP2: 

0067' CD D6W CALL MAP0T 
006A' C9 RET 
0© W . . Ml: 

0066' 444F205S-4F .ASCII 'DO YOU WANT TH 
E BIT MAP REPLACED?' 
008C 0D . BYTE 13 
0080' 4245205643 . ASCIZ 'BE VEEERRY CAR 
EFUL BEFORE SAYING YES: ' 

THIS IS THE MAIN DRIVING ROUTINE FOR 
DOING ALL THE WORK. BECAUSE OF A 
DECISION TO MINIMIZE MEMORY USE, THIS 
ROUTINE IS COMPLICATED BY A DOUBLE 
USE OF THE FDOS SYSTEM INPUT BUFFER. 
THE DIRECTORY ROUTINES, 'DIR0PN' AND 
'DIRBLK' USE THIS BUFFER FOR READING 
AND MAINTAINING THE DIRECTORY AND 

Listing 1 continued on page 84 



82 October 1979 © BYTE Publications Inc 



\ 



\ 



HARDWARE FOR TRS-80® A 






SSE^ SER ^UUT»^»7 



DPertec Disk Drives FD-200 $375.00 ea. 

These are 40-track Drives that are completely compatible 
with the TRS-8(T^nd Radio Shack Drives. 3.0 DOS included. 
Will allow Turning Diskette over and Write on other side. 

□ 4-Drive Cable for Pertec Drives $35.00 

□ DECwriter III, 132 Character $2500.00 

110 to 9600 band EIA tractor feed keyboard printer. This 
is truly the nicest printer available. (30 day delivery) 
D701 Centronics TRACTOR FEED 

Bidirectional Printer $1 500.00 

Vh times as fast as the Radio Shack 779 Printer, has full 
size 132 Char. Carriage Bell tone. Complete with Cable 
plug in and use. Shipped Freight COD. 

Q200 ns 16K Dynamic Memory Clips for Keyboard or Expan- 
sion Interface, Lifetime Guarantee, complete $110.00 

Lifetime Guarantee. Complete with Instructions and Jumper 
Blocks. 

□10 Key Numerical Keypad Kit $79.95 

□TRS-80® Level II - 1 6k $750.00 

□ Expansion Interface $275.00 

□ RS-232-C Interface $ 89.00 



ORDER NOW AND SAVE 

Just list the items you want 
and mail this convenient coupon. 




r 



K. 



SOFTWARE BY ACS 

□Monitor No. 3 . . $29.95 

Complete Machine Language Monitor for TRS-8(Heatures: 
Find, EDIT, Relocate, Symbolic Dump to Tape, etc. 

□ Monitor No. 4 $49.95 

All of the commands that reside in Monitor No. 3, plus: 
RS-232 I/O, Disk Program I/O, Symbolic Dump to Disk for 
Loading into Disk Editor/ASM., Track & Sec I/O for 
modification. 

□ PCLEND $15.95 

Will Patch ASCII files of Basic Programs or text or DATA 
FILES so that they may be loaded into the Disk Version of 
the Electric Pencil for Editing purposes comes on Cassette 
that will automatically create a Disk file of PCLEND. 

□MAKE TAPE AND MAKE DISK 

for Cassette Dealers $69.95 

These are two programs that will allow you to take any type 
of Program from Disk and store it on tape for mailing 
purposes. When the user receives the program in the mail 
on cassette, it is loaded into the computer which will 
automatically make a Disk file of the program. 

□CP/M & C BASIC for the TRS-80® 

CP/M Includes: MOVCPM, STAT, PIP, Dump, DDT, ASM 
(8080), EO, plus 6 user manuals. 

CP/M $150.00 

C Basic-2 Includes: XREF2, CBAS2, and manuals. 

C BASIC 2 $99.95 

□ G2 LEVEL III BASIC for TRS-80®. Special $39.95 

□TELCOM - Telecommunications for the TRS-80®. .... $29.95 

Telecommunications for the TRS-80®allows one TRS-80^ 
to communicate with another through the RS-232-C over 
the phone line. 



TRS-80 It j rvL'.,tci«-i! n idem 



Orders received by 6:00 p.m. shipped 
next day on Master Charge, Visa, 
Certified Check or Money Order. 
Personal Checks require 14 days to 
clear. No C.O.D. Collect calls not 
accepted. All Hardware warranted for 90 days 
except Radio Shack equipment which is warrant- 
ed through Radio Shack. Software guaranteed 
for replacement only. Prices subject to change 
without notice. 

Automated 

Computer 

Software service 

(615) 244-2798 

Division of 

Bcupilar UJcrll NC 

625 Main Street • Nashville, TN 37206 



Send Check or Money Order payable to — 

SOFTWARE • P.O. Box 60097 



Nashville, TN 37206 



Quan Description 



Unit Price Total 



























HAND 
TENN 


LING CHARGE $1.50 

. RES. ADD 6% SALES TAX 


TOTAL 





□ Check 

□ Money Order 

□ MasterCharge 

□ Visa 

Card No. 



Exp. Bate. 



Name 



Address 
City __ 



State 



Zip- 



Circle 7 on inquiry card. 



B^TE October lQ'/o 83 



Listing 1 continued: 

i I DECIDED TO USE IT TO READ THE BLOCKS 
; FOR EACH FILE. FOR THIS REASON, EACH 
i TIME A VALID FILE NAME IS FOUND, THE 
; BUFFER (WHICH CONTAINS A DIRECTORY 
J BLOCK) IS SAVED IN THE AREA 'BUFFER'. 
; AFTER 'FIXIT' IS CALLED TO PROCESS 
; THE CURRENT FILE, IT IS MOVED BACK 
; INTO THE FDOS BUFFER 'RDFLNM' BEFORE 
; GETTING THE NEXT DIRECTORY BLOCK. 

; 'SET' IS A GRAND LOOP WHICH READS 

[DIRECTORY BLOCKS. FIRST, THE DIRECTORY 

i IS OPENED WITH A CALL TO FDOS AT 

i "D1ROPN-". THEN EACH DIRECTORY ENTRY IS 

; PROCESSED IN; THE LOOP '. . LI'. WHEN 

; 'DIRBLK' IS CALLED TO GET THE NEXT 

i DIRECTORY ENTRY, IT SETS THE 

; CONDITION CODE TO ZERO IF THERE ARE 

i NO MORE PRESENT. 'SET' ENDS ON THIS 

; CONDITION: WE ARE THROUGH. 'DIRBLK' 

; PLACES THE FIRST BYTE OF THE NAME 

; OF THE FILE IN THE ACCUMULATOR. IF IT 

; IS 255 DECIMAL (ALL ONES BINARY), THIS 

J IS AN UNUSED ENTRY AND IS NOT TO BE 

; PROCESSED. IF IT IS TO BE PROCESSED, 

; 'NAMEM IS CALLED TO SAVE THE NAME OF 

> THE CURRENT FILE, 'NAME' IS CALLED TO 

; PRINT OUT THIS NAME ON THE CONSOLE SO 

;THE USER WILL. KNOW WHICH FILE IS BEING 

; PROCESSED, 

j THE CURRENT DIRECTORY DISK BLOCK IS 

; SAVED. "'FIXIT' IS CflLLED TO PROCESS 

;THE FILE, AND THE DIRECTORY BLOCK IS 

.; MOVED' BACK, 

00B3' SET: 

0063' CD D5DF CALL DIROPN 

0066' ..Li: 

0O66' CD D5EI- CALL DIRBLK 

08BST C8 RZ 

0OBA' FEFF CPI 255 

06BC 28F8 JRZ . . LI 

00BE' D5 PUSH D 

08BF' CD 019E' CALL NflHEM 

00C2' CD 01HE' CALL NAME 

00C5' 21 0OF3' LXI H#..Ri 

00C8* CD D073 CALL TXTYP 

00CB' 21 DA92 LXI H, RDFLNM 

00CE' 11 01C1' LXI D, BUFFER 

00D1' 01 011? LXI B, LN2SNC 

00D4' EDB6 LDIR 

00D6' 2A D964 LHLD TRKWNT 

00D9' 22 01BF' SHLD TRACK 

0ODC Dl POP D 

00DD' CD 00F4' CALL FIXIT 

0OE6' 2A 01BF' LHLD TRACK 

00E3' 22 D964 SHLD TRKWNT 

00E6' 21 01C1' LXI H, BUFFER 

0@E9-' 11 DA92 LXI D, RDFLNM 

00EC 01 Oil? LXI B, LN2SNC 

00EF' EDB6 LDIR 

00F1' 18C3 JMPR . . LI 

00F3* 8D . . Rl: . BYTE 13+128 

; THIS ROUTINE; DOES ALL OF THE WORK FOR 
;RNRL1ZING A SINGLE FILE ON THE DISK. 
FACTUALLY, SINCE (I MIGHT MODESTLY 
; SAY) THIS IS ONE OF THE BEST EXAMPLES 
; OF A WELL STRUCTURED PROGRAM I HAVE 
; EVER SEEN, 'FIXIT' JUST PROVIDES 
; ANOTHER LEVEL OF CONTROL FOR THE 
; 'FIXIT' FIRST CALLS "HEW TO SET UP 
i- THE CONTROL REGISTERS TO READ THE 
i FIRST BLOCK OF THE FILE. THE LOOP 
.; '..LI' THEN PROCESSES ALL BLOCKS IN 
;. THE FILE. THIS LOOP CALLS 'NEXT' TO 
.: GET THE NEXT DATA BLOCK IN THE FILE, 
, IT THEN CALLS 'TEST' TO TEST ITS 
; DISK POINTERS. IF THERE IS A PROBLEM, 
.5 'TEST" RETURNS H NONZERO FLAG. IN THIS 
; SITUATION 'FIXIT' TERMINATES. IT DOES 
.; NOT CONTINUE PROCESSING A FILE WITH A 
; BAD CHAIN. IF THE BLOCK IS OK IT CALLS 
; 'SETMAP' TO TURN ON THE BIT IN THE 
.; BITMAP FOR THIS BLOCK. IT THEN CALLS 



84 October 1979 © BYTE Publications Inc 



.; 'LINK' TO SET UP TH£ CONTROL TO READ 

i IN THE NEXT BLOCK OF THE FILE. IF 

■> THERE ARE NO MORE, 'LINK' RETURNS 

; WITH H ZERO FLAG AND 'FIXIT' EXITS. 

0OF4' FIXIT: 

0GF4 J CD 616?' CALL HEAD 

0QF?' ..LI: 

Gf.iF? CD 6116'' CALL NEXT 

GhFR CD 0121' CALL TEST 

0OFD' CO RNZ 

60FE/ CD 8129'" CALL SETMAP 

0101' CD 6133' CALL LINK 

0164" 2uFt JRN2 . . Ll 

0106' C9 RET 

i THIS ROUTINE SETS UP THE CONTROL 

; REGISTERS 'DE' AND 'HL' TO PROCESS 

i THE FIRST BLOCK IN THE FILE. SINCE A 

iBflCKCHfllN TEST IS GOING TO BE MADE 

i BY SOMEBODY, 'DE' WILL BE USED TO KEEP 

; THE PREVIOUS BLOCKS ADDRESS WHILE 'HL'" 

; WILL OF COURSE BE USED TO KEEP THE 

; CURRENT BLOCKS ADDRESS. FOR THE FIRST 

i BLOCK IN A FJLE, THE BACK POINTER IS 

> DEFINED AS Zl?.RG AND SO THIS IS THE 

; VALUE PLACED IN -DE'". THE ADDRESS OF 

; THE FIRST BLOCK IN A FILE IS CONTAINED 

} IN THE 16TH AND J.1TH BYTES OF THE 

; DIRECTORY ENTRY FOR THIS FILE. THIS 

i IS A DISPLACEMENT OF +9. SINCE WE 

.; HAVEN'T REUSED THE FDOS BUFFER, 1 GET 

; THIS ADDRESS FROM WHERE 'DIRBLK' TOLD 

; HE THE DIRECTORY ENTRY IS. 'DIRBLK' 

.;Hh c J POINTED DE' TO THE CURRENT 

j DIRECTORY BLOCK. THEREFORE I GET THE 

.; LOCATION CJF" THE FIRST BLOCK'S DISK 

.; ADDRESS GV ADDING 9 TO THIS LOCATION. 

016?' HEAD: 

01t;7' CD OlS'E- CALL NAMEM 

010m' 21 timS LXI H, 9 

0160- 19 DAL' D 

016E' 5E MOV E, M 

01»Sf 23 I NX H 

0110' 56 MOV D,M 

0111- ■ 21 m& LXI H, U 

0114' Efc XCHG 

0115" C9 RET 

; THIS ROUTINE LOADS IN THE NEXT DISK 

.; BLOCK FOR THIS FILE. THE FDOS ROUTINE 

; 'RED256- PRESUMES THAT THE DISK 

; ADDRESS OF THE BLOCK TO BE READ IN IS 

.; IN THE FIELD 'TRKWNT'. THEREFORE, 

; THIS IS WHERE 'NEXT' PLACES IT. 

0116' NEXT: 

0116' E!5 PUSH H 

011?' D5 PUSH D 

0118' 22 D964 SHLD TRKWNT 

011B' CD D?5E CALL RED256 

011E' Dl POP D 

911F •' El POP H 

0126 C9 RET 

i THIS ROUTINE TESTS THE CHAINS FOR THE 

.; CURRENT FILE BLOCK. IF THERE ARE ANY 

; PROBLEMS, IT RETURNS A NONZERO RETURN 

; CODE. ACTUALLY YOU WILL NOTICE THAT 

; 'TEST' CALLS TWO OTHER ROUTINES WHICH 

; DO ALL THE WORK. 'TESTBK' TESTS THIS 

} BLOCKS BflCKCHHIN AND 'TESTNM' TESTS 

; THE SELF CONTAINED ADDRESS OF WHERE 

j IT THINKS IT; IS: ITS OWN ADDRESS. 

0121' TEST: 

0121'" CD 013ft' CALL TESTBK 

0124' C0 RNZ 

0125' CD 0168' CALL TES7NN 

012S" C9 RET 

j THIS ROUTINE TURNS ON THE BIT IN THE 
j BIT MAP CORRESPONDING TO THIS DISK 
; BLOCK. THE FDOS ROUTINE 'TS2BT' 
; ASSUMES THAT 'HL' CONTAINS A DISK 
i BLOCK ADDRESS. IT RETURNS THE ADDRESS 
i OF THE BYTE IN THE BITMAP WHICH 



; CONTAINS THE BIT REPRESENTING THIS 
; BLOCK. IT ZEROS REG. 'A' AND THEN 
j TURNS ON THE BIT IN REG 'A' WHICH 
.; CORRESPONDS TO THE CORRECT BIT FOR 
i THIS BLOCK IN REG 'M' (THE BYTE 
; POINTED AT BV 'HL'). 0R1NG 'A' INTO 
i 'M' TELLS FDOS THAT THE BLOCK IS IN 
i USE. X0R1NC 'A' INTO 'M' (TURNING OFF 
;THE BIT;- TELLS FDOS THAT THE BLOCK 
i IS UNUSED. 'SETMAP' TURNS ON THE BIT 
; TO SIGNAL THAT THE BLOCK IS IN USE. 
012*' SETMAP: 

0129' E5 PUSH H 
0:12fi' D._i PUSH D 
01^" CD 0665 CALL TS2BT 
012E' B6 ORA M 
012F' 77 MOV M, A 

0136 ' Dl POP D 
01x1' El POP H 
0132' C9 RET 

, THIS ROUTINE SETS UP THE POINTERS FOR 

i PICKING UP THE NEXT FILE BLOCK. IT 

; TAKES THE CURRENT POINTER AND PUTS IT 

i IN 'DE' AND PLACES THE ADDRESS OF THE 

;NEXT BLOCK IN 'HL'. IT RETURNS A ZERO 

;FLAG IF THERE ARE NO MORE BLOCKS IN 

; THIS FILE. 

0133' LINK: 

0133' EB XCHG 

0134' 2A DA AC LHLD RFWLNK 

013?' 70 MOV A, L 

0138' B4 ORA H 

0139' C9 RET 

.: THIS ROUTINE TESTS THE BACK CHAIN 

; POINTER. IT TAKES THE BACK CHAIN 

; POINTER FROM THE REVERSE LINK 'RRVLNK' 

; AND COMPARES IT TO 'DE' USING THE 

; 'DSBC' INSTRUCTION. IF EVERYTHING IS 

; OK, IT RETURNS A ZERO FLAG. OTHERWISE, 

.; IT CMLLS NAME TO PRINT THE NAME OF 

.; THIS FILE AND THEN PRINTS AN ERROR 

, MESSAGE. 

013H" TESTBK: 

013 A' E5 PUSH H 

013B- D5 PUSH D 

013C 2A DA9E LHLD RRVLNK 

013F' 9? SUB A 

0146' ED52 DSBC D 

0142' Dl POP D 

0143' El POP H 

9144' C8 RZ 

0145' F5 PUSH PSW 

0146' CD OlAE' CALL NAME 

0149' 21 6151' LXI H, . . Ml 

014C CD DU?3 CALL TXTYP 

014F' Fl POP PSW 

0150' C9 RET 

0151' . . Ml: 

0151' 2048415320 .ASCII ' HAS A BAD BAC 

K CHAIN. ' 

016?' 8D . BYTE 13+128 

i THIS ROUTINE TESTS THE ADDRESS THAT 

i THIS FILE BLOCK THINKS THAT IT IS 

; LOCATED AT. THIS VALUE, AT 'TRKRED', 

; SHOULD MATCH THE COf^TENTS OF 'HL'. 

; THIS IS TESTED USING THE 'DSBC 

; INSTRUCTION. IF EOUAL, A ZERO FLAG IS 

■> RETURNED. OTHERWISE, THE NAME OF THE 

; CURRENT FILE IS PRINTED OUT USING THE 

; ROUTINE 'NAME' AND AN ERROR MESSAGE 

; IS TYPED OUT. 

0168' TESTNW: 

0168' E5 PUSH H 

0169" D5 PUSH D 

016A ED5B DA9C LDED TRKRED 

016E' 9? SUB A, 

016F' ED52 DSBC D 

01?1' Dl POP D 

01?2' El POP H 

01?3'" C8 RZ 

01?4' F5 PUSH PSW 

Listing 1 continued on page 86 



A FULL NETWORK DATA MANAGEMENT SYSTEM FOR MICRO COMPUTERS 

© the Ultimate Software Tool: 

A 



AVAILABLE FROM 



Micro Ditto Base Systems, inc. 



MDBS IS A VERSATILE 
DATA BASE MANAGEMENT SYSTEM 

• PROVIDES FLEXIBILITY OF A FULL NETWORK DATA 

BASE SYSTEM 

• EFFECTIVE REPRESENTATION OF COMPLEX DATA 

STRUCTURES 

• RECORDS CAN BE ORDERED ON VARIOUS SORT KEYS 

• COMMANDS TO ADD, DELETE, UPDATE, SEARCH AND 

TRAVERSE THE DATA BASE 

• SORTED, FIFO, LIFO, NEXT AND PRIOR SET ORDER- 

ING PROVIDED 

• PROVIDES DATA PROTECTION 

• STRAIGHTFORWARD USE OF ISAM-LIKE STRUCTURES 

• COMPARABLE TO DATA BASE SYSTEMS PREVIOUSLY 

AVAILABLE ONLY ON LARGER COMPUTERS 



MDBS IS CODASYL 
ORIENTED WITH EXTENSIONS 

• EXPLICIT REPRESENTATION OF MANY-TO-MANY SETS 

• RECORD TYPES MAY OWN OTHER OCCURRENCES OF 

THE SAME RECORD TYPE 

• DIFFERENT RECORD TYPES CAN PARTICIPATE IN A 

SINGLE SET 

• MULTIPLE LEVELS OF READ/WRITE PROTECTION 

• NAMES OF DATA ITEMS, RECORDS, SETS AND FILES 

ARE WHOLLY USER DEFINABLE 



MDBS IS FOR THE SERIOUS 
APPLICATIONS PROGRAMMER 

• POWERFUL COMPONENT IN INFORMATION PROCESSING 

• RELIEVES TEDIUM OF FILE HANDLING DETAILS 

• OEMS CAN RAPIDLY AND INEXPENSIVELY DEVELOP 

APPLICATION SOFTWARE 

• USEFUL IN DISTRIBUTED PROCESSING ENDEAVORS 



SOFTWARE DELIVERED ON MINI- OR FULL-SIZED FLOPPY DISKS 
USING CP/M® NORTH STAR, OR TRS-8o" COMPATIBLE FORMATS 



• MDBS INTRODUCTORY OFFER $750.00 

• USERS MANUAL (alone) $35.00 

• Distributors and OEMS Contact MDBS 
for Special Rates 

• Application Programming Contracts 
will be Considered. 



Indiana Residents Include 4% Sales Tax. 



FEATURES 

• WRITTEN IN Z-80 CODE FOR MAXIMAL EXECUTION 
EFFICIENCY AND MINIMAL MEMORY USAGE. (8080 
VERSION EXTRA). 

• ROUTINES ARECALLABLE FROM BASIC (OR OTHER 
HOST LANGUAGES) TO FACILITATE FAST AND EASY 
APPLICATION PROGRAMMING. 

• ROUTINES CAN BE ORGED TO SATISFY USER REQUIRE- 
MENTS. 

• SUPPORTS DATA BASES SPREAD OVER SEVERAL DISK 
DRIVES (MAXIMUM OF 8). DISKS MAY BE MINI- OR FULL- 
SIZED FLOPPIES OR HARD DISKS. 

• I/O AND HOST LANGUAGE INTERFACE ROUTINES ARE 
ISOLATED FOR EASY ADAPTATION. PATCHES FOR 
MANY COMMON OPERATING SYSTEMS/BASIC LAN- 
GUAGE COMBINATIONS AVAILABLE. 



REQUIREMENTS 

• Z-80 Based System (8080 Systems Extra, 
6502 Version Forthcoming) 

• 8 to 16K Bytes (Depending on Options) 
in Addition to the Operating System, 
Host Language and Users Program. 



PACKAGE INCLUDES 

MDBS DDL DATA DEFINITION LANGUAGE ANA- 
LYZER/EDITOR. The user specifies data structures to 
be used in a concise Data Definition Language (DDL). 
The MDBS Data Definition Language Analyzer/ Editor 
allows the user to interactively create and edit DDL 
specifications and to initialize the data base for use 
based on these specifications. 

200 PAGE USERS MANUAL with extensive documen- 
tation of the MDBS System. 

MDBS DMS DATA MANAGEMENT ROUTINES. These 
are the routines callable from the host language (BASIC, 
PASCAL, etc.) which perform the data base operations 
of finding, adding, and deleting records; fetching and 
storing data items; and traversing the (possibly complex) 
data structure. 

SAMPLE APPLICATION PROGRAMS written in 
North Star BASIC which illustrate various features of 
MDBS. 



CP/M is a registered trademark of Digital Research Corp. 
TRS-80 is a registered trademark of Radio Shack/Tandy Corp. 



MICRO DATA BASE SYSTEMS, INC 

P.O.BOX 248 LAFAYETTE, IN 47902 
(317) 742-7388 



Circle 222 on inquiry card. 



BYTE October 1979 



85 



Listing 

0175' 

0176!" 

017B'" 

017F/ 

017P 

01:36'' 

0180' 

D DISJ= 

019D' 



2 continued: 
CD QlftE' 
21 018&' 
CD DG73 
Fl 
C9 

,3648415320 
. ADDRESS. " 
3D 



CRLL NAME 

LXI H,.. Ml 

CALL TXTYP 

POP PSW 

RET 

.Ml: 

.ASCII ' HAS AN INVRL1 

. BVTE 13+128 



; THIS ROUTINE COPIES THE CURRENT PILE 

j NAME OUT OK THE DIRECTORY ENTRY WHICH 

.; IS POINTED TO BY 'DE' INTO THE HOLDING 

; f^Si 'NAMEH'. 

019E' NAMEM: 

019E'- E5 PUSH H 

019F'' D5 PUSH D 

01A6' C5 PUSH B 

01A1" EB XCHG 

01 A2" 11 0Ufr' LXI D, NAMEH 

01FI5' 81 0089 LXI B,9 

01RB' EDB0 LDIR 

G1AA' CI POP B 

01AB' Dl POP D 

01AC' El POP H 

61AD' C9 RET 

\ THIS ROUTINE PRINTS THE NAME OF THE 

; CURRENT FILE/ WHICH IS IN "NAMEH'*, 

; USING THE FDOS MESSAGE PRINT ROUTINE 

; 'TXTYP-'. 

OlAE' NAME: 

01AE' 21 01B5' LXI H, NAMEH 

01B1' CD D073 CALL TXTYP 

01B4' C9 RET 

01B5" NAMEH: . BLKB 18 

01BF' TRACK: . BLKW 1 

01C1' BUFFER: . BLKB 388H 

; THESE ARE THE GENERAL ROUTINES DEFINED 

; FOR THE USER TO USE WITHIN FDOS. 

KFDGSYSMCX 

D055 BYT IN =■ 0»055H 

; C INPUT A CHARACTER FROM THE DISK 

; I HL->DISK BUFFER: 

; CY=EOF, f^BYTE 

.; K INPUT DISK BYTE 10 

C»358 BYTOT = 0D056H 

iC OUTPUT A CHARACTER TO THE DISK 

; I HL->DJSK BUFFER, C=BYTE 

; 

; M FLAGS 

) K OUTPUT DISK BYTE 10 

D05B BLK1N = 0D05BH 

} C READ A BLOCK FROM DISK. 

; I HL->DISK BUFFER, BUFFER+14 CONTAINS 

i I TRACK AND SECTOR TO BE READ IN. 

; CY=FAIL> BUFFER+14=NEXT BLOCK IN 

; CHAIN. 

i K INPUT DISK BLOCK 10 

D05E BLKOT * 0D05EH 

; C WRITE A BLOCK TO DISK. 

; I HLOBLOCK IN BUFFER, BUFF ER+10 

; I CONTAINS ITS DESTINATION DISK ADDR. 

.; CY=FAIL, BUfrFER+10 IS DESTINATION OF 

i NEXT BLOCK 

;K OUTPUT DISK BLOCK 10 

.' 

D664 OPNIN = 0D864H 

.; C OPEN INPUT DISK FILE 

; I HL-> BUFFER CONTAINING NAME 

i CV=FAIL 

> K INPUT OPEN DISK 

l 

D067 OPNOT = 0DG67H 

; C OPEN OUTPUT DISK FILE 

i I HL-> BUFFER CONTAINING NRME 

; CY=FA1L 

; K OUTPUT OPEN DISK 



D06R 



CLSOT - 0DO6RH 



i C CLOSE AN OUTPUT DISK FILE 

; I HL-> BUFFER 

; 

; K CLOSE OUTPUT DISK 

D06C* FILNAM = 0D06OH 

y C INPUT, CHECK, AND PLACE A DISK 

i C FILE NAME. 

i I HL->DISK BUFFER 

;0 CY=INVALID FILENAME 

; K INPUT CONSOLE DISK 10 

D073 TXTYP = 0D873H 

; C OUTPUT A MESSAGE TO THE CONSOLE 

> I HL-> MESSAGE ENDING IN -'SB'" BIT ON 
i OR ''08' BYTE 

.; HL-> STOP CHAR 

;C C 

;K OUTPUT ^ CONSOLE ASCII BLOCK 

} 

D076 TI = 0DO76H 

; C INPUT FROM CONSOLE AND SET FLAGS 

> I 

;0 A=8YTE CY»X'13' Z=' ' 

> K Iff UT CONSOLE BYTE 



TXT IN = 0D079H 



D0?9 
; C NO-OP 
> I 
i 
;K 



; THESE ARE IMPORTANT ROUTINES DEFINED 

; WITHIN FDOS. THEY ARE NOT DEFINED FOR 

;THE USER TO USE. HOWEVER, I AM USING 

; THEM ANYWAY. 

HFD5SYSMCX 

D686 MAP IN = 0D6&6H 

iC READ IN ALLOCATION BITMAP OFF DISK 

; I 

, 

i K INPUT DISK LOOKUP' BITMAP 

D6AA MAPOT = 0D6AAH 

i C PUT BITMAP BHCK ON DISK 

.j I 

; 

;K OUTPUT DISK LOOKUP BITMAP 

D75E RED256 = 0D75EH 

; C READ IN RECORD TO SYTEM INPUT BUFFER 

; I 

;0 

; C EVERYTHING 

; K INPUT DISK 

D66£i TS2BT = 0D665H 

} C CONVERTS A DISK ADDRESS TO A BITMAP 

ADDRESS AND BIT 
i I HL=TRRC!<: AND SECTOR 
.; HL->6YTE IN BIT MAP,A=B1T IN BIT MAP 
; K CONVERSION DISK LOOKUP BITMAP 



: THESE ROUTINES CONTROL I/O TO THE 

.; DISK DIRECTORY. 

XFDRSVSMCX 

D5EF DIRBLK = SD5EFH 

, C GET THE NEXT DIRECTORY ENTRY 

} I 

i L€-> BLOCK 

i A=FIF.:ST CHAR IN NAME 

J CV^END OF DIR, 2=-FlRST NEVER USED 

l M=[)ELETEI) ffl) AVAILABLE 

} K INPUT DISK DIRECTORY 

D5DF DIRGPN = 0D5DFH 

i C OPEN DISK DIRECTORY FILE 

.; I 

; 

;K INPUT OPEN. DIRECTORY DISK 



.; THESE ARE THE IMPORTANT FIELDS WITHIN 
.; THE TWO FDOS SYSTEM BUFFERS. 
XFDB5YSMCX 

DEiAC BITMAP = 6DBACH 

.; C ADDRESS OF BITMAP WHEN IN MEMORY 
J I 
; 

.; K DISK DATlfl BLOCK CONTROL LOOKUP MEMORY 
BITMAP 

0117 LN2SNC = 117H 

> C SIZE OF DISK BUFFER 
.; I 

> ij 

; K 10 DISK DATA CONTROL 

DF192 RDFLNM = 0DA92H 

i C BUFFER FOR SYSTEM INPUT 

} I 

;0 

; K INPUT DISK DATA BLOCK 

DRAG RFWLNK = 0DflR6H 

; C FORWARD LINK OF SECTOR IN MEMORY 

i I 

; 

; K DISK DATA BYTE 

DR9E RRVLNK = 0DA9EH 

; C BACKWARD LINK OF SECTOR IN MEMORY 

; I 

i 

; K DISK DATA BVTE 

DA9C TRKRED = 0DA9CH 

; C DISK LOCAION OF SECTOR IN MEMORY 

i I 

; 

j K DISK DATA BYTE 



D964 


TRKWNT = 6D964H 




; C NEXT SECTOR READ FOR RED256 
; I 




; Ci 

J K DISK DATA BYTE 




000I3' 


.END ANAL I Z 




RNALIZ 000O-' 


BITMAP DBftC 


BL 


KIN D05B 


BLKOT D05E 




BUFFER 01C1-' 


BYT IN D055 


BY 


TOT D958 


CLSOT DQ6A 




DIRBLK D5EF 


DIROPN D5DF 


EH 


D 9852'' 


FILNAM D0SD 




FIXIT 08F4' 


HEAD 0107" 


IN 


IT 68&A' 


LINK 0123" 




LN2SNC 0117 


MAP IN D6B* 


MR 


POT D6AA 


NAME 01HE' 




NRMEH 01B5- 


NAMEM B19E^ 


f£ 


XT 8116 '' 


OPNIN D064 




OPfJOT D067 


RDFLNM DA92 


RE 


D256 D75E 


RFWLNK DRH0 * 




RRVLNK DflSE : 


SET 00B3" 


SE 


TtlAP 0129' 


TEST 0121" 




TESTBK 813A' 


TESTNM 0166" 


TI 


D876 


TRACK 01BF" 




TRKRED DA9C 


TRKWNT D964 


TS 


2BT D665 


TXT IN D079 




TXTYP D873 ■ 







86 October 1979 © BYTE Publications Inc 



1 Ker^ -J 


W^*Wl 1 




K ' ■'■■■■ v 








L ^ A 



X J 






BASIC COMPILER TU 
COMPUTER II 



ARY 







Bob admits he thought his computer 
had reached the limit of its capabilities. 
Then he discovered the BASIC Compiler 
from Microsoft. 

"It's incredibly fast',' he boasts. "Nothing 
was as fast as my Microsoft BASIC inter- 
preter—yet this new compiler is actually 
3-10 times faster. 

"And that's not all',' he beamed. "My 
compiler has the same language features as 
Microsoft 5,0 BASIC and runs in my 32K 
CP/M system'.' 

Bob says, "When Microsoft comes out 
with a new product, I know it's got to be 
good. And this BASIC Compiler is the 
wizard I've been waiting for. 

"At last, I can generate relocatable 
machine language modules from my 
Microsoft BASIC programs— machine 
code that's highly optimized. And because 
the Microsoft macro assembler and loader 
come with the BASIC Compiler, BASIC 
programs are easily linked to assembly 
language subroutines or Microsoft 

Circle 232 on inquiry card. 



FORTRAN and COBOL programs. 
Just like the pros!' smiled Bob. 

"What's more, the compiler generates 
a fully symbolic listing of the machine 
language that's generated — a great way for 
me to learn assembly code on my own!' 

Bob believes in gi vingcr edit where credit 
is due. "Microsoft turned my BASIC com- 
puter into a genuis for $395, but I was 
smart enough to recognize a good thing 
immediately'.' 

If you want to get the most out of your 
computer and your BASIC programs, ask for 
more information on the Microsoft BASIC 
Compiler. We know you'll complimentyour- 
self on a very smart move. 




10800 N.E. Eighth Suite 819 
Bellevue, Washington 98004 
206/455-8080 Telex 328945 

We set the standard. 




BYTE October 1979 



87 



from PEfiOCM 




One-Drive System: 

S399. (40-track) & S675. (77-track) 
Two-Drive System; 

S795. (40-track drives) & $1350. (77-track drives) 
Three-Drive System: 

$1195. (40-track drives) & $2025. (77-track drives) 
Requires Expansion Interface, Level II BASIC & 16K RAM. 



Low Cost Add-On Storage for Your TRS-80*. 

In the Size You Want. 

When you're ready for add-on disk storage, we're ready for you. 
Ready with six mini-disk storage systems — 102K bytes to 591 K bytes of 

additional on-line storage for your TRS-80*. 



• Choose either 40-track TFD-100™ drives 
or 77-track TFD-200™ drives. 

• One-, two- and three-drive systems im- 
mediately available. 

• Systems include Percom PATCH PAK 
#1™, on disk, at no extra charge. PATCH 
PAK #1™de-glitches and upgrades 
TRSDOS* for 40- and 77-track operation. 

• TFD-100™ drives accommodate "flippy 
disks." Store 205K bytes per mini-disk. 

• Low prices. A single-drive TFD-100 TM 
costs just $399. Price includes PATCH 
PAK #1™ disk. 

• Enclosures are finished in system- 
compatible "Tandy-silver" enamel. 



Whether you need a single, 40- 
track TFD-1 00™ add-on or a three-drive 
add-on with 77-track TFD-200™s, you 
get more data storage for less money 
from Percom. 

Our TFD-100™ drive, for example, 
lets you store 102.4K bytes of data on 
one side of a disk — compared to 80K 
bytes on a TRS-80* mini-disk drive — 
and 1 02.4K bytes on the other side, too. 
Something you can't do with a TRS-80* 
drive. That's almost 205K bytes per 
mini-disk. 

And the TFD-200™ drives provide 
197K bytes of on-line storage per drive 



— 1 97K, 394K and 591 K bytes for one-, 
two and three-drive systems. 

PATCH PAK #1™, our upgrade 
program for your TRSDOS*, not only 
extends TRSDOS* to accommodate 40- 
and 77-track drives, it enhances 
TRSDOS* in other ways as well. PATCH 
PAK #1™ is supplied with each drive 
system at no additional charge. 

The reason you get more for less 
from Percom is simple. Peripherals are 
not a sideline at Percom. Selling disk 
systems and other peripherals is our 
main business — the reason you get 
more engineering, more reliability and 
more back up support for less money. 



In the Product Development Queue . . . a printer interface for using your TRS-80* with any 
serial printer, and . . . the Electric Crayon™ to map your computer memory onto your color TV 
screen — for games, animated shows, business displays, graphs, etc. Coming PDQ! 



t" TFD-100. TFD-200, PATCH PAK and Electric Crayon are trademarks of PERCOM DATA COMPANY. 

•TRS-80 and TRSDOS are trademarks ot Tandy Corporation and Radio Shack which have no relationship to PERCOM DATA COMPANY 



PEflCOM 



PERCOM DATA COMPANY, INC. 
DEPT. B • 211 N. KIRBY • GARLAND, TX. 75042 




To order add-on mini-disk storage for your TRS-80*, 
or request additional literature, call Percom's toll-free 
number: 1-800-527-1592. For detailed Technical infor- 
mation call (214)272-3421. 

Orders may be paid by check or money order, or 
charged to Visa or Master Charge credit accounts. Texas 
residents must add 5% sales tax. 



Percom 



'peripherals for personal computing' 




88 BYTE October 1979 



Circle 304 on inquiry card. 



For your SWTP 6800 Computer . . . 

PERCOM's 
FLOPPY DISK SYSTEM 

the 




Ready to plug in and run the moment you receive 
it. Nothing else to buy, no extra memory. No 
"booting" with PerCom MINIDOS-PLUSX™, the 
remarkable disk operating system on EPROM. 
Expandable to either two or three drives. 
Outstanding operating, utility and application 
programs. 




fully assembled and tested 
shipping paid 




PERCOM DATA COMPANY, INC. 

211 N. Kirby Garland, TX 75042 
(214)272-3421 



For the low $599.95 price, you not only get the disk drive, drive power 
supply, SS-50 bus controller/interface card, and MINIDOS-PLUSX™, 
you also receive: 

• an attractive metal enclosure • a fully assembled and tested inter- 
connecting cable • a 70-page instruction manual that includes operat- 
ing instructions, schematics, service procedures and a complete list- 
ing of MINIDOS™ • technical memo updates — helpful hints which 
supplement the manual instructions • a 90-day limited warranty. 

SOFTWARE FOR THE LFD-400 SYSTEM 
Disk operating and file management systems 
INDEX™ The most advanced disk operating and file management 
system available for the 6800. INterrupt Driven Executive operating 
system features file-and-device-independent, queue-buffered 
character stream I/O. Linked-f ile disk architecture, with automatic file 
creation and allocation for ASCII and binary files, supports sequential 
and semi-random access disk files. Multi-level file name directory 
includes name, extension, version, protection and date. Requires 8K 

RAM at $A000. Diskette includes numerous utilities $99.95 

BASIC Interpreters and Compilers 
SUPER BASIC A 10K extended disk BASIC interpreter for the 6800. 
Faster than SWTP BASIC. Handles data files. Programs may be 

prepared using a text editor described below $49.95 

BASIC BANDAID™ Turn SWTP 8K BASIC into a random access data 
file disk BASIC. Includes many speed improvements, and program 

disk CHAINing $17.95 

STRUBAL+™A STRUctured BAsic Language compiler for the pro- 
fessional programmer. 14-digit floating point, strings, scientific func- 
tions, 2-dimensional arrays. Requires 20K RAM and Linkage Editor 
(see below). Use of the following text editors to prepare programs. 
Complete with RUN-TIME and FLOATING POINT packages $249.95 

Text Editors and Processors 
EDIT68 Hemenway Associates' powerful disk-based text editor. May 
be used to create programs and data files. Supports MACROS which 
perform complex, repetitive editing functions. Permits text files larger 
than available RAM to be created and edited $39.95 

TOUCHUP™ Modifies TSC's Text Editor and Text Processor for Per- 
Com disk operation. ROLL function permits text files larger than 
available RAM to be created and edited. Supplied on diskette com- 
plete with source listing $17.95 

Assemblers 
PerCom 6800 SYMBOLIC ASSEMBLER Specify assembly options 
at time of assembly with this symbolic assembler. Source listing on 

diskette $29.95 

MACRO-RELOCATING ASSEMBLER Hemenway Associates' 
assembler for the programming professional. Generates relocatable 
linking object code. Supports MACROS. Permits conditional 

assembly $79.95 

LINKAGE EDITOR - for STRUBAL+™ and the MACRO-Relocating 

assembler $49.95 

CROSS REFERENCE Utility program that produces a cross- 
reference listing of an input source listing file $29.95 

Business Applications 
GENERAL LEDGER SYSTEM Accommodates up to 250 accounts. 
Financial information immediately available — no sorting required. 
Audit trail information permits tracking from GL record data back to 

source document. User defines account numbers $199.95 

FULL FUNCTION MAILING LIST 700 addresses per diskette. Power 

ful search, sort, create and update capability $99.95 

PERCOM FINDER™ General purpose information retrieval system 
and data base manager $99.95 

tm trademark of PERCOM Data Company, Inc. 
tm trademark of Hemenway Associates Company. 

Now! The LFD-800 and LFD-1000. Add one, two or three 
LFD-800 drives and store 200K bytes per drive on-line. Add 
one or two (dual-drive) LFD-1000 units and store 800K bytes 
per unit on-line. Complete with interface/controller, DOS, 
cable & manuals. Two-drive systems: LFD-800 — $1549; 
LFD-1000 — $2495. 

PERCOM 'peripherals for personal computing' 

BYTE October 1979 89 



Circle 305 on inquiry card. 



Variables Whose Values 
Are Strings 



W D Maurer 

University Library Building 

George Washington University 

Washington DC 20052 



Almost every programmer has wanted to 
write a program in which there were one or 
more variables with strings as their values. 
Many programmers, however, are discour- 
aged by the programming difficulties that 
arise in this connection, in all but the 
simplest cases. This is particularly true when 
space is at a premium and assembly language 
is used as it is in many microcomputer 
applications. We would like to describe here 
two alternative ways of solving these prob- 
lems. These are quite different from each 
other stylistically; each is fascinating in its 
own way, and each has certain difficulties 
which have to be surmounted, but either 
one of them will solve the basic problem 
with which we are concerned. 

Many versions of FORTRAN allow 
variables to have strings as their values, but 
these strings cannot have lengths which are 
greater than some maximum, and this 
maximum is usually much too small for 
practical purposes. The maximum is, in fact, 
the number of characters in a word, which is 
usually two, four or six; sometimes it is five 
(as on the PDP-10) and sometimes eight (as 
on the IBM 370, using double words), but in 
practice the strings we are concerned with 
are often 20, 40 or even 60 characters long. 
In many COBOL programs, this problem 
is taken care of by assigning some large 
number of characters to every such variable. 
This is particularly common when the value 
of the variable is somebody's name and 
address, to be printed on an envelope by 
the computer. Often 25 characters are 
reserved for the name, 25 for the address, 
and 25 for the city, state and zip code. 
This gives rise to two kinds of problems. In 
the first place, 25 characters is not enough 
for an address like 1527 San Jose-Los Gatos 
Rd., even if we leave the period off the end. 
More important, however, is the fact that, 
if we reserve that many characters for every 
name and every address, there are going to 
be quite a lot of wasted characters. That 
doesn't matter too much in a COBOL pro- 
gram, where space, particularly on a disk, 
is usually quite abundant; but on a micro- 
computer we would like to make optimum 
use of all the space we have. 



The first solution to this problem that we 
will consider involves the use of a large 
array, called SPACE, for the storage of 
strings. Let us consider each element of this 
array to be one character long. Then the first 
string (whose length is LI, say) is stored in 
the characters SPACE (1 ), SPACE(2) and so 
on up through SPACE(L1 ). The next char- 
acter, SPACE(L1+1), contains an illegal 
character code (zero, for example) to 
denote the fact that this is the end of the 
first string. The second string starts at 
SPACE(L1+2) and continues from there. 
Every string ends with a zero character code, 
and all the strings are stored in the array 
called SPACE, in sequential order. 

Suppose now that these strings are 
supposed to be the values of variables K1, 
K2 and so on in the program. The actual 
value of each of these variables will be an 
integer that indicates where the corres- 
ponding string starts. Thus, for example, 
if 17 is the value of K2, then SPACE(17) 
is the first character of the given string; 
SPACE(18) is the next character, and so 
on. This is the basic concept of a pointer: 
a quantity which indicates where another 
quantity is in memory. The pointers we have 
set up have been index pointers, but it 
would have been just as easy to set up 
address pointers. That is, instead of the 
integer 17, we could have used the address, 
in memory, of the character SPACE(17). 

The basic problem that arises when this 
method is used can be seen if we consider 
the process of setting a variable to a new 
value. Suppose that the value of K1 is 
'SMITH' and we want to change it to 
'JOHNSON'. Unfortunately, 'JOHNSON' 
has more letters in it than 'SMITH', so we 
cannot simply store the new characters 
in the same places as we stored the old 
ones. We can, however, take advantage 
of the fact that not all of our array SPACE 
has been used. Suppose that we have used 
the characters from SPACE(I) up through 
SPACE(LSPACE); then 'JOHNSON' can 
start at SPACE(LSPACE+1 ), and we can set 
the pointer in K1 to be LSPACE+1. Of 
course, we also have to update LSPACE 
at this point, by adding to it the length 



90 October 1979 © BYTE Publications Inc 



of JOHNSON, or 7 (plus 1, for the zero 
character). 

The trouble with this method is that 
now SMITH is still in memory, together 
with its zero character. We are not really 
using all the space from SPACE(1) up 
through SPACE(LSPACE); there are five 
characters, plus a zero character, that we 
are not using. By itself this causes no prob- 
lems; but now consider what happens 
as our program continues to run. Every 
time we have a variable with a string as 
its value, and this variable gets a new 
string as its value, we are going to 
"abandon" some of our string storage 
area, just as we did with SMITH in this 
case. Eventually, we are going to run out 
of space; the whole SPACE array will be 
used up, except for "abandoned" areas 
as above. What do we do next? 

Let us agree that, whenever we abandon a 
string, we write a zero character over the 
first character of that string. This character 
will immediately follow the zero character 
at the end of the preceding string, so that 
two zero characters in a row will denote the 
start of an abandoned area. We can now 
consider the possibility of moving all the 
strings backwards by just enough so that 
the abandoned areas disappear, as shown 
in figure 1 . This is known as collapsing (or 
sometimes compact ifying). If we think of 
the left side of figure 1 as a row of bricks, 
with spaces between them to represent 
the abandoned areas, then putting our 
hands on the two ends of the row and 
collapsing it would produce the situation 
shown in the right side of the figure. 

An algorithm to do this involves two 
pointers, I and J. As we move each char- 
acter in SPACE, we set SPACE(J) = 
SPACE(I), and then add 1 to both I and J. 
When we have to skip over an abandoned 
area, we increase I, but not J. Thus I 
always indicates the current character we 
are moving, and J always indicates the place 
we are moving it. At the start of the 
algorithm, both I and J are initialized to 1. 

There is still one difficulty. All our 
variables with string values involve pointers, 
and after the collapsing process has taken 
place, the pointers will be wrong. We have to 
have some way of adjusting these pointer 
values. There are at least two reasonable 
ways of doing this. One of these involves 
what may be called back pointers. The first 
character (or possibly the first two char- 
acters) of each string, as given in the array 
SPACE, is now some indication of which 
variable has this particular string as its value 
(such as, for example, the address of that 
variable). Whenever a back pointer is moved, 
by the operation SPACE(J) = SPACE(I), we 



(a) 



(b) 



look in that position (which should contain 
I) and change it to J. 

The other method involves a sorting 
operation. All the pointers that are con- 
tained in all the variables with string values 
are placed in an array and sorted in 
ascending order, together with back pointers 
to the given variables. As we are going 
through the SPACE array and setting 
SPACE(J) = SPACE(I), we are also going 
through this new array, from the beginning 
to the end. At each stage, the pointer in this 
array that we are currently considering 
points to the place in the SPACE array that 
we will have to treat next, as the start of a 
string to be moved. When we get to this 
point in SPACE, we reference the associated 
back pointer and proceed as before; then we 
continue through the SPACE array, but also 
move forward by one position in the new 
array, so that we will be ready to treat that 
pointer when we come to it. 

Let us now pass to the second method of 
handling string values of variables. Again 
we use a large array, which we will call 
FREE this time, rather than SPACE. FREE 
is organized into groups of characters; to 
make our example concrete, we will assume 
that each group is eight characters long. The 
first six of these characters are actually 
characters of the given string; the remaining 
two character positions, taken together, 
contain a pointer to another group of eight 
characters. 

Any string which is less than six char- 
acters long is stored in a single group. If a 
string is four characters long, for example, 
the last two characters are zero characters; 
this tells us that these are not actually to be 
counted as part of the string. A string which 
is more than six characters long is stored as a 
chain. Thus, for example, if a string is 15 
characters long, the first six of these char- 
acters appear in one group, which contains 
a pointer to another group. The next six 
characters appear in this second group, 



Figure 1: Collapsing or 
"compactifying" an array. 
In figure la A, B, C and D 
are separated by empty 
space (shaded area). In 
figure lb this empty, 
available space is con- 
solidated by moving B, C 
and D up so that they 
are contiguous with A. 



Whenever we abandon a 

string, we write a zero 

character over the first 

character of that string so 

we can go back later and 

identify the string as 

abandoned. 



October 1979 © BYTE Publications Inc 91 




CDC PHOENIX 
CDC MMD 



Konan'm SMC' 100 la versatile, faat, coat efficient. It 9 a the 
dlak controller that brlnga S- 1 00 bua micro computer a 
together with large capacity hard dlak drlvea. 



Veraatlle 

Interfaces S -100 bus micro 
computerswith all fixed or removable 
media disk drives with storage 
module (SMD) interfaces. Each 
Konan SMC-100 will control up to 4 
drives ranging from 8 to 600 
megabytes per drive, including most 
"Winchester" type drives. Up to 2400 
megabytes of hard disk per 
controller! And you can take your 
pick of hard disk drives: Kennedy, 
Control Data, Fujitsu, Calcomp, 
Mfcrodata, Memorex, and Ampex, for 
example. 

Famt 

SMC-100 transfers data at fast, 6 to 
10 megahertz rates, with full onboard 
sector buffering and sector 
interleaving, and a DMA that's faster 
than other popular S- 100 DMA 
controllers. 



Coat efficient 

SMC-100 is priced right to keep your 
micro computer system micro-priced. 
It takes advantage of low-cost-per- 
megabyte disk drive technology to 
make the typical cost less than $80 
per megabyte. 

The OEM/Dealer single quantity price 
is only $1650, with driver ROM option. 
Excellent quantity discounts are 
available. 

SMC- 100 availability: 

Off the shelf to 30 days in small 
quantities. (Complete subsystems 
are on hand for immediated delivery.) 

Konan has theanswers. Talk to them 
today. Call direct on Konan's order 
number: 602-269-2649. Or write to 
Konan Corporation, 1448 N. 27th 
Avenue, Phoenix, Arizona 85009. 




1448 N. 27th Avenue • Phoenix, Arizona 85009 • 602-269-2649 



which contains a pointer to a third group. 
The last three characters appear in the third 
group, followed by three zero characters. 

If a string is exactly six characters long, it 
appears in a single group, but the pointer 
itself contains zero. If a string is 12, 18, 24, 
etc, characters long, it appears in more than 
one group, but the pointer in the last group 
will contain zero. In general, the pointer in 
the last group always contains zero, and it is 
this, rather than the presence of zero char- 
acters, that determines the fact that it is the 
last group. 

We thus have one or more chains (some- 
times called simple lists) which involve 
various 8 character groups in FREE. We 
are now in a position to make use of a basic 
idea in advanced programming techniques: 
the list of available space. In this case, the 
list of available space is a chain which con- 
tains all those 8 character groups, and only 
those groups, which are not on any other 
chain. That is, we think of all these groups 
as being in some order (it does not matter 
what the order is). Then the first group, in 
this order, contains a pointer to the second 
group; the second group contains a pointer 
to the third, and so on, up to the last group, 
which contains a zero pointer. 

The point of using a list of available space 
is that it is now no longer necessary to use a 
collapsing process, as described in con- 
nection with the previous string storage 
method. In particular, we are no longer 
"abandoning" anything, as we were before. 
All we have to do is to make sure that, at 
all times, every group into which FREE is 
divided is on some chain, either the list of 
available space, or a chain which represents 
the string value of some variable. (There are 
also programs which use a list of available 
space, but in which some groups are aban- 
doned, and a process somewhat like collap- 
sing, known as garbage col lection, is used 
to collect all these abandoned groups into 
a new list of available space. This, however, 
is necessary only when the various chains 
contain pointers to each other, which is 
not the case in the present application.) 

By a pointer to a group, we mean a 
pointer to the first character in the group. 
Thus if K is such a pointer, then the group 
consists of FREE(K), FREE(K+1) and so 
on up through FREE(K+7). We will assume 
that FREE(K) through FREE(K+5) are the 
six characters in the group, and that 
FREE(K+6) and FREE(K+7), taken to- 
gether, are the pointer to the next group. 
A variable called LAVS (for "list of avail- 
able space") contains, at all times, a pointer 
to the first group in the list of available 
space. The basic operations on the list of 
available space are taking one group off 



92 October 1979 © BYTE Publications Inc 



Circle 205 on inquiry card. 



IMmM IS READY 



WITH 

WITH 



iWl 

~ HP 




Double Density 
Dish controller 8^ or 5^ 




Works!! 



• Designed for CPM®. #On Board Boot. 
• 2MHz-4MHz Operation. #Switch Selectable 
Write Precomp. • "Personality Board" to modify 
drive configurations (no jumper wires). #2 Data 
separators; one digital, one analog. • Drive 
Diagnostic Software included. #Complete 
documentation. #Runs without occu- 
pying any system RAM, •Transpar- 
ent Density Select. $385.00. 



• 16K or 32K Static Memory. #S-100 Bus Con- 
nector. #9 Regulators provide excellent heat distri- 
bution. ©Extended addressing (bank switching). 
• Low power requirement. #Phantom line. 
• 20-Page operating manual. •Full 1-year 
warranty. #32K version assembled and 
tested $485.00. #16K version 
available assembled and tested, 
$290.00. 



DP Z-80 CPU 




• 2MHz or 4MHz operation (jumper selectable). 
• Power on jumptoOn Board Eprom (2708or2716). 

• M1 Wait State for 160% thruput enhancement 
with 450ns memory. #3 Parallel I/O ports. 

• Two Serial RS-232 I/O ports. ©Baud 
rates: 50 to 1 9.2K. $260.00. 

(Cable and Eprom extra) 



DP S-100 

Mslnfrsmo 



DISK DPiue 
storage 




12 slot S-100 Motherboard with power 
supply +8@20a, ±16@6a (nylon card 
guides). 

Mates with disk systems shown in cen- 
ter column. 

Neat, compact, extremely reliable 
mainframe. 

Also available with S-44 2 user, 3 CPU 
system with features similar to Multi- 
user TRS-80 Expansion Package. 

Kit $295.00 



• Cabinet comes with multiple power. 

• Supply to suit all popular disk drives 
±5@5a, +24@6a. 

• DP-1000K Twin double density Shu- 
gart SA-800B or Siemens FDD-100-8. 
(2 megabytes). $1350.00 

• DP-2000K Double sided, double den- 
sity Shugart SA-850-R or Siemens 
FDD-200-8 (2 megabytes). $1850.00 

• Drive box less drives with ample power 
supply. Kit $295.00 



Ultimate TRS-80 Expansion 
Package -340K of Double 

situ 




Cost effective Z-80 15 slot dual drive 
S-44 5" computer. Mates with TRS-80 
or with terminal. 

Excellent expandable starter system 
for small business. 

Also an unbeatable choice for dedica- 
ted word processor applications or in- 
dustrial scientific use (80 x 24 video). 
The S-44 card set ensemble is specifi- 
cally designed for business engineering 
and technical applications. 
50-60Hz(110/220VAC). 
Provides expansion to 64K CPM oper- 
ating system, modems, multiuser, etc. 
$1775.00 (32K) 



West: 

DELTA PRODUCTS 

1653 E. 28th Street 
Long Beach, Calif. 90806 
Tel: (213)595-7505 

Circle 128 on inquiry card. 




Telex: 128-126 DELTMAR SGHL 



East; 

DELTA PRODUCTS 

1254 South Cedar Road 
New Lenox, Illinois 60451 
Tel: (815)485-9072 

BYTE October 1979 



Start Computing For Just $129.95 With An 
8085-Based Professional Computer Kit— 

Explorer! 85 

100% compatible with all 8080A and 
8085 software & development fools! 

No matter what your future computing plans may 
be, Level "A "—at $129.95— is your starting point. 

Starting at just S 1 29.95 for a Level "A " operating system, 
you can now build the exact computer you want. Explorer/85 
can be your beginner's system, OEM controller, or IBM- 
formatted 8" disk small business system. . .yet you're never 
forced to spend a penny for a component or feature you don't 
want and you can expand in small, affordable steps! 

Now, for just $129.95, you can own the first level of a fully 
expandable computer with professional capabilities — a com- 
puter which features the advanced Intel 8085 cpu, thereby 
giving you immediate access to all software and development 
tools that exist for both the 8085 and its 8080 A predecessor 
(they are 100% software compatible) — a computer which 
features onboard S-100 bus expansion— plus instant conver- 
sion to mass storage disk memory with either 5-1/4" diskettes 
or standard IBM-formatted 8" disks. 

For just $129.95 (plus the cost of a power supply, keyboard/ 
terminal and RF modulator, if you don't have them already), 
Explorer/85 lets you begin computing on a significant level. . . 
applying the principles discussed in leading computer maga- 
zines. . .developing "state of the art" computer solutions for 
both the industrial and leisure environment. 

Level "A" Specifications 

Explorer/85's Level "A" system features the advanced Intel 
8085 cpu, an 8355 ROM with 2k deluxe monitor/operating 
system, and an 8155 ROM-1/O — all on a single motherboard 
with room for RAM/ROM/PROM/EPROM and S-100 ex- 
pansion, plus generous prototyping space. 

(Level "A" makes a perfect OEM controller for industrial 
applications and is available in a special Hex Version which 
can be programmed using 
the Netronics Hex Keypad/ 
Display.) 

PC Board: glass epoxy, plated 
through holes with solder mask 
• I/O: provisions for 25-pin 
(DB25) connector for terminal 
serial I/O, which can also sup- 
port a paper tape reader 
...provision for 24-pin DIP 
socket for hex keyboard/dis- 
play. . .cassette tape recorder in- 
put. . .cassette tape recorder output. . .cassette tape control 
output. . .speaker output... LED output indicator on SOD 
(serial output) line. . .printer interface (less drivers). . .total of 
four 8-bit plus one 6-bit I/O ports "Crystal Frequency: 6.144 
MHz • Control Switches: reset and user (RST 7.5) 
interrupt. . .additional provisions for RST 5.5, 6.5 and TRAP 
interrupts onboard • Counter/Timer: programmable, 14-bit 
binary • System RAM: 256 bytes located at F800, ideal for 
smaller systems and for use as an isolated stack area in 
expanded systems. . . RAM expandable to 64k via S-100 bus or 
4K on motherboard. 

System Monitor (Terminal Version): 2k bytes of deluxe 
system monitor ROM located at F000 leaving 0000 free for user 
RAM/ROM. Features include tape load with labeling . . .tape 
dump with labeling. . .examine/change contents of memory 
...insert data... warm start. . .examine and change all 
registers. . .single step with register display at each break point, 
a debugging/training feature... go to execution address... 
move blocks of memory from one location to another. . .fill 
blocks of memory with a constant. . .display blocks of memory 
. . . automatic baud rate selection . . . variable display line length 
control (1-255 characters/line). . .channelized I/O monitor 
routine with 8-bit parallel output for high speed printer. . . 
serial console in and console out channel so that monitor can 
communicate with I/O ports. 

System Monitor (Hex Version); Tape load with labeling . . . 
tape dump with labeling. . .examine/change contents of mem- 
ory. ..insert data... warm start. . .examine and change all 



By Netronics 





Explorer/85 with 
"C" card cage. 




Level "A" at $129.95 is a 
complete operating system, 
perfect for beginners, hob- 
biests, or industrial con- 
troller use. 



registers. . . single step with register display at each break point 
...go to execution address. Level "A" in the Hex Version 
makes a perfect controller for industrial applications and can 
be programmed using the Netronics Hex Keypad/Display. 

^^^^SBRf"" Hex Keypad/Display 
*^U Specifications 

^ * X */ t Calculator type keypad with 24 

'.; A v %*& ■ system defined and 16 user 

' ,-"_;>' defined keys. 6 digit calculator 

. ja, - ■' type display which displays full 

.^.^■l address plus data as well as 

Hex Keypad/Display. register and status information. 

Level "B" Specifications 

LeveP'B" provides the S-100 signals plus buffers/drivers to 
support up to six S-100 bus boards and includes: address 
decoding for onboard 4k RAM expansion select-able in 
4k blocks. . .address decoding for onboard 8k EPROM expan- 
sion selectable in 8k blocks. . address and data bus drivers for 
onboard expansion . . .wait state generator (jumper selectable), 
to allow the use of slower memories. . .two separate 5 volt 
regulators. 

■;i Level "C" Specifications 

Level '-C" expands Explorer's 
motherboard with a card cage, 
allowing you to plug up to six 
S-100 cards directly into the 
motherboard. Both cage and 
•-'/ cards are neatly contained inside 
Explorer's deluxe steel cabinet. 
Level "C" includes a sheet metal superstructure, a 5-card gold 
plated S-100 extension PC board which plugs into the mother- 
board. Just add required number of S-100 connectors 

Level "D" Specifications 

Level "D" provides 4k or RAM, power supply regulation, 
filtering decoupling components and sockets to expand your 
Explorer/85 memory to 4k (plus the original 256 bytes located 
in the 8155A). The static RAM can be located anywhere from 
0000 to EFFF in 4k blocks. 

Level "E" Specifications 

Level "E" adds sockets for 8k of EPROM to use the popular 
Intel 2716 or the Tl 2516. It includes all sockets, power supply 
regulator, heat sink, filtering and decoupling components. 
Sockets may also be. used for soon to be available RAM IC's 
(allowing for up to 12k of onboard RAM). 

Order A Coordinated 
Explorer/85 Applications Pak! 

Experimenter's Pak (SAVE $12.50)— Buy Level "A" and Hex 
Keypad/Display for $199.90 and get FREE Intel 8085 user's 
manual plus FREE postage & handling! 

Student Pak (SAVE $24.45)— Buy Level "A," ASCII Key- 
board/Computer Terminal, and Power Supply for $319.85 and 
get FREE RF Modulator plus FREE Intel 8085 user's manual 
plus FREE postage & handling! 

Engineering Pak (SAVE $41.00)— Buy Levels "A," "B," 
"C," "D," and "E" with Power Supply, ASCII Keyboard/ 
Computer Terminal, and six S-100 Bus Connectors for $514.75 
and get 10 FREE computer grade cassette tapes plus FREE 
8085 user's manual plus FREE postage& handling! 
Business Pak (SAVE $89.95)— Buy Explorer/85 Levels "A," 
"B," and "C" (with cabinet), Power Supply, ASCII Key- 
board/Computer Terminal (with cabinet), 16k RAM, 12" 
Video Monitor, North Star 5-1/4" Disk Drive (includes North 
Star BASIC) with power supply and cabinet, all for just 
$1599.40 and get 10 FREE 5-1/4" minidiskettes ($49.95 value) 
plus FREE 8085 user's manual plus FREE postage & handling! 



Continental U.S.A. CreditCard Buyers Outside Connecticut 

CALL TOLL FREE 800-243-7428 

, , ■_ - - _. - . To Order From Connecticut Or For Technical 

■Netronics R&D LtST, BeptTR tl ~ Assistance, Etc. Call (203) 354-9375 ^ T 

I 333 Litchfield Road. New Milford.CT 06676 -__,._., J: _, _„ 

r 

i 



Please send the items checked belo w — 

□ Explorer/85 Level "A" Kit (ASCII 
Version), $129.95 plus $3 p&h. 

□ Explorer/85 Level "A" Kit (Hex 
Version), $129.95 plus $3 p&h. 

□ 8k Microsoft BASIC on cassette 
tape, $64.95 postpaid. 
D 8k Microsoft BASIC in ROM Kit 
(requires Levels "B," "D," and "E"), 
$99.95 plus $2 p&h. 

□ Level "B" (S-100) Kit, $49.95 plus 
$2 p&h. 

□ Level "C" (S-100 6-card expander) 
Kit, $39.95 plus $2 p&h. 

□ Level "D" (4k RAM) Kit, $69.95 
plus $2 p&h. 

D Level "E" (EPROM/ROM) Kit, 
$5.95 plus 50« p&h. 

□ Deluxe Steel Cabinet for Explorer/ 
85, $49.95 plus $3 p&h. 

□ ASCII Keyboard/Computer Ter- 
minal Kit (features a full 128 character 
set, upper & lower case, full cursor con- 
trol, 75 ohm video output convertible 
to baudot output, selectable baud rate, 
RS232-C or 20 ma. I/O, 32 or 64 char- 
acter by 16 line formats, and can be 



plus $2 p&li 

□ Deluxe Steel Cabinet for ASCII 
Keyboard/Terminal, $19.95 plus $2.50 
p&h. 

□ Power Supply Kit ( ± 8 V @ 5 amps) 
in deluxe steel cabinet, $39.95 plus $2 
p&h. 

□ Gold Plated S-100 Bus Connectors, 
$4.85 each, postpaid. 

□ RF Modulator Kit (allows you to 
use your TV set as a monitor), $8.95 
postpaid. 

□ 16k RAM Kit (S-100 Board expands 
to 64k), $199.95 plus $2 p&h. 

□ 32k RAM Kit, $329.95 plus $2 p&h. 

□ 48K RAM Kit, $459.95 plus $2 p&h. 
D 64kRAMKitr4589.95plus$2p&h. 
D 16k RAM Expansion Kit (to expand 
any of the above up to 64k), $139.95 
plus $2 p&h each. 

□ Intel 8085 cpu User's Manual, $7.50 
postpaid. 

D Special Computer Grade Cassette 
Tapes, $1.90 each or 3 for $5, postpaid. 
D 12" Video Monitor (10 MHz band- 
width), $139.95 plus $5 p&h. 

used with either a CRT monitor or a TV □_ North Star Double Density Floppy 



sonalized disk operating system— just ■ 
plug it in and you're up and running!),! 
$699.95 plus $5 p&h. 

□ Power Supply Kit for North Star I 
Disk Drive, $39.95 plus$2 p&h. 

□ Deluxe Case for North Star Disk I 
Drive, $39.95 plus $2 p&h. 

□ Experimenter's Pak (see above), I 
$199.90 postpaid. 

D Student Pak (see above), $319,851 
postpaid. 

□ Engineering Pak (see above), I 
$514.75 postpaid. 

□ Business Pak (see above), $1599.40 1 
postpaid. 

Total Enclosed $ | 

(Conn. res. add sales tax) By— | 

□ Personal Check D M.O. /Cashier's | 
Check □ Visa □ Master Charge* 

(Bank// )l 



Acct. tt _ 
Signature _ 
Print 
Name 



_Exp. Date _ 



Address . 



I used witneitneraLKl monitor or a TV u worm siar uoume Density Floppy 

set (if you have an RF modulator), Disk Kit (One Drive) for Explorer/ City_ 

L $149.95 plus $2.50 p&h. 85 (includes 3 drive S-100 controller, 

□ Hex Keypad/Display Kit, $69.95 DOS, and extended BASIC with per- State 



_Zip_ 



the front of it and adding a new group 
to it. The first of these operations, removing 
a group from the list of available space, is 
performed as follows: 

1. Set K = LAVS; the new group will 
consist of FREE(K) through FREE 
(K+7). 

2. Since this group is no longer to be on 
the list of available space, the first 
group in this list is now what used to 
be the second group. But a pointer to 
this second group is currently in 
FREE(K+6) and FREE(K+7). This 
pointer now has to be taken and put 
into LAVS, because LAVS must 
contain, at all times, a pointer to the 
first group in the list of available 
space. 

The second of our two operations, adding 
a group to the list of available space, is per- 
formed as follows: 

1. Suppose that FREE(K) through FREE 
(K+7) is the new group. This will 
become the first group in the list of 
available space, and it must contain a 
pointer to the second group. But the 
second group is the old first group, 
and a pointer to that group was con- 
tained in LAVS. This means that 
LAVS must be moved into the pointer 
position FREE(K+6) and FREE(K+7). 

2. Since LAVS must contain, at all times, 
a pointer to the first group in the list 
of available space, we must now set 
LAVS equal to K. 

The first operation above can be modi- 
fied to check for overflow. If it is performed 
when the list of available space contains 
exactly one group, it is not hard to see that 
LAVS will be set equal to zero. This is not 
in itself an error; it merely means that all 
available space is being used. The next time 
we do this, though, there will be an error 
unless we check for it. Therefore, when we 
set K = LAVS, we should check to see if 
K is now zero; if so, there is an overflow 
condition. (We are, of course, using the 
word "overflow" in a generalized sense, to 
denote the fact that there is too much space 
being used for the available memory in the 
FREE array.) 

Using these two basic operations, we can 
now make sure that our available space list 
is always kept up to date. Suppose that we 
have a variable J with a string value, and 
suppose that this string value is kept in m 
8 bit groups. A pointer to the first of these 
groups will be kept in J itself. Suppose that 
we are now going to set J to a new string 

Text continued on page 97 



Send Me Information 



94 October 1979 © BYTE Publications Inc 



Circle 280 on inquiry card. 



f 




Stanley's office staff says Stanley always stays 
one step ahead. So no one was surprised when he 
showed up with Microsoft's COBOL-80 for the 
office computer. That's when things started 
happening. 

As Stanley explains, "Suddenly, the whole 
business operation is more efficient. I use it for 
everything: inventory, payroll, record keeping, 
customer and employee files. Since COBOL is the 
standard language for business and commercial 
applications, more programs are written in COBOL 
than any other language. Believe me, nothing 
beats it in terms of powerful use of disk files, 
data manipulation facilities and interactive ter- 
minal communications!' 

Stanley added loudly, "And that's versatility and 
efficiency I'd like to see more of around here. 

"My COBOL-80 package from Microsoft 
includes the MACRO-80 assembler, LINK-80 
linking loader and LIB-80 relocatable library 
manager. I can even call FORTRAN, BASIC, 
assembler and COBOL modules from a COBOL- 
80 program. It's perfect —a total software develop- 
ment package',' exclaimed Stanley. 

Microsoft's COBOL-80 is an ANSI-74 standard 
COBOL that supports such advanced data 
manipulation verbs as COMPUTE, INSPECT, 
STRING, UNSTRING AND SEARCH: three- 
dimensional arrays; full COPY facility; and com- 



plete screen handling capability. The optional 
packed decimal f ormat saves on mass storage by 
as much as 40%. And as Stanley puts it, "With 
my floppy disk system, that's a big plus!' 

Stanley can't say enough about his new addition 
to the office. "COBOL-80 supports indexed and 
relative files, including DYNAMIC access, FILE 
STATUS, START, READ NEXT, DELETE 
and REWRITE. Best of all, interactive ACCEPT/ 
DISPLAY gives the most powerful screen handling 
capability possible. 

"Frankly;' says Stanley, "Microsoft COBOL- 
80's performance is so superior it's set a whole 
new standard of efficiency for my staff. My new 
motto? 'Shape up or ship out! Thanks Microsoft, 
my office will never be the same!' 

The COBOL-80 package for the CP/M or 
ISIS-II operating system with documentation is 
$750. Documentation may be purchased sepa- 
rately for $20. Dealer purchases and OEM 
license agreements available on request. 




urn 

10800 N.E. Eighth Suite 819 
Bellevue, Washington 98004 
206/455-8080 Telex 328945 

We set the standard. 




Circle 233 on inquiry card. 



free freight 

No handling charges or credit card fees. 

We'll pay the surface freight on all pre-paid products featured in this ad to any of 18,000 U.S. tarriffed locations.Before you buy 

mail-order, check the source. Find out the TOTAL cost, including handling charges! Then compare with our one, low price! 




A*&m 



H 




Bringing information technology to 
your doorstep.. .with no add-on costs. 



Sample the experience and integrity of 
over 100 industry-trained employees 
who stand behind every order. 




/] 9 



Comprint 

Serial $535 

Parallel $499 



Centronics 



Model 730 New! 
Save $100 
Parallel <M 



Televideo 



Model 912 full- 
feature CRT. 



$790 



$895 



TI810 

Basic 150 cps serial 
New low price! 

$1589 






Centronics Integral Data 



Model 704, 180 cps 
Loaded! Super price! 



IP-125 Printer 



$1695 



$699 





Heath WH-89 Hazeltine 

16K computer w/disk! Model 1420, full- 
Assembled, plus feature CRT! 2-yr. 
factory warranty! factory warranty! 

$CALL $89 



$895 



PLUS: Tl calculators, Speak N Spells, Craig Translators, BSR X-10 remote control con- 
soles, Hazeltines, Sorocs, Perkin-Elmer Bantams, Heath WH14 printers, Diablos, 
Cromemcos, ADDS 25 and much much more! 

F.O.B. Tempe, AZ (5% sales tax in Arizona). Prices subject to 
change without notice. . .so CALL NOW WHILE IN STOCK! 



TOLL-FREE 

1-800-528-1418 

1425 W. 12th PI. • Tempe, AZ 85281 • 602-894-1193 

96 BYTE October 1979 




ViSA 



/HOOWOnD 



Circle 234 on inquiry card. 



Text continued from page 94: 

value, which is kept in n 8 bit groups. First 
we apply the second algorithm above to the 
first group in the chain that represents the 
old value of J. This process puts this group 
on the list of available space. If m i=- 1, that 
is, if the pointer in this first group was not 
originally zero, we apply the same process 
to the second group in the chain repre- 
senting the old value of J, and so on through 
the rest of these groups. (It is not necessary 
to know m, of course; we merely test for the 
pointer being zero, which indicates the last 
group.) Now we take n groups, or, in 
general, as many groups as we need, off the 
front of the list of available space by using 
the first algorithm above, and use these 
groups to store the new string value of J . 

This system is quite workable as it stands; 
the only real problems with it come when 
we try to extend it. Suppose, for example, 
that we want to set the string value of J 
equal to the current string value of I. In that 
case we might want to save quite a bit of 
time by setting the pointer in J to be the 
same as the pointer in I. Thus we would have 
two pointers to the same group, or to the 
first group of the same chain, in the FREE 
area. This scheme, however, will not work 
unless we change our setup a bit. The prob- 
lem comes when the value of I is later 
changed to something else. In this case the 
old value of I is put back on the list of 
available space, and this is improper because 
it is still the current value of J . 

Let us look at this case in more detail. 
Suppose that the value of I is 'SMITH', 
and we set J equal to 'SMITH' by setting 
J to point to the same place that I does. 
Now suppose that we later set I equal to 
'JOHNSON'. In this case, according to the 
algorithms we have discussed, the group 
[there is only one in this case; let us call 
i* FREE(K) through FREE(K+7)] which 
contains 'SMITH' is put back on the list 
of available space, even though K is still 
the integer value of J. Now we need two 
groups to represent 'JOHNSON'. One of 
these will be this same group, that is, 
FREE(K) through FREE(K+7), because it 
was just put back on the beginning of the 
list of available space. This group will 
therefore contain JOHNSO (with the final 
N in the next group). This means that if at 
some still later time we want to print out 
the value of J, we will print out JOHNSON 
rather than SMITH. 

One solution to this problem which is 
sometimes adopted is to reserve the first 
character of any string for a special integer 
telling us how many variables have this 
particular string as their value. This integer 
is known as a reference count. It is usually 
1, but in the case above (where J and I point 



to the same string) it would be 2. Every 
time a variable is set to a new value, the 
reference count in the old value is decreased 
by 1. Only if its value is then zero do we 
return the space it uses back to the list 
of available space, because otherwise there 
are still variables which have that string as 
their value. The trouble with this scheme 
is that it may very easily not be worth the 
effort. Do we really want to add an extra 
character to every string, not to mention 
the extra testing that goes on whenever we 
set a string to a new value, just to be able to 
save a little time and space in an operation 
(setting one string to be the same as another) 
that might not be that commonly used in 
our program? It is certainly a debatable 
point. 

It should also be clear that there is 
nothing special about the number of char- 
acters in a group (eight, in this case). The 
fewer characters we have in a group, the 
more pointers we will have, and the more 
space these will take up. The more char- 
acters we have in a group, the more wasted 
or zero characters we will have in strings, 
because the length of a string is not always 
evenly divisible by the number of characters 
in a group. This is a space trade-off which 
should be tuned by the user to fit the 
requirements of a particular program." 





List 


Our Price 


CROMEMCO 20% DISCOUNT 






System III 


5990 


4792 


System II 


3990 


.3192 


System II with 10 Meg Disk 


9995 


7996 


NORTH STAR 16% DISCOUNT (or more) 


Horizon I — 32K Ram asm 


2099 


1763 j 


Horizon I — 16K Ram asm 


1899 


1595 


Horizon I - 32K Ram kit 


1849 


1 553 


Horizon I to Horizon 2 


450 


378 


32K Ram asm 


659 


525 


VECTOR GRAPHICS 20% DISCOUNT 




Vector MZ-2 (630K disk) 48K Ram 


3750 


3000 


Soroc IQ120 


995 


790 


Perkin Elmer Bantam CRT 


996 


750 


Intertube II 


995 


750 


Integral Data IP125 


799 


699 I 


Escon Selectric Interface 


496 


422 


N EC 551 RO Word Processor Printer 


2900 


2450 


Professional A/r, A/p, Ledger, Payroll, Medical Billing soft- 


ware with customization available. Send 


for our 


catalog — 


Some prices are too low to quote. 






BHHna^HHH SARA TECH 






k ^H COMPUTERS 






■~~r:=^rr£m P.O. BOX 692 


SHI 


■Bfehi 


if 


400 Base 


r^ 




si ~ 


Venice, FL 


i 


■if 


sir 


M t | II || 1 33595 


: i ; | ■■ ■■■B 


™ ti ' " r " : " iniiin'-* '«mi«««a 









Circle 320 on inquiry card. 



October 1979 © BYTE Publications lnc 97 



Software / 
_ with /Manual 

DIGITAL RESEARCH Manual/ Alone 

D CP/M* Floppy Diskette Operating System — 

Packages supplied on diske te complete with 8080 as- 
sembler, text editor, 8080 debugger and various utilities 
plus full documentation. CP/M available configured for 
most popular computer/disk systems including: North 
Star Single, Double or Quad density, Altar 8" disks, 
Helios II, Exidy Sorcerer, Vector MZ, PolyMorphic 
8813t* Heath H17t or H89t, TRS~80f, iCOM 3712 and 
iCOM Micro Disk plus many other configurations avail- 
able off the shelf $145/$25 

D MAC — 8080 Macro Assembler. Full Intel macro defini- 
tions. Pseudo Ops include RPC, IRP, REPT, TITLE, 
PAGE, and MACLIB. Z-80 library included. Produces 
Intel absolute hex output plus symbols file for use by SID 
(see below) S100/S15 

D SID — 8080 symbolic debugger. Full trace, pass count 
and break-point program lasting system with back-trace 
and histogram utilities. Wh3n used with MAC, provides 
full symbolic display of memory labels and equated 
values $85/$ 1 5 

□ TEX — Test formatter to create paginated, page- 
numbered and justified copy from source text files, di- 
rectable to disk or printer $85/$1 5 

□ DESPOOL — Program to permit simultaneous printing 
of data from disk while user executes another program 
from the console $50/$1 

MICROSOFT 

□ Disk Extended BASIC — Version 5, ANSI compati 
ble with long variable names, WHILE/WEND, chaining, 
variable length file records $300/525 

□ BASIC Compiler — Language compatible with Ver- 
sion 5 Microsoft interpreter and 3-10 times faster execu- 
tion. Produces standard Microsoft relocatable binary out- 
put. Includes Macro-80. Also linkable to FORTRAN-80 or 
COBOL-80 code modules $350/325 

□ FORTRAN-80 — ANSI '66 (except for COMPLEX) 
plus many extensions. Includes relocatable object com- 
piler, linking loader, library with manager. Also includes 
MACRO-80 (see below) $400/$25 

□ COBOL-80 — ANSI 74 Relocatable object output. 
Format same as FORTRAN-80 and MACRO-80 
modules. Complete ISAM, interactive ACCEPT/DIS- 
PLAY, COPY, EXTEND $625/$25 

□ MACRO-80 — 8080/Z80 Macro Assembler. Intel and 
Zilog mnemonics supported. Relocatable linkable output. 
Loader, Library Manager and Cross Reference List 
utilities included $149/$15 

D EDIT-80 — Very fast random access text editor for text 
with or without line numbers. Global and intra-line com- 
mands supported. File compare utility included $89/$15 

MICRO FOCUS 

□ CIS COBOL (standard) — ANSI 74 COBOL 
standard compiler fully validated by U.S. Navy tests to 
ANSI level 1. Supports many features to level 2 including 
dynamic loading of COBOL mddulesand a full ISAM file 
facility. Also, program ;■ segmentation, interactive debug 
and powerful interactive extensions to support protected 
and unprotected CRT screen formatting from COBOL 
programs used with any dumb terminal S850/S50 

D OS COBOL (compact) — COBOL subset compiler 
for use on a 32K byte microcomputer. Valuable range of 
COBOL language features, many at level 2 and including 
ISAM and the CIS COBOL interactive screen formatting 
of dumb terminals $650/$50 

□ Forms 1 — CRT screen editor to build application CRT 
formats with protected and unprotected field areas. Out- 
put is COBOL data descriptions for copying into CIS 
COBOL programs. Eliminates the chore of writing screen 
input and output descriptions by hand and greatly speeds 
interactive application programming. Output requires CIS 
COBOL compact compiler $1 2 5/ $20 

f-CP/M for Heath, TRS-80 Model I and PolyMorphic 8813 are 
modified and must use especially compiled versions of 
system and applications software. 
ttPolyMorphic 8813 CP/M scheduled for September 15 release. 



e / 
h/P 

Jl/ t 



Manual 
Alone 



jj 



Software 
with / 
Manual/ 

□ Forms 2 — Forms 1 screen editor plus indexed file 
application program generator. Automatically creates a 
query and update program of indexed files using CRT 
protected and unprotected screen formats. No program- 
ming experience needed. Output program directly com- 
piled by either of CIS COBOL compilers , . . $200/520 

EIDOS SYSTEMS 

D KISS — Keyed Index Sequential Search. Offers com- 
plete Multi-Keyed Index Sequential and Direct Access file 
management. Includes built-in utility functions for 16 or 
32 bit arithmetic, string/integer conversion and string 
compare. Delivered as a relocatable linkable module in 
Microsoft format for use with FORTRAN-80 or COBOL- 
80, etc $535/$23 

□ KBASIC — Microsoft Disk Extended BASIC with all 
KISS facilities, integrated by implementation of nine 
additional commands in language. Package includes 
KISS.REL as described above, and a sample mail list 
program $995/$45 

_ 

MICROPRO r^^f^^^ ■ 

Q Super-Sort I — Soil, merge, extract utility as absolute 
executable program or linkable module in Microsoft for- 
mat. Sorts fixed or variable records with data in binary, 
BCD, Packed Decimal, EBCDIC, ASCII, floating, fixed 
point, exponential, field justified, etc. etc. Even variable 
number of fields per record! S225/S25 

□ Super-Sort II 

only 

□ Super-Sort III — As II without SELECT/EXCLUDE 

$125/525 

G Word-Star — Menu driven visual word processing sys- 
tem for use with standard terminals. Text formatting per- 
formed on screen. Facilities for text paginate, page 
number, justify, center and underscore. User can print 
one document while simultaneously editing a second. 
Edit facilities include global search and replace, read/ 
write to other text files, block move, etc. Requires CRT 
terminal with addressable cursor positioning $495/525 

D Word-Master Text Editor — In one mode has super- 
set of CP/M's ED commands including global searching 
and replacing, forward and backwards in file. In video 
mode, provides full screen editor for users with serial 
addressable-cursor terminal S125/S25 

SOFTWARE SYSTEMS 

□ CBASIC-2 Disk Extended BASIC — Non-interactive 
BASIC with pseudo-code compiler and runtime interpre- 
ter. Supports full file control, chaining, integer and ex- 
tended precision variables, etc $109/$ 15 

*CP M is a trade name of Digital Research. 
'"Z80 is a trademark of Zilog, Inc. 
• " 'UNIX is a trademark of Bell Laboratories. 
****WHATSIT? is a trademark of Computer Headware. 



Software 

with / Manual 
Manual/ Alone 




Above available as absolute Drooram 
$175/$25 



STRUCTURED SYSTEMS GROUP 

□ General Ledger — Interactive and flexible system 
providing proof and report outputs. Customization of COA 
created interactively. Multiple branch accounting centers. 
Extensive checking performed at data entry for proof, 
COA correctness, etc. Journal entries may be batched 
prior to posting. Closing procedure automatically backs 
up input files. All reports can be tailored as necessary. 
Requires CBASIC $899/$25 

□ Accounts Receivable — Open item system with 
output for internal aged reports and customer-oriented 
statement and billing purposes. On-Line Enquiry permits 
information for Customer Service and Credit depart- 
ments. Interface to General Ledger provided if both sys- 
tems used. Requires CBASIC $699 $25 

G Accounts Payable — Provides aged statements of 
accounts by vendor with check writing for selected in- 
voices. Can be used alone or with General Ledger and/or 
with NAD. Requires CBASIC $699/525 

D LETTERIGHT — Program to create, edit, and type let- 
ters or other documents. Has facilities to enter, display, 
delete and move tex^, with good video screen presenta- 
tion. Designed to integrate with NAD for form letter mail- 
ings. Requires CBASIC $1 79/$25 

D NAD Name and Address selection system — interactive 
mail list creation and maintenance program with output 
as full reports with reference data or restricted informa- 
tion for mail labels. Transfer system for extraction and 
transfer of selected records to create new files. Requires 
CBASIC $79 $20 

D QSORT — Fast sor /merge program for files with fixed 
record length, variable field length information. Up to five 
ascending or descending keys. Full back-up of input files 
created $95 $20 

GRAHAM-DORIAN SOFTWARE 
SYSTEMS 

□ PAYROLL SYSTEM — Maintains employee master 
file. Computes payroll withholding for FICA. Federal and 
State taxes. Prints payroll register, checks, quarterly re- 
ports and W-2 forms. Can generate ad hoc reports and 
employee form letters with mail labels. Requires 
CBASIC. Supplied in source code $590/$35 

□ APARTMENT MANAGEMENT SYSTEM - Fi- 
nancial management system for receipts and security 
deposits of apartment projects. Captures data on vacan- 
cies, revenues, etc. for annual trend analysis. Daily report 
shows late rents, vacancy notices, vacancies, income 
lost through vacancies, etc. Requires CBASIC. Supplied 
in source code $590 $35 

□ INVENTORY SYSTEM - Captures stock levels, 
costs, sources, sales, ages, turnover, markup, etc. 
Transaction information may be entered for reporting by 
salesman, type of sale, date of sale. etc. Reports avail- 
able both for accounting and decision making. Requires 
CBASIC. Supplied in source code $590/$35 

□ CASH REGISTER — Maintains files on daily sales. 
Files data by sales person and item. Tracks sales, over- 
rings, refunds, payouts and total net deposits. Requires 
CBASIC. Supplied in source code $590/$35 



Software for most popular 8080IZ80 computer 
disk systems including NORTH STAR, iCOM, 
MICROPOUS, DYNABYTE DB8I2, EXIDY 
SORCERER, SD SYSTEMS, ALTAIR, VECTOR MZ, 
8" IBM, HEATH H17 & H89, HELIOS, 
IMSAI VDP42 & 44, REX, POLYMORPHIC 88131 
OHIO SCIENTIFIC and IMS 5000 formats. 




98 BYTE October 1979 



Software / 

with /Manual 

Manual/ Alone 

D tiny C — Interactive interpretive system for teaching 

structured programming techniques. Manual includes full 

source listings $75/$40 

D BDS C Compiler — Supports most major features of 
language, including Structures, Arrays, Pointers, recur- 
sive function evaluation, linkable with library to 8080 bi- 
nary output. Lacks data initialization, long & float type and 
static & register class specifiers. Documentation includes 
"C" Programming Language book by Kernighan & 
Ritchie $110/$15 

□ Whitesmiths' C Compiler — The ultimate i n sys- 
tems "software tools. Produces faster code than Pascal 
with more extensive facilities. Conforms to the full 
UNIX*" Version 7 C language, described by Kernighan 
and Ritchie, and makes available over 75 functions for 
performing I/O, string manipulation and storage alloca- 
tion. Compiler output in A-Natural source. Supplied with 
A-Natural (see below) requires 60K CP/M . S630/S30 

□ A-Natural — Narrative assemblerwith linking loader, 
librarian, extensive 8080 subroutine library in A-Natural 
relocatable format and translators from A-Natural source 
to Microsoft MACRO-80 source and from A-Natural rel to 
source $330/$1 5 

□ ALGOL 60 Compiler — Powerful block-structured 
language featuring economical run time dynamic alloca- 
tion of memory. Very compact (24K total RAM) system 
implementing almost all Algol 60 report features plus 
many powerful extensions including string handling direct 
disk address I/O etc. Requires 280 CPU . . . .$199/$20 

□ Z80 Development Package — Consists of: (1) disk 

file line editor, with global inter and intra-line facilities; (2) 
280 relocating assembler, 2ilog/Mostek mnemonics, 
conditional assembly and cross reference table 
capabilities; (3) linking loader producing absolute Intel 
hex disk file $95/$20 

D ZDT — 280 Debugger to trace* ; break and examine 
registers with standard Zilbg/Mostek mnenomic disas- 
sembly displays. Facilities similar to DDT. $35 when or- 
dered with 280 Development Package $50/$10 

□ DISTEL — Disk based disassembler to Intel 8080 or 
TDL/Xitan 280 source code, listing and cross reference 
files. Intel or TDL/Xitan pseudo ops optional. Runs on 
8080 $65/$1 

□ DISILOG — As DISTEL to Zilog Mostek mnemonic 
files. Runs on 280 only $65/$ 1 

□ TEXTWRITER III — Text formatter to justify and pagi- 
nate letters and other documents. Special features in- 
clude insertion of text during execution from other disk 
files or console, permitting recipe documents to be 
created from linked fragments on other files. Has facilities 
f orsorted index, table of contents and footnote insertions. 
Ideal for contracts, manuals, etc $125/$20 

□ Postmaster — A comprehensive, package for mail list 
maintenance. Features include keyed record extraction 
and label production. A form tetter program is included 
which provides neat letters on single sheet or continuous 
forms. Requires CBASIC $150/$25 

D WHATSIT?**** — Interactive data-base system using 
associative tags to retrieve information by subject. Hash- 
ing and random access used for fast response. Requires 
CBASIC $125/$25 

□ XYBASIC Interactive Process Control BASIC — Full 
disk BASIC features plus unique commands to handle 
bytes, rotate and shift, and to test and set bits. Available 
in Integer, Extended and ROMable versions. 

Integer Disk or Integer ROMable S295/S25 

Extended Disk or Extended ROMable $395/525 

□ SMAU80 Structured Macro Assembled Language — 
Package of powerful general purpose text macro proc- 
essor and SMAL structured language compiler. SMAL is 
an assembler language with IF-THEN-ELSE, LOOP- 
REPEAT-WHILE, DO-END. BEGIN-END constructs 

$75/$15 

□ SELECTOR II — Data Base Processor to create and 
maintain single Key data bases. Prints formatted, sorted 
reports with numerical summaries. Available for Microsoft 
and CBASIC (state which). Supplied in source code 

$195/$20 



Lifeboat Associates 

2248 Broadway, N.Y., N.Y. 10024 

I 212) 580-0082 Telex: 668585 



Software 



□ manual alone 



□ manual alone 



□ manual alone 



□ Check D U.PS. COD □ Visa □ Master Charge 



Exp. Date 



Shipping 



$1.00 for CO. D. 



Total 



Account # 



Signature 



My computer configuration (specifying disk system): 



Name 



Address (No P.O. Box) 



City 



State 



Zip 



Price 



Orders must specify 
disk systems and 
formats: e.g. North 
Star single or double 
density, IBM single or 
2D/256, Altair, Helios 
II, Micropolis Mod I or 
II, 5 1 A" soft sector 
(Micro iCOM/SD 
Systems Dynabyte), etc. 

Add $1/item shipping 
($2 min.). Add $1 
additional for UPS 
C.O.D. 

Manual cost 
applicable against 
price of subsequent 
software purchase. 

The sale of each 
propriety software 
package conveys a 
license for use on one 
system only. 



Software 

with /Manual 
Manual/ Alone 
D SELECTOR III — Multi (i.e., up to 24) Key version of 
Selector II. Comes with applications programs including 
Sales Activity, Inventory, Payables, Receivables, Check 
Register, Expenses, Appointments, and Client/Patient. 
Requires CBASIC. Supplied in source code $295/320 
Enhanced version for CBASIC-2 S345/S20 

□ CPM/374X Utility Package — Has full range of 
functions to create or re-name an IBM 3741 volume, dis- 
play directory information and edit the data set contents. 
Provides full file transfer facilities between 3741 volume 
datasets and CP/M files $195/$10 

□ BASIC UTILITY DISK — Consists of: (1) CRUNCH- 
14 - Compacting utility to reduce the size and increase 
the speed of programs in Microsoft Basic and TRS-80 
Basic. (2) DPFUN -:. Double precision subroutines for 
computing nineteen transcendental functions including 
square root, natural log; log base 10, sin, arc sin, hyber- 
bolic sin, hyperbolic arc sin, etc. Furnished in source on 
diskette and documentation $50/535 

D STRING BITS — Fortran character string handling. 
Routines to find, fill, pack, move, separate, concatenate 
and compare character strings. This package completely 
eliminates the problems associated with character string 
handling in FORTRAN. Supplied with source $45/$15 

□ Flippy Disk Kit — Template and instructions to modify 
single sided 5VV diskettes for use of second side in sin- 
gled sided drives $12.50 



/Manual fr 

Alone l:| 




Jboat Associates 

, THE 
iOFTWARE 

SUPER- 
MARKET 



Lifeboat Associates 

2248 Broadway 
New York, NY 10024 





™The Software Supermarket is a trademark of Lifeboat Associates 



BYTE October 1979 



99 



IBM Compatible Disk Drives 



Jefferson H Harman 

Director of Research and Development 

PerSci Inc 

12210 Nebraska Av 

Los Angeles CA 90025 



In today's expanding market of double-sided, 
multiheaded, expanded capacity, autoloading, write- 
protected, floppy disk drives, one requirement remains 
constant. Virtually all 8 inch floppy disk drives on the 
market are described as "IBM compatible." (Some of the 
smaller 5 inch drives are described as IBM compatible 
even though IBM doesn't manufacture equipment with 
the smaller drives!) Manufacturers point to it; buyers 
insist on it; and yet seldom does anyone define what IBM 
compatibility really means. That is probably because 
IBM compatibility is not just a single consideration. 
Three drives described as IBM compatible may, in fact, 
be compatible in 3 different ways. One drive may be IBM 
identical with read/write/erase head carriage and all 
major operating characteristics reverse engineered from 
an IBM 33FD drive; another drive may accept IBM type 
1- or 2-sided single or double density media, but may or 
may not choose to employ any of the IBM data formats; 
and finally, a drive may be designed and manufactured 
with the positioning system drive motor, erase head, and 
other characteristics different from the IBM drives, but 
still be able to read and write in the IBM single or double 
density formats and interchange diskettes with IBM 
equipment. 

Head 

One factor does remain constant, however, among the 
IBM compatible drives. Virtually all of these drives, with 
one notable exception, bear read/write heads comparable 
or identical to the IBM drive (figure 1). The advantages to 
this design decision are clear. Whether or not the IBM 
design is the most efficient for the purpose does not mat- 
ter. When the IBM design is employed in an independent 
manufacturer's drive, it assures that the drive will read 
back a signal comparable to that of the de facto standard 
(ie: IBM), thus assuring maximum interchangeability. 

Because a majority of floppy disk manufacturers have 
chosen to remain with the standard, many systems 
designers must be prepared to deal with the design 
parameters of the IBM head, a head intended to read and 
write the IBM soft-sectored formats. The possibilities, 
limitations, and requirements imposed by this head when 
formatting data in floppy disk drives are the concern of 
this article. 



Formats 

The IBM 33FD head was designed to read and write the 
IBM soft-sectored formats. Both the drive and the con- 
cept of "soft" electronic sectoring were introduced into 
the marketplace by IBM in the early 1970s on the popular 
3740 system. Prior to this introduction, all floppy disk 
drives (notably IBM's FD23) and virtually all hard disks 
had been hard sectored (ie: sectors were delineated by 
physical openings in the media or on an external sector- 
ing device). The new electronic sectoring idea involved 
prewriting a certain track with track and sector iden- 
tification data, then later inserting (usually on another 
machine) the blocks of data to be processed. 

As more IBM compatible drives were offered, most 
users copied the IBM format. That format involves 
substantial housekeeping, and long leader and tail gap 
lengths; thus the available space for data on a diskette is 
greatly reduced. The gaps (which in fact are pulses) are 
used by IBM for 2 reasons: to synchronize the phase-lock 
loop for the data separator, and to put sufficient time be- 
tween blocks of data to avoid interference of one block 
with another. Users were torn; on one hand they wanted 
more data, while on the other hand they respected the 
data reliability which was assured by the data bytes used 
to specify gaps, address marks, cyclic redundancy checks 
(CRCs), track and sector identification, etc, in the IBM 
formats. Some users struck out on their own to develop 
expanded formats. 

The IBM formats are examples of the type which must 
be used with IBM heads in order to assure reliable, high- 
performance operation. The system engineer may choose 
to design his own format but, that being the case, will do 
well to observe the rules outlined below. At PerSci, as 
manufacturers of IBM compatible floppy disk equip- 
ment, we had to develop and use this set of rules. These 
guidelines are based upon the operating requirements and 
restrictions of drives with 33FD-type heads. They permit 
the designer to get the most available data space into the 
format for any given sector length or number of sectors, 



About the Author 

Jefferson H Harman is the director of research and development for 
PerSci Inc, a manufacturer of floppy disk drives. 



100 October 1979 © BYTE Publications Inc 



A 32K MICRO 
WILL RUN PROGRAMS 
YOU'D EXPECT 
A 





And a 64K micro will compile up to 8,000 

lines of COBOI and even more if the 

program is split into dynamically loaded 
modules or segments. 
Itsfasttoo, you compile a 1000 line 
program in less than 10 minutes. 
The use of micros for sophisticated 
business applications has been made 
possible by our adapting COBOL (the only 
universal business language) to make it 
easy and effectiveto use on micro- 
computers - with special attention to 
fool-proof conversational working. 
CIS COBOL is Micro Focus' Compact, 
Interactive, Standard COBOL which offers 
the advantages of COBOL (English-like 
language, powerful data structure 
features, and existing expertise) to 
provide a full commercial language for 
use on microcomputers. 



Compact Compiler 

The Compact compiler 

runs on 32K byte 

microcomputer systems. 

It offers a powerful subset 

of ANSI COBOL facilities, 

including full supportfor 

random, indexed, andsequentialfiles. 

In addition, itgives you all the CIS 

COBOL features for conversational 

working, screen control, interactive 

debugging, and special peripheral support 



Standard Compiler 

The Standard CIS COBOL compiler 
requires a minimum 48K configuration. 
It is a super-set of the Compact compiler 
and implements ANSI 1974COBOLtofull 
Level 1 standard. Among its advanced 
features are program segmentation and 
interprogram communication which make 
it ideal for implementing or converting 
large systems using modular 
programming. 

The same CISCOBOL extensions are 
available as in the Compact compiler and 
canbe optionally flagged atcompile-time 
sothatthe compilerthen only accepts 
strict ANSI COBOL. 



Because CIS COBOL is a validated ANSI 
'74standard COBOL, your applications 
will be easy to maintain: more 
professional programmers know COBOL 
than any other language. 
And because CIS COBOL conformsfully 
tothe standard, programs written with 
it are portable - so if you move up to a 
mini or mainframe, you will be able to 
take your software with you. 
Equally, CISCOBOLcan enable 
mainframe COBOL programs and 
programming tasks to be offloaded to less 
expensive microcomputers. Mainframe 
programmers love the ease of use of 
CIS COBOL and they achieve results fast 
running it on a desk-top micro. 



Forms 



The FORMS utility lets you build a screen 
layoutonline attheCRT.Then it 
automatically generates complete COBOL 
record descriptions for inclusion in your 
program -saving you time and leaving 
you free to concentrate on processing. 

Forms 2 

The FORMS program generator — an ex- 
tension of FORMS — completely 
eliminates the need to write simple data 
entry and enquiry programs. Using it, an 
entire CIS COBOL source program can be 
generated automatically from screen 
definitions — and it works, first time. 



Environment 

CIS COBOL products run on the 8080 or 
Z80 microprocessors underthe CP/M* 
operating system, and on the LSI-11 or 
PDP-11 processors under RT-1 1. They are 
distributed in a variety of diskette formats, 
and have a CONFIG utility supplied as 
standard, enabling you to drive many 
differenttypesof CRT. All are themselves 
written in CIS COBOL, and are therefore 
self-compiling and readily transferable 
to different operating environments - 
including new operating systems and 
new microprocessors. All of which 
makes CISCOBOL avery attractive 
proposition for OEMs as well as 
end-users. 




OEMS 



A leading semiconductor 
manufacturer has adapted CIS 
COBOLforits 
development systems. 
We have also supplied CIS 
COBOL to other OEMs both in 
Europe and the U.S.A. 
CIS COBOL was developed 
entirely by Micro Focus which is 
therefore ideally placed to support 
OEMs. If you need COBOL on your 
system, why don't you call us? 



Enquiries for CIS COBOL object packs and 

application vendor terms eitherto MICRO 
FOCUS or its licensed distributors. 
OEM, dealer, and distributorterms are available 
on application to MICRO FOCUS. 



*CP/M is a trademark of Digital Research Inc 



-\r 



UJ 



MICRO FOCUS 



Micro Focus Ltd,58/\cac/a Road, St John's 
Wood, Lond&n NW8 6AG. U.K. 
Telephone 01-722 8843. Telex 28536 
MICROFG. 



CIS COBOL distributors include: Vector Graphic, Lifeboat Associates, Research Machines, Telecomputing, Modular Business Systems and Rair. 



Circle 218 on inquiry card. 



BYTE October 1979 



101 



What is IBM compatibility? 

ii iiiiii i 1 in ■ in 

while at the same time permitting sufficient gap length to 
maintain data integrity. 

Model Format 

Table 1 is a model format for data blocks. The max- 
imum number of sectors for any block length, N, can be 
easily determined by dividing the unformatted data by 
the total number of bytes per sector. 

Using housekeeping techniques different from those 
shown in the model format, slight variations in the length 
of a sector can be achieved. For example, the user may 
choose not to write the cyclic redundancy check on the 
address field, or may increase or reduce the address 
marks. The minimum length of leader and tail (trailer), 
however, are critical, as they are determined from 
mechanical drive requirements. 

The drive characteristics which determine the required 
leader and tail lengths are: 

• Distance from the active part of the read/write head 
(read/write gap) to the active part of the tunnel 
erase head (erase gap). 

• Variation in linear speed with track locations. 

• Timing of erase turn on and off delays. 

• Tolerances on these parameters. 

As an example, the PerSci drives, which use a head 
with similar electrical and mechanical characteristics to 
those used in IBM 33FD disk drives (figure 1), have a 
distance of 0.036 inch ±0.003 inch (0.0914 cm, ±0.007 
cm) from read/write gap to erase gap. The radius of track 
76 is 2.029 inches (5.1536 cm), and the radius of track 00 
is 3.612 inches (9.1745 cm). The drive speed is 6 revolu- 
tions per second (± 2%), and the instantaneous speed 
variation is ± 1.5%. PerSci requires a write clock stabi- 
lity of ± 0.3%. 

Unformatted Data Capacity 

Unformatted data capacity is determined by dividing 
the shortest time for a revolution by the longest time for a 



1 


READ/WRITE GAP — . 






^r— ERASE GAP 

/ 




~~]IJ | U.UUb 


D.0I3 








1 YHILAL 

i 


t 


0.100 




1 


i i 




\ 

\ FERRITE EMBEDDED 




TYPICAL 




IN CERAMIC 



Figure 1: A view of the geometry of the contact surface of a 
floppy disk read/write head with tunnel erase. 



byte. Average speed is used for this calculation since, by 
definition, average speed is speed averaged over 1 revolu- 
tion: 



T = 



C = 



= 163.399 ms 



X 1.02 
T 



= 10,208 bytes 



16 jis/byte X 1.003 
C = 10,208 bytes (modified frequency modulation) 
C = 5104 bytes (frequency modulation) 

Erase Delays 

The read/write head has a gap that is 0.014 inches 
(0.036 cm) long and thus writes a track greater than 0.014 
inches (0.036 cm). After passing under the read/write gap 
the media next passes under the tunnel erase gaps which 
clean the area between tracks of any transitions. The tun- 
nel erase also trims 0.001 inches (0.003 cm) from each 
side of the just written data, reducing the track width to 
0.012 inches (0.030 cm). Since a 0.012 inch (0.030 cm) 
track is read with a 0.014 inch (0.036 cm) head, a 
misalignment of ±0.001 inches (0.003 cm) will cause no 
degradation of the data. In fact, experimentally, fre- 
quency modulated data has been recovered free of errors 
with deliberate 0.005 inch (0.013 cm) displacement be- 
tween track center and read head. 

The turn-on of the tunnel erase current is delayed from 
the turn-on of write current to give the disk time to travel 
from the read/write to the erase gap before tunnel erase 
begins. To insure that the data is tunnel erased, the 





Bytes Modified 




Bytes Frequency 


Purpose 


Frequency Mod 


jlation 


(MFM) 


Modulation (FM) 


Address leader (gap) 


0.07 (N + 


16) + 27 


0.07 (N + 10) + 13 


Address address mark 


1 






1 


Track identification 


1 






1 


Sector identification 


1 






1 


Address CRC (cyclic redundancy check) 


2 






2 


Address tail (gap) 


21 






11 


Data leader (gap) 


12 






6 


Data address mark 


1 






1 


User data 


N 






N 


Data cyclic redundancy check 


2 






2 


Data tail (gap) 


1 






1 


Unformatted data 


10,208 






5,104 



Table 1: Model format for data block N bytes long. Two columns are shown giving requirements for the 2 different physical modula- 
tion formats used. The frequency modulation (FM) format is commonly referred to as "single density." The modified frequency 
modulation (MFM) format is commonly referred to as "double density. " 



102 



October 1979 © BYTE Publications Inc 




Something Hew on the Horizon 

from 
Technical Sy/temr Con/ultont/ 



Extended BASIC for 6800 and 6809 

Finally, a BASIC for serious business 
applications or scientific programming is 
available. All the features of our regular BASIC 
are supported— and more. Floating point 
calculations are carried out to an internal 
accuracy of 17 digits. Most math functions are 
accurate to 16 digits with a minimum accuracy 
of 13.5 digits. Integer variables have been 
included to allow fast execution of control loops 
and array indexing. Even with the double 
precision math package, this BASIC is still one 
of the fastest around. 

The business programmer will appreciate the 
versatile PRINT-USING capabilities which 
include dollar and asterisk fill, trailing minus 
sign, imbedded commas, and scientific 
notation. New string functions have been 
added for string searching (INSTR) and for 
creating a string which is the date (DATES$). 
DPEEK and DPOKE are 16-bit peek and poke 
type functions. The SCALE command has 
been included to eliminate the round-off errors 
typically encountered in binary math packages. 
The INCH$ function allows single-character 
input from the terminal. Programmer control of 
control C breaks is also included. 
Overall, the Extended BASIC is the most 
complete BASIC offered for micro users and is 
only available on FLEX™ disk. A system with at 
least 32K of user space is recommended. 
Specify 8" or 5" media (5" 6800 is FLEX™ 2.0) 
and either the 6800 or 6809 version when 
ordering. 

AP68-12 6800 Extended BASIC $100 
SP09-6 6809 Extended BASIC $100 



BASIC Precompiler 



This program allows the creation of BASIC 
programs without the use of line numbers or 
restrictive two-character variable names. 
Alphanumeric line and subroutine labels may 
be used, as well as variable names of any 
length. Comment lines are marked with non- 
alphanumerics for easy readability. The output 
of the precompiler is in the standard BASIC 
compiled form. This allows applications 
programs to be written, precompiled, and then 
distributed in a non-source form. The 
precompiler can only be used with one of 
Technical Systems Consultants' BASICS. 
Specify 8" or 5" (5" 6800 is FLEX™ 2.0) when 
ordering. 



AP68-13 


Single Precision 






6800 Precompiler 


$40 


AP68-14 


Double Precision 






6800 Precompiler 


$50 


SP09-7 


Single Precision 






6809 Precompiler 


$40 


SP09-8 


Double Precision 






6809 Precompiler 


$50 



FLEX Is a registered trademark of Technical 
Systems Consultants, Inc. 




technical /y/tenrv 
con/ultantr, inc. 



Box 2570, West Lafayette, IN 47906 
(317) 463-2502 



Circle 363 on inquiry card. 



BYTE October 1979 



103 



longest turn-on delay must be shorter than the shortest 
time to travel from read/write to erase gap. This may be 
calculated in the following manner: 

Maximum Linear Speed = MLS 
MLS = 6 revolutions/second X 1.035 X 2 it radians 
X 3.612 inches revolution 

radian 

MLS = 140.9 inches/second 
MLS = 357.9 cm/second 

The minimum time is then given by: 

Te Min = Minimum Spacing 

MLS 
Te Min = 0.036 inches - 0.003 inches 

140.9 inches / second 
Te Min = 234.1 fis 

Erase Delay Short = 234.1 /is 

Nominal = 234.1 /is 

1.1 
ED = 213 lis 
ED Min = 213 X .9 
ED Min = 191.6 /is 

Similarly, the erase turn-off delay must be longer than 




Now you can really expand your horizons with the tiny-c 
structured programming language. The tiny-c owner's manual 
(including 8080 and PDP-1 1 source code and tiny-c in C) is 
still just $40. And we've added these new formats to really 
eggyouon: TRS-80 Level II SYSTEM Format Cassette; CP/M 
Diskettes with 8080 Source; PDP-1 1 Diskette; North Star 5" 
Diskette; KIM and SYM cassettes. And there's more, all avail- 
able for $50 or less. Orderyourtiny-c owner's manual today 
and get the whole story. Call or write: tiny c associates, 
P.O. Box 269, Holmdel, N.J. 07733. 
(201)671-2296. 
You'll quickly discover tiny-c is all 
it's cracked up to be. 

New Jersey residents include 5% sales tax. Visa 
and MasterCharge accepted. Include charge 
plate number with order. 



V 



the longest time for the disk segment to travel from the 
read/ write to the erase gap: 

Slowest Linear Speed = SLS 

SLS = Minimum Angular Speed X Minimum Radius 

- 6 revolutions/second X (.965) 2 it radians 
X 2.029 i nches revolution^ 

radian 

SLS = 73.82 inches/second 
SLS = 187.50 cm/second 

Maximum time to travel from read/write to erase gap is 
given by: 

Te Max = Maximum Spacing 
SLS 
= 0.036 inches + 0.003 inches 
73.82 
Te Max = 5.28 jus 

Minimum TurnOff Delay = 528.3 /us 
Nominal TurnOff Delay = 587 fis 
Maximum TurnOff Delay = 646 fis 

Address Block Tail 

The address block is written when the disk is format- 
ted, and is rewritten only if the disk is reformatted. The 
format operation generally writes an entire track at one 
pass, completely filling the unused areas with an arbi- 
trary pattern. User data blocks are then inserted between 
address blocks. The turn-on of write current when 
writing a user data block is timed from the address block 
clock; therefore, the address block will not be over- 
written by the start of a data block. However, sufficient 
tail must be provided to prevent the erase current from 
being turned on during the meaningful data in the address 
block. If it was turned on, each successive write (as- 
suming track alignment between writes shifts slightly) 
would trim away some of the address block, thus 
degrading data reliability until errors occurred. The tail 
required to prevent this occurrence is found by subtrac- 
ting the quickest erase turn-on from the maximum time to 
travel from the read/write to erase gap: 

Address Field Tail = TAB 

TAB = Te Max — ED min 

Tab = 528.3 fis - 191.6 fis = 336 fis 

This 336 jus will occur at slowest drive speed; but the 
write clock could be maximum. Therefore the address tail 
is given by: 



336 ixs 



= 20.35 bytes 



16 fis X 0.997 X 1.035 

Use 21 bytes, since partial bytes are not conveniently 
written. 

Data Block Tail 

An address block is never inserted after a data block. 
Therefore, the only requirement for a tail on the data 



104 October 1979 © BYTE Publications Inc 



Circle 373 on inquiry card. 




What is the COMPUTER 
PROFESSIONALS' BOOK CLUB? 

Call it an insurance policy against 
obsolescence! A lot of our members do. 

McGraw-Hill's Computer Professionals' Book Club 
can be your most important line to the fast-breaking 
changes and revolutionary ideas sweeping the com- 
puter science field today. CP is not just another book 
club. It comes from one of the world's foremost techni- 
cal publishers. And it provides only the hard, to-the- 
point information you need now to stay ahead 
tomorrow. 



(VALUES UP TO $38.95) 

when you join the 

COMPUTER PROFESSIONALS' 
BOOK CLUB 



CP helps you save! By searching out only the best 
in essential literature from dozens of publishers, and 
buying in large, money-saving quantities, CP passes 
on big savings to you. Many members find they save 
20-30% on what they would pay otherwise — and that's 
not including the 100% savings on the free book you 
get when you join the Club. 

CP gives you an instant review of the field! Four- 
teen times a year you receive free of charge the Com- 
puter Professionals 1 Book Club Bulletin describing the 
featured book of the month, along with outstanding 
alternate selections. Considering the many books 
published annually, you can bet there'll be some of 
special interest to you. You'll see at a glance what's 
new — and receive only the books you want to own! 



168/075 

AUTOMATIC DATA PROCESSING 

HANDBOOK 

edited by The Diebold Group, Inc. 

Pub. Price, $38.95 Club Price, $25.75 

786/81X 

COMPUTER ALGORITHMS: 

Introduction to Design and Analysis 

byS. Baase 

Pub. Price, $17.95 Club Price, $14.75 

654/158 

PROGRAMMING LANGUAGES 

by A. B. Tucker, Jr. 

Pub. Price, $22.00 Club Price, $16.50 

787/026 

MINICOMPUTER SYSTEMS, 2nd Ed. 

by R. H. Eckhouse 

Pub. Price, $21.95 Club Price, $17.75 

771/499 

MICROCOMPUTERS/MICROPROCESSORS: 

Hardware, Software and Applications 

by J. L. Hilburn&P. N. Juhch 

Pub. Price, $22.50 Club Price, $16.50 

786/380 

FUNDAMENTALS OF COMPUTER 

ALGORITHMS 

by E. Horowitz & S. Sahni 

Pub. Price, $19.95 Club Price, $15.95 

333/874 

MICROPROGRAMMING PRIMER 

by H. Katzan, Jr. 

Pub. Price, $20.95 Club Price, $15.70 



435/278 

MICROPROCESSOR APPLICATIONS 

MANUAL 

by Motorola, inc. 

Pub. Price, $38.00 Club Price, $26.50 

491/380 

MICROCOMPUTER-BASED DESIGN 

by J. Peatman 

Pub. Price, $26.50 Club Price, $18.95 

701/30X 

DATA BASE DESIGN 

byG. Wiederhold 

Pub. Price, $24.50 Club Price, $18.25 

463/387 

PRINCIPLES OF INTERACTIVE 

COMPUTER GRAPHICS, 2nd Ed. 

by W. M. Newman & R. F. Sproull 

Pub. Price, $19.95 Club Price, $14.95 

785/49X 

PROGRAMMING FOR MINICOMPUTERS 

by J. C. Cluley 

Pub. Price, $17.50 Club Price, $13.50 

786/372 

REAL-TIME PROGRAMMING 

WITH MICROCOMPUTERS 

by R. C. Turner 

Pub. Price, $16.95 Club Price, $13.95 

191/549 

MEMORY DESIGN: 

Microcomputers and Mainframes 

by Electronics Magazine 

Pub. Price, $18.50 Club Price, $15.50 



■ MAIL THIS COUPON TODAY ■ 



COMPUTER PROFESSIONALS' Book Club 
P.O. Box 582, Hightstown, New Jersey 08520 



7ZM 

ilnil 



Please enroll me as a member and send me the two books indicated. I am to receive 
one free book plus my first selection at the discounted price to members, plus local 
tax, postage and handling. If not satisfied, I' may return the books within 10 days and 
request that my membership be canceled. If I keep the books, I agree to take a minimum 
of three additional books during the next two years. I will receive the Club Bulletin 14 
times a year, If I want to examine a featured selection, I need take no action. It will be 
shipped automatically. If I want an alternate selection— or no book at all— I will notify the 
Club by returning the card enclosed. A postage and handling charge is added to each 
shipment. I will have a minimum of 10 days in which to return the card, and you will credit 
my account fully, including postage, if this is not the case. Membership in the Club is 
continuous but cancellable by me at any time after the four-book purchase requirement 
has been fulfilled. 
This order subject to acceptance by McGraw-Hill. 



Write Code # of 
FREE selection here 



Write Code #of 
FIRST selection here 



Orders from outside the U.S. must be prepaid with international money orders 
in U.S. dollars. 

Charge my D VISA D MASTER CHARGE' Exp. Date 

Credit Card # *MC Bank # 

Signature 

Name - 



Address 

City, State. Zip. 



P39374 



block is for a bit to guard the cyclic redundancy check 
from being at a boundary between old and new data. Use 
1 byte. 

Data Block Leader 

The data block is always written later than the address 
block. Therefore, enough leader to synchronize the data 
separator is all that is necessary. The PerSci data 
separator will lock to frequency in 100 /xs on any pattern 
and then requires 4 successive 0s to determine that the 
input data is clock pulses. This would require 4 bytes in 
frequency modulation forms. The IBM formats require 6 
bytes of 0s for frequency modulation or 12 bytes of 0s for 
modified frequency modulation. 

Address Block Leader 

The address block leader must be long enough to guard 
against the possibility of the inserted data block of the 
earlier sector overwriting meaningful data; as well as be- 
ing additionally long enough to prevent the erase turn-off 
of that inserted data block from degrading meaningful 
address data. Since even degraded data should be good 
enough to synchronize the data separator, the sum of the 
bytes required for the first 2 effects is all that is required. 
Longest erase delay minus shortest time to travel from 
read/write to erase gap: 



646 /xs — 234.1 ais 

= 412 jits 
412 pis 



16 /xs/byte X 0.965 X 0.997 
27 bytes double density 
14 bytes single density 



= 26.8 bytes 



To absorb the effect of speed variation between format 
and writing, a gap of the maximum difference in time for 



a data block must be allowed. A data-block double den- 
sity will consist of 12 bytes of leader, 1 byte address 
mark, N bytes of user data, 2 bytes of cyclic redundancy 
check, and 1 byte of tail. This is N + 16 bytes. 
Longest block time, with ±3.5% speed variation: 

1.035 X (N + 16) bytes 

Shortest Block: 

0.965 (N + 16) bytes 

Difference = (1.035 - 0.965) (N + 16) 
= 0.07 (N + 16) bytes 

The address field leader must then become the sum of 
these: 

AFL = 27 + 0.07 (N + 16) modified frequency 

modulation 
= 13 + 0.07 (N + 10) frequency modulation 

This leader must be terminated with enough successive 0s 
to synchronize the data separator. 

Conclusions 

The formatting rules outlined above allow for the 
mechanical variations of the floppy disk drive; the user 
can design a format to give maximum data capacity with 
maximum reliability. If these rules are not followed, 
however, the format will cause a slow degradation of the 
address each time a new block of user data is inserted, 
until the address is not readable. It is a simple matter then 
(with a little planning) to maintain compatibility with 
your IBM head, thus assuring the success of your non- 
IBM format. ■ 



r S-100 USERS: GIVE YOUR COMPUTER THE GIFT OF SIGHT! "1 



The DS-80 Digisector® is a random 
access video digitizer. It works in 
conjunction with a TV camera (either 
interlaced or non-interlaced video) and 
any S-100 computer conforming to the 
IEEE standards. Use it for: 

• Precision Security Systems 

• Moving Target Indicators 

• Computer Portraiture 

• Fast To Slow Scan Conversion 

• Robotics 

• Reading UPC Codes, schematics, 
paper tape, musical scores 




CHECK THESE FEATURES: 

□ High resolution — a 256 x 256 pic- 
ture element scan 

□ Precision — 64 levels of grey scale 

□ Speed — Conversion time of 14 
microseconds per pixel 

□ Versatility — scanning sequences 
user programmable 

□ Economy — a professional tool 
priced for the hobbyist; comes fully 
assembled, tested and burned in, 
with fully commented portrait print- 
ing software. 

Price: $349.95 MasterCharge and Visa 



IMAGE PROCESSED BY DS-80 • 



rH mD©[^2> 

[JSm©^^' P.O.BOX1110,DELMAR,CA92014 714-756-26871 



106 October 1979 © BYTE Publications Inc 



Circle 231 on inquiry card. 





BYTE News .... 

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 

THE S-100 BUS - WHAT IS ITS FUTURE?: Some industry pundits have speculated that the S-100 
bus was doomed when integrated machines like the TRS-80, PET, Apple, et al, were introduced. I do 
not agree with this view. 

There are now an estimated 200,000 S-100 systems in operation, and S-100 system sales should 
continue strong for a number of reasons. 

The S-100 bus is not processor dependent. In fact there are presently 8080, Z80, 8085, 6502, 6800, 
6809, 9900, 8086, Z8000 and MCP1600 processor boards that plug into the S-100 bus. The 68000, 
when it becomes available, will surely be adapted for the S-100 bus also. 

It allows for extended addressing beyond 64 K bytes of memory. In fact the 16-bit microprocessors 
on the S-100 bus employ up to 23-bit address words and can access directly up to 2 M bytes of 
memory. The 8 -bit microprocessors can accomplish a similar feat by a bank-switching arrangement. 
The Institute of Electronic and Electrical Engineers (IEEE) is adopting an S-100 standard, which 
should eliminate signal and timing problems and encourage sophisticated 16-bit systems. 

The S-100 bus has a lot of other goodies such as vectored interrupt, direct memory access (DMA), 
and master/slave capabilities, which are not possible on the limited bus structures of machines such 
as the TRS-80, PET, APPLE, etc. 

At least 3 new S-100 mainframes have been introduced so far this year. These newer boxes are 
capable of operating at speeds up to 10 M Hz, have larger power supplies and other features. 

Those who .wish to have a machine capable of getting the maximum benefits of microprocessors 
must go the S-100 route. The S-100 bus will thus continue to dominate the serious personal 
computing area for many years to come. 

NEW IMAGE SENSOR USES PHOTODIODE ARRAY: An integrated circuit consisting of a 64 by 64 
array of 4096 photodiodes with associated registers and accessing circuitry has been developed for 
video camera use. The manufacturer, Integrated Photomatrix Inc, Mountainside NJ, claims that it 
can produce video-quality gray scale images with illumination as low as 60 foot candles. This is 5 to 
8 times more sensitive than previous devices. However, the most important feature is that it lends 
itself to computer processing. 

RANDOM NEWS: Atari has received FCC approval for their model 400 and 800 personal computers. 
This will probably make the FCC less willing to grant the Texas Instruments request for changes in 
the rules, as the FCC finds that other companies are able to pass current requirements . . . Radio 
Shack will open 100 Computer Sales Departments in 100 existing stores, in addition to the 50 Radio 
Shack Computer Centers already in operation . . . Two pioneer personal computer companies have 
shut their doors and are out of business. They are Processor Technology Company and Xitan Inc 
(formerly TDL). Their closings are attributed to poor business management, not lack of business. 

RANDOM RUMORS: Shugart is about to announce an 8 inch Winchester disk drive for under $1000. 
Rumor is that it will be called the Model SA-1000 and will store 5 M bytes. In original equipment 
manufacturer (OEM) quantities it may sell for as little as $750 . . . 5 l A inch Winchester-type drives 
are being investigated by several manufacturers . . . Digital Equipment Corporation's Computer 
Stores are proving to be a real success. Four stores are already in operation and 6 more are planned 
to be opened by the year's end. The stores will sell computers in the $12,000 to $18,000 range with 
supplies and accessories aimed at small business users ... A record 78,843 people attended the 
National Computer Conference (NCC) held in New York City this past June. This was 22,000 more 
than last year, which also set a record . . . Sinclair Radionics Ltd, London, England, has 
demonstrated a flat screen (3 inch) black and white television receiver, the size of a paperback 
book. They are now looking for financing for the production of the unit. This may be the forerun- 
ner of the pocket computer terminal. 

PERSONAL COMPUTER TIMESHARE NETWORK INAUGURATED: Telecomputing Corporation of 
America, McLean Va, has started a Personal Computer Network which may be accessed by home 
users with terminals or personal computer systems. They have about 2000 programs and data bases 
on-line for immediate access. Included is the United Press International (UPI) daily news file, airline 
schedules and real estate listings. Called "The Source", the service will be available in 200 US cities 
at $2.75 per hour from 6 PM to 7 AM, weekends and holidays. The rate during normal working 
hours will be higher. 

October 1979 © BYTE Publications Inc 107 



DYNAMIC MEMORY AND THE u SOFT ERROR": As programmable memory size increases and 
memory cell size decreases, users are discovering that programmable memory can have soft errors 
as well as hard errors. A hard error is when a bit or bits in a given memory location is stuck high or 
low. This kind of error is easily found with a memory test and always has the same effect on the 
processor. 

The introduction of very large-scale integration (VLSI) dynamic-memories with very small cell size 
has introduced soft errors which cause varying symptoms in the running of a program. A soft error is 
defined as a random, nonrecurring, bit change. The occurrence of soft errors appears to be on the 
increase and standard memory tests do not appear to help in diagnosing the problem. 

The integrated circuit (IC) industry is becoming very concerned with the growing problem. 
Several integrated circuit makers have intensive research going on to discover the sources of the 
problem. The chief cause appears to be alpha particle radiation produced by the radioactive trace 
elements in the metal lids which hermetically seal the integrated circuit cavity. Several measures are 
being adopted by integrated circuit makers including package redesign, processing changes, and 
recommending that users employ error correction schemes in their memory boards to cope with the 
problem. 

LEAVE THE DRIVING TO THE MICROCOMPUTER: Several automobile makers have research and 
development programs aimed at developing computer controlled cars. An example is the LISA 
system now under development by Volkswagen. A small console will be located on the car's dash- 
board. It will have a small keyboard, graphics and alphanumeric display controlled by a micro- 
processor. The driver will key in the code for the town he or she wishes to go to. Then as the car 
passes over sensor cables imbedded in the road, LISA's microcomputer transmits the car's destina- 
tion to a master computer and receives instructions on the fastest and least congested route. LISA 
then displays a map showing the driver where to turn. LISA can be extended to control the car's 
speed from the information received from the master computer and an on-board radar system. Pretty 
soon, you will get into your car, buckle your seat belt, turn on the ignition and u leave the driving to 
LISA." 

16-BIT MICROPROCESSORS TO DOMINATE THE 1980s: Most industry experts feel that the 
dominant microprocessor in personal computing and small business applications will be the 16-bit 
processor. They feel that prices will drop sharply, substantially reducing the price difference 
between 8-bit and 16-bit microcomputer systems. 8-bit microprocessors are expected to remain 
strong into the early 1980s because of the strong software base and significantly lower cost. 
However, the situation is expected to change by the mid-1980s with the 16-bit processor becoming 
dominant. 

1980 should see at least a dozen 8086 and Z8000 processor and memory cards for the S-100 bus. 
The Motorola 68000 16-bit entry should make its appearance in personal computing systems by late 
1980. It is interesting to note that Motorola in designing their new microcomputer development 
system are introducing a new Polybus which is upgradable to 32-bit service. 

NONIMPACT PRINTERS IMPROVING: Considerable research is being devoted to the improvement 
of nonimpact printers. These efforts should bear fruit within the next 5 years, and will probably 
result in higher print quality, increased printing speed and greater capabilities. It is expected that 
quality will improve to produce type quality equal to Selectric and Diablo type printers. Speed will 
increase dramatically: 12,000 lines per minute will be common. Further, the printers will have 
multifont and graphics capabilities. Hence, they will simultaneously print the forms and the data, 
and put in signatures as well. Also, they will be capable of producing half-tone graphics and some 
even capable of multicolor printing. 

LASER DISK MEMORY SYSTEMS IN DEVELOPMENT: At least 3 companies, Sperry Univac, Nippon 
Electric Co Ltd and Phillips Research Laboratories, are known to be working on laser disk-type data 
storage systems. Referred to as optical disks, they employ diode-laser recording systems which can 
record alphanumeric and image data on tellurium coated disks. They will be capable of substantially 
greater bit density than present magnetic disks. 

PASCAL BEING PUSHED: More and more computer manufacturers are jumping on the Pascal 
bandwagon. Recently, Digital Equipment Corporation, Data General and Texas Instruments 
introduced packages for their mini and microcomputer systems. Pascal packages have also been 
introduced for CPM, North Star, Radio Shack TRS-80 and Apple computers. 

Sol Libes 

ACGNJ MAIL: I receive a large number of letters each month, as a result of this column. If you 

1776 Raritan Rd write to me and wish a response, please include a stamped self-addressed envelope. 

Scotch Plains NJ 07076 

108 October 1979 © BYTE Publications Inc 






The ORIGINAL Computer People Who KNOW computers 
and offer EVERYTHING you need in Small Computer Systems 

Compare PRICE, QUALITY, DELIVERY, SERVICE and ^^^^^ 

you'll see why you don't have to look anyplace else! ^r ' ^ 

SUPER 
SPECIAL! 




Circle 355 on inquiry card. 



BYTE October 1979 



\W 



Finally, a computer 
breakthrough that really is a 

breakthrough! 




THE SOURCE is here... 

the first time-sharing information system 

devised for home and small business 

computing! 



Now, for the first time in history, you can link your 
personal computer to a vast, powerful information sys- 
tem that extends to hundreds of major U.S. cities and 
puts you in control of more than 2,000 different informa- 
tion resources and programs- for just pennies a minute! 

Pioneered by the Telecomputing Corporation of Amer- 
ica, this breakthrough is called THE SOURCE Informa- 
tion Utility, and it is revolutionizing the world of 
personal computing! 

Large system capability from the hardware 
you're using now! 

Any personal computer with a modem can be hooked 
up to THE SOURCE quickly and easily. Just dial a local 
phone number and key in your private password, and 
you'll have the large system capability you've always 
wanted at a fraction of the usual cost! 

THE SOURCE is yours for as little as $2.75 an 
hour (4.60 a minute) — No CPU charges! 

You can access the wealth of information resources 
and programs in THE SOURCE for an hourly charge of 
just $2.75 during non-prime hours*, plus a one-time 
hookup fee of $100.00. TCA also provides intelligent ter- 
minal software for an additional $25.00. Your connect 
time will be automatically recorded by THE SOURCE in 
one-minute increments and billed to the major credit 
card account of your choice. 



Thousands of new capabilities at your 
fingertips! 

Whether you use your personal computer for business, 
entertainment, education or just plain fun, THE 
SOURCE will broaden your horizons in any category 
with thousands of informative, easy-to-use application 
programs and special system features to benefit every 
member of your family. 

Here's just a quick look at some of the far-reaching 
capabilities you'll command from your home or office 
with THE SOURCE! 

Electronic Mail 

You can send point-to-point or multi-point electronic 
messages all over the country with THE SOURCE. Just 
think, now you can exchange software electronically, 
without regard for the lack of cassette and diskette 
standards. On the job, you can receive and send impor- 
tant messages instantly, handle information at your con- 
venience, cut down on interruptions and save the time 
and money of long distance phone calls or letters. THE 
SOURCE'S exclusive Datapost service lets you send hard 
copies of your messages for just pennies apiece-with 
overnight delivery. 

Chatting 

Use THE SOURCE to "chat" electronically with 
friends or business associates in a real time interactive 



* Non-prime hours are 6 p.m. to 7 a.m. (local time) Monday through Friday, and all day Saturday, Sunday and holidays. Non-prime 
connect time is $2.75 an hour. The prime time usage charge is $15.00 an hour. There is a minimum monthly charge of $5.00 and disk 
storage charges are calculated at .033 cents/2,048 character block/day. 



110 BYTE October 1979 



mode. And you can chat with other SOURCE users all 
over the country for considerably less than the cost of a 
long-distance phone call. 

Easy To Use 

You and THE SOURCE will easily understand each 
other because all programs and data bases are organized 
under a unique "key word" indexing system that gives 
you exactly the information you need in seconds. 

Write your own programs . . . 

You get all the advantages of timesharing, including 
complete programming capability in such languages as 
extended BASIC, FORTRAN IV, PASCAL, Assembly 
and many more. And you'll have at your command THE 
SOURCE'S powerful text editor and cross assemblers for 
all popular micro-processors. 

... Or choose from over 2,000 existing data bases 
and application packages! 

THE SOURCE gives you instant access to an almost 
unlimited variety of data base information resources and 
programs that you and your family can use to live bet- 
ter, work better, study better and have more fun. You 
can turn to THE SOURCE for: 

• News, sports, weather, financials and features from 
United Press International's worldwide news service. 

• Major stock exchange information, including stock 
market averages, closing statistics, news, quotations 
and summaries, plus trends and extensive historical 
data on the market activity of 3400 publicly traded 
stocks. 

• A library of educational courses and reviews from 
kindergarten to post-grad level, including the Dart- 
mouth College educational library. 

• New York Times Consumer Data Bank, an extract 
service of over 5,000 topical items appearing in major 
publications-a powerful and prestigious information 
and research tool! 

• Entertainment and hobbies, including theatre and 
restaurant guides, movie and book reviews, concert 
and ticket information, and tips on dozens of hobbies 



from auto repair to gourmet cooking, plus daily horo- 
scope and biorhythm reports and scores of electronic 
games for all age levels and interests. 

• Financial information, including a complete income 
tax guide, home financial planning, investment assist- 
ance, a national real estate buying and selling service, 
and much more! 

• Business help, including a complete set of basic busi- 
ness accounting packages, a proven business data base 
management system, and hundreds of parameter- 
driven application packages for users in scientific, 
engineering, government and education fields. 

• Personal and business travel planning, including 
airline schedules, reservation and ticket confirmations, 
plus hotel/motel and car rental reservations. 

Available now in 250 major U.S. cities and 
growing! 

When you subscribe to THE SOURCE, you get more 
than power, you get reach! THE SOURCE is now availa- 
ble in over 250 major U.S. cities and the network is 
growing! 

Hook up to THE SOURCE now! 

For a one-time hookup fee of just $100.00, you will get 
a complete SOURCE Users Guide, a personal TCA iden- 
tification number and a private password that will 
deliver the vast information power of THE SOURCE 
Information Utility to your personal computer. 

Don't wait another day to discover the awesome capa- 
bilities of THE SOURCE! Complete the order form 
below noiv, indicating the credit card account to which 
you would like the service billed. MAIL IT TODAY TO: 
^^t3^ k Telecomputing Corporation of America 
1616 Anderson Road 
McLean, Virginia 22102 

Give your personal computer the large system 
information power and communications reach 
of THE SOURCE— Send this coupon today! 

© 1979 Telecomputing Corporation of America 



Mail to: Telecomputing Corporation of America 
1616 Anderson Road, McLean, Virginia 22102 

Yes! Give my personal computer the power of THE 
SOURCE Information Utility! Please send me my 
personal TCA identification number, private password 
and complete User's Guide. I understand that my 
monthly connect charges ($2.75/hr. for non-prime use, 
$15/hr. for prime time use) will be billed to the 
account I have indicated. I also understand that 
I am subject to a $5.00 minimum monthly charge. 

Check one: 

□ Please charge the account indicated in the 
amount of $100 for hookup to THE SOURCE 
Information Utility. 

□ Please charge the account indicated in the 
amount of $125, which includes hookup to THE 
SOURCE Information Utility and TCA's 
intelligent terminal software package. My system 
configuration is: 

Manufacturer: 

Model # and Description 

Specific Configuration 



Credit Card Information (please complete) 
□ VISA □ MASTER CHARGE Q AMERICAN 

EXPRESS 



Account #: 
Name 



Exp. Date: 



Address. 

City 

State 



.Zip Code_ 



Signature 



Date 




Information Utility 



The information innovation you've been waiting for! 

B/O 



Circle 370 on inquiry card. 



BYTE October 1979 111 



"onComputing 

really makes 
personal 
computers 
easy to 
under- 
stand." 

Written in non-technical language, 
onComputing™ contains articles on the 
capabilities of microcomputers, getting 
started, latest reviews of personal com- 
puters, where to purchase and how to use 
your computer. 




iin\ 



lyone can learn the funda- 
mentals of using a computer. 
onComputing readers receive 
practical advioe and helpful hints 
on how to get the most out of a 
personal computer, explanations 
of computer terminology, and, 
periodically, an updated list of 
active computer clubs. 



JJenefit from the experience of 
other computer enthusiasts. 
Articles in onComputing are 
written by well known authors 
as well as competent amateurs. 
They share their ideas on how to 
use the computer as a tool for 
business, education, home enter- 
tainment, laboratory work and 
other applications. 



r 



Oomputer experts edit onCom- 
puting for the new user, not the 
computer professional. The 
editors combine their esoteric 
knowledge of computer science 
and equipment to produce con- 
cise, non-technical material 
which can be readily understood 
by anyone interested in using a 
computer— for fun or profit. 

I 



onComputing, Inc. 

70 Main St., Peterborough, NH 03458 
Start your subscription today. 

EVERY THREE MOOTHS 
onComputing will bring 
the latest develop- 
ments in the field of 
personal computing: 
use, applications, books, 
selection— all in an 
easy-to-read style. 



© onComputing, Inc. 1979 
112 BYTE October 1979 



onComputing Subscription Dept. P.O. Box 307, Martinsville, N J 08836 
REGULAR subscription rate: 

□ U.S. 1 yr. (4 issues) @ $8.50 □ Canada & Mexico, 1 yr. (4 issues) @ $10.00 
FOREIGN (to expedite service, please remit in U.S. funds drawn on a U.S. bank.) 

□ Europe (and all other countries, except above), lyr.@ $12.00— surface delivery. 

□ Start my subscription with current issue. □ Start with Vol. 1 No. 1 

□ Bill Visa □ Bill Master Charge □ Bill me (North America only) 



L 



Card Number 


Expiration 




Signature 


Name (please print) 




Street/ ApartmentNumber 


City 


State/Province/Country Code 


7M89 



J 



The TRS-80 Speaks 

Using BASIC to Drive 
a Speech Synthesizer 



Tim Gargagliano 

Kathryn Fons 
24121 Mound Rd 
Warren MI 48091 



The rapidly increasing family of 
Radio Shack TRS-80 computer peri- 
pherals has recently acquired a voice 
synthesizer module. Any application 
of this computer system which in- 
volves human interaction can be im- 
proved with the addition of computer 
voice response. Voice can be used as a 
supplement to the video display or 
printer (by repeating what has been 
printed) or used alone when it is 
undesirable to print (such as for inter- 
mittent feedback while printing a 
long task). A few of the applications 
of the verbal peripheral are games, 
clocks, verbal prompting, alarm 
systems, doorbells, computer-aided 
instruction, and a blind user's ter- 
minal. The intent of this article is to 
present an overview of the voice syn- 
thesizer as a TRS-80 peripheral and to 
demonstrate the ease with which 
TRS-80 applications software can be 
modified to include the voice unit. 

Based on electronic phoneme syn- 
thesis, the voice response system syn- 
thesizer is capable of producing vir- 
tually any English language word and 
subsets of many foreign languages. 
Word production is achieved by se- 
quencing the units of sound produced 
by the synthesizer, referred to as 
phonemes. The synthesizer, deve- 
loped and manufactured by the 
Votrax Division of Federal Screw 
Works, produces 62 electronic 
phonemes. Procedures for sequencing 
phonemes are discussed in the 
phonetic programming section. 



The advantage of phoneme syn- 
thesis over other forms of speech pro- 
duction is its low data storage re- 
quirement. The average data transfer 
rate is 100 bps. Another advantage 
resulting from this low data rate is the 
negligible processor overhead asso- 
ciated with control of the synthesizer. 
This allows the computer to execute 
other tasks while it is generating 
speech. From a memory requirement 
standpoint, there are not any cumber- 
some software drivers or data tables. 




Photo 1: Radio Shack TRS-80 computer 
system with the voice synthesizer module 
sitting on top of the video monitor. 



Users of the TRS-80 Level I BASIC 
will be happy to learn that the voice 
synthesizer will interface with it, 
without any hardware modifications. 
This is possible by use of a special 
PRINT statement as an output com- 
mand. (Level I BASIC does not have 
output commands to any device ex- 
cept the video display and cassette 
tape drive.) Level II and Disk BASIC 
users may also use POKE commands 
to drive the synthesizer. 

Device Description 

The TRS-80 voice synthesizer is 
packaged in a silver-gray cabinet with 
a black front grill, slightly resembling 
a speaker enclosure. There is a 
volume control and device select indi- 
cator on the front panel next to a 
speaker. A ribbon cable emerges from 
the back of the cabinet, and connects 
directly to the TRS-80 microcom- 
puter keyboard module, or to the 
screen printer port on the expansion 
interface. Its length is sufficient to 
allow the cabinet to be placed on top 
of the TRS-80 video display unit. 



Phonetic Programming 

Phonetic programming is the 
operation performed to construct 



About the Authors 

Tim Gargagliano and Kathryn Fons are 
employees of the Federal Screw Works, and 
work in the research and development 
laboratory. 



October 1979 © BYTE Publications Inc 113 



TRS 80 SOLUTIONS ! 



Appointment Log 
Payroll 
Mail List 1 
Mail List II 




$9.95 
Disk $59.95 
Disk $19.95 
Disk $99.95 


Small Business Bookkeeping 

w/ journal 
w/o journal 


$22.00 
$15.00 


Small Business Bookkeeping For Disk 

w/journal $31.95 
w/o journal $24.95 
Inventory S Tape -$24.95 Disk $39.95 
Electric Pencil Disk$150.00 
Accounts Receivable II Disk $79.95 
Inventory System 2.3 32K 2-disk $79.95 
Periodical Cross Ref. Tape $14.95 Disk $19.95 



8080-Z80 Conversion 

Basic Statistics 

ST80 Smart Terminal 

ST80D 

Newdos 3.0 

Newdos + 3.0 

Slalom 

Air Raid 

All Star Baseball 

Batter Up 

X-Wing Fighter II 

Ten Pin 

Taipan 

Balloon Race 

Adventures: By Scott Adams 

Land Adventure 

Mission Impossible 

The Count 

Any two on Disk, 32K 

Any three. on Disk, 32K 

On tape, Level II, 16K 



$15.00 

$20.00 

$49.95 

Disk $79.95 

$49.95 

$99.95 

$7.95 

$14.95 

$7.95 

$5.95 

$9.95 

$7.95 

$9.95 

$9.95 

Pirate's Cove 
Voodoo Castle 



JiM 



SoftSide is for pioneers . . . those 
hardly souls who have adopted a 
TRS-80, installed it in their living- 
room or office, and unleashed their 
imaginations. 

SoftSide helps you discover the 
endless variety of tasks your new 
friend will do for you, as you build a 
unique partnership of human being 
and machine. 

We publish software for the 
partners. Every month we publish 
games, household application pro- 
grams, educational aids, business 
programs. We help you realize your 
expectations, fantasies, and 
dreams. 

SoftSide means Software! 



Tj« 



TRS-80 

Software Exchange 

Our New Watts Line # is ' 
1-800-258-1790 



DEALER INQUIRIES INVITED 
For more information, please call our 
Customer Service Department at: 

1-603-673-5144 

17 Briar Cliff Drive Milford, NH 03055 



WANTED 

USED TRS-80 EQUIPMENT! 
WeBuyAndSell Used Equipment 



Sample Prices 

UNIT BUY 

4K Level I 275 

16K Level II 500 

JDK Interface 175 

#11 60 Disk Drive 300 

CALL OR WRITE FOR DETAILS! 



SELL 
375 
650 
240 
399 



NEW! ALL TRS-80 EQUIPMENT, 10% OFF! 
Factory sealed, with a Radio Shack sales slip and 
warranty! 16K Level II - $764.00, 16K Interface - 
5403.00 (plus shipping). 

Call Or Write For A Complete Price List. 

"NOW AN AUTHORIZED EXIDY DEALER" 

Step up the the amazing Exidy Sorcerer. Features 
high-resolution graphics, 64 x 30 character video, 
monitor and fast floating point BASIC in ROM, 
user-definable character set, and the best 
keyboard of any micro. Sorcerer power can be 
yours for $995 [8K RAM], $1145 [16K], and $150 
per 16K additional. A wide range of system and 
application software is also available. 




A bi-monthly magazine for the 
serious programmer who wants to 
now HOW his computer works and 
WHY. PROC/80 emphasizes tech- 
nique rather than canned programs. 
The subjects include machine lan- 
guage, construction projects and 
specialized applications software, not 
just for the advanced computer 
hobbyist, but for the computerphile 
who wants the most from his 
machine. 



Kamikaze 




$7.95 


Space Battles Tape-$14.95; 


Disk - 


$19.95 


E'ectronics Assistant 




$9.95 


3-D Tic Tac Toe 




$7.95 


StarTrefclll.3 




$14.95 


End Zone 




$7.95 


Cribbage 




$7.95 


'Round the Horn 




$9.95 


Ham Radio 






Special Disk-enhanced version 


32K 


$24.95 


Tape - 


$9.95 


Educator Assistant 




$14.95 


Typing Tutor 




$19.95 


Personal Finance 




$9.95 


Advanced Personal Finance 


Disk $24.95 


KVP Extender Tape - $24. 91 


>; Disk 


$29.95 


Level III Basic 




$49.95 


MMSFORTH 






Cassette version, Level 1 1 , 16K 




$39.95 


Disk version, Level II, 16K 




$49.95 


MicroForth primer 




$15.00 


TRS-80 Fortran 




$99.00 


TRS-80 Macro Assembler 


Disk $99.00 


Concentration 




$7.95 


Safari 




$7.95 


Pork Barrel 




$9.95 


Backgammon 




$7.95 


Chess Companion 




$7.95 


Sargon Chess 




$19.95 


Mastermind II. 2 




$7.95 


RPN Calculator 




$9.95 


Home Financial Management 




$9.95 


Secrets Of The Tarot 




$9.95 




Appte SeeA 

y* If you're an Apple II pioneer, 
^ you've been longing for a software 
3fe publication and hoping someone 
2$ would get around to it. 
§£ We have. Apple Seed is to the 
^ Apple II what SoftSide is to the' 
>£ TRS-80. And it's brand new. The! 
2? first issue will roll off the press in' 
^August or September. Apple ll" 
Sg enthusiasts will eat up this special, 
^introductory offer! 




SOFTSIDE 

□ 1 Year -12 issues $18.00 

PROG/80 

□ 1 Year -6 issues $15.00 

APPLE SEED 

□ 1 Year- 12 issues $15.00 



PO Box 68 Milford, NH 03055 

USA first class $25.00 - 1 yr. 

□ APO/OVERSEAS surface $25 - 1 yr. 
D CANADA/ MEXICO $25 - 1 yr. 

□ OVERSEAS airmail $30 - 1 yr. 



Exp. Date . 
Signature - 

Name 

Address 

City 



Interbank # [M/C only]. 



.State, 



-Zip. 



Telephone orders accepted for Master Charge or VISA accounts. Call Monday through 
Friday, 9:30 to 5:30 EST at 603-673-5144 



114 BYTE October 1979 



Circle 313 on inquiry card. 



VOTRAX 


AS( 


F'Rl :+: 




12 


! 


I 


ii 


is. 


# 


00 


* 


001 


"•;) 


V 


&: 


LI 




IU 


< 


R2 


";i 


RV 


:+: 


NG 


-h 


RU 


., 


DEC. 


- 


E 




ER 


,.•"' 


F'RO * 


@ 


RW1 


1 


RM2 


2 


EH1 


jj. 


EH2 


4 


EH3 


5 


UH1 


6 


UH2 


r' 


UH3: 


fc:» 


RE1 


5 


RE 




RH1 


.; 


THV 


s~ 


TH 


= 


SH 


"v. 


WINDOW 


•? 



DECIMAL 



34 



40 
41 
42 
43 
44 
45 
46 
47 
43 
49 
50 
51 

53 
54 
•_• •_< 
56 
57* 
58 
59 
60 
61 
62 
63 



VOTRAX 

Rl 

RH2 

E 

CH 

D 

El 

F 

G 

H 

II 

J 

K 

L 

M 

N 

01 

F' 

DT 

R 

T 
Ul 

I,,! 

w 

ZH 

VI 

-? 
<— 

02 

RH 

R 

NULL 



ASCII 

\? 
R 
B 



D 
E 
F 
G 
H 
I 
J 
K 
L 
M 
N 

P 
Q 
R 

T 
U 

W 



DECIMAL 
64 



o r 

6G: 
SS 
70 
71 



i-t. 
r" r' 
r" W 
79 
60 
SI 



£:9 
90 
91 



94 



Table 1: Relationship between Votrax phoneme symbols and ASCII characters used by 
the TRS-80. The decimal value of the ASCII character is also shown. The ASCII 
character is placed in the output window, and the synthesizer produces the corres- 
ponding sound. The synthesizer must use special phoneme characters to represent its 
sounds because standard alphabet characters often have several different pronuncia- 
tions assigned to them. 



words and phrases from the consti- 
tuent sounds of a particular human 
language. These constituent sounds 
are called phonemes. The machine 
need produce only a subset of possi- 
ble human sounds to be intelligible. 
Comparison of the phoneme subsets 
of various languages shows that there 
is a large intersection of phonemes be- 
tween them. This means that given 
the phoneme subset of a particular 
language, several other languages can 
be produced from the same subset 
with a high degree of accuracy. 

The TRS-80 voice synthesizer is an 
English language phoneme syn- 
thesizer. Table 1 lists all of the 
phonemes produced by the Votrax 
phoneme symbols, with the 
associated ASCII character and 
decimal code. The ASCII character, 
hereafter referred to as the phoneme 
character, is used in BASIC 
statements to select phonemes. The 
Votrax phoneme symbol is a 



mnemonic descriptor, for it spells the 
sound associated with that phoneme. 

There are 62 phonemes from which 
to select. Several vowel phonemes 
have multiple listings, such as UHl, 
UH2, UH3. These are different dura- 
tions of the "uh" sound. The larger 
the digit, the shorter the duration of 
the sound. The range of phoneme 
duration is 50 to 200 ms. The long 
duration version of a vowel phoneme 
(eg: EHl) is used in a word with only 
1 vowel, or in the syllable of a word 
that is accented or stressed (eg: yes, 
better). Shorter duration versions of 
the vowel (eg: EH2, EH3) are used in 
unstressed syllables (eg: seven). 

The phonemes listed in table 1 have 
been broken down into general 
groupings which are shown in table 2. 
In a physical sense, voiced phonemes 
can be thought of as those having 
pitch and amplitude resulting from 
vocal cord vibrations (such as are 
produced by humming). Unvoiced 




Circle 284 on inquiry card. 



By Netronics 

ASCII/BAUDOT, 
STAND ALONE 

Computer „ 4995 
Terminal 1W 

The Netronics ASCII/BAUDOT Computer Terminal Kit is a 
microprocessor-controlled, stand alone keyboard/terminal 
requring no computer memory or software. It allows the use of 
either a 64,or 32 character by 16 line professional display for- 
mat with selectable baud rate, RS232-C or 20 ma. out put, full 
cursor control and 75 ohm composite video output. 

The keyboard follows the standard typewriter configuration 
and generates the entire 128 character ASCII upper/lower case 
set with 96 printable characters. Features include onboard 
regulators, selectable parity, shift lock key, alpha lock jumper, 
a drive capability of one TTY load, and the ability to mate 
directly with almost any computer, including the new Ex- 
plorer/85 and ELF products by Netronics. 

The Computer Terminal requires no I/O mapping and 
includes Ik of memory, character generator, 2 key rollover, 
processor controlled cursor control, parallel ASCII/BAUDOT 
to serial conversion and serial to video processing — fully 
crystal controlled for superb accuracy. PC boards are the 
highest quality glass epoxy for the ultimate in reliability and 
long life. 

VIDEO DISPLAY SPECIFICATIONS 

The heart of the Netronics Computer Terminal is the micro- 
processor-controlled Netronics Video Display Board (VID) 
which allows the terminal to utilize either a parallel ASCII or 
BAUDOT signal source. The VID converts the parallel data to 
serial data which is then formatted to either RS232-C or 20 ma. 
current loop output, which can be connected to the serial I/O 
on your computer or other interface, i.e., Modem. 

When connected to a computer, the computer must echo the 
character received. This data is received by the VID which 
processes the information, converting to data to video suitable 
to be displayed on a TV se't (using an RF modulator) or on a 
video monitor. The VID generates the cursor, horizontal and 
vertical sync pulses and performs the housekeeping relative to 
which character and where it is to be displayed on the screen. 
Video Outpul: 1.5 P/ Pinto 75 ohm (EIA RS-170) • Baud Rale: 
110 and 300 ASCII • Outputs: RS232-C or 20 ma. current loop 
• ASCII Character Set: 128 printable characters— 



!'lttt'O*+,-,/01Z3456789:;<=>? 
WeC0EFWIJrUKFB5TlMaVZ[\r_ 
N abcdef 9hi jki«nowstuwxyz< «H 



BAUDOT Character Set:>t BCDEFGHIJKLMNOPQ 
RSTUVWXYZ-?:*3$ti().,90I4!57;2/68» 
Cursor Modes: Home, Backspace, Horizontal Tab, Line Feed, 
Vertical Tab, Carriage Return. Two special cursor sequences 
are provided for absolute and relative X- Y cursor addressing • 
Cursor Control: Erase, End of Line, Erase of Screen, Form 
Feed, Delete • Monitor Operation: 50 or 60Hz {jumper 
selectable. 

Continental U.S.A. Credit Card Buyers Outside Connecticut 

CALL TOLL FREE 800-243-7428 

ToOrderFrom Connecticut Or ForTechnical ^ m _ 
™ Assistance, Etc. Call (203) 354-9375 ■ 

I Netronics R&D Ltd., Dept. PE-9 ] 

333 Litchfield Road, New Milford, CT 06776 ■ 

| Please send the items checked below — [| 

ID Netronics Stand Alone ASCII Keyboard/Computer ■ 
Terminal Kit, $149.95 plus $3.00 postage & handling. | 
ID Deluxe Steel Cabinet for Netronics Keyboard/Termi- ■ 
nal In Blue/Black Finish, $19.95 plus $2.50 postage | 
I and handling. <« 

□ Video Display Board Kit alone (less keyboard), $89.95 | 
I plus $3 postage & handling. _ 

□ 12" Video Monitor (10 MHz bandwidth) fully assem- j 
I bled and tested, $139.95 plus $5 postage and handling. _ 
□ RF Modulator Kit (to use your TV set for a monitor), | 

I $8.95 postpaid. 
□ 5 amp Power Supply Kit In Deluxe Steel Cabinet 
I(±8VDC @ 5 amps, plus 6-8 VAC), $39.95 plus $2 
postage & handling. 
I Total Enclosed (Conn. res. add sales tax) $_ 
By- 

ID Personal Check □ Cashiers Check/Money Order 
□ Visa □ Master Charge (Bank tf ) 

I Acct. # 

- Signature 



JExp. Date . 



Print 
Name . 



, City_ 



cz _ 



.Zip 



D Send Me More Information ■■■ bm J 
October 1979 © BYTE Publications Inc 115 



(or voiceless) phonemes are those 
without vocal cord vibrations, where 
pitch might not be detected. These 
phonemes are perceived as hissing. 

All phonemes except the stop 
plosives produce their sound shortly 
after being selected. Vocal parameters 
at phoneme boundaries do not 
change abruptly, but smoothly from 
one set of values to the next. The 
exception to this is the stop plosives, 
which do not make any sound until 
the phoneme following it begins. 
When a stop plosive is selected, vocal 
parameters are adjusted for silence 
until the beginning of the next 
phoneme. At this time, the stop 
plosive phoneme explodes into the 
following phoneme. An example of 
this is the word kick. The phoneme 
sequence for this word is PAl, K, 12, 
K, PAl. The timing of these sounds is 
graphically depicted in figure 1. 

Phoneme symbols, with typical 
examples of English words in which 
they might be used, are provided in 
table 3. The English letter combin- 
ation that the phoneme replaces has 
been underlined. In addition, table 4 
shows phoneme sequences to produce 





Voiced 


Unvoiced 


Group Name 


Consonants 


B, D,G 


T, P, K, DT 


Stop Plosives I 




Z, ZH, V.THV, J* 


S, SH, F, TH, H, CH* 


Fricatives 




M t N, NG 




Nasals 




R, L, W, Y, ER 




Semivowels 


Vowels 


A*, E, 1, 0, U 
AW, EH, UH, AH, 
AE.OO, IU*, AY*, Y1* 







Table 2: Votrax phoneme groupings. The allophones (phoneme variations) marked 
with asterisks are phoneme variations which must be combined with another phoneme 
to complete the production of an English sound unit. 



PHONEME 



SOUND 



PAl 



12 



PAl 



-♦TIME 



SILENCE 



KI 



SILENCE 



K SILENCE 



-♦TIME 



Figure 1: Progression of stop plosive sequence. The top line shows the phonemes 
selected during a given instant, and the bottom line shows the sound produced during 
that instant. 



Omikron transf oirms TRS-80 
into a powerful business system. 



STANDARD DRIVES 8" Drives give you 5 
times the speed and 3 times the storage of 
your mini drives! Our system provides a 
standard Shugart interface so you can use 
either your 8" drives or ours. Omikron 
drives are enclosed in an attractive metal 
cabinet, and include a power supply. 

SOFTWARE CP/M* is the most popular 
operating system for microcomputers. But 
many high-level languages and advanced 
business programs cannot run with the 
special CP/M* designed exclusively for the 
TRS-80* The Omikron MAPPER with 
standard CP/M* allows you to expand your 
software capability to go beyond the few 
available TRS-80* compatible packages. 
TRS-80* with MAPPER 
out-performs systems 
costing $1000 
more! 



The MAPPER I and MAPPER II are plug- 
in modules. They don't require any circuit 
changes, are easy to install, and they don't 
interfere with the normal operation of your 
TRS-80* All your original software, includ- 
ing Level III BASIC will still run properly. 
Omikron products require 16KL II BASIC 
and the TRS-80* Expansion Interface. 

• • • 
MAPPER I is a memory management unit 
which adapts your TRS-80* to run stan- 
dard CP/M* Versions for both 5" and 8" 
drives are available. The package includes 
CP/M* software on 5" or 8" diskette, and 
documentation. 5" unit, $169. 8" unit, with 
adapter cable, $199. 



MAPPER II includes the MAPPER I pack- 
age plus a disk adapter module which 
allows both 5" and 8" drives to run on the 
same cable. Drive selection is under soft- 
ware control to permit easy file transfer 
between the drives. With cable, $249. 
CONVERSION -If you purchase MAP- 
PER I or II and plan to use only mini- 
drives, Omikron will transfer CP/M* files 
from 8" diskette to a 5." This allows you to 
run software previously available to only 
8" drive owners. $25 per mini-diskette. 
DRIVE - 8" drive, $849. Additional drive, 
$695. WARRANTY- 1 year on boards; 
90 days on drives. VISA/MasterCharge 
accepted. Prepaid orders given top priority. 

*CP/M is a TM of Digital 

Research. TRS-80 is 

a TM of Tandy 

Corporation. 




116 October 1979 © BYTE Publications Inc 



Circle 287 on inquiry card. 



ComputerLand 

Introducing the Personal Computing Shopping Centers 



SOFT SPOT 







A Storehouse of Knowledge 

Main Brain™ is your one-stop center for books, self-study courses 
and other educational media on personal computing. Self-study 
cassettes, video tape courses, "in-person" lecture programs and 
more is available to you from well-known publishers such as 
Sybex, Osborne and Associates, and Hayden. 

Main Brain™ has self-service instructions to assist you in choosing 
from a variety of desired multi-media products from "introduc- 
tory" through "hands-on" to "in-depth" levels. It's all available 
to you at ComputerLand's Main Brain™, your one-stop center 
for educational media on personal computing. 




c. 



^\ 



Of f-The-Shelf Software 

In the past few years, many fine personal computers have been 
available, but not much software to use with them. ComputerLand 
has now taken the lead to make personal computing software 
available to everyone with Soft Spot™, an exclusive, custom- 
designed, self-merchandising fixture. You can select off-the-shelf 
programs for personal use in finance, time-budgeting, education, 
sophisticated games, stock portfolio evaluation and much, much 
more. 

Soft Spot™ will assist you in quickly selecting the educational, 
recreational, and practical software you want, starting at $7.95 
from major suppliers like Apple Computer, Inc., Personal Soft- 
ware, Program Design, Inc., Commodore, Powersoft, Softape,and 
others. Stop in today at ComputerLand's Soft Spot™, and 
choose from a wide variety of the finest software available. 



Available at all participating ComputerLand stores . 



Huntsville, AL 
Phoenix. AZ 
Little Rock, AR 
Belmont, CA 
Dublin, CA 
El Cerrito, CA 
Hayward, CA 
Lawndale. CA 
Los Altos, CA 
Los Angeles, CA 
Pasadena, CA 
Sacramento, CA 
Saddleback Valley, CA 
San Bernardino, CA 
San Diego, CA 
San Diego East, CA 
San Francisco, CA 



San Jose, CA 
San Rafael, CA 
Santa Maria, CA 
Santa Rosa, CA 
Thousand Oaks, CA 
Tustin, CA 
Walnut Creek, CA 
Colorado Springs, CO 
Denver, CO 
North Denver, CO 
Fairfield, CT 
Hartford. CT 
Newark, DE 
Boca Raton, FL 
Ft. Lauderdale, FL 
Jacksonville, FL 
Miami, F L 



Tampa, FL 
Atlanta, GA 
Honolulu, HI 
Arlington Heights. IL 
Downers Grove, IL 
Mundelein, I L 
Niles, IL 
Oak Lawn, IL 
Peoria, IL 
Indianapolis, IN 
Overland Park, KS 
Louisville, KY 
Boston, MA 
Rockville, MD 
Grand Rapids, Ml 
Rochester, Ml 
Southfield, Ml 



Product availability may vary by regional location 



Bloomington, MN 
Hopkins, MN 
Independence, MO 
Springfield, MO 
St. Louis, MO 
Omaha, NE 
Nashua, NH 
Cherry Hill. NJ 
Bergen County, NJ 
Morristown, NJ 
Buffalo, NY 
Ithaca, NY 
Nassau County, NY 
Charlotte. NC 
Cleveland East, OH 
Cleveland West, OH 
Columbus, OH 
Oklahoma City, OK 



Portland, OR 
Harrisburg, PA 
Lehigh Valley, PA 
Paoli, PA 
Austin, TX 
Dallas, TX 

South West Houston, TX 
Houston Bay Area, TX 
Salt LakeCity.UT 
Tyson's Corners, VA 
Bellevue, WA 



Federal Way, WA 
Tacoma, WA 
Madison, Wl 
Milwaukee, Wl 
INTERNATIONAL 
Adelaide, Australia 
Brisbane, Australia 
Melbourne, Australia 
Perth, Australia 
Sydney, Australia 
Brussels, Belgium 



Burlington, Canada 
Calgary, Canada 
Toronto, Canada 
Winnipeg, Canada 
Copenhagen, Denmark 
Paris, France 
Manila, Philippines 
Singapore 
Stockholm, Sweden 
and other 
locations worldwide. 



ComputerLand 

■ WE KNOW SMALL COMPUTERS 
14400 Carolina St., San Leandro, CA (415) 895-9363 



© 1979 ComputerLand Corp., San Leandro, CA 
Circle 75 on inquiry card. 



BYTE October 1979 



117 



multisound units, referred to as diph- 
thongs. Again, the letters in the ex- 
ample word showing where the 
diphthong goes have been under- 
lined. To give examples of phonetic 
programming, some commonly used 
computer words have been listed in 
table 5. 

Basic Operation 

Output to the voice synthesizer is 
accomplished by executing a PRINT 
AT statement (or PRINT® for Level 
II), coupled with the device select/ 
deselect character. Referring to figure 
2, an imaginary box enclosing the last 
32 positions of the video display is 
shown. This box defines a window 
through which printed characters are 
sent to the voice synthesizer. The 
sending of a character to the syn- 
thesizer happens when the window is 
open. If the window is closed, any 
character printed within cannot affect 
the synthesizer. Opening and closing 
the window is controlled by printing 
a "?" within the window. The "7" 



printed inside the window is con- 
sidered a device select/deselect 
character. 

As phoneme characters are printed 
into the open window, they are also 
shifted into a 32-stage f irst-in first-out 
(FIFO) buffer. This buffer is in the 
synthesizer interface and is address 
mapped into the last 32 locations of 
the video-display refresh memory. 
Phoneme characters in this buffer 
determine which sounds the syn- 
thesizer produces. Each phoneme 
duration is timed by the synthesizer. 
The next phoneme character is 
removed from the buffer at the end of 
each cycle. This continues until the 
buffer is emptied. The synthesizer 
will continue to process the last 
character entered in the buffer. This 
last character should be a pause (or 
silent) phoneme. This will prevent 
any sound phoneme from being pro- 
duced while the synthesizer is in an 
unused state. 

It is a good practice to set up the 
synthesizer output command in a 



NEW POWER FOR YOUR APPLE. 
FROM MOUNTAIN HARDWARE. 



ROMPLUS+ 

Software in firmware. 

ROMPLUS+ allows you to add up 
to 6 Individually addressable ROM's 
or E PROM's to your Apple.* 
New Power. Keyboard Filter,™ 
a programmed 2K ROM adds 
over a dozen useful features 
to your Apple: 

• Upper/lower case letters plus 
printer output • Keyboard macros. 
Including BASIC and DOS commands. 

• Improved cursor control for editing. 

• Multiple user-defined character sets. 

• Colored or inverse colored letters. 

• Page switching. • Stop list and End list. 

• Copy one entire line at a time... 
and much more. 



m. 



Features: On board scratch-pad RAM. 
On-board control ROM handles programs 
longer than 2K, plus ROM select and 
memory allocations. Two TTL inputs for 
control or U/L "shift-key" operation. $169 
complete and tested. Including Keyboard 
Filter and full documentation. 
At your dealer. Now. 



* 




Mountain Hardware, Inc. 

LEADERSHIP IN COMPUTER PERIPHERALS 

300 Harvey West Blvd., Santa Cruz, CA 95060 (408) 429-8600 

•Apple is a trademark of Apple Computer Inc. 



subroutine. This subroutine should 
contain the following sequence of 
operations: 

• Open the window (print a "7" in 
the window). 

• Print a " " (use space bar) in the 
window to synchronize the synthe- 
sizer when it has been in an idle 
state (" " is a pause phoneme). 

• Print phoneme characters in the 
window in the sequence they will 
be voiced. 

Text continued on page 122 



Votrax 




Phonetic Symbol 


Key Word 


B 


_bat - ru b 


D 


ilad - raid 


G 


get - lo£ 


T 


lip - pal- asked 


P 


pack - flap - happy 


K 


Jlill - kick" 


DT 


butter 


Z 


zap - haze - pans 


ZH 


pleasure - azure 


V 


van - pave 


THV 


the - smooth - mother 


J* 


job - jazz 


S 


soup - ask - pass - city 


SH 


sheep - fish - action 


F 


fake - cuff - fjhone 


TH 


thing - math 


H 


hoop - _h ave 


CH* 


£heese - marcJi- matcJi 


M 


mat - dim 


N 


no - son 


NG 


ring - drink - shingle 


R 


race - hard - naif 


L 


low - late 


W 


wake - always - when 


Y 


yard - berry 


A* 


tame - pail - make 


E 


begf - be. - even 


1 


pit - in 


O 


for - torn - bold 


U 


move - school - June 


AE 


dad - plaid 


AW 


call - paw 


EH 


ready - leg 


ER 


thjrd - heard - churn - over 


UH 


around -jjndone - friction 


OO 


took - put - good 


III* 


you - music 


AY* 


jade - made - claim 


Y1* 


you - music 



Table 3: List of Votrax phoneme symbols 
with examples of the occurrence of the 
corresponding sound in English words. 
The English letter combination the 
phoneme replaces is indicated. The 
allophones (see table 2) are marked with 
asterisks. 



118 



October 1979 © BYTE Tublications Inc 



Circle 258 on inquiry card. 



m 








The line your reputation should be on. 



When a computer supplier or retailer sells equipment, 
his reputation is on the line. 

And when the customer has to justify his investment 
decision, his reputation is on the line too. 

So, naturally, everybody's a lot better off on a reliable 
line. Like ours. 

With a name like Industrial Micro Systems, we 
wouldn't think of building anything short of industrial 
standards . . . even our S-100 products. 
No short cuts or jumpers. 

All of our boards — CPU, memory and controllers — 
are made from real fiberglass instead of a plastic 
substitute. And contacts are gold plated over a copper- 
ion barrier of nickel. 

Every disk enclosure features a heavy-gauge steel 
chassis, and a heavy duty power supply. Built to take it. 

Then come our complete systems. Aside from the 
disk drives, we manufacture every component that goes 
into them. Even the desk that goes around them. So 



we can vouch for rugged reliability inside and out. 
Two complete systems: 

Our new Series 5000 features a megabyte of storage 
on integral mini-floppies. And our Series 8000 is all 
business too. It can handle up to three megabytes on 
8-inch drives. A large library of software, growing daily, 
includes CP/Mf PASCAL, and FAMOS?* 
Breaking the 64k barrier. 

Using Industrial Micro Systems 32k memory boards 
with Memory Management, our systems can handle 
up to 576k RAM internally. 
More in store. 

That's not the end of the line. It's growing all the time, 
along with our reputation for quality. Put your reputation 
on the line. Our line. 

For more details just call or write. Supplier/dealer 
inquiries welcomed. 

Industrial Micro Systems, 628 N. Eckhoff, Orange, 
CA 92668. (714) 633-0355. 



INDUSTRIAL MICRO SYSTEMS 

The. great unknown. 
*Trademark of Digital Research **Trademark of MV/T Systems 



Circle 169 on inquiry card. 



WINDOW IS 32 
LOCATIONS 
WIDE -^^ 



















Table 5: Votrax phoneme and ASCII representations of common words in computer 
applications. The ASCII coding may be entered directly into programs for vocal 
output. 



VIDEO DISPLAY SCREEN 

Figure 2: Location of the synthesizer out- 
put window on the video display screen. 
The voice synthesizer continually scans 
the area of memory corresponding to that 
region of the screen. When the vocal out- 
put is selected (by printing a question 
mark in the window), any character 
printed in the window is interpreted as a 
phoneme representation and is spoken. 



Symbol 
Combination 


Key 
Words 


A1, AY 


tame 


Y1, III, U1 


you - unit 


AH1, 12, E1 


climb - cnme 


UH1, AH2, E1 


wh[te - night 


01, U1 


boat - show, 


AH1, U1 


cow - sound 


AH2, UH1, U1 


mouse - about 


01, UH1, E1 


toy - point 


A2, EH1 


fare - pear 


E1, 11 


here - beer 



Table 4: Phoneme sequences to produce 
diphthongs, wherein 2 vowel sounds oc- 
cur adjacently, with no intervening conso- 
nant. The English letters replaced by the 
phoneme sequence are indicated. 



BUFFER 


B 
B 


UH3 
8 


UH2 
7 


F 
F 


ER 
i 


(VOTRAX) 
(ASCII) 








FULL 


F 
F 


OOl 
% 


OOl 
% 


L 
L 


(VOTRAX) 
(ASCII) 










RUN 


R 
R 


UH3 
8 


UH1 

6 


N 
N 


N 
N 


(VOTRAX) 
(ASCII) 








STOP 


S 

S 


T 
T 


AH1 


UH3 

8 


P 
P 


(VOTRAX) 
(ASCII) 








READY 


R 
R 


EH1 
3 


EH3 
5 


D 
D 


Y 
& 


(VOTRAX) 
(ASCII) 








SAVE 


S 
S 


S 
S 


Al 
@ 


AY 


Y 

& 


V 
V 


(VOTRAX) 
(ASCII) 






HELLO 


H 
H 


EH1 
3 


UH3 

8 


L 
L 


UH3 
8 


02 
[ 


Ul 
U 


(VOTRAX) 
(ASCII) 




TALK 


T 
T 


AW2 
2 


L 
L 


K 
K 


(VOTRAX) 
(ASCII) 










YES 


Yl 
Y 


EH2 
4 


EH1 

3 


S 
S 


S 
S 


(VOTRAX) 
(ASCII) 








NO 


N 
N 


UH3 

8 


Ol 
O 


Ol 
O 


Ul 
U 


(VOTRAX) 
(ASCII) 








CANCEL 


K 
K 


AEl 
9 


EH3 
5 


N 

N 


s 

s 


UH3 
8 


L 
L 


(VOTRAX) 
(ASCII) 




ADD 


AEl 
9 


AEl 
9 


EH3 
5 


D 
D 


(VOTRAX) 
(ASCII) 










SUBTRACT 


S 

s 


UH2 

7 


B 
B 


PAO 



T 
T 


R 
R 


AEl 
9 


AEl K 
9 K 


PAO T (VOTRAX) 
T (ASCII) 


MULTIPLY 


M 
M 


UH2 
7 


L 

L 


T 
T 


UH3 
8 


P 
P 


L 
L 


AH1 Y 
; & 


(VOTRAX) 
(ASCII) 


DIVIDE 


D 
D 


12 
! 


V 

V 


AH2 
A 


AH1 
; 5 


EH3 


13 

D 


AY D 
(ASCII) 


(VOTRAX) 


EQUALS 


El 

E 


AY 


K 
K 


W 
W 


OOl 

°/o 


L 
L 


Z 
Z 


(VOTRAX) 
(ASCII 




ENTER 


EH1 

3 


N 
N 


T 
T 


ER 

/ 


(VOTRAX) 
(ASCII) 










ZERO 


Z 
Z 


AY 


13 


R 
R 


UH3 
8 


02 

1 


Ul 
U 


(VOTRAX) 
(ASCII) 




ONE 


w 
w 


UH3 
8 


UH2 

7 


UH2 
7 


N 
N 


N 
N 


(VOTRAX) 
(ASCII) 






TWO 


T 
■ T 


IU 
( 


IU 
( 


Ul 
U 


Ul 
U 


(VOTRAX) 
(ASCII) 









Table 5 continued on page 122 



A Challenge to Software Authors 

The MicroNET division of CompuServe* is offering an innovative, new concept of program marketing and distribution for per- 
sonal computer software. Because of this we are continually looking to expand our already extensive library of personal com- 
puter programs. This is an unique opportunity for authors of the highest quality programs only. We will consider highly 
human-engineered software with a wide range of appeal to users, such as: 

• Educational Programs • Personal and Home Applications • Unique Small Business Programs • Data Bases • Enter- 
tainment • Hobby Applications 

If you think your program qualifies, send a brief description of the program — including its operating 
environment, special features and benefits to the user. If your program appears to meet our standards, 
we will contact you with details of our licensing agreements. 



Are you good enough to qualify? 



' See ad on page 51 



Personal Computing Division of CompuServe 
5000 Arlington Centre Blvd. 

Jm /mm mm mm — m~ Columbus, Ohio 43220 

MicruWET 



120 October 1979 © BYTE Publications Inc 



Circle 54 on inquiry card. 





We want you to 
always have 
^a perfect 
record. 

Ours. 



Maxell has the best quality control record in the 
industry. So we're certain to always give you the best Floppy 
Disks in the world. 

Some reasons why Maxell is so good. 

Every Maxell Floppy Disk is guaranteed to be perfect. 
We tolerate no its, ands, buts, excuses, or dropouts. It's that 
simple . . . and that tough. 

In fact we have developed innovative manufacturing 
techniques that actually slowdown certain processes, 
sacrificing speed to gain quality. And our unique binder 
system, developed by our own engineers, applies the 
magnetic oxide with amazing uniformity and surface 
smoothness. 

Ten out of ten: a perfect record. 

Of course, Maxell Floppy Disks conform to ISO and 
IBM specifications. They also have been recommended by 
major OEMs, because Maxell works best with their hardware. 

Circle 212 on inquiry card. 



So open a box, and know in advance that it holds ten 
perfect floppys. You're right to not settle for anything less. 
Neither do we. 

Maxell offers the full range of Floppy Disks, from 
standard 8-inch to 5 14 -inch, plus Data Cassettes. 
Dealer inquiries invited. 




maxEll 

DATA PRODUCTS 

The Quality Alternative 



Maxell Corporation of America, Data Products Group 
60 Oxford Drive, Moonachie, NJ 07074 Tel. [201] 440-8020 

BYTE October 1979 121 



Table 5 continued from page 120: 



THREE 


TH 


TH 




R 
R 


E 


Y 


(VOTRAX) 
(ASCII) 










FOUR 


F 
F 


Ol 
O 




Ol 
O 


R 
R 


(VOTRAX 
(ASCII) 


) 










FIVE 


F 
F 


AH2 
A 


AH1 


13 


Y 


V 
V 


V 
V 




(VOTRAX) 
(ASCII) 




SIX 


S 
S 


11 
I 




13 


K 
K 


PAO 



S 
S 


(VOTRAX) 
(ASCII) 






SEVEN 


S 
S 


EH3 
5 


EH2 
4 


V 
V 


EH2 
4 


N 
N 


N 
N 




(VOTRAX) 
(ASCII) 




EIGHT 


A2 
) 


A2 
) 




AY 


Y 


T 
T 


(VOTRAX) 
(ASCII) 








NINE 


N 
N 


AH1 


EH2 
4 


Y 


N 
N 


(VOTRAX) 
(ASCII) 








TRS-80 


T 
T 


El 
E 


El 
E 


AH1 


UH3 

8 


R 
R 


EH1 
3 


S 
S 


S 
S 


PAO 



(VOTRAX) 
(ASCII) 




Al 
V* 


AY 


Y 


D 
D 


Yl 
Y 


(VOTRAX) 
(ASCII) 












VOICE 


V 

V 


01 



UH3 EH3 
8 5 


Y 
Y 


S 
S 


S 
S 


(VOTRAX) 
(ASCII) 






SYNTHESIZER 


S 
S 


11 
I 


N 
N 


TH 


UH3 

8 


S 
S 


AH1 


Y 


Z 
Z 


ER 

/ 


(VOTRAX) 
(ASCII) 


COMPUTER 


K 
K 


UH1 
6 


M 
M 


P 
P 


Yl 
Y 


IU 
( 


Ul 
U 


T 

T 


ER 
S 


(VOTRAX) 
(ASCII) 


SPEECH 


S 
S 


P 
P 


El 
E 


Y 


T 
T 


CH 
C 


(VOTRAX) 
(ASCII) 










PHONEMES 


F 
F 


02 
[ 


02 
t 


N 
N 


AY 


Y 


M 
M 


Z 
Z 


(VOTRAX) 
(ASCII) 




OPERATOR 


AH1 


P 
P 


ER 
/ 


Al 
V* 


AY 


T 
T 


ER 
s 


(VOTRAX) 
(ASCII) 







1000 PRINT AT 992,"? ";A$;" ?"; 

1010 PRINT AT 992," "; 

1020 RETURN 

1000 PRINTS 992,"? ";A$;" ?"; 

1010 PRINT@ 992," »; 

1020 RETURN 



Listing 1: Subroutines for synthesizer output in Radio Shack Level I (listing 1) and Level 
II (listing lb) BASIC. Line 1000 opens the output window in the video display, sends a 
pause, sends the phoneme characters stored in AS, sends another pause, and closes the 
window. Line 1010 fills the window with 31 spaces to blank out the display. Line 1020 
returns to the calling routine. 



1000 POKE 16383,63 : POKE 16383,32 

1010 FOR Y = 1 TO LEN (A$) 

1020 POKE 16383, ASC(MID$(A$,Y,1)) 

1030 NEXT Y 

1040 POKE 16383,32 : POKE 16383,63 

1050 RETURN 



POKE 16383,32 



Listing 2: Modified subroutine for synthesizer output for Level II BASIC only. Phoneme 
characters are taken out of A$ one at a time, and are POKEd into decimal location 
16383, the last location in the output window. This method of output does not disturb 
the cursor position, thereby saving overhead of restoring the cursor. 



Text continued from page 118; 

• Repeat last step if multiple 
messages are desired. 

• Print a " " in the window (a pause 
for silence at the end of the 
message). 

• Close the window (print a "?" in 
the window). 

• Print spaces in the window to 
blank out the characters in the 
video display that were sent to the 
synthesizer. 

An example of this sequence is shown 
in listing 1. A variation on this 
subroutine which Level II users might 
consider is shown in listing 2. 

The phoneme character strings 
which form words when sent to the 
synthesizer may be stored in several 
ways. The simplest way is to store 
the phoneme strings in a BASIC 
string variable and then call the voice 
driver subroutine. An example is 
A$ = "TUD@Y": GOSUB 1000. This 
transmits the phoneme characters for 
the word "today." DATA statements 
may be used to create a lookup table 
where the English spelling of a word 
is stored adjacent to the phoneme 
character string for that word. This 
would be useful, for example, in 
creating a name storage table for a 
game. A user could enter his or her 
name from the keyboard, and the 
computer could search the table for a 
name match and the associated 
phoneme characters needed to pro- 
nounce the name. It is a funny sensa- 
tion to be verbally addressed, by 
name, by a computer. 

Summary 

Merely reading about how to string 
phonemes together on a TRS-80 voice 
synthesizer cannot begin to convey 
the excitement your friends will ex- 
perience when your computer talks to 
them. Applications of a voice 
response system are exciting and 
plentiful. Any TRS-80 computer can 
add this voice synthesizer unit 
without any hardware modification. 
Changing existing application soft- 
ware to include voice response re- 
quires inserting only a few lines of 
code. Applications of computers in 
the home will surely come to rely on 
voice response as one of the most im- 
portant output devices.! 



122 October 1979 © BYTE Publications Inc 



Solve Problems By Simulation 



with simulations 
of many con- 
cepts, including 

• wave motion 

• flying objects 

• artificial 
intelligence 

• electronic 
circuits 

• and robot 
motion! 



.yjiOTifvvv 




J 



SIMULATION is a collection of 

the best articles from BYTE Magazine on this useful computer technique, 

plus exciting new material on the subject. 

simulation is the second volume in the Programming Techniques series 
on the art and science of computer programming from BYTE BOOKS. 
Editor Blaise W. Lifflck's selection of material furnishes not only background 
information from which the personal computer user is able to write 
and maintain simulation programs, but also actual programs for 
simulating many situations. Theoretical and practical applications of 
this technique are explored in articles dealing with specific aspects 
of simulation. 

Learn how to find solutions to your problems through SIMULATION. 



ISBN 0-931718-13-9 



$6.0 



II 



Buy this book at your favorite computer book 
store or order direct from BYTE BOOKS. 
Add 60c per book for postage and handling 




Hi 

nonius 




"BOOKS OF INTEREST TO COMPUTER PEOPLE * 

70 Main Street, Peterborough, New Hampshire 03458 



Circle 36 on inquiry card. 



BYTE October 1979 



Interfacing the S-100 Bus 
With the Intel 8255 



David L Condra 
161-C Springdale Rd 
Carrollton GA 30117 



Upon entering the world of microcomputers, technical 
terms such as data bus transceiver, parallel port, PDBIN, 
and strobe can appear to be hopelessly confusing. Conse- 
quently, many people avoid hardware and concentrate 
their efforts on software, feeling that it is easier to under- 
stand. However, as with software, if a hardware project 
is broken down into manageable modules, it can be easi- 
ly designed and understood. This is particularly true with 
the new large-scale integration devices that are available 
today. Use of these parts almost forces a modular ap- 
proach to a design problem. 

When faced with the job of designing an interface for a 
Diablo printer, I began looking at the available interface 
parts. I was amazed at how simple these devices can 
make an interface design project. In this article I will 
discuss the Intel 8255 programmable peripheral interface, 
and its use for interfacing to the S-100 bus. My objective, 
both in designing the interface and writing this article, is 
to reduce the problem to its simplest and most essential 
elements. 

I learn easily and enjoy the learning more when I am 
working on a specific application, rather than merely 
reading technical material or doing routine experiments. 
Therefore, this discussion is offered as a simple I/O 
(input/output) interface design that will allow the 
nonhardware-type person to build a working interface 
and gain some basic understanding of the functions of 
hardware in a microcomputer. This is not intended to be 
a straight hardware tutorial; additional study in some 
areas may be required to fully understand what is 
happening. 

Intel 8255 Description 

The 8255 is one of a later group of interface integrated 
circuits which Intel Corp introduced to support the 8080 
and related processors. It is a general purpose program- 



Use of large-scale integration parts forces 
a modular approach to a hardware 
design problem. 

iiiii iiiiii mi i mi miir 

mable device with 24 pins that may be programmed in a 
variety of configurations. A programmable device can 
have its operating characteristics modified by a processor 
command. For example, in a programmable serial inter- 
face, a single output command can set data rate, number 
of stop bits, and parity status. 

In a parallel interface part like the 8255, a single output 
command can define how the 24 programmable I/O pins 
are to be used. Such uses include input, output, hand- 
shaking, and interrupts. The 8255 is normally set up so 
that its control register looks like an I/O port to the pro- 
cessor. The processor sends a specific data byte to that 
port to determine the mode of operation. 

The 8255 modes are as follows: 

Mode 0: (Basic I/O) Each group of 12 I/O pins may be 
programmed in sets of 4 and 8 to be input or out- 
put. 

Mode 1: (Strobed I/O) Each group of 12 I/O pins may 
be programmed to have 8 lines of input or output 
with the remaining 4 pins in each group being 
used for handshaking and interrupt control 
signals. 

Mode 2: (Strobed Bidirectional Bus I/O) This is a 
bidirectional bus mode which uses 8 lines for a 
bidirectional I/O bus and 5 lines for handshak- 
ing. 

In addition, there is a bit set and reset feature that 
allows the setting and resetting of any 1 of 8 output bits 



124 October 1979 © BYTE Publications Inc 



PIN CONFIGURATION 



PIN NAMES 



PA3 C 


1 


^ 


40 


ZJ PA4 


PA2 C 


2 




39 


II PA5 


PAI C 


3 




38 


U PA6 


PAO C 


4 




37 


D PA7 


RD C 


5 




36 


H wr 


CS C 


6 




35 


H RESET 


GND C 


7 




34 


"3 DO 


Al C 


8 




33 


n di 


AO C 


9 


/iPD 


32 


U D2 


PC7 C 


10 


8255/ 


31 


D D3 


PC6 C 


II 


8255A-5 


30 


D D4 


PC5 C 


12 




29 


D D5 


PC4 C 


13 




28 


U 06 


PCO C 


14 




27 


=107 


pci C 


15 




26 


D vcc 


PC2 C 


16 




25 


D PB7 


PC3 C 


17 




24 


Zl PB6 


PBO C 


18 




23 


U PB5 


PBI C 


19 




22 


I] PB4 


PB2 C 


20 




21 


Zl PB3 



D7-D0 


DATA BUS (BI-DIRECTIONAL) 


RESET 


RESET INPUT 


CS 


CHIP SELECT 


RD 


READ INPUT 


WR 


WRITE INPUT 


AO-AI 


PORT ADDRESS 


PA7-PA0 


PORT A (BIT) 


PB7-PB0 


PORT B (BIT) 


PC7-PC0 


PORTC (BIT) 


VCC 


+ 5V 


GND 


OV 



POWER 
SUPPLIES 



-t* +5V 
-*> GND 



D7 THRU DO 



C 



BI-DIRECTIONAL 
DATA BUS 



BLOCK DIAGRAM 



\ DATA BUS f 
J BUFFER \, 



RO 
WR 
Al 
AO • 
RESET 



-s<3 




READ/ 
WRITE 
CONTROL 
LOGIC 







8-BIT 
INTERNAL 
DATA BUS 



GROUP II 
CONTROL 



C 



/ \ PORT C /" 

\ / ^ PER v 



CS 



A GROUP I / \ 

) PORTA f ) 

V ( 8 ) \ / 



I/O 

PA7 THRU 

PAO 



f t* PORT C f 

\ J LOWER ^ 



1 



I/O 

PC7 THRU 

PC4 



\ GROUP II A 

) PORT B ( 

v (8) V 



} 



I/O 

PC3 THRU 

PCO 



:> 



I/O 

PB7 THRU 

PBO 



Figure 1: Configuration and names of pins of the Intel 8255 programmable peripheral interface and block diagram of its functional 
parts. 



October 1979 © BYTE Publications Inc 125 



Circle 175 on inquiry card. 



Writin' easy 
with 



TM 



EasyWriter 

a 

word processor 

for your 

Apple II 

Let's face it, there are many good 
word processing programs for other 
micro computers « they're almost a 
dime a dozen. But a good word 
processor for your Apple computer 
simply hasn't been written yet -- 
that is, until now. 

If you've been hunting high and 
low for a word processor you can 
live with, try on EasyWriter - a 
word processor you can't live 
without. 

You saw it at the West Coast 
Computer Faire. If you liked it then, 
you'll love it now. It's clean. It's 
easy. It's EasyWriter, and it's just 
what you've been waiting for! 

From the people 

who brought you 

WHATSIT*.... 



Information 
Unlimited 
Software 




Inc. 



(219)924-3522 
1 46 N. Broad St., Griffith, IN 4631 9 

WHATSIT is <i (rmtt'm.irk of Computer Heaclwiire 
EasyWriter is a TRADEMARK OF Cap'n. Software 



using a single output instruction. Figure 1 is a diagram 
showing pinouts and a block diagram of the Intel 8255. 
As can be seen, the 8255 combines many logic functions 
which would have previously required substantial design 
effort themselves. Since the 8255 is available in a single 
package form, however, it becomes essentially a 1-piece 
parallel interface requiring very little external logic. 

S-100 Bus Description 

At first glance, the S-100 bus with its 100 lines is quite 
overpowering. However, if one looks only at the signals 
needed for a specific application, it becomes much more 
understandable. For example, in the application of inter- 
facing the 8255, we need only: 

• Lower 8 address lines (A0 thru A7). 

• 8 data-in lines (DIO thru DI7). 

• 8 data-out lines (DO0 thru D07). 

• 2 status lines: 

(1) SINP (input). 

(2) SOUT (output). 

• 3 contr ol line s: 

(1) PWR (processor write). 

(2) PDBIN (processor data bus input). 

(3) POC (power on clear). 

Note: The bar above some signal names indicates 
that these signals are logically active when 
low; other signals are active high ( + 5 V). 

The reason that you see more bus lines used on most 
I/O boards is that S-100 boards are usually designed to 
be very flexible and to serve multiple functions; therefore 
you find I/O boards using clocks, interrupts, and other 
functions. Since, however, our objective is to keep things 
simple, we will confine this application to the bus lines 
listed above. 

S-100 to 8255 Interface Design 

We begin our design at the 8255. After examining the 
various modes in which it can operate and determining 
that its output and input capabilities are sufficient, it 
becomes a straightforward matter of determining what 
signals the 8255 needs to function and how we can obtain 
them from the S-100 bus. The signals which we need to 
generate for the 8255 are as follows: 

• A CS (chip select) signal to turn the 8255 on. 

• A0 and Al signals to select 1 of 4 ports (A,B,C, 
or control). 

• Da ta c ontrol on pins DO thru D7. 

• A WR (write) signal to tell the 8255 to take the 
output data from the processor bus and send it out 
to the appropriate port(s). 

• A RD (read) to take input data from the appro- 
priate port and put it on the processor bus. 

• A reset signal which clears the 8255 internal 
registers. 

Our problem becomes how to generate these signals 
using the S-100 bus lines defined above. 

Text continued on page 129 



126 October 1979 © BYTE Publications Inc 



iff**** 



,opu\arse 



Jf&mt 



S8.00 



,/jgfe 




ffiK 



E3 



ISBN 0-931718-07-4 

Buy this book at 
yourfavorite com- 
puter bookstore 
or direct from 
BYTE BOOKS.™ 

Add 60<t per book for 
postage and handling 



The marvelous 

computer projects that 

Steve Ciarcia has constructed in his 

cellar are explained in detail so that you 

can make your microcomputer perform the same 

useful functions. Each article is a complete tutorial, 

presented in such an easy-going style that even 

beginners can understand and enjoy. 

"BOOHS OF INTEREST TO COMPUTER PEOPLE" 

70 Main street Peterborough, New Hampshire 03458 



Circle 36 on inquiry card. 



BYTE October 1979 127 



Turning computer programmers 

into computer 



zz/iBlKw 




EDITEO E^ 
CHRISTOPHER R MORGAN 



composers! 



For the first time: 
Hard-to-obtain 
computer music 
material has been 
collected into one 
convenient, easy-to- 
read book. 



The BYTE Book of 
Computer Music com- 
bines the best from 
past issues of BYTE 
magazine with exciting new material 
of vital interest to computer experimenters. 

The articles range from flights of fancy about the reproductive 

systems of pianos to Fast Fourier transform programs 

written in BASIC and 6800 machine language. Included in 

this fascinating book, edited by Christopher P. Morgan, 

are articles discussing four-part melodies, a practical music 

interface tutorial, electronic organ chips, and a remarkable 

program that creates random music based on land terrain maps! 



ISBN 0-931718-11-2 



$1000 



Buy this book at your favorite computer book 
store or order direct from BYTE BOOKS 

Add 60C per book for postage and handling 




BITE 

earns 




BOOKS OF INTEREST TO COMPUTER PEOPLE 



70 Main Street Peterborough, New Hampshire 03458 



128 BYTE October 1979 



Circle 36 on inquiry card. 



AO THRU AI5 



DO THRU D7 




STATUS |5ut} 



IN /OUT INSTRUCTION CYCLE 



Ml 



Tl 



1 



1 



T2 



/ 



T3 



o. 



\ 



T4 



X 



M2 



Tl 



.1 



z 



T2 T3 



Q. 



r\ 



FETCH 

INSTRUCTION 
BYTE 2 



M3 



Tl T2 T3 



X 



::x 



Ml 



Tl 



I/O DEVICE NUMBER 



/ 



r 



\ 



FETCH INSTRUCTION 
BYTE I 

Figure 2 : Timing diagram showing signals o n the S-100 bus during a data transfer instruction 



EXECUTE INPUT 
OR OUTPUT 
INSTRUCTION 



ONLY DURING 
INPUT CYCLE 



r 



■ONLY DURING 
OUTPUT CYCLE 



\ 



An understanding of timing diagrams is 
essential in designing any hardware in- 
terface, 
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiifiiiiniiiiiiiiiiiiiiiiiiiiii 

Chip Select Signal 

The CS (chip select) signal is basically an on/off 
signal for the 8255. To avoid stray data being output or 
input when not desired, the 8255 device is kept disabled 
until the processor commands that the data be input or 
output through one of the 8255's ports. To do this, we 
must understand the definition of the S-100 bus signals 
which we need to use. This is best explained through the 
use of a timing diagram as shown in figure 2. 

In most respects the S-100 bus timing is based on the 
8080 processor signals. These diagrams indicate the state 
of the bus lines with respect to time and their interaction 
with each other. Most confusing, at first glance, are the 
data and address signals which appear to be high and low 
at the same time. This, of course, merely represents the 
idea that some of the bits may be high and some may be 
low when valid and active. 

Starting at the bottom of the timing diagram, we see 
that the S-100 status signals SINP and SOUT are inactive 
in a low-logic state anytime except during the third 
machine cycle of an input or output instruction, respec- 
tively. By using a simple OR gate (such as the one shown 



as IC2a in the circuit diagram of figure 3), we can turn on 
the 8255 programmable peripheral interface whenever 
the SINP or SOUT signal is high. The inverters ICla and 
IClb are used for convenience and to minimize the 
number of integrated circuit packages used. They also 
serve as bus receivers, allowing these signals to drive 
other circuitry on the same board. 

The SINP and SOUT signals could be used to turn on 
the 8255 every time the processor executes an input or 
output instruction; however, we want the 8255 to pass 
data only when it is specifically addressed. To be more 
exact, we want the 8255 to take action only when a 
specific port on it is addressed by the processor. 
Therefore, we need to know when the processor is ad- 
dressing one of these ports. 

The upper and lower bytes of the address bus lines will 
contain the address of the I/O port during the third 

Table 1: Power supply connections for integrated circuits in figure 3. 



Number 


Type 


+ 5 V 


GND 


IC1 


"74LS04 


14 


7 


IC2 


74LS00 


14 


7 


IC3 


DM8131 


16 


8 


IC4 


DS8833 


16 


8 


IC5 


DS8833 


16 


8 


IC6 


/tPD8255 


26 


7 



October 1979 © BYTE Publications Inc 129 



-1 
< 



V lHOd 



a lHOd 



D lHOd 




Figure 3: Schematic diagram of an interface circuit using the 8255 device. All numbered connections refer to pins on the S-100 bus. A 
suitable power supply is assumed, with connections for integrated circuits given in table 1 . 



130 October 1979 © BYTE Publications Inc 



WHEN THE FUN AND GAMES ARE OVER y ou sh o U id„, 

have to surrender to the built-in limitations of your microcomputer. With Outpost 
11, you won't. When it's time to get down to business, Outpost 11 performs like a 
soldier. It's a ruggedly-built unit which will do much of your serious computing in a 
stand-alone mode. And so much more. Consider: develop your own software usinq 
available BASIC or STRUBAL+; collect, process and store data from remote sensors- 
batch data to or from a host computer to cut time-sharing costs; or, communicate 
with a remote host on-line in an interactive mode; add on communications and con- 
trol modules; run a small automation control system; 
integrate with a distributed processing system; 
etc.; etc.; etc. All this and more at only $2,595, 
suggested retail price. See Outpost 1 1 
at a dealer listed or write us for the 
name of a dealer near you. 
t ]£G&2) Corporation, 
4301 Poche Court West, 
New Orleans, La. 70129 




THE SERIOUS MICROCOMPUTER 



ci/rpesr// 



Circle 362 on inquiry card. 



Dealers: ATLANTA, GA, Magaro and Associates — 404-252-6609, Professional Indexing — 404- 
572-4177 •BEAVERTON, OR, DataTools International - 503-645-4604 • BEND, OR, Control Indus- 
tries - 503-389-1969 • COOKEVILLE. TN, Cumberland Computers - 615-526-7651 • DADE CITY, 
FL, Sabatelli Computer System Inc. - 904-567-7777 • DALLAS, TX, Eclectic Corp. - 21 4-358-1307 

• DES MOINES, IA, H. Allen Hanna - 515-283-5130 • ELK GROVE VILLAGE, IL, Kramer DataPower 
Inc. - 312-894-0554 • GREENVILLE, SC, Plus Inc. - 803-242-9090 • HOUSTON, TX, Eclectic 
Corp. - 713-228-7798 • IDAHO FALLS, ID, Great Plains Computer Co. - 208-529-3210 • LONG 
BEACH, CA.CTI Data Systems Inc. -213-426-7375 • MOBILE, AL, Railway Express - 205-661-8889 

• NEW ORLEANS. LA. TANO Corp. - 504-254-3500 • NEWTON CENTRE, MA, Daner-Hayes Inc. - 
617-969-4650 • PARKER, CO, Western Marketing Assoc. - 303-841-2788 • SALT LAKE CITY, UT, 
Home Computer Store - 801-484-6502 • SAN JOSE, CA, PBC Associates - 408-377-7001 • 
SEAFORD, DE, Robert Underwood - 302-629-8438 • SEATTLE, WA. Empire Electronics - 206- 
244-5200 • WALTHAM, MA, Computer Mart Inc. - 617-899-4540 • WESTFORD, MA, Thorstensen 
Labs - 617-692-2051 • ONTARIO, CANADA, Combined Systems - 416-549-2900 • GOUDHURST, 
KENT, ENGLAND, Warren Woodfield Assoc. Ltd. -05-803-590 • DEALER INQUIRIES INVITED - 
504-254-3500. TWX 810-591-5229 

BYTE October 1979 131 



machine cycle of an I/O instruction. Therefore, what we 
want to do is decode the lower 8 address lines con- 
tinuously. When one of the ports on the 8255 is selected, 
we want an enable signal which we can combine, using a 
logical AND, with the status signal to turn on the 8255. 

A simple method of decoding the address bus is to use a 
comparator (such as the 6-bit comparator 8131) which 
will take the enable pin (pin 9) low when the input signals 
from the bus match the pattern set as the port address. In 
this case, we are using only the upper (most significant) 6 
bits of the port address, since the lower 2 bits will be used 
to select 1 of 4 ports on the 8255 itself. 

We can set up the port address by tying the appropriate 
lines on the 8131 comparator to either high or low-logic 
levels as required to match the address. We now have cir- 
cuitry which will provide a CS (chip select)signal 
whenever the processor is in an input or output instruc- 
tion cycle, and whenever any of the port numbers assign- 
ed to the 8255 have been addressed by the processor. 

Address Lines Al and AO 

As can be seen, pins 9 and 8, carrying low-order 
address signals AO and Al, can now be tied directly to the 
lines Al and AO on the S-100 bus. This will allow the pro- 
cessor to select port A, B, C, or control function. 

Data Transfer 

We have now enabled the 8255 at the appropriate time. 
The remaining task is to supply the data to the data pins 
on the 8255 or retrieve the data from the appropriate data 
pins on the 8255 when the processor is doing an output or 



Now learn the 
electronics 

of microprocessing. 



Heath H-8 Computer 
and H-9 Video Terminal. 




Enjoy the challenge and 
excitement of learning about 
microprocessing hardware— how 
it functions and how to repair it - 
by actually building your own 
equipment as you learn. 

National Technical School's Microcomputer Division offers three such 
learn-by-doing courses that you can enjoy at home, in your spare hours. Each 
combines clear, concise lessons with Heath and NTS-designed digital 
equipment -a combination our students tell us makes for "lively" home study. 

Find out more about these valuable NTS Microcomputer Courses. Send today 
for our colorful 65-page catalog - it's FREE! 
No obligation. No salesman will call. Approved for veteran training. 



NATIONAL* 



'SCHOOLS 



Clip And 
Mail Today! 



TECHNICAL-TRADE TRAINING SINCE 1905 

Resident and Home-Study Schools 

4000 South Figueroa St.. Los Angeles, Calit. 90037 



NATIONAL TECHNICAL SCHOOLS Dept. 252-109 

4000 South Figueroa Street • Los Angeles, California 90037 
Please rush your FREE 65-page color catalog 

Name 

Address 

City 

State ZIP 

□ Check if interested in G.I. Bill information. 

D Check if interested ONLY in classroom training in Los Angeles. 



input instruction with this port. 

The data pins on the 8255 are bidirectional (ie: they 
will take data from the bus and output it to the appro- 
priate port when the WR signal is active, or will take data 
from the port and put it on the bus data lines when the 
RD signal is active). Since the S-100 bus is divided into 8 
unidirectional lines of data in (DI0 thru DI7) and 8 
unidirectional lines of data out (DO0 thru D07), we need 
a means of tying both of these sets of lines to the 8 data 
pins on the 8255 and selectively enabling either the S-100 
data input or data output bus lines. 

An easy way to accomplish this is with the 8833 bus 
transceiver integrated circuit which can be connected as 
shown in the circuit diagram of figure 3. When pin 9 on 
the 8833 is active, the data will be passed from the data 
output bus to the 8255, and when pin 7 is active, the data 
will pass from the 8255 to the data input bus of the pro- 
cessor. The S-100 bus provides 2 simple signals with 
which to achieve this result. 

The W R Sig nal 

The PWR signal, as shown on the timing diagram 
(figure 2), will go low when valid data is presented on the 
data output lines. We can use this signal to enable the 
8833 bus t ransc eivers and to strobe (send a pulse to) the 
8255 pin WR to pass the data to the appropriate 
output port. 

The RD Signal 

Conversely, we see from the timing diagram that the 
S-100 signal PDBIN is active in a high-logic state when 
valid data can be accepted on the data input line. We can 
use this signal to generate the RD signal for the 
8255 to pass the data from the appropriate 8255 input 
ports to the data pins, and to enable the 8833 bus 
transceivers so that the data is passed directly to the data- 
in bus in the processor. 

One other provision which we w ant to include in our 
design is that the RD and WR signals should not 
be allowed to go active unless the CS (chip select) 
signal is also active. This provision is primarily for the 
purpose of keeping extraneous data which might be on 
the 8255 data lines from being transferred to the data-in 
(DI) bus at any time that the PDBIN signal is active. We 
can achieve this by using t he A ND gates IC2c and IC2d to 
generate the RD and WR signals only when the 
8255 has been selected and the appropriate PWR or 
PDBIN signal is simultaneously active. 

Reset Signal 

This leaves us with one simple signal which is needed 
by the 8255. Since the 8255 can start in an undefined state 
when power is first supplied to it, a reset signal is 
necessary to bring it to a known state for further use. For- 
tunately the S-100 bus provides us with a very convenient 
POC (processor on clear) signal that can be tied through 
an inverter to the reset pin. This arrangement will apply a 
reset signal to the 8255 whenever power is applied to the 
processor. 

We have now designed a simple but powerful interface 
circuit. As you can see, the parts count of 6 integrated cir- 
cuits is quite low. The circuit could conceivably be put on 
a simple piece of perforated circuit board and hung onto 
an existing S-100 board. The total cost should not exceed 



132 October 1979 © BYTE Publications Inc 



Circle 279 on inquiry card. 



Announcement I. The first eight Personal 
Programs® from Aladdin Automation are 
waiting for you now at your neighborhood 
computer retailer or direct from Aladdin. 

Now you can get yourfull share of Aladdin 
magic in every one of these Personal 
Programs® : 



Math-Ter-Mind® A delightful, 
educational learning experience 
for your pre-school child. Watch 
the smile on your child's face as a correct 
answer makes the mathematician smile on the 
screen before you. A nursery song also serves 
as a reward for learning elementary addition 
and subtraction. With Aladdin's Math-Ter- 
Mind® your child's pathway to learning will be 
fun-filled ... for both of you. Math-Ter-Mind®. 
The first release from the Aladdin Education® 
Series, (nursery song currently available only 
on Apple 1 1® program) 

Lunar Lander In a controlled 
descent, you're just seconds away 
from your first landing on the cold, 
forbidding surface of the moon. As you 
navigate your delicate spacecraft downward to 
the safety of Moonbase. you must be ever 
watchful of the dangers rising to meet you with 
each passing moment: a fuel level fast 
approaching zero; deadly meteor showers that 
come from any direction, at any time; sheer- 
faced rock cliffs and rough terrain; choosing 
the correct landing pattern and rate of descent. 
Aladdin's Lunar Lander. Your chance to reach 
out and touch the stars . . . without leaving the 
safety and comfort of your own chair. The first 
release from the Aladdin Simulation® Series. 



Craps All eyes in the casino are 
on you. The dice are in your 
hands. Lady Luck sits at your 
shoulder, whispering . . . "Just one more time. 
Try your luck just one more time." You throw 
. . . and watch the dice tumbling on the 
screen. With Aladdin's Craps you play against 
the computer, so it's awfully tough to win. But 
whenyou do. it's an experience you're likely 
never to forget. Craps. An exciting, heart- 
pounding Personal Program®. The first release 
from the Aladdin Las Vegas® Series. 

Mastermind A challenging game 
of intrigue, centuries old. that will 
give you full chance to test your 
powers of logic, deduction and reason. And 
test them you will, as you try and solve the 
computer's puzzle, using clues as they're 
provided one-by-one. You control the degree of 
difficulty in this classic Personal Program® that 
offers one simple, yet all-consuming challenge: 
beat the Mastermind in a direct, one-on-one 
battle of wits. Aladdin's Mastermind. The first 
release from the Aladdin Old Favorites® Series. 

Tic-Tac-Toe Five different levels 
of difficulty allow a person of any 
age or skill to take part in this 
relaxing, enjoyable game that can act as a 
learning tool, as well. Level I. for example, is 
suitable for children and is excellent also for 
teaching simple mathematics. The computer 
plays just about perfectly at Level V. Just 
about, that is, so go ahead and take your best 
shot. See if you can beat the computer in this 
traditional favorite of young and old alike. 
Tic-Tac-Toe. Another first release from the 
Aladdin Old Favorites® Series. 



Jungle Island® Shipwrecked in a 
raging storm at sea, miraculously 
you survive only to find yourself 
stranded on a seemingly deserted jungle 
island. Without food, water or supplies of any 
kind, you begin to try and find your way to 
safety. The computer will be your eyes and 
ears as you explore your jungle island and all 
the mysteries and dangers that lie in wait for 
you. Jungle Island®. A captivating first 
release from the Aladdin Adventure® Series. 

Stix® Aladdin's Stix® can be 
played with 2 to 5 piles of sticks 
and between 1 and 19 sticks in 
each pile. The object: to be the one to pick up 
the last stick. Sounds simple? Yes. but you're 
playing against the computer. Take heart, 
though, because you can control the degree of 
difficulty in this update of the ancient game of 
Nim. Stix®. Another first release from the 
Aladdin Old Favorites® Series. 

Super Pro Football® Here's your 
chance to be more than just an 
armchair quarterback. With 
Aladdin's Super Pro Football® you can replay 
any Super Bowl game, from the first, between 
Green Bay and Oakland, to last year's classic 
victory by Pittsburgh over Dallas. For once you 
can turn back the clock and go for that one big 
play that made the difference between victory 
and defeat in pro football's biggest game of all. 
Super Pro Football®. The first exciting release 
from the Aladdin Super Pro® Series. 

Visit your neighborhood computer retailer or 
contact Aladdin direct to get your full share of 
the magic in Announcement I. the first eight 
Personal Programs®from Aladdin Automation. 




Math-Ter-Mind 8 Lunar Lander Craps 



Mastermind Tic-Tac-Toe Jungle Island 9 Stix® 



Super Pro Football 8 



Welcome to the All-New World of 
Aladdin. And Get Ready to 
Make Your Own Magic 

Circle 3 on inquiry card. 




A/ODM AJIOM/OTION, NC. 
A/ODN COMPUTE CORP. 

3420 Kenyon Street, Ste. 1 31 . San Diego, CA 921 1 



Copyright 1978 by Aladdin Automation 



Design and copy by Campbell Marsh Graphic Communications 




Photo 1: The author's prototype of the interface circuit, built on an 5-100 prototype board. The bus transceiver and decoding inte- 
grated circuits are located on the bottom of the board. An extra 7400 NAND gate package was added for a special application. 



Any 1 line on the S-100 bus must be con- 
nected to only 1 TTL integrated circuit 
on any 1 circuit board. 

iiiiiiiiiiiiiii ■ ■ in ■ mi iiiiii ■ ■ ■ tiiiii 



It's 



[SIUll 



LOGIC 

for graphics! 



3D GRAPHIC SOFTWARE 

for Apple 1 1 , TRS-80, 8080 and Z80, 
M6800, and BASIC. 

Plus Graphic Drivers for Dazzler, Matrox 
ALT-256 and 512, and Vector Graphics. 



HARDWARE 

Matrox ALT-256 and 
ALT-512S100 displays, 
andthenewSubLOGIC 
50/T80 Hi-Res for 
TRS-80. 



We re open 9 to 6. Monday 
thru Friday, central time. 
Give us a call. 




The engineering & graphics people 
(217)359-8482 ■ ^^ A 



LOGIC 

Box V, Savoy, I L 61874 



$20. This mounting would not be advisable, due to space 
and maintenance problems. I would recommend using an 
S-100 prototype board such as one provided by Vector 
Electronics, which has provisions for a voltage regulator 
plus power and ground distribution buses on board. 

The wiring can then be done point-to-point with wire 
wrap. There will also be plenty of available room and 
power for additional circuitry on board. Circuits for 
other functions would be very easy and economical to 
add, since we have already provided for data bus 
transceiving, and we can use many of the same bus inter- 
face integrated circuits to add additional circuitry to the 
board. 

One caution — be aware that the S-100 bus expects to 
see only 1 TTL (transistor-transistor logic) "fan-out" load 
per board, which means that any given bus line must be 
tied to the input of only 1 TTL device on the board. The 
bus line should not be driving 2 or more TTL devices 
simultaneously. Therefore, if additional circuitry uses the 
same bus signals, a bus receiver (7404 hex inverter) or 
driver (8T97 3-state buffer) must be used between the bus 
lines and the board circuitry. 

Check-Out and Troubleshooting 

One problem in trying to build other people's designs is 
that usually you are not given any troubleshooting infor- 
mation. Therefore, when it is built and does not run, you 
have to learn it inside out to make it run. You do learn a 
lot in the process, but a few guidelines, such as the 
following, can speed up the process considerably: 

• Buy a computer with front panel lights and swit- 
ches. Although manufacturers seem to be drifting 
away from making true front-panel controls, they 
are invaluable if you are going to do any hardware 
design or debugging. A single-step capability alone 
can help a great deal, but for my money give me as 
many switches and lights as possible. 



134 October 1979 © BYTE Publications Inc 



Circle 353 on inquiry card. 



fresh off the drawing board". 

(at a price you won't believe!!!) 




THE BASE 2 MODEL 800 IMPACT PRINTER 



SPECIFICATIONS 



PRINTING METHOD 

7 wire dot matrix, bi-directional,impa< 
PRINT AREA 

8.0 inches (203 mm) 
THROUGHPUT SPEED 

60 lines per minute 
LINE SPACING 

6 lines per inch 
COLUMN CAPACITY 

72,80, 96,120 or 132 

switch or program selectable 
CHARACTER HEIGHT 

.104 inches (2.6 mm) * 
CHARACTER WIDTH 

.08 inches (2.0 mm) at 80 col. 
PAPER WIDTH 

9.5 inches maximum 
RIBBON 

.5 inch (13 mm) cartridge (5M chars) 
INPUT/OUTPUT PROVISIONS 

a) RS-232 

b) 20 ma current loop 

c) IEEE -488 type 

d) Centronics* parallel 
BAUD RATES 

fifteen rates from 110 to 19,200 
CHARACTER FONT 

5x7 96 character ASCII 
LINE BUFFER 

two lines plus space for second 

character font 



^Registered trademark of Centronics Data Computer Corporation 



SIZE 

3 inches high (75.2 mm) 

1 inches deep (254 mm) 

14 inches wide (355.6 mm) 
WEIGHT 

9 pounds (4.1 Kg.) 
OPERATING CONDITIONS 

40 o -120°F(4°-49 o C) 

10%-90% relative humidity 
POWER 

115 VAC or 230 VAC (switch select) 

50 or 60 Hz 
EXTERNAL CONTROLS 

power on-off 

self-test 

baud-rate 

line/buffer length 

I/O mode select 
OPTIONS 

M M"— 2K RAM buffer 

"S" — high speed paper advance and 
graphics 

"T" — tractor feed 
UNIT PRICING 

standard MODEL 800 $499 

option "M" • $ 50 

option "S" — $ 50 

option "T" $ 50 

(By the time you read this, Base 2 will have 
commenced volume shipments of the MODEL 
800. We regret that we cannot accept respon- 
sibility for any inconvenience this causes our 
competitors.) 

Dealer and distributor inquiries invited 



bo/e 



2 



Inc. 



' P.O. Box 3548 • Fullerton, Calif. 92634 
(714) 992-4344 
CA residents add 6% tax 
MC/BAC accepted • FOB — U.S. destination 



Circle 22 on inquiry cara. 



BYTE October 1979 



WE ARE KNOWN FOR OUR PROMPT, 
COURTEOUS SERVICE 



TELETYPE MODEL 43 

■ 4320 AAA (TTL interface) $985 

■ 4320 AAK(RS232 Interface) $1,085 

with transformer to operate on 50Hz, 220v, installed 
inside cabinet add $50 

We stock paper and ribbon for the Teletype Model43 

PET, NEC SPINWRITER, DIABLO, CENTRONICS 
and TRS-80 now available 

HAZELTINE 1500 (assembled only) $945 

1510 $1,085 

with 50Hz, 220v current adaptation $100 

also available with Danish, German or French 

character sets add $60 

INTERTUBE SUPER BRAIN $2,885 

Dual Z80, dual floppy double density, 64K RAM, 
4Mhz., CP/M, FORTRAN, COBOL, BASIC, 
Assembler, Language. Contained in Intertube II. 

INTERTUBE II $800 

MARINCHIP SYSTEMS 
M9900-CPU-S-100 COMPATIBLE. 

Network operating system, PASCAL, Extended precision 
commercial BASIC, FORTH, META & applications pack- 
age. Complete kit and DISCEX software $550; Assembled 
$700. We configure systems to meet your budget & your 
needs. Hard Disk interface (with software) available. 

IMS MEMORY, 16K Fully static, 250 ns $280 

TEI S-100 Mainframes 

12slot — MCS 112 $433 

22 slot — MCS 122 $609 

These mainframes are completely assembled, tested 
and contain everything required for plug-in operation. 

TARBELL Floppy Disk Controller $255 

Other Tarbell products available. 

KONAN HARD DISK CONTROLLER $1,550 

S-100 compatible, plugs into S-100 mainframe. 
Controls 1-4 disk drives. 

IMS 5000 SERIES, 

COMPLETE Z80SYSTEM $2,170 

2 l/Oports, 1 K EPROM bootstrap loader, double 
density, dual 5Va " disks, S-100, 12 slot mainframe. 
A new rising star! No waiting. 

PER SCI FLOPPY DISK DRIVES 

277DUALDISK,SingleSided $1,210 

SIEMENS DRIVES 

8" Double Density, Shagart Compatible $420 

MODEM: "THE CAT" from Novation $190 

Originate/Answer. 300 baud. 

TO ORDER: We ship within 24 hours after receipt of certified check, money order or cash- 
iers check. Credit cards: add 4%. Personal checks: allow ten days. $12 shipping for ter- 
minals. $3 for memories and modem. New York residents include sales tax. Prices and 
availability subject to change without notice. 



— WE EXPORT TO ALL COUNTRIES- 
OVERSEAS CALLERS USE (212) 448-6298 ONLY— 



We have no reader inquiry number. Please call or write. 



johnd. OWENS ASSOCIATES ■» 

12 SCHUBERT STREET ( New Address) 
STATEN ISLAND, NEW YORK 10305 

DAY, EVENING, WEEKEND, HOLIDAY CALLS WELCOME! 
(21 2) 448-6283 (212) 448-6298 



• Get an extender board so that you can place your 
circuit board where you can get at it. For tracing 
circuits, checking power supplies, and other general 
debugging, it is indispensable. 

• Test power supply connections to the circuit board 
before plugging integrated circuits into their 
sockets. (Use sockets!) Plug in the integrated cir- 
cuits and recheck power and ground on each one. 
Then single-step through an output instruction 
using one of the I/O port numbers you have assign- 
ed to the 8255. 

When the out status light on the front panel (or 
on a logic probe you are holding on pin 45 of the 
S-100 bus) comes on, the processor is in the output 
phase of its instruction cycle and you have static 
conditions to check out the circuitry. By looki ng at 
the circuitry you can see that CS should be low, WR 
should be low, and there should be some data on 
the data pins of the 8255 (ie: either highs or lows, 
but not open circuits). If these conditions do not 
exist, trace back through the circuit to the bus and 
find the problem. 

• Once you are able to output data to the 8255, you 
can proceed to check it out according to specifica- 
tions given in the application data. For a start, you 
can output the hexadecimal value 94 to the control 
register port, which will set port A for input and 
port B for output. Then you can try input and out- 
put commands as you would a normal port. 

You will probably experience some frustrations in try- 
ing to make the interface work. However, when you 
finish you will probably know more about how your 
computer works than you ever thought possible. 

Applications 

Typical applications for such an interface include 
peripheral devices where up to 24 I/O bits are required. 
This might be as simple as an 8-bit parallel interface 
needing only a strobe and acknowledge signal (which is a 
clearly defined mode 1 for the 8255), or as complex as the 
Diablo printer interface which requires 12 data lines, 6 
status lines and 6 strobes. In fact, it is difficult to conceive 
a parallel device which could not be interfaced with this 
circuit. 

In conclusion, for any interface application you have 
in mind, check first to see what special large-scale inte- 
gration devices are available. You might find that the en- 
tire design can be accomplished through the use of one of 
these special parts. For more data I recommend the 8080 
series applications manuals from Intel Corp, National 
Semiconductor, and Texas Instruments, and also Don 
Lancaster's TTL Cookbook and manufacturers data 
sheets on the 8833 and 8131. Good lucklB 



REFERENCES 

1. Intel MCS-80 Users Manual, October 1977, Intel Corp. 

2. Lancaster, D, TTL Cookbook, Howard W Sams and Co, 
Indianapolis, 1974. 



136 



October 1979 © BYTE Publications Inc 



We're about to make 
a new name for ourselves 



Not that the old one was so bad. As 
Ithaca Audio, we've made quite a name for 
ourselves. As the source for CPU, memory, 
video display and disk controller boards to 
upgrade other makers' mainframes and 
peripherals. The company that makes 
those neat little RAM expansion kits. And 
the folks behind the world's only Z-80 
Pascal compiler. 

But as much as we've enjoyed im- 
proving other people's equipment, we've 
been quietly moving towards larger en- 
deavors, with a lot of encouragement from 
our customers. Listening to people's prob- 
lems, as well as their needs. And, as a prime 
mover behind the IEEE S-100 Bus Standard, 
answering some really knotty questions. 

One of the results is our new identity. 
And our first new product: the Inter- 
systems DPS-1. An IEEE S-100 compatible 
mainframe with features that live up to its 
looks. Dependable operation to 4 MHz. 
Twenty-card capacity. A modular power 



supply. And something no one else has— 
built-in breakpoints to give you a faster, 
more powerful tool for testing software as 
well as hardware. Directly accessible from 
an easy-to-use front panel that's as reliable 
as it is functional. In short, an intelligently- 
designed computer for the intelligent user. 

There's a lot more to Intersystems. In 
hardware. And software. All available 
through the nationwide dealer network 
we're now assembling. 

You can watch this magazine for 
updates. Or contact us directly for straight, 
friendly answers and detailed information 
from key staff people. Just the way you 
always have. Because even though we're 
making a new name for ourselves, we'll 
never forget who made it possible. 



Ithaca Intersystems Inc. 

1650 Hanshaw Road/R O. Box 91 

Ithaca, NY 14850/607-257-0190 




© 1979 Ithaca Intersystems Incorporated 



^rMINIMAX 

C ° "FULLY INTEGRATED COMPUTER SYSTEM" 




MINIMAX SERIES COMPUTER 



THE MINIMAX SERIES WAS DESIGNED 

TO OFFER THE MARKET MINICOMPUTER 

CAPABILITIES AT MICROCOMPUTER PRICES. 

COMPARE THE CAPABILITIES & PRICE! 

CONTACT NEECO FOR FULL SPECS - FREE MINIMAX MANUAL. 



MEET THE 
MINIMAX COMPUTER 



THE MINIMAX SERIES COMPUTER WAS DESIGNED BY INDUSTRY PROFESSIONALS. 
COMPARE THE PRICE AND FEATURES TO ANY OTHER COMPUTER IN ITS CLASS! 




MINIMAX I - .8 MEGABYTE 
ON LINE MINIFLOPPY STORAGE 
MINIMAX II - 2.4 MEGABYTE 
ON LINE 8" FLOPPY STORAGE 



MINIMAX I - 
MINIMAX II - 



$4495 
$5995 



• THE MINIMAX SERIES COMPUTER IS AN INTEGRATED, COMPACT UNITCONTAINING THE CPU, DUAL DENSITY DISK STORAGE, 12 
INCH CRT, AND FULL STYLE KEYBOARD, WITH SEPARATE NUMERIC ENTRY PAD. ALL KEYS (INCLUDING CURSOR) WITH FULL 
REPEAT • HYBRID 2MEGAHERTZ6502 CPU • 108K SYSTEM RAM (48KUSER) • FASTEST FLOPPY DISK ACCESS (24KLOADS IN 4.2 
SECONDS) • 16K ROM CONTAINS COMPUTHINK BASIC (AN EXTENDED MICROSOFT BASIC) WITH EXTENDED PRECISION, DOS 
INCLUDES COMPLETE FILE I/O WITH FULL RANDOM ACCESS, COMPLETE MONITOR WITH DEBUG & TRACE, AND TINY 6502 
ASSEMBLER • COMPLETE HIGH RESOLUTION GRAPHICS WITH INDIVIDUAL DOT (240x512) POINT SCREEN ADDRESSABILITY • 
FULL SCREEN TEXT EDITING WITH OVERWRITE, INSERTION OR DELETION • SPLIT SCREEN/WINDOW MODES • INDIVIDUAL 
FIELD EDITING WITH FIELD PROTECT AND AUTO SKIP TO NEXT FIELD • DISK STORAGE SYSTEM TRANSFERS 6K PER SECOND 
WITH AUTO VERIFY AND PARITY CHECK • 12 INCH CRT-64 CHARACTERS BY 30 LINES. UP TO THREE PROGRAMMABLE 
CHARACTER FONTS FOR LANGUAGES OR SPECIAL CHARACTERS • • • SWITCHABLE 1 1 OR 220V OPERATION • • • • HYBRID 
CPU IS MICROPROGRAMMABLE WITH 64 USER DEFINABLE OPCODES. CHOICE OF 800K OR 2.4 MEGABYTE DISK STORAGE • FULL 
SERIAL RS-232C PORT WITH PROGRAMMABLE BAUD RATES AND MODEM CONTROL SIGNAL • DEDICATED DISK PORT • 
PRINTER PORT SUPPORTS PARALLEL COMMERCIAL PRINTERS • 24 PIN I/O USER PORT • PAGEMATE DATABASE 
AVAILABLE • PLM COMPILER AVAILABLE • BUSINESS PACKAGES AVAILABLE • COMPLETE DIAGNOSTICS & SCHEMATICS 
INCLUDED • COMPLETE USER MANUAL INCLUDED 

SPECIAL DEALER PRICING AVAILABLE ON DEMONSTRATION 

MINIMAX AND SOFTWARE PACKAGES TO QUALIFIED 

SELECTED DEALERS. CONTACT NEECO FOR INFO. 



PRINTER NOT 
INCLUDED IN PRICE 



THE MINIMAX WAS DESIGNED AND IS MANUFACTURED BY COMPUTHINK 
COMPUTER CORP. DISTRIBUTED IN EUROPE AND THE EASTERN U.S. BY NEECO. 



IN ADDITION TO HARDWARECAPABILITIES THAT ARE UNMATCHED IN THE INDUSTRY, THE MINIMAX 
COMPUTER SUPPORTS A COMPLETE DATA BASE SYSTEM (PAGEMATE), CONTAINING FULL 
STATISTICAL, SORTING, AND EDIT FUNCTIONS. A PLM COMPILER IS AVAILABLE, FULL BUSINESS 
SUPPORT SOFTWARE IS AVAILABLE AND MORE!— FULL DEALER SUPPORT IS AN IMPORTANT 
PART OF OUR MARKETING. CONTACT NEECO FOR FURTHER INFORMATION. 



THE MINIMAX IS NOW AVAILABLE FOR QUANTITY DELIVERY. DOMESTIC DEALERSHIPS AVAILABLE. 

EUROPEAN DISTRIBUTORSHIPS/DEALERSHIPS AVAILABLE TO QUALIFYING COMPANIES WITH 

SUPPORT CAPABILITIES. SOFTWARE HOUSES AND OEM INQUIRIES INVITED. CONTACT NEECO. 



NEECO 



NEW ENGLAND ELECTRONICS CO., INC. 

679 HIGHLAND AVE., NEEDHAM, MA 02194 

MON-FRI, 9:00-5:30, E.S.T. 



(617)449-1760 



TELEX 951021, ANSWERBACK "NEECO* 



138 BYTE October 1979 



Circle 281 on inquiry card. 



NEECO 



PET 2001 — 32K 




PROUDLY ANNOUNCES THE NEWEST 

PET MICROCOMPUTERS BY COMMODORE! 

The PET™ is now a truly sophisticated 

Business System with the 
announcement of these Peripherals. 



The PET", incorporated ivtthlhe Floppy Osfca rid Printer 
makes an ideal rjusmess system (or most professional 
and specialized liolds medicine law. denial, research 
engineering toolmii kin □, printing, education, energy con- 
seivalion.etc The PET'-BusmessSystemasa" 
management tool, delivers inlormanon lo all levels Ot 
Business, previously allainable only wilh equipment 
many times more expensive. The PET 7 " Business 
Sysleni is one ot Ihe mosl cosl efficient business tools 



today II otters a wide range ol applications from logging 
managemenl stralegy in majc corporations to organising 
accounls and inventory control ol small businesses Here 
are lust a lew ol the cost-savmg uses in Ihe co;poralion 
professional olhco or small business stock conlrof, 
purchasing lorecasimg manulaclunng coslmg. customer 
records, mailing lists, elc The PET". Floppy Disk and 
Printer, a compalible business system at a reasonable 
price — Take a closer look at these Penohcials 



LARGE TYPEWRITER KEYBOARDS NOW AVAILABLE! 



PRODUCT DESCRIPTION 

PET 2001 — 4K 4K RAM 

PET 2001— 8K 8K RAM 

PET 2001— 16KN (Large Keys)16K RAM* 
PET 2001— 32KN (Large Keys)32K RAM 



PET 2023 PRINTER 
PET 2022 PRINTER 
PET 2040A 
PET 2040 
PET C2N 



ROLL FEED 

TRACTOR/ROLL 

SINGLE FLOPPY 

DUAL FLOPPY* 

2nd Cassette 

The 16K/32K (large keyboard) units do not include a cassette drive. Order C2N Cassette. 
2040 Floppy Drive requires a 16K or 32K unit. 8K RAM Retrofit available July. 



PRICE 


AVAILABILITY 


$ 595 


IMMEDIATE 


$ 795 


IMMEDIATE 


$ 995 


IMMEDIATE 


$1295 


IMMEDIATE 


$ 850 


IMMEDIATE 


$ 995 


IMMEDIATE 


$ 895 


JUNE/JULY 


$1295 


IMMEDIATE 


$ 100 


IMMEDIATE 



ALL UNITS ARE FULLY TESTED BY NEECO BEFORE SHIPMENT. ALL PET'S ARE 
WARRANTEED (BY NEECO) FOR 1 FULL YEAR! NEECO IS A FULL CUSTOMER- 
ORIENTED BUSINESS. PLEASE CALL FOR ADDITIONAL INFORMATION. ALL 
UNITS ARE IN STOCK & READY TO SHIP. FULL SOFTWARE AVAILABLE! 



o 



gZOMPUTHINK A & .8 MEGABYTE DISK 
DRIVES FOR THE NEW 16/32K PETS! 




FOR 8K PETS 

(small keyboards) 1 

.4 Megabytes of Disk 

Storage for 8K PETS! 

(Requires Expandamem) 

400K-8S DISK SYSTEM INCLUDES RANDOM 

ACCESS IN DOS-LOADS 20K IN 4 SECONDS! 

24K Expandamem Memory s 525 $10Q^ 

32K Expandamem Memory s 615 [tww 



DISK SYSTEMS INCLUDE DISKMON OPERATING 
SYSTEM IN ROM AND INTERFACE TO 16/32 PETS! 

i Dual Minifloppy Drives with 200K perdiskette side (or total 400K/800K on line. 

1 800K model accesses all 4 diskette sides via dual read and write arm system. 

' Dual Density Hardware and DOS loads 20K (with verification) in 4.2 seconds complete 

1 DISKMON (DOS) adds 17 commands to BASIC including Random Access and printer support 

1 System comes complete with plug in internal board containing 8K RAM. DOS. and Disk Controller 
Hardware— Board plugs directly onto internal memory expansion pins 

• System does not utilize IEEE or USER Port, system (unctions directly from memory port 

1 All DISKMON DOS commands reside interactively with BASIC— disk directory command and 
format command do not interfere with program in RAM— DOS command were designed for 
simplicity of use System was manufactured for heavy commercial use 
1 System installs completely in less than ten minutes— immediately ready for use 
1 *1295and M595 prices include all hardware. DOS. complete user manual, and demo/utility diskette. 

• Available software includes PLM Compiler (*250). Relocatable Assembler (*70). Source-Editor 
Program ( J 70). Autolink Linking Loader ('70). and a complete Database system (Pagemate *495) 

' Call or write for complete product information and specifications— User manual MO. 

(PRODUCT AVAILABILITY IS AUG/SEPT— CALL FOR INFO) 

ALL 16/32K MODELS INCLUDE AN 400K-16N s 1295 

INTERNAL PLUG-IN INTERFACE 400K-32N s 1295 

BOARD CONTAINING DOS, 8K OF 800K-16N M595 

RAM, AND CONTROLLER 800K-32N M595 



CALL OR WRITE FOR A FREE COPY OF OUR NEW JULY CATALOG! 

NEW CENTRONICS 730 PRINTER FOR PET! 

• NEWEST TECHNOLOGY FROM CENTRONICS • 50 CPS • 80 CHARACTER LINE 

• 10 CPI • 7x7 DOT MATRIX • HANDLES ROLL FEED, PIN FEED 

i PAPER • UPPER & LOWER CASE— s 1099 PRICE INCLUDES 

— - INTERFACE TO IEEEPORT. AVAILABLE AUG/SEPT. 




$1099 



TRS-80 USERSI-THE 

MODEL 730 IS AVAILABLE FOR USE WITh 
THE TRS-80. PRICE 
INCLUDES CABLE 

only 



*995 



WECANNOTLISTALLOF OUR SOFTWARE AND HARDWARE PRODUCTS 
CALLOR WRITE FOR OUR* FREE* SOFTWARE/HARDWARE DIRECTORY 

ALL NEECO PETS CARRY A FULL ONE-YEAR NEECO WARRANTEE 



NEECO 



NEW ENGLAND ELECTRONICS CO., INC. 

679 HIGHLAND AVE., NEEDHAM, MASS. 02194 
MON. - FRI. 9:30 - 5:30, EST. 



(617)449-1760 

MASTERCHARGE OR VISA ACCEPTED 
TELEX NUMBER 951021, NEECO 



Circle 282 on inquiry card. 



BYTE October 1979 



139 



The XYZ Phenomenon 

Stereoscopic Plotting by Computer 



When I was small, I visited my 
grandmother's house on a hill in 
Salem, Oregon. The house was just 
below a peak of the steep hill, and on 
the peak was a large fir tree. From 
high in that tree, using my uncle's 
binoculars (not authorized for use in 
trees!), I could look out over Salem 
on a summer day and see Mt Hood 
floating above the horizon. Its white 
cone was hazy and immense. Between 
me and the mountain lay 60 miles of 
town and country, looking like ar- 
tificial scenery painted on layers of 
glass, one stacked close behind 
another. The binoculars compressed 
perspective, just as they magnified 
lateral dimensions, squeezing those 
60 miles of hills, ridges, and forest in- 
to what looked like about a thousand 
yards. 

Inside my grandmother's house 
was another marvel, also a binocular 
device: a stereopticon and a huge 
collection of pictures to look at. The 
effect was just the opposite of the 
scene from the tree with the 
binoculars. A card holding 2 flat and 
apparently identical pictures was slip- 
ped into the frame. Holding the 
device by its wooden handle and slip- 
ping the cupped eyeshield over my 
eyes, I saw the flat pictures turn into 
startling solid objects in a world that 
lay beyond the translucent frame of 
the pictures, extending from arm's 
reach to at least the distance of Mt 
Hood. Some were frightening views 
down cliffs in the mountains of 
Switzerland, where my grandmother 
was born. 

I was about 6 or 7 when I dis- 
covered the stereopticon, and was 
soon told that using it so much was 
bad for my eyes. When that pro- 
nouncement was made, the viewer 
was put away. However, I knew 
where the pictures were, and quickly 



William T Powers 

1138 Whitfield Rd 

Northbrook IL 60062 



developed a skill that was probably 
worse for my eyes. I learned to look 
at them walleyed, and to fuse the pic- 
tures without the viewer. You can 
learn to see the stereo pairs described 
in this article that way if you like; 
you can also do it by crossing your 
eyes. It takes patience and practice, 
since you have to uncouple the focus 
of your eyes from their convergence 
(normally, when we converge our 
eyes to see something close, the lenses 
automatically focus for near 
distance). In a stereo pair of pictures, 
all the objects are at the same 
distance, and you have to learn to 
keep them in focus independently of 
the convergence of your eyes. I 
learned to do that when I was 7, so 
you can probably learn to do it, too. 
In case it is too much of a strain, we 
will have a look at a simple viewer 
that is easy to put together. I use the 
viewer because it gives better depth. 
Illinois in the winter of 1978 was a 
long way from the clear, warm sum- 
mer days in Oregon in the early 
1930s. However, when I bent over the 
drawings my computer had produced 
(using the objective lenses from an in- 
expensive pair of binoculars balanced 
on a pair of rulers as a viewer), and 
saw the tangled lines sink below the 
paper and stand in space above it, I 
felt a pang of joy that connected me 
instantly with that small boy in Ore- 
gon long ago. We get bigger and 
change shape, but the important 
things stay the same. That is the real 
reason for writing this article. It is for 
phenomenon fans. 



Calculating Stereo Plots 

To make a stereo picture, construct 
2 views of the same 3-dimensional ob- 
ject as seen from each of a viewer's 
eyes. Placing a picture in front of 
each eye, you see the 2 images fused. 
In order to fuse near objects, your 
eyes have to converge just as for the 
real object, since near objects are 
displaced more (to the side opposite 
the viewing eye) in the 2 pictures, 
than are the actual far objects. The 
most natural viewing requires using 2 
identical lenses, one in front of each 
eye, and a cardboard shield to keep 
each eye from noticing the wrong pic- 
ture. 

Stereo effects arise from image dis- 
placements left and right; in the ver- 
tical dimension, stereo pictures are 
essentially identical. The size of the 
vertical dimension shrinks as the dis- 
tance to the object increases, but by 
the same amount for both eyes. 

Figure 1 shows the situation from 
the top of the viewer's head. The ac- 
tual pictures will be at some fixed 
distance, Z0, from the person's eyes 
or the lenses of the viewer. Letting the 
horizontal direction in the plane of 
the person's eyes be the X axis (with 
the origin lined up with the nose), and 
the Z axis be the direction away from 
the nose (up, in figure 1), it can be 
determined where the image of any 
point in space will be in the picture. 

The coordinates of a point (X,Z) 
are shown in figure 1. This point 
forms the farthest corner of a right 
triangle, the other far corner being 
directly ahead of the person's left eye, 
and a distance E left of the Z axis (for 
this eye, E will be a negative number, 
being to the left). The length of the far 
side of the right triangle is thus 
(X-E). 

The corresponding point on the 
paper is (XI, Z0). XI is the X position 



140 October 1979 © BYTE Publications Inc 



Bit Pad One™ is the small, low- 
cost digitizer that lets you add 
a graphics or menu capability 
to any data processing system. 
It's perfect for data entry, CRT 
cursor control, games, mapping 
and countless business appli- 
cations like order entry and 
inventory control. 

Bit Pad One is small in size, 
but big in reliable capability. 



The 11 " x 11 " active area has a 
resolution of 0.005" which is 
comparable to digitizers found 
in expensive turnkey graphic 
design systems. 

Best of all, Bit Pad One is 
designed and built by Summa- 
graphics, the leading manufac- 
turer and OEM supplier of data 
tablets and digitizers. 

Bit Pad One. If s bringing 
digitizing down to earth. 



^ * corporation 

35 Brentwood Ave., Box 781 
Fairfield, CT 06430 
(203)384-1344. 

Central Office: 3785 Varsity Dr., Ann 
Arbor, Ml 48104, (313) 973-1710. 

Western Office: 1102 West 17th St., Santa 
Ana, CA 92706, (714) 541-8261. 

European Office: 14 rue de I'Ancien-Port, 
1201 Geneva, Switzerland, 
phone 022/31 39 40. 
Circle 342 on inquiry card. 



Bit by bit, 

the world is coming 

to Bit Pad One. 













• 









I 









•^ *-* 



iS 





Figure 1: Geometry of generating stereo pictures. Each point of the object to be pictured 
is projected along the line of sight to the plane in which the picture will be drawn. 



where the line of sight to (X,Z) pierces 
the picture. A smaller right triangle is 
formed, with (XI, ZO) as the farthest 
corner and (E,Z0) as the other far cor- 
ner. The far side of this triangle has a 
length of (XI -E). 
By similar triangles, we thus have: 

(XI - E)/(X - E) = ZO/Z 

or 

XI = (X-E)XZ0/Z + E 

That transfers any point at a 
distance X to the right of center (or 
—X to the left) and any distance Z 
from the person's nose into the plane 
of the picture. For the picture seen by 
the left eye, E is a negative number 
(half the distance from eye to eye), 
and for the other picture E is positive. 

The Y dimension (up and down 
from the person's point of view) is 
handled exactly the same way, with 



the exception that there is no dis- 
placement of the eyes above or below 
the centerline of the picture; in effect, 
E is 0, and Y is substituted for X in the 
equation above. That yields: 

Yl = YXZO/Z 

With these 2 elementary equations 
we can transform any point with co- 
ordinates X,Y,Z into a point XI, Yl 
for each eye to view. Then, running 
X, Y, and Z through space to trace 
out a figure, we can generate the 2 
pictures in terms of XI and Yl, to 
produce a pair of stereo pictures. 

Constructing Pictures 

If you do not have an X,Y plotter, 
you can still make perfectly good 
stereo pictures using straight lines. 
For example, to make a cube, first 
calculate the coordinates of the 8 cor- 



ners of the cube as X,Y,Z coordi- 
nates. Then apply the above equa- 
tions to convert each X,Y,Z triple in- 
to an XI, Yl pair. Do this twice, once 
with E set to about —1.25 inches and 
then with it set to +1.25 inches (a 
typical interocular [between the eyes] 
distance is about 2.5 inches, close 
enough). ZO is set to the viewing dis- 
tance you plan to use, or the focal 
length of the viewing lenses. Plot the 
2 sets of points on graph paper. A 
simple BASIC program will make the 
conversions easy. 

Finally, and with great care, use a 
felt-tipped pen or pencil and ruler to 
connect the points that correspond to 
edges of the cubes in the 2 views; 
straight lines are transformed into 
straight lines. Voila*! View the pic- 
tures stereoscopically, and you have 
a 3-dimensional cube. Thick lines 
work better than thin ones, but try to 
keep the width uniform. 

If you have a high-resolution 
graphic display such as the Apple 
computer has (and if the display is 
not too nonlinear), you can make 
plots and view them directly on the 
screen. I have a 15 year old X,Y pen 
plotter which shakes a little, but still 
produces fairly accurate lines, and the 
program given here is for that device. 
I have computed a few stereo pairs 
for your amazement. The program I 
used can make 3-dimensional Lissa- 
jous figures with a few modifications 
you can easily enhance, if you wish. 
This program is shown in listing 1. 

Tips on Producing Pictures 

It is difficult to get a good stereo ef- 
fect if there is too much distance be- 
tween near and far parts of the same 
object. I have found that with a view- 
ing distance of 6 inches from the gen- 
erated pictures, a good object will fit 
into about an 8 inch cube at an 
average real distance of about 30 
inches. 

This size limitation is also import- 
ant because the object must be small 
enough that both eyes can see all of it. 
An object that is too large will have 
its images displaced toward each 
other enough to overlap, which spoils 
the effect. The object in real space 
must fit into the shaded region of 
figure 1. The program will do odd 
things if figures get outside that limit. 
Human binocular vision works best 
for objects closer than 20 feet, so 
place the objects accordingly. 



142 October 1979 © BYTE Publications Inc 



44 



How I Spent My Summer Vacation" 




"My father brought home a computer. It was fun. The computer was like a 
teacher. I learned how to do graphs and lots of other things too. I had a really good time.' 

Sonja Richman — Age 9 

Sonja used Program Design educational software on her TRS-80. PDI 

programs and games teach subjects like programming, reading, and grammar. 

Kids and adults like PDI because the programs keep them involved and 

entertained while they learn. 

PDI has courses for all ages. Some of Sonja's favorite courses are Graph 

Builder, Story Builder, and Memory Builder: Concentration. For her parents, 

we have courses like Step By Step to teach them programming and Spelling Builder. 

Guaranteed to load cassettes for APPLE, PET, TRS-80 Level II, ATARI 

Send for our flyer. And see Program Design software at participating 
Computerlands and other fine computer stores. 



Program Design, Inc., 1 1 Idar Court, Greenwich, CT 06830 (203) 66 1 -8799 



BYTE October 1979 



143 



Listing 1: Stereo plotting program in North Star BASIC. The picture coordinates are 
first generated and stored, then the stored list of coordinates is scanned and plotted. 



PROGRAM FOR GENERATING 3D STEREO IMAGE PAIRS 
WILLIAM T. POWERS, DECEMBER 1978 



SET ZO TO FOCAL LENGTH OF VIEWING LENSES OR 
VIEWING DISTANCE FROM EYES IF NO LENSES USED 



10 REM 

20 REM 

30 REM 

40 REM 

50 REM 

60 REM 

70 REM 

80 Z0=6 

90 H=100\K=3. 141 592654/ 1 80\K1=1 00\K2=2*3. 141 592654 \0=2. 5 \M1=0 

100 DIM M$(3000)\!%#9F2 

110 REM ************ 

120 REM DEVICE 31= PEN LIFT 

130 REM DEVICE 30= Y OUTPUT 

140 REM DEVICE 29= X OUTPUT #1 

150 REM DEVICE 28= X OUTPUT #2 

160 REM ************ 

170 REM 

180 REM ************ 

190 REM SET PLOTTING PARAMETERS 

200 REM ************ 

210 REM 

220 OUT 31 / 0\Z9=SIN(SIN(SIN(1))) 

230 INPUT "X, # CYCLES: " ,N1 \N1 =N1*K2/1 00 

240 INPUT " PHASE: ",B1 \B1 = P,1 *K\IF BKO THEN B1=B1+K2 

250 INPUT " SIZE: ",S1\ Sl=Sl/2 

260 INPUT " POSITION: ",D1 

270 INPUT "Y, U CYCLES: " / N2\N2=N2*K2/1 00 

280 INPUT " PHASE: " / B2\B2=B2*K\I F B2<0 THEN B2=P2+K2 

290 INPUT " SIZE: ",S2\ S2=S2/2 

300 INPUT " POSITION: ",D2 

310 INPUT "Z, tt CYCLES: " / N3\N3=N3*K2/100 

320 INPUT " PHASE: " / B3\B3=B3*K\ I F B3<0 THEN B3=B3+K2 

330 INPUT " SIZE: ",53X53=53/2 

340 INPUT " POSITION: ",D3 

350 INPUT " LINEAR, K4*T: " / K4 

360 INPUT "SIZE FUNCTION: SC1+K5T). K5= " ,K5 

370 Q = 127\G0SUB 960MMPUT "SET PEN, HIT RETURN", A$ 

380 REM 

390 REM ********* 

400 REM FIGURE GENERATION 

410 REM ********* 

420 REM 

430 FOR E=-0/2 TO 0/2+.01 STEP 

440 OUT 31,0\Z9=SIN(SIN(SIN(1))) 

450 Pl=Pl\P2=B2\P3=B3\T=0\D=0\M1=n 

460 G=1+K5*T 

470 Z=S3*G*SIN(N3*T+P3)+D3+K4*T 

480 X=S1*G*SIN(N1*T+P1)+D1 

490 Y=S2*G*SIN(N2*T+P2)+D2 

500 GOSUB 770\T=T+D\IF T>100+D THEN 510 ELSE 460 

510 GOSUB 570\Q=128\NEXT\0UT 31, 0\ GOTO 22n 

520 REM 

530 REM ********* 

540 REM PLOT STORED IMAGE 

550 REM ********* 

560 REM 

570 P=0\OUT 31,0\F0R J=1 TO 1 0\Z9=SIN (1 ) \NEXT 

580 FOR J=1 TO M1-1 STEP 2 

590 X=ASC(M$(J / J))-128\Y=ASC(M$(J+1 / J+1))-128 

600 REM ADJUSTMENT FOR TWO'S COMPLEMENT OUTPUT 

610 IF X<0 THEN X=256+X\ IF Y<0 THEN Y=256+Y 

620 REM ANALOG OUTPUTS 

630 OUT 29, X\ OUT 30, Y\ IF P=1 THEN 690 

640 REM IF PEN IS UP, OUTPUT X AND Y SEVRRAL TItfFS 

650 REM TO ALLOW D/A CONVERTERS TIME TO CATCH UP. 

660 REM PAUSE BEFORE LOWERING PEN. 

670 FOR L=1 TO 15\0UT 29,X\0UT 30,Y\0UT 28 / Q\NEXT 

680 FOR L=1 TO 5\Z9=SIN(1)\ NEXT\P=1 

690 OUT 31,40\0UT 28,Q\NEXT\RETURN 

700 REM 

Listing 1 continued on page 146 



The maximum horizontal dimen- 
sion in inches for an object at a 
distance of Z inches is: 

Xmax = 2.5 X (Z - Z0)/Z0. 

For Z0= 6 inches, as in my system, 
this works out to a width of 10 inches 
at 30 inches distance, 20 inches at 54 
inches distance, and 30 inches at 78 
inches distance. 

How to View Stereo Pairs 

The easiest viewing method is to 
cross the eyes or let them diverge 
(either will work, although the pic- 
ture turns inside out if you cross the 
eyes). This requires practice, and I 
suppose it is bad for the eyes. (I am 
not an ophthalmologist and neither 
was my grandmother.) It is less of a 
strain to use a pair of lenses; here is a 
way to do it. 

To make my kludge-variety 
viewer, I unscrewed the objective 
lenses from a pair of Squire 7 by 35 
binoculars. These lenses have about a 
6 inch focal length. You can measure 
the focal length with a ruler, measur- 
ing from the lens to a sharp image of a 
distant scene on a sheet of paper. 
Support the 2 lenses above the plane 
where the generated stereo pair is to 
be placed, the distance being the focal 
length of the lenses. This distance 
becomes Z0 in the equations, in 
inches. Any pair of lenses about 1 to 2 
inches in diameter and having about a 
4 to 10 inch focal length will do. View 
with your eyes as close to the lenses 
as possible. 

I supported the lenses by laying 2 
rulers across 2 stacks of books, far 
enough apart to support the lenses 
without obscuring too much of the 
field. I taped the ends of the rulers to 
pieces of cardboard, so they could be 
moved as a unit with the lenses sup- 
ported over the gap. Sliding the 2 
lenses together and apart permits fair- 
ly major adjustments to be made. 
This will accommodate different in- 
terocular distances to get the best 
stereo effect with the least effort. Of 
course, if you have steady hands you 
can just hold the lenses. 

It is essential to have the pictures 
aligned in the vertical direction, 
which is done by tilting your head left 
or right, or by moving a lens slightly 
up, while moving the other slightly 
down. Once the images are fused in 
your perception, you can tolerate 



144 October 1979 © BYTE Publications Inc 



ALTOS COMPUTER SYSTEMS PROUDLY ANNOUNCES 



AO8000-6 









■ 

THE VERY FIRST 

Double Density Z80 Micro-Gomputer 

plus Twin 8" Floppies 

plus 14.5Mb Winchester Disk 

for under $9,500! 
And more! 4 user CP/M® for under $12,000! 



«CP/M is a registered trademark of Digital Research, Inc. 



ALTOS COMPUTER SYSTEMS, LEADER IN SINGLEBOARD TECHNOLOGY 
DOES IT AGAIN WITH ITS SINGLEBOARD ACS8000-6. TOTAL BUSINESS COMPUTER 



HIGH TECHNOLOGY AGAIN 



WINCHESTER MASS STORAGE 



The new ACS8000-6 single board computer is packed 
with ultra-high technology: Z80 double-density computer, 
208Kb of high speed RAM, Floppy-disk and Winchester 
Hard Disk controllers, DMA, 6 serial/2 Parallel I/O, 32 bit 
floating point processor ... All on One 
Board, fully socketed, fully documented 
reliable and maintainable. 



ADVANCED MULTI-USER SOFTWARE 
Our new ALTOS Multi-User Executive 
(AMEX) supports four independent 
CP/M compatible programs in any of six 
languages: Basic, Fortran, Cobol, Pascal, 
APL, C, and a wealth of complete 
business application packages. 



(ALTOS) 

COMPUTER SYSTEMS 

2338-A Walsh Avenue 
Santa Clara, Ca. 95050 



We're staying with Shugart for both floppies and 
Winchester hard disk. Why? Simple, low price, solid 
reliability and they're our next door neighbor. Our single 
board computer supports up to 4 Mbytes of floppies and 
58 Mbytes of Winchester 

running under AMEX. 

MTN1 PERFORMANCE FOR 1/2 COST 
Prices you will love. Entry level 
ACS8000-6 Hard Disk System $9,450 
2 users $10,670, 4 users $11,960, 
AMEX separate at $250. 
AVAILABLE NOW! 

Call for your nearest Altos dealer. (408) 
244-5766. Telex 171562 ALTOS SNTA. 
Circle 6 on inquiry card. 



Listing 1 continued: 

710 REM ****************** 

720 REM STORE IMAGE POINTS AS ASCII STRING 

730 REM ****************** 

740 REM 

750 REM NEXT TWO LINES PLOT STEREO POSITION 

760 REM 

770 U=ZO/Z 

780 X=(X-E)*U*K1\ Y=Y*U*K1 

790 REM 

800 REM NEXT 3 LINES ADJUST STEP SIZE 

810 REM TO MAINTAIN CONSTANT RESOLUTION 

820 REM ON PLOT 

830 REM 

840 D=D+C2.8-ABS(X-L1)-ABS(Y-L2))/K1 

850 IF D<0 THEN D=0 

860 L1=X\ L2=Y 

870 REM 

880 REM BIAS X AND Y FOR CONVERSION TO ASCII 

890 REM 

900 X=INT(X+128)\Y=INT(Y+128) 

910 Ml=nl+1\M$(M1 / M1)=CHR$(X)\M1=M1+1\M$(M1 / M1)=CHR$(Y) 

920 RETURN 

930 REM 

940 REM ZERO PEN FOR POSITIONING (CENTER) 

950 REM 

960 FOR J=1 TO 5\0UT 29,0\0UT 30,0\0UT 28,0 

970 Z9=SINCSIN(SIN(1)))\NEXT\ RETURN 



about 5 degrees of mismatch in tilt, cues, take the brain a while to figure 

but that is after they fuse. out. Pictures will not just suddenly 

Do not be impatient. Simple ar- jump into 3 dimensions. Instead, they 

tificial pictures, which lack richness gradually ooze into shape, the im- 

of detail and nonbinocular distance pression of depth growing stronger 




Make your own interface easily 

for Apple II' and Superkim 1 with 

Vector 4609 Universal Plugbord! 




HIGH CAPACITY: 
22 16-pin DIPs or 2 40-pin plus 18 
sixteen-pin DIPs. 

VERSATILE 

.1 inch grid; .042 inch diameter holes. 

Extra I/O connector— gold plated. 



06", $21.50 






pM%8fe&^ic&lpaiui 

INCORPORATED ' * 



Extended length! Extra area! 
No interference. 

Wrap wire or solder. 

Quick solder mounting of any IC 
sockets. 

Hot tinned 2 ounce copper power 
& ground buses between IC leads 
for easy connection. 



12460 Gladstone Avenue, Sylmar, California 91342 
phone {21 3) 365-9661, TWX (910) 496-1539 
QD T. M. APPLE COMPUTER, Inc. 680679 (2) J. M. MICROPRODUCTS 



the longer you look. It gives in- 
teresting insight into the depth 
perception process used by the brain. 
Once the depth appears, you can look 
away and back and not lose it, and 
you can move your eyes all around 
freely. It seems that the brain 
gradually constructs a model of the 
object. When you switch from look- 
ing at one part to looking at another 
part, the convergence of the eyes 
becomes automatic, anticipating 
what is required for various parts of 
the picture. 

Program Notes 

The accompanying program of 
listing 1 is written in North Star 
BASIC. In order to make the plotting 
pen move fast enough to make clean 
traces without spreading the ink, I 
have done the process in 2 stages: first 
the picture is generated and stored; 
then the stored list of X, Y coordinates 
is scanned and plotted. This is done 
for each picture, left and right, in 
turn. If you want to plot directly (as 
you would do on a video display 
screen where plotting speed is essen- 
tially instant), you can eliminate the 
storage phase (GOSUB 770 in line 
500) and substitute a call to the plot- 
ting subroutine. You would also 
delete the GOSUB 570 in line 510. 
The plotting subroutine would con- 
sist of lines 770 and 780 followed by 
the commands to plot X and Y, and a 
RETURN statement — much simpler. 

My analog output is generated with 
a Cromemco D + 7A board, which 
can produce 7 independent outputs. 
The digital-to-analog converters 
(DACs) have only 8 bits of resolu- 
tion, and my plotter can plot about 
100 points per inch. To get the max- 
imum possible resolution I have used 
2 analog outputs for the X axis. One, 
device 28, simply puts out either 
-2.56 V or +2.56 V; the other, 
device 29, puts out the same range of 
voltages representing the variations 
in Y. This makes it possible to plot 
each picture, left and right, with the 
full resolution of 256 elements. The 
recorder has a voltage differential in- 
put, so device 28 goes to the negative 
input and device 29 to the positive input. 

In lines 370 and 510 you will 
observe a variable Q that is set to 127 
for the left picture and 128 for the 
right picture. A value of 127 output 
to a converter corresponds to the 
maximum positive voltage of 2.55V. 



146 October 1979 © BYTE Publications Inc 



Circle 377 on inquiry card. 



Radio Shack introduces 

its second TRS-80 computer breakthrough. 

A small-business computer for people who like to 

pay less than the "going price". 



Why Radio Shack's "going price" is 
so much lower 

There's TRS-80 Model I. Systems start at 
$499. Last year they started at $599, but 
now we're down the learning curve while 
others are just starting up. Thisad, of 
course, is not about Model I. It's about 
Model II. Model II systems start at $3450. 
It's an all 8" floppy disk system: one built 
in, room for three more. True 12" monitor, 
twice the size of the IBM 51 10, for exam- 
ple. Twice the operating speed of Model I. 
Upper and lower case. New state-of-the- 
art 76-key keyboard. Level III expanded 
BASIC. And here's what's so incredible: 
comparable systems (like IBM 5110) cost 
roughly 33% to 66% more. We said we'd 
tell you why; it's a mix of three pos- 
sibilities: (1) they have higher selling 
costs, (2) they have higher manufacturing 
costs, (3) we have lower gross margins. 

A small business may he a small 
part of a large business, right? 

Most businesses, small or large, have a 
tendency to buy too much computer for 
their job. We learned about this with 



TRS-80 Model I; in fact Model I is too little 
computer for many business applica- 
tions. So we designed Model II to be "just 
enough computer" for most micro/mini 
applications. And here's a promise: we'll 
sell you what you need, not less, not 
more, and you will SAVE MONEY 

Does a retailer belong in the 
business-computer business? 

The competition would like you to believe 
computers can't be sold over the counter 
like typewriters. They're right! Business 
computers like TRS-80 Model II have to 
be sold where computers and software 
are sold, where computers are serviced, 
where computer advice is available 
directly from the manufacturer. That, 
friend, is exactly what Radio Shack 
is all about. 

How we sold over 100,000 
TRS-80 Model I Systems 

This is probably the most interesting 
computer story never told. We did not 
know — repeat NOT know — there was a 



V2-Megabyte Basic 
S tem $ 3450 



big market for personal computers. So we 
put 20 people on the job. Shortly there- 
after we had over 700 people on the job. 
The over 100,000 system sales came from 
getting off our behinds FAST and meeting 
demand by building computers (instead 
of talking about them). 

Radio Shack deserves to be your 
small-computer company! 

Simply because we offer 5-figure com- 
puting power at a 4-figure price — with 
five business software packages readyto 
"go to work" immediately — with your 
existing personnel. Plus, modular design 
means easy expandability with plug-in 
printers, additional disk drives and more! 
You can order a TRS-80 Model II (or I) in 
over 7300 locations worldwide. And, over 
100 USA Computer Sales/Service centers 
are ready to stand behind your computer 
with service (and training classes, if you 
wish). There's so much to tell about 
TRS-80 II, we urge you to come in today 
and get all the facts, firsthand! 

* Retail prices may vary at individual stores and dealers. 




Circle 318 on inquiry card. 



BYTE October 1979 



147 



Applied to the negative recorder in- 
put, this biases the pen to the left. A 
value of 128 (hexadecimal 80) cor- 
responds to -2.56 V, and biases the 
pen to the right. 

Lines 770 and 780 do the actual 
conversion from X,Y,Z coordinates 
to X,Y stereo coordinates. You will 
notice that the equation for the stereo 
value of X is not quite the same as the 
above equation; the added constant E 
has been left off. This results in the 
picture being plotted relative to the 
point straight ahead of the relevant 
eye in the X direction; this permits the 
highest possible resolution. The aux- 
iliary X output from device 28 inserts 
the missing value of E into the plot. If 
you are plotting on a high-resolution 
video display, you can write the first 
statement in line 780 as: 

X = ((X- E)XU 4- E)XK1 

and eliminate all statements involving 
Q (in lines 370, 510, 670, and 690). At 
the same time, the scale factor Kl 
(line 90) should be adjusted to reflect 
the actual number of points per inch 
on the display. I ran the recorder at 2 
V per inch, which works out to Kl = 



100; if I had not used device 28, I 
would have run at 1 V per inch and 
used Kl = 50. 

The plotting parameters are set in 
lines 220 to 360. For X, Y, and Z the 
program asks for the number of full 
sine wave cycles to be plotted, the 
phase angle at which each variable is 
to start (in degrees), the size of each 
plot in inches (from left edge to right 
edge, bottom to top, or near to far), 
and the position of the center of the 
range of variation of each plot. 

For the Z axis only, there is also a 



+ 32V 



270U 
— wv — 



JACK 



-JL^ 10/iF 
V 50V 

m 



PEN 




LIFT 


FROM 


COIL 


DIGITAL 


~I20XI 


TO 




ANALOG 




OUTPUT 



rf7 CASE 



linear term that is requested: the con- 
stant K4 sets it. For every plot, the 
parameter T runs from to 100, and 
the Z coordinate has the amount 
K4 X T added to it. Thus if K4 is 1, the 
Z coordinate will have 100 inches 
added to it by the time the plot 
finishes. If the Z size is set to 0, the Z 
coordinate will move linearly away 
from the viewer during the plot. 

The last item requested is a size fac- 
tor. The size of the pattern for all 3 
variables is multiplied by a variable 
G, computed from G = 1 + K5XT, 



MPS3702 



3.3K 



2N3903 



CASE 




Figure 2: Pen lift circuit for use with digital-to-analog converter driver. The PNP tran- 
sistor serves as switch; NPN driver transistor amplifies low-level input for high-voltage 
switch. 



INFINITE BASIC 



RELOCATABLE MODULES FOR THE TRS LEVEL II AND DOS SYSTEMS 
LOAD ANY OR ALL MODULES- FOR $49.95 THE CORE PACKAGE INCLUDES: 

oo STRING PACKAGE o© 

Over 40 BASIC commands including: 

oo Left and right justify, truncate, rotate. Text justification. 

String centering, 
oo Delete or insert substring, Pack strings, Convert to upper 

or lowercase. 



oo MATRIX PACKAGE oo 

Over 30 BASIC commands including: 

oo Matrix Read, Inverse, Transpose, and Identity. 
Simultaneous Equations!!! 

oo Add, Subtract, or Multiply Scalars, Vectors, or Multi- 
dimension arrays!!! 

oo Dynamically Reshape, Expand, Delete Arrays, Change 
arrays in mid-program. 

oo Copy array elements, set arrays to scalar, zero arrays, 
move arrays. 

°o Tape array read and write including string arrays. 

FOR $29.95 more get the oo BUSINESS PACKAGE oo 

co Eliminate round-off error!! Multiple precision packed 

decimal arithmetic. 127-digit max. accuracy 
oo Binary search or sorted arrays. Insert new elements in 

sorted arrays!!! 
oo Automatic page headings, footings, and pagination. 

Includes forced end-of-page. 
oo Automatic hash for record retrieval ! ! And more for your 

professional packages. 

COMMAND PROCESSOR 'COMPROC for $19.95 (DOS only) 

Extend DOS-AUTO command to perform multiple steps either at power-up or as a user command 
Execute a script consisting of a sequence of commands or data from a BASIC command file. 

REMODEL + PROLO AD for $34.95 (Specify 16, 32, or 48K version) 

REnumber any section of a program, MOve program segments, DEIete program lines. 
Combine programs with renumber and merge. Load or save any portion of program from tape. 

DISK SORT PROGRAM 'DOSORT' for $34.95 (Specify 32 or 48K, minimum 2 disk system) 

SORT/MERGE multi-diskette sequential files. Multiple variables and keys. 
Includes machine language in-memory sorts, comparators and string handling. 

COPY SYSTEM TAPES with 'COPSYS' for $14.95 (Non-DOS) 



oo Translate characters, Reverse strings, Verify function, 
Number of occurrences. 

oo Masked string searches for simple or array variables. 
Encrypt or decrypt strings. 

oo Compress/uncompress character string arrays to 6 bits or 
less per character. 

oo AND the famous RACET machine language SORTS. Multi- 
key multivariate and string. Sort 1 000 elements in 9 sec ! ! 

FUTURE oo ADD-ON PACKAGES oo will include 
ooSTATISTICS oo INPUT/OUTPUT oeGRAPHICS oo 

Attn: TRS Add-On OEM's: We can support your special 
hardware add-ons with direct BASIC commands. 
System Houses: We license System House usage of 
oo INFINITE BASIC oo modules. 



Check, VISA, M/CC.O.D. 
Calif, residents add 6% 

Telephone Orders Accepted 
(714) 637-5016 

WHEN ORDERING PLEASE 
ADVISE PUBLICATION SOURCE 

^- RACET COMPUTES -^ 
702 Palmdale, Orange CA 92665 



148 October 1979 © BYTE Publications Inc 



Circle 310 on inquiry card. 



where K5 is the size factor. If K5 is 
-0.01, G will range from 1 to during 
each plot. That means the picture will 
start out full-size, and shrink to a 
point just as the plot finishes. If K5 is 
0, there will be no change in size. 

Use of String Variables 

Some plots take many points; I 
have allowed for 3000, or 1500 X,Y 
pairs. A floating-point representation 



would need 15,000 bytes of storage. 
That is more than I have, so I con- 
verted each variable to character for- 
mat and stored the results as a 
character string, 1 byte per coor- 
dinate instead of 5. The function 
CHR$ will convert a floating-point 
number between and 255 to the 
character format needed for strings. 
The ASC function will perform the 
reverse operation. The program 




Figure 3: Plot of Lissajous pattern produced by BASIC program of listing 1, driving an 
analog recorder. Parameters follow in the order requested by the program. For X: 
cycles =3, phase = f size = 8, position =0; for Y: cycles = 8, phase =0, size =8, posi- 
tioned; for Z: cycles — 5, phase = 0, size — 8, position=30, linear — 0; size factor = 0. 





Figure 4: Spiral plot. Parameters in order are, forX: cycles=4, phase =0, size = 8, posi- 
tion = 0; for Y: cycles = 8, phase = 90, size =8, position =0; for Z: cycles = 0, phase = 0, 
size=0, position=30, linear = 0.5; size f actor =— .01 . 





Figure 5: Plot with cardioid. Parameters are, for X: cycles=3.25, phase = 0, size = 9, 
position = 0; for Y: cycles=3.25, phase = 90, size = 9, position=0; for Z: cycles = 0, 
phase=0, size = 0, position=30, linear = 0.3; size fact or — —0.03. 



scales X and Y to a positive or 
negative number (you must pick sizes 
and distances to keep this number 
within the range of -128 to +127 
units, or 1/Klth of that amount in 
"real space"). This number is biased 
up by 128 (has 128 added to it), which 
is subtracted out when the stored 
number is recovered. 

Miscellany 

Before each plot begins, there is a 
pause to allow the pen to be set (with 
the positioning controls) to a point 
midway between the 2 pictures that 
will result. One run plots both pic- 
tures, the pen lifting as necessary. 
You will need some type of circuit to 
allow one analog output to operate 
the pen lift; mine- is shown in figure 2. 

Lines 840 thru 860 in listing 1 are a 
little feedback "circuit" that adjusts 
the step size in T (the parameter that 
runs from 1 to 100 during a plot) to 
maintain about 2 resolution elements 
of step size on the final plot. If the dif- 
ference between the current and the 
last positions of the pen is larger than 
2, the step size decreases. If the dif- 
ference is less than 2, the step size in- 
creases. Rather than computing the 
square root of the sum of the squares 
of X and Y steps to get the actual step 
size, I merely summed the absolute 
values of the step sizes, which is close 
enough and much faster. This saves 
time that would otherwise be wasted 
plotting the same point over and 
over. 

Even so, this is a very slow pro- 
gram. A plot with 6 loops in it takes 
about 10 minutes to store. Then a pic- 
ture is plotted, and you must wait the 
same length of time for the second 
picture to be plotted. Practical pro- 
duction of 3-dimensional motion pic- 
tures requires a faster program. 

Suitable lenses can be bought from 
the American Science Center, 5700 
Northwest Hwy, Chicago IL 60646. 
The stock number is 95-697, which 
gets you a pair of lenses 23 mm in 
diameter and having a focal length of 
136 mm (that gives a Z0 of 5.35 
inches). The price is $2.70. Cash 
orders require a minimum of $5.00 
and a flat handling charge of $1.00, 
so you will want to order with a 
friend or get something else from this 
very interesting catalog. Edmund 
Scientific Co, 300 Edscorp Bldg, Barr- 
ington NJ 08007 also carries these 
items. ■ 



October 1979 © BYTE Publications Inc 149 



Curve Fitting with 
Your Computer 



Fred R Ruckdeschel 

773 John Glenn Blvd 

Webster NY 14580 



This article is dedicated to the small sys- 
tem users who are faced with multiple vari- 
able data tables and who have a desire to 
curve fit (regress) these data into simple 
functional forms. The basic software prob- 
lems facing such users are: 

1 . The powerful general purpose statis- 
tical packages available on the large 
computers are often not in source 
code (eg: BASIC or FORTRAN) for 
translation to a microcomputer lan- 
guage. 

2. If the packages are available, they are 
often very complicated to use. There is 
a human language barrier. 

3. The large machine software may not 
be directly compatible with translation 
to a small machine language (eg: there 
may be calls for matrix inversions 
which are not internal functions in the 
small system). 



About the Author 

Dr Ruckdeschel is a principal scientist at the Xerox Corporation 
in Webster, New York, where he has been employed for the past 7 7 
years. During this time he has been involved in physics and manage- 
ment. Recently he has turned his interests to microcomputers for 
both data acquisition and personal use. His hobbies include sailing, 
woodworking, digital electronics, programming, and haunting 
computer stores. 



Listing 7 : BASIC program for calculating a least squares parabolic fit to any 
data set having more than three points. 

30 PRINT "LEAST SQUARES CURVE FIT ROUTINE" 

40 PRINTXPRINT 

50 PRINT "THIS PROGRAM CALCULATES A PARABOLIC " 

60 PRINT "LEAST SQUARES FIT TO A GIVEN DATA SET. " 

70 PRINT 

80 PRINT "INSTRUCTIONS" 

90 PRINT " " 

100 PRINT 

110 PRINT "THE NUMBER OF DATA COORDINATES PROVIDED " 

120 PRINT "MUST BE GREATER THAN THREE. OTHERWISE, A " 

130 PRINT "DIVIDE BY ZERO ERROR MAY RESULT." 

140 PRINT 

150 PRINT "INPUT THE NUMBER OF DATA POINTS: ", 

160 INPUT I 

Listing 1 continued on page 152 



4. There are limitations in the types of 
functions fitted (eg: polynomials only) 
in multiple dimensions. 

In the following sections we will discuss 
an approximate approach to the least 
squares fitting of multiple-dimension data. 
The technique presented depends only on 
the availability of a good one-dimensional 
curve fitting routine and requires some 
bookkeeping on the part of the user. Ad- 
mittedly, the approach leads to statistical 
fits which are not optimal, but the ease of 
use and versatility of the method strongly 
counter this negative feature. An example 
will be given which quantitatively indicates 
the magnitude of the shortfall of the fit; the 
results are encouraging. 

A significant advantage to the method to 
be discussed is that it is simple. If users 
understand what their one-dimensional curve 
fitting routine does, or at least understand 
how to use it, then the conceptual and 
practical extension to many dimensions is 
relatively easy. 

For those who have had little experience 
with regressing data into functional forms, 
we will first consider parabolic (second order 
polynomial) approximations to one-dimen- 
sional data using a fairly straightforward 
mathematical analysis. The analysis results 
will then be converted into a simple com- 
puter program which will in turn be used to 
treat a noisy two-dimensional data set 
consisting of 1 21 data points. [Noise results 
from the random fluctuation of experi- 
mental data. . . .BWL-7 This data will be 
collapsed down to a set of nine coefficients 
belonging to the equations which represent 
a two-dimensional polynomial fit to the 
data. Extension to more dimensions will be 
apparent after this exercise. 

Least Squares Fit of a Parabola 

Although the mathematics presented in 
this section is reasonably simple, there are 
some readers who may not enjoy it. Those 
people may advance to the next section 
without great loss. For those interested in 
Nth order polynomial fits, see BASIC Pro- 
gramming for Scientists and Engineers by 



150 October 1979 © BYTE Publications Inc 



TT-ERESAH*AN 
N THE EEflJIlRJL BCCK 




ANNOUNCING 
COMPANION I & II. 

Beneath this beautiful 
teakwood roll-top desk exterior, 
there beats a heart of pure Radio 
Shack TRS-80 Microcomputer. 

But don't let the good looks 
fool you. This beauty's got a 
brain that's right at home in 
your office, home, classroom or 
laboratory. 



Two versions are available; 
each designed around the 
TRS-80 system with video 
monitor, keyboard, cassette 
recorder, expansion inter-face, 
mini-disk system and printer. 
Both include the latest version 
of the TRS-80 disk operating 
system, disk BASIC and Level II 
BASIC as well as the assurance 
of Radio Shack's reputation, 
warranty and national service 
network. 

The Companion I features 
16K of memory, the TRS-80 
Quick Printer I and a single 
mini-disk drive. 

The Companion II highlights 
include 32K of memory, the 
TRS-80 tractor feed line printer 
and dual mini-disk drives. 

Either version can be 
expanded to accommodate 
additional memory and mini- 
disk drives. 



PRODATAJNC. 



And we haven't forgotten the 
brain food either. A full set of 
cassettes, diskettes and paper 
accompanies the clear and 
concise instructions of the 
Companion User's Guide. All 
this brain matter comes 
pre-assembled in a body you can 
love and live with. 

The perfect companions from 
PRODATA. 



These packages are competitively priced at $3,495 and $4,995 FOB Ft. Worth, Texas, and ready for immediate 

delivery. We'll pay the air freight charges on all prepaid orders within the Continental U.S.A. For more information, 

write or call PRODATA, Inc., 98-1 122 Kahapili Street, Aiea, Hawaii 96701, Telephone: 808-488-5348. 

Assembly Office: 3260 Lake Pontchartrain Drive, Arlington, Texas 76016. Dealer inquiries invited. 



Circle 315 on inquiry card. 



BYTE October 1979 



151 



Listing 1 continued: 



170 IF I<3 THEN GOTO 1 10 

180 DIM X(I),Y(I) 

190 PRINT 

200 PRINT "THERE ARE TWO INPUT OPTIONS. ONE ( 1 ) " 

210 PRINT "INPUTS THE DATA POINTS IN COORDINATE " 

220 PRINT "PAIRS, AND THE OTHER (2) ALLOWS ONE TO " 

230 PRINT "FIRST INPUT THE INDEPENDENT VARIABLE " 

240 PRINT "VALUES, LATER FOLLOWED BY THE DEPENDENT " 

250 PRINT "WHICH MODE DO YOU DESIRE? (1 OR 2): ", 

260 INPUT Z 

270 IF Z=2 THEN GOTO 300 

280 IF Z=1 THEN GOTO 390 

290 GOTO 250 

300 FOR M=0 TO 1-1 

310 PRINT M+1 , 

320 INPUT X(M) 

330 NEXT M 

340 FOR M = TO 1-1 

350 PRINT M+1 , 

360 INPUT Y(M) 

370 NEXT M 

380 GOTO 4 30 

390 FOR M=0 TO 1-1 

400 PRINT M+1 , 

410 INPUT X(M),Y(M) 

420 NEXT M 

430 REM BEGINNING OF LEAST SQUARE CALCULATION 

440 A0=1\A1=0\A2=0\A3=0\A4=0 

450 REM U,V,W ARE THE DESIRED COEFFICIENTS 

460 U=0\V=0\W=0 

470 D=0 

480 FOR M=0 TO 1-1 

490 A1=A1+X(M) 

500 A2=A2+X(M)*X(M) 

510 A3=A3+X(M)*X(M)*X(M) 

520 A4=A4+X(M)*X(M)*X(M)*X(M) 

530 BO=BO+Y(M) 

540 B1=B1+Y(M)*X(M) 

550 B2=B2+Y(M)*X(M)*X(M) 

560 NEXT M 

570 A1=A1/I\A2=A2/I\A3=A3/I\A4=A4/I 

580 B0=B0/I\B1=B1/I\B2=B2/I 

590 D=A0*(A2*A4-A3*A3)-A1*(A1*A4-A3*A2)+A2*(A1*A3-A2*A2) 

600 U=B0*(A2*A4-A3*A3)+B1*(A3*A2-A1*A4)+B2*(A1*A3-A2*A2) 

610 U=U/D 

620 V=B0*(A3*A2-A1*A4)+B1*(A0*A4-A2*A2)+B2*(A2*A1-A0*A3) 

630 V=V/D 

640 W=B0*(A1*A3-A2*A2)+B1*(A1*A2-A0*A3)+B2*(A0*A2-A1*A1) 

650 W=W/D 

660 PRINT\PRINT\PRINT 

670 PRINT "FITTED EQUATION IS: " 

680 PRINT 

690 PRINT " Y= " ,$8F4,U," ", 

700 IF V>=0 THEN PRINT "+" , 

710 PRINT J8F4,V,"*X ", 

720 IF W>=0 THEN PRINT "+ ", 

730 PRINT J8F4,W,"*X*X" 

740 REM EVALUATION OF STANDARD DEVIATION 

750 S=0 

760 FOR M=0 TO 1-1 

770 T=Y(M)-U-V*X(M)-W*X(M)*X(M) 

780 S=S+T*T 

790 NEXT M 

800 S=S/(I-1) 

810 PRINTXPRINT 

820 PRINT "STANDARD DEVIATION OF FIT: " , 

830 PRINT ?8F4,SQRT(S) 

840 PRINT\PRINT\PRINT 

850 END 

READY 



W N Hubin (Prentice-Hall, Englewood 
Cliffs NJ, 1978). 

The purpose of doing a particular one- 
dimensional least squares example is to show 
how a curve fitting routine may generally be 
developed using brute force (no tricks) 
techniques which require little deep thought, 
just competent algebra. 

It is always possible to exactly fit a 
reasonably well-behaved data set using a 
carefully chosen polynomial of the proper 
degree (highest power). For example, if the 
independent continuous variable is x (eg: 
age), and the resultant dependent variable 
response is y - f(x) (eg: height), it is legiti- 
mate to write (assuming that the "true" 
function has no poles or discontinuities): 

M-l 
y~f(x)= £ a m x™ (1) 

m=0 

To be sure that this approximation works 
well we may have to let M become infinitely 
large. However, for an / component data set, 
[y }) Xj), where x f is the particular independent 
variable value (eg: the age of a specific per- 
son) and y } the particular response (corre- 
sponding height of that person), the data may 
be exactly fitted using a polynomial of 
degree M— 7 = 1-1. 

The proof of this assertion is simple. 
Assume we do not know the coefficients 
a m . However, for each of the / data points 
we have: 



•v 



i-i 
E 

m=0 



m 
a x 
m 



(2) 



Eachy,- is known. Each xj 71 is known. There 
are thus / (simultaneous) equations in / 
unknowns (the a m ), and equation (2) may 
be exactly satisfied with a proper (and 
unique) choice of a m values (coefficients). 
Thus the data is fitted exactly. 

Although the above conclusion is very 
powerful, it lacks direct applicability in 
many real life statistical situations. For 
example, if there are 20 pieces of data 
containing noise, it would be a little foolish 
to fit a 19th degree polynomial to the data. 
Usually the objective is to smooth out large 
and noisy data sets into curves having only a 
few descriptive constants (coefficients). We 
will consider here only the second degree 
polynomial (parabolic) case: 



y = f(x) =a Q +a-jX +a 2 x 2 



(3) 



The approximation sign is used, since we 
will usually not be able to fit the data 
exactly, given such a restriction on the 



152 October 1979 © BYTE Publications Inc 



NEW FROM 
MOUNTAIN HARDWARE, 

THE APPLE CLOCK. 



NEW UTILITY FOR 
YOUR COMPUTER. 

Until now, there hasn't 
been a Real-Time Clock 
for the Apple II*. The 
Apple Clock from Moun- 
tain Hardware keeps time 
and date in 1 mS increments 
for over one year. On- board 
battery backup keeps the clock 
running in the event of power 
outage. Software controlled interrupts are 
generated by the clock. That means you can 
call up schedules, time events, date printouts 
. . .all in real time on a programmed schedule. 
EASY TO USE. 

The Apple Clock is easily accessed from 
BASIC using routines carried in on-board 
ROM. With it, you can read time and 
program time-dependent functions for 
virtually any interval. From milliseconds to 
days, months or a year. 
PLUG IN AND GO. 

Plug the Apple Clock into a peripheral slot 
on your Apple II and you're ready to go. 




FEATURES. 

• Time and date in 1mS 
increments for periods 
as long as one year. 
• Software for calendar 
:/ and clock routines, as 
well as an event timer 
are contained on on- 
board ROM. 
• Program interrupts. 
• Crystal controlled accuracy 
of ±.001%. 
• On-board battery backup keeps your clock 
in operation even during power outage. 

REAL TIME AT THE RIGHT PRICE. 

At $199 assembled and tested, it's the clock 
your Apple has been waiting for. And, it's 
available now through your Apple dealer. 
Drop in for a demonstration. Or return the 
coupon below. 

A COMPLETE LINE. 

Mountain Hardware also offers a complete 
line of peripheral products for many fine 
computers. 




K Mountain Hardware, Inc. 

5S , 30 ° Harvey West Blvd., Santa Cruz, CA 95060 
(408)429-8600 

Sounds great. 

Send me everything I'll need to know about the Apple Clock. 

I've got a computer. Send me information. 



Address. 



. State. 



_Zip_ 



j *Apple II is a trademark of Apple Computer, Inc. 



Circle 257 on inquiry card. 



BYTE October 1979 



153 



degree of the polynomial. That is, in general 
y f I 2 f(xj). However, intuitively we know that 
there must be a best choice f ortf , a-j and a 2 , 
given some fitting criteria. The criteria often 
used is least squares. We define the least 
squares error as: 

E(a ,a v a 2 ) = Y J \y j -f(x i )} 2 (3a) 
1=0 

where, in this particular case, 

f(x j )=v +a 1 x i + a 2 x i 2 ( 3b ) 



The object is to find a choice for thetf^ 
which gives a minimum value for E. By 
separately taking partial derivatives of equa- 
tion (3a) with respect to a , a-j and a 2 we 
get the following three equations in the 
three unknowns, a , aj and a 2 : 

1-1 
1=0 

1-1 
= Y,\yj- a o- a i x i- a 2 x ?\ x i ( 4b ) 

1=0 



Listing 2a: Sample run of listing 1 in which the data 
was created using y=x. 

RUN 



Listing 2b: Sample run similar to listing 2a } but with y-x . 



RUN 



LEAST SQUARES CURVE FIT ROUTINE 



LEAST SQUARES CURVE FIT ROUTINE 



THIS PROGRAM CALCULATES A PARABOLIC 
LEAST SQUARES FIT TO A GIVEN DATA SET. 

INSTRUCTIONS 



THIS PROGRAM CALCULATES A PARAPOLIC 
LEAST SQUARES FIT TO A GIVEN DATA SET. 

INSTRUCTIONS 



THE NUMBER OF DATA COORDINATES PROVIDED 
MUST BE GREATER THAN THREE. OTHERWISE, A 
DIVIDE BY ZERO ERROR MAY RESULT. 

INPUT THE NUMBER OF DATA POINTS: ?10 

THERE ARE TWO INPUT OPTIONS. ONE (1) 
INPUTS THE DATA POINTS IN COORDINATE 
PAIRS, AND THE OTHER (2) ALLOWS ONE TO 
FIRST INPUT THE INDEPENDENT VARIABLE 
VALUES, LATER FOLLOWED BY THE DEPENDENT 
WHICH MODE DO YOU DESIRE? (1 OR 2): ?1 

1?0,0 

2?1 ,1 

3?2,2 

1?3,3 

5?M 

6?5,5 

7?6,6 

8?7,7 

9?8,8 

10?9,9 



THE NUMBER OF DATA COORDINATES PROVIDED 
MUST BE GREATER THAN THREE. OTHERWISE, A 
DIVIDE BY ZERO ERROR MAY RESULT. 

INPUT THE NUMBER OF DATA POINTS: ?10 

THERE ARE TWO INPUT OPTIONS. ONE (1) 
INPUTS THE DATA POINTS IN COORDINATE 
PAIRS, AND THE OTHER (2) ALLOWS ONE TO 
FIRST INPUT THE INDEPENDENT VARIABLE 
VALUES, LATER FOLLOWED BY THE DEPENDENT 
WHICH MODE DO YOU DESIRE? (1 OR 2): ?1 

1?1 ,1 

2?2,H 

3?3,9 

1?i4 f 16 

5?5,25 

6?6,36 

7?7,^9 

8?8,64 

9?9,81 

10710,100 



FITTED EQUATION IS: 

Y= .0000 + 1.0000*X + .oooo*x*x 



FITTED EQUATION IS: 

Y= .0000 + .0000*X + 1.0000*X*X 



STANDARD DEVIATION OF FIT: 



.0000 



STANDARD DEVIATION OF FIT: 



.0000 



READY 

154 October 1979 © BYTE Publications Inc 



READY 



1-1 
°=Y.\yr a o- Q i x i- a 2^\^ (4c) 

i=0 

These simultaneous equations can be solved 
using Cramer's Rule (see texts on matrix 
algebra) to give: 



° = \ B o( A 2 A 4- A 3 2 ) 

+ Bl (A 3 A 2 - Al A 4 ) 

+ B 2 (A } A 3 -A 2 2 )\/D 

a 1= \ B o( A 3 A 2 - A 1 A 4) 
+ B ] (A A 4 -A 2 2 ) 

+B 2 (A 2 Aj-A A 3 ) J ID 

°2= \ B o( A i A 3~ A 2 2 ) 

+ Bi ( Al A 2 -A A 3 ) 

+ B 2 (A Q A 2 -A 2 )\lD 



(5a) 



(5b) 



(5c) 



where: 



D = A Q (A 2 A 4 -A 3 2 ) 





A ]( A jAj— A jA 2 J 




+A 2 (AjA 3 -A 2 2 ) 


and: 




A o 


= 1 


A s 


1-1 

- £ *,n 

1=0 


B s 


1-1 

= E yfti 

i=0 



(5d) 



These equations are encoded into the pro- 
gram shown in listing 1. Listing 2a shows a 
sample run in which the relation y=x was 
used to create the data. The program cor- 
rectly interpreted the data and returned 
y=x as the fitted function. In this example 
there was no x 2 term. Listing 2b demon- 
strates a similar test run, but this time using 
y=x 2 to create the data. Again, the program 
returns the proper coefficients. 



Listing 2c displays a least squares fit to 
data generated using the function y=x+e } 
where e flips back and forth between +1 and 
—1 ; very noisy data. The regression program 
indicates the fitted functional form to be 
linear with a first power (linear) coefficient 
near unity, and with a standard deviation 
approximately equal to e. When the same 
data sets are run through a standard Nth 
order regression routine,' the coefficient 
values obtained were approximately the 
same as shown in listings 2a and 2b. How- 
ever, significantly different coefficients are 
obtained for the case corresponding to 
listing 2c. The fitted equation given by the 



Listing 2c: Least squares fit to a noisy line: y=x+e. 

RUN 

LEAST SQUARES CURVE FIT ROUTINE 



THIS PROGRAM CALCULATES A PARABOLIC 
LEAST SQUARES FIT TO A GIVEN DATA SET, 

INSTRUCTIONS 



THE NUMBER OF DATA COORDINATES PROVIDED 
MUST BE GREATER THAN THREE. OTHERWISE, A 
DIVIDE BY ZERO ERROR MAY RESULT. 

INPUT THE NUMBER OF DATA POINTS: ?10 

THERE ARE TWO INPUT OPTIONS. ONE (1) 
INPUTS THE DATA POINTS IN COORDINATE 
PAIRS, AND THE OTHER (2) ALLOWS ONE TO 
FIRST INPUT THE INDEPENDENT VARIABLE 
VALUES, LATER FOLLOWED BY THE DEPENDENT 
WHICH MODE DO YOU DESIRE? (1 OR 2): ?1 

1 ?0 , - 1 

2?1,2 

3?2,1 

H?3,*J 

5?4, 3 

6?5,6 

7?6,5 

8?7,8 

9?8,7 

10?9 , 10 



FITTED EQUATION IS: 

Y= -.2727 + 1 .0606*X + 



.0000*X*X 



STANDARD DEVIATION OF FIT: 1.0380 



READY 



October 1979 © BYTE Publications Inc 155 



Poole-Borchers regression is (when run on 
North Star BASIC, Release 2, Version 3): 



y = 0.34545452 + 0.801 51 52x 
+ 0.02727268x 2 



(6) 



These coefficients have some interesting re- 
peating number sequences, but that is not a 
good reason to condemn them. However, 
using the above regression equation and 
calculating the standard deviation between 
the fit predictions and the input data gives a 
standard deviation of 1.0869, as compared 
with a value of 1.0380 obtained using the 
Cramer's Rule algorithm shown in listing 1. 



It is apparent that the program given in this 
article provides a better fit than that of 
Poole and Borchers. The discrepancy is 
probably due to the errors which occur 
when the square is evaluated using x a 2 
(as in Boolean-Borchers algorithm) instead 
of x * x, which is more accurate. 

It is also interesting to note that although 
the two sets of coefficients obtained from 
the two different algorithms are quite dis- 
parate, the fits (as measured by the stand- 
ard deviation) are similar. When data is very 
noisy, a range of equations may fit the data 
to similar precision; the polynomial coeffi- 
cients obtained should not be treated as 
significant to very many decimal places. 



: 




X= .3 




X= .6 




X= .9 




Y 


z 


Y 


z 


Y 


z 


Y 


z 


.0000 


-1 .8770 


.0000 


-2.5664 


.0000 


-3.1383 


.0000 


-3.7272 


.1000 


-1 .4777 


.1000 


-2.2315 


.1000 


-2.8093 


.1000 


-3.3490 


.2000 


-1 .2124 


.2000 


-1.7197 


.2000 


-2.2651 


.2000 


-2.8361 


.3000 


-.6021 


.3000 


-1 .1910 


.3000 


-1 .8521 


.3000 


-2.3384 


.4000 


-.1597 


.4000 


-.6178 


.4000 


-1 .1915 


.4000 


-1 .5902 


.5000 


.6029 


.5000 


-.0026 


.5000 


-.4113 


.5000 


-.7453 


.6000 


1.4153 


.6000 


.5297 


.6000 


.3657 


.6000 


.2876 


.7000 


2.1712 


.7000 


1 .3222 


.7000 


1 .0686 


.7000 


1 .4160 


.8000 


3.0442 


.8000 


2.2567 


.8000 


2.1812 


.8000 


2.6644 


.9000 


4.0435 


.9000 


3.1909 


.9000 


3.0908 


.9000 


3.9098 


1 .0000 


5.0899 


1 .0000 


4.0585 


1 .0000 


4.3529 


1 .0000 


5.4958 



.4 



X= .7 



X= 1 



.0000 


-2 


.1727 


.1000 


-1 


.6902 


.2000 


-1 


.3769 


.3000 


- 


.7970 


.4000 


- 


.3682 


.5000 




.3858 


.6000 




.9666 


.7000 


1 


.8338 


.8000 


2 


.6107 


.9000 


3 


.7345 


1 .0000 


4 


.6834 



.0000 


-2, 


.6813 


. 1000 


-2 


.4391 


.2000 


-2 


.0129 


.3000 


-1 


.3930 


.4000 


- 


.8603 


.5000 


- 


.3129 


.6000 




.5422 


.7000 


1 


.2312 


.8000 


2 


.0625 


.9000 


3 


.0280 


1 .0000 


4, 


.0109 



.0000 


-3. 


.3040 


.1000 


-2 


.8519 


.2000 


-2 


.4 128 


.3000 


-1 


.8814 


.4000 


-1 


.2392 


.5000 


- 


.5648 


.6000 




.2919 


.7000 


1 


.0987 


.8000 


2 


.1666 


.9000 


3 


.3581 


1 .0000 


4 


.5745 



.0000 


-3.8650 


. 1000 


-3.5359 


.2000 


-3.0804 


.3000 


-2.4238 


.4000 


-1.5126 


.5000 


-.5842 


.6000 


.3587 


.7000 


1 .7134 


.8000 


3.0229 


.9000 


4.4793 


1 .0000 


6.0015 


READY 





x= 



X= .5 



X= .8 



.0000 


-2.2148 


.0000 


-2.9732 


.0000 


-3.5062 


. 1000 


-1.9373 


. 1000 


-2.5161 


.1000 


-3.0467 


.2000 


-1 .5422 


.2000 


-2.2357 


.2000 


-2.6141 


.3000 


-1 .0575 


.3000 


-1 .5418 


.3000 


-2.1694 


.4000 


-.4524 


.4000 


-1 .0049 


.4000 


-1 .5072 


.5000 


. 1243 


.5000 


-.4632 


.5000 


-.6622 


.6000 


.8916 


.6000 


.3524 


.6000 


.3193 


.7000 


1.6626 


.7000 


1 .1281 


.7000 


1 .3245 


.8000 


2.3359 


.8000 


2.0464 


.8000 


2.4790 


.9000 


3.2565 


.9000 


2.9854 


.9000 


3.5361 


1 .0000 


4.3737 


1 .0000 


4.0366 


1 .0000 


4.8953 



Listing 3: Two-dimensional data set containing noise. This set was created in a well-defined way such that the fit obtained 
could be compared against the original function. 



156 October 1979 © BYTE Publications Inc 



SPECIAL DELIVERY 



CENTRONICS HODEL 730 HXNIPRXNTET 




'J 



A totally new printer has arrived. It 
delivers some special advantages to small 
business and home computer systems. 
New, expanded paper-handling capabili- 
ties. Excellent print quality and long-run 
reliability. All these high quality features at 
an affordable price is indeed special delivery. 

3-in-l Paper Handling Model 730's 
exclusive three-in-one paper handling sys- 
tem gives you built-in flexibility. Payroll 
checks on pre-printed continuous forms. 
Inventory listings on f anfold. Direct mail 
on cut sheets. General information on roll 
paper. The 730 does it all. 

Exceptional Print Quality Model 730's 
7x7 dot matrix prints clear, legible 
characters — even 
when printing multi- 
ple copies. The 
adjustable print head 
utilizes the same free- 
flight technology as 
Centronics' 700 
Series — the most 




successful line of dot matrix printers in the 
world — to give you longer head life and 
smoother operation. 

Outstanding Reliability The simplic- 
ity of the Model 730's design employs 
fewer parts for higher reliability and less 
maintenance. You get more in-service time 
for your money. 

Compact Design Model 730 packs all 
this performance capability into a stylish 
unit that can fit right on your desktop. It's 
no larger than a portable typewriter and 
weighs less than 10 pounds. 

For all its features, Model 730 is priced 
within the budget of even the most cost- 
conscious systems owner. For more infor- 
mation on the Model 
730, other products or 
employment oppor- 
tunities, write or call 
today: Centronics 
Data Computer Cor- 
poration, Hudson, NH 
03051, (603) 883-0111. 



CENTRONICS PRINTERS 
DELI VERTHE WORD 



Circle 46 on inquiry card. 



BYTE October 1979 



157 



TRS-80 BUSINESS PROGRAMS 

So good, they're guaranteed!!! 

These are the best ... & we're willing to back them up with our software guarantee !* 
Created by Data Access' professional staff, our programs are versatile, comprehensive, 

AND easy to use. 
Using BASIC and ASSEMBLER, they're fast ready to "RUN". They are powerful tools that 

can expedite clerical tasks, and expand management reporting. 



All programs: 

+ Have Data Base Management System 

+ Use ISAM or Hash Access Techniques 

+ Give Instant Record Retrieval 

+ Have Interactive Screen Displays 

+ Use Error Trapping Entry Procedures 

+ Include Thorough Documentation 

+ Provide Comprehensive Reporting 

+ Utilize Fast Assembler Routines 

+ Run under DOS 2.2 

+ Include Complete Support 

+ Run On 2, 3, or 4 Disk Drives 

Online Inventory $600 

Up to 1800 Items on 4 Drives. Distributor/Jobber orientation. Includes invoice printing! 

Point of Sale w/lnventory Control $750 

Complete retail inventory management system. On the Screen: builds sales ticket, price items, checks 
for sale prices and qty's, interactive low stock alerts, allows price & qty changes (w/audit), Cash, Check, 
6 Credit Cards or Company Charge, & Reporting: Daily Ticket Journal, Inventory Transaction Journal, 
Salesman's Report, Stock Status, Profit, & Low Stock Reports. MORE! 

Accounts Receivable $500 

Up to 1200 accounts on 4 Orives.Full Trial Balance, Aging, Credit Checking, Monthly Statements. Also 
prints mailing labels for accounts! 

General Ledger w/Check Writer $500 

Prints Checks in Cash Disbursements JL! 600 Accounts & 2100 Transactions/Month on 3 Drives; 
300/900 on 2! Supports multiple cost/profit centers, user has complete control of formatting. Prints 
Balance Sheet, Income Statement (P&L), Ledgers, Journals, Transaction Reports, Posting Reports ... A 
Total General Ledger System! 

Payroll $500 

Up to 600 employees on 4 Drives! Handles Federal, State, Tips, Dues & Deductions. Complete user 
control of all payroll functions. Prints on the same check as the General Ledger! 

Mailing List $200 

Up to 1800 Names on 4 Drives! Six character alphanumeric key & 4 character select code for each 
record. Sort by key, name, state or ZIP code! 

MANUALS ONLY $20 each 

WRITING YOUR OWN?????? 

Save Days, Weeks, Months with Data Access' proven utility packages. On diskette . . . 

Memory Sort $39 

Speed operation of BASIC programs! VERY FAST in memory assembler sort. Supplied prelinked to load 
at any 4K boundary through 48K. 

Disk Sort Routines $79 

Make the most of disk capacity & speed! Reads random data from disk, performs FAST assembler sort, 
and returns alphanumerically sorted list ready to pass to other program operations in BASIC. Reads & 
sorts 1000 records in less than 5 Minutes! Sorts as many records as can be contained on your disks! 

Data Base Manage w/ISAM $175 

Complete database handling system! ISAM directory; interactive record create, delete, edit, display and 
print; file compress and backup; routines for loading assembler programs from BASIC; disk sort; INKEY 
data entry subroutines; random and sequential access to any record. Interactive data base specification. 
All source included! 



*Dat a Access Corporation guarantees that its programs will load & run, 

and that they are free from programming defects. 

A licensing agreement is required for each installation of the above programs. 

DEALER INQUIRES INVITED 

Call for the name of the dealer in your area, or order direct from: 

Data Access Corporation 

11205 SOUTH DIXIE HIGHWAY 

MIAMI, FLORIDA 33156 

(305) 238-7919 

•TRS-80 is a trademark of Radio Shack. 



This is one of the dangers in curve fitting 
and placing great value on the results, 
especially when mathematically exact algo- 
rithms can be waylaid by calculation error. 

In the next section we will consider how 
to use the one-dimensional least squares 
routine for fits in many dimensions. 

Parabolic Fits in Many Dimensions 

To examine how the one-dimensional 
least squares routine may be used (in ap- 
proximation) in many dimensions, we will 
first consider the two-dimensional case. 

Let X; and y ; - be the independent vari- 
ables, and Zj be the dependent variable. 
The parabolic fit desired is: 



?/ = f(*i,y } ) = b ( x i) + b / (xfri 

+ b 2 (x f )y. 2 



where: 



b = Q 0Q +Q i0 X i +Q 20 X i 



a 0l +Q U X i + Q 2l X i 



b 2= a Q2 +a U X i +Q 22 X i 



(7) 

(8a) 
(8b) 
(8c) 



Ideally we would choose the nine a% m co- 
efficient values such that 

i=0 

is minimized. In other words, we wish to 
minimize the sums of the squares of the dis- 
tances between predicted and actual data 
points. However, if the data is arranged in 
a tabular form, such as shown in listing 3, 
a quasi-least squares fit can be obtained one 
dimension at a time. 

The way this is done is that for each x- 
we regress z ( (the dependent variable) 
against y y - (the independent variable) to ob- 
tain a least squares set of b (x;) } b-j(xj) and 
b 2 (x t -J. Next, we treat b (xj) as a dependent 
variable and regress against x f (the remaining 
independent variable) to get a 00 , a 01 and 
#02 -The same is done for bjfx;) and b 2 (xj). 

For the data shown in listing 3, the first 
regression step yields the b z (x f ) values given 
in table 1. Each coefficient column in 
table 1 is then regressed against x f to give the 
nine coefficients listed in table 2. These 
coefficients may be used with equations 
(8a), (8b) and (8c) to obtain the regression 
indicated by equation (7). 



158 October 1979 © BYTE Publications Inc 



Circle 89 on inquiry card. 



Let your LSI-11* break 

harrier 




With our Bank-Switching family 



In LOCAL mode our memory is functionally just 
like DEC memory. But when you run out of 
memory space you're not lost. Add an inex- 
pensive Bank-Switch Controller (BSC-256) and 
you can go to two megabytes. Add another 
and go to four megabytes. 
So don't get boxed in with other brands of 
LSI-1 1 * memory. Break free. Join the family: 



RMA-032 



RMS-016 



BSC-256 



32K by 16 bit RAM. 
On-board refresh 
16K by 16 bit ROM. 
(Intel 2716) 
The Bank-Switch 
Controller 



$1200 
(Single qty.) 
$300 

(Single qty.) 
$300 
(Single qty.) 



Substantial quantity discounts are available. For a free 
copy of our Bank-Switching manual, call or write on your 
company letterhead. 

Digital Pathways Inc. 

4151 Middlefield Road 

Palo Alto, C A 94306 

(415) 493-5544 

'Registered trademark of Digital Equipment Corporation 




DIGITAL PATHWAYS 



Circle 86 on inquiry card. 



BYTE October 1979 159 



Because we did the regression in two 
steps, the least squares criteria taken as a 
whole haven't been satisfied. Thus the co- 
efficients obtained are not optimal, as will 
be seen shortly. 

It should be noted in passing that the 
blocks of data (for each xj) are equal in 
length. This is not a requirement for validity 
of the technique. What is necessary is that 
there be at least three independent data 
points in each x f block. Otherwise D in 
equation (5d) becomes 0, and a divide error 
will result. Also observe that the x- { and y. 
increments need not be equal or uniform. 
Few restrictions are placed on the data. 

The precision of the regression fit may be 
assessed using the standard deviation asso- 
ciated with the difference between the 
predicted data values and the actual data. 
This gives 0.23, or roughly 3 percent accu- 
racy, which is encouraging. 

The equation used to generate the noisy 
two-dimensional data was: 



z = 6x 2 y 2 — 3xy 2 + 4y 2 — 2x+3y 



(9) 



L9+0.2(RND(0)-0.5) 



The standard deviation of the noise term is 
0.06. Thus the 2 step fitting procedure is 
not as good as it could possibly be; 1 percent 
accuracy could be obtained using the non- 
random part of equation (9); a better fit. 











Standard 


X. 

1 


b (x.) 


b l( x.) 


b 2 (x.) 


Deviation 


0.0 


-1 .8758 


2.9021 


4.0807 


0.05 


0.1 


-2.2677 


3.1672 


4.2439 


0.24 


0.2 


-2.4542 


3.2702 


3.9614 


0.24 


0.3 


-2.7791 


3.7056 


3.5807 


0.24 


0.4 


-2.9875 


3.5408 


3.8676 


0.23 


0.5 


-3.2118 


3.5623 


4.0746 


0.23 


0.6 


-3.4316 


3.5360 


4.5941 


0.24 


0.7 


-3.5456 


3.2876 


5.2208 


0.25 


0.8 


-3.8010 


3.3066 


5.8698 


0.27 


0.9 


-4.0544 


3.1017 


6.9178 


0.28 


1.0 


-4.2911 


3.4786 


7.4185 


0.31 



Table 1: First level regression coefficients. 



'C/n 








1 


2 


Standard Deviation 





-1.9433 


-2.7209 


0.4263 


0.05 


1 


3.0110 


1 .8648 


-1.6931 


0.17 


2 


4.2540 


-3.6091 


6.9833 


0.18 



Table 2: Nine regressed coefficients corresponding to equations 8a, 8b, and 
8c in text. 



It is left to the reader to relate the coeffi- 
cients shown in table 2 to their corres- 
ponding elements in equation (9). Observe 
that the coefficients correspond, but with 
differences often greater than that indicated 
by the standard deviation. 

Extension of the method of stepping 
through the regression, one dimension at a 
time, is simple. It is done by creating a 
hierarchy of "data" tables. For a three- 
dimensional problem involving the regres- 
sion of U = U (x, y, z), tables would be 
created in which x and y are temporarily 
held constant, and z varied. The three first 
level coefficients would then be functions of 
x and y. Next, tables of those three coeffi- 
cients would be compiled in which x is held 
constant and y varied. This would lead to 
nine coefficients, each being a function of 
x. The third level regression would be against 
x and give 27 coefficients. 

I have had opportunity in the past to 
apply this technique to a horrendous engi- 
neering measurement problem involving five 
independent variables (several thousand 
measured data points). Four of the dimen- 
sions were parabolically fitted, one was 
approximated using a fourth order poly- 
nomial. (Note that there is a freedom in the 
form of the fitting function applied in each 
dimension.) In this application, the data 
was regenerated to a standard deviation of 
better than 3 percent, which was more than 
sufficient. Although the fit was not opti- 
mal, the savings in programming time and 
sanity more than compensated for whatever 
error occurred. 

Conclusions 

The multidimensional curve fitting tech- 
nique presented in this article depends only 
on the existence of a good one-dimensional 
least squares routine. The form of the least 
squares fitting function can be different for 
each dimension regressed. Often the form 
can be chosen by either an understanding of 
the causal relationships, or by simply scan- 
ning the data. 

The user who has some familiarity with 
algebra and calculus can generate a least 
squares fit for other functional forms using 
the simultaneous equation technique shown 
herein. Recall that the equations were 
obtained by considering the error to be a 
function of the coefficients, and partial 
derivatives were taken with respect to each 
coefficient. 

In conclusion, this article presents a gen- 
eral techniquefor generating one-dimensional 
least squares fitting algorithms, and shows 
how such algorithms may be used to regress 
multidimensional data." 



160 October 1979 © BYTE Publications Inc 



Build your own microcomputer 

as you learn 
computer technology at home* 



New from NRIt The Most Complete and Up-to-date Home Study Course Ever Offered 



As the microprocessor revolutionizes the 
computer world and microcomputers appear 
almost everywhere, NRI brings you a new, 
convenient, and effective way to keep up with 
this expanding technology It's NRI's Computer 
Technology Course, created and designed exclu- 
sively for learning at home in your spare time. 

Featuring NRI's Exclusive 
Dual Language Microcomputer 

NRI goes beyond book learning to 
give you practical, "hands-on" experience in 
designing circuitry, interfacing components, 
programming, and troubleshooting. As you 
learn, you actually assemble NRI's designed-for- 
learning microcomputer, incorporating the latest 
advances in the state of the art. It looks and 
operates like the finest of its kind, actually does 
more than many commercial units. But NRI 
engineers have designed components and 
planned assembly so it demonstrates important 
principles, gives you working experience in detect- 
ing and correcting problems. And it's yours to 
keep, put to work in your own home or business. 

You also build and keep your own test 
instruments, including a transistorized volt- 
ohm meter and CMOS digital frequency counter. 
And NRI's Discovery Lab® broadens your 
horizons with specialized experiments and 
theory demonstrations. 

The Proven Way 
to Learn at Home 

You don't have to worry with travel, 
classes, or time lost from work when you learn 
the NRI way. As they have for more than 60 





years of teaching technical subjects, NRI brings 
the material to you. You study in your spare time, 
at your convenience, using "bite-size" lessons 
that program material into logical segments for 
easier assimilation. You perform experiments 
and build equipment using kits we supply. And 
your personal NRI instructor is always available 
for consultation should you have questions or 
problems. Over a million students have already 
shown the effectiveness of NRI training. 

Choice of Courses 

Several courses are available, depending 
upon your needs and |™ — — — — 
background. NRI's Master 
Course in Computer 
Technology starts with 
the fundamentals, ex- 
plores basic electronics 
and digital theory, the 
total computer world, 
and the microcomputer. 
The Advanced Course, 
for students already 
versed in electronics 
and general comput- 
ers, concentrates on the 
microprocessor and mic- 
rocomputer: In both 
courses, you build all 
instruments and your 
own computer. 



Send for Free Catalog... 
No Salesman Will Call 

Get the details on these exciting new 
courses in NRI's free, 100-page catalog. Shows 
all kits and equipment, lesson outlines, and full 
information, including facts on other electronics 
courses. Mail the coupon today and well rush 
your catalog. No salesman will ever call. Keep up 
with the latest technology as you learn on your 
own computer. If coupon has been removed, 
write to NRI Schools, Computer Department, 
3939 Wisconsin Ave., Washington, D.C. 20016. 



NRI 

rtnik 



NRI Schools 

McGraw-Hill Continuing 

Education Center 
3939 Wisconsin Avenue 
Washington, D.C. 20016 
NO SALESMAN WILL CALL 
Please check for one free catalog only. 







All career courses 
approved under Gl Bill. 
D Check for details. 



□ Computer Electronics Including 
Microcomputers 

D TV/Audio/Video Systems Servicing 
D Complete Communications Electronics 

with CB • FCC Licenses • Aircraft, 

Mobile, Marine Electronics 

□ CB Specialists Course 

□ Amateur Radio • Basic and Advanced 



□ Digital Electronics • Electronic 
lechnology • Basic Electronics 

□ Small Engine Repair 

□ Electrical Appliance Servicing 
D Automotive Mechanics 

□ Auto Air Conditioning 

□ Air Conditioning, Refrigeration, & Heating 
Including Solar lechnology 



(Plea* Print) 



City/Stale/Zip 

Accredited by the Accrediting Commission of the National Home Study Council 



170-109 



Circle 286 on inquiry card. 



BYTE October 1979 



161 



Event Gueue 



OCTOBER 1979 

October 1-3 
Second Annual Symposium 
on Small Systems, Hilton 
Inn, Dallas TX. The sym- 
posium will consist of a 
blend of paper and panel 
discussions with major em- 
phasis on microcomputer 
applications. Both hardware 
and software topics presen- 
ting state-of-the-art and 
state-of-the-industry aspects 
will be included. Contact 
Gerald Kane, Southern 
Methodist University, Dallas 
TX 75222. 

October 2-4 
NEPCON Central 79, 

O'Hare Exposition Center, 
Rosemont IL. This tenth 
annual exhibition and con- 



ference of electronic and 
microelectronic packaging 
and production equipment 
will feature displays of elec- 
tronic and microelectronic 
materials, hardware, tools, 
supplies and test instru- 
ments. Contact Industrial 
and Scientific Conference 
Management Inc, 222 W 
Adams St, Chicago IL 
60606. 

October 6 
Personal Computer Music 
Festival, Philadelphia Civic 
Center, Philadelphia PA. 
This festival will feature a 
daytime exhibition and fair 
including demonstrations; 
seminars and guest speakers; 
evening concert; and 
multimedia show. Contact 
PACS, POB 1954, 
Philadelphia PA 19105. 



VULCAN = DBMS 

THE PROFESSIONAL DATABASE 
MANAGEMENT SYSTEM 

For 8080/Z80 systems under CP/M or PTDOS 

' VULCAN is a complete database management system that has 
38 powerful, easy to learn, English-like commands to 
manipulate files, records, fields, and scratch-pad variables. 

' VULCAN has a command repertoire which includes such com- 
mands as: SORT, REPORT, APPEND, INSERT, EDIT, 
COPY, REPLACE, LOCATE, DISPLAY, DO, LIST, and 
LOOP. 

' VULCAN structured data records can be selectively chosen for 
processing using complex Boolean, string, or mathematical ex- 
pressions. 

1 VULCAN can be used in interacter or program mode. The pro- 
gram mode uses modern structured command programs to 
combine powerful DBMS operations. 

1 VULCAN is written in assembly language for efficient infor- 
mation processing and requires 36K bytes CP/M system and 
one or more disk drives. 

' VULCAN can accept or store data in standard ASCII files to 
be compatible with BASIC, FORTRAN, etc. 

*VULCAN (CP/M or PTDOS) $490 

Manual only $ 25 



SCDP 

Software Consultation Design 
and Production 

6542 Greeley St. 
Tujunga, CA 91042 (213) 352-7701 

California residents add 6% sales tax. 



October 10 
Invitational Computer Con- 
ference, Newton MA. This 
conference is directed to the 
quantity buyer, and will 
feature the newest develop- 
ments in computer and 
peripheral technology. Con- 
tact B ] Johnson and 
Associates, 2503 Eastbluff 
Dr, Suite 203, Newport 
Beach CA 92660. 

October 14-17 
International Data Pro- 
cessing Conference and 
Business Exposition, Town 
and Country Hotel, San 
Diego CA. Contact Data 
Processing Management 
Association, 505 Busse 
Highway, Park Ridge IL 
60068. 

October 15-18 
Sixth Information Manage- 
ment Exposition and Con- 
ference, New York Coli- 
seum, New York NY. Con- 
tact Clapp and Poliak Inc, 
245 Park Ave, New York 
NY 10017. 

October 15-19 
Distributed Processing, 

George Washington Univer- 
sity, Washington DC. This 
course is designed for 
engineers, computer scien- 
tists and data processing 
managers who need a better 
working knowledge of 
distributed processing 
techniques as applied to 
complex computing pro- 
blems. Contact Continuing 
Engineering Education, 
George Washington Univer- 
sity, Washington DC 20052. 

October 15-19 
CPEUG 79, San Diego CA. 
This is the fifteenth meeting 
of the Computer Perfor- 
mance Evaluation Users 
Group sponsored by the 
National Bureau of Stan- 
dards. Contact Judith G 
Abilock, The MITRE Corp, 
Metrek Division, 1820 
Dolley Madison Blvd, 
McLean VA 22102. 

October 16-18 
Understanding and Using 
Computer Graphics, 

Washington DC. This course 
is for people who are now 
using, or making decisions 
about using computer 



graphics and its role in their 
organization. It will describe 
computer graphics, explain 
what hardware and software 
systems are available and 
give cost and performance 
comparisons. Contact Frost 
and Sullivan, 106 Fulton St, 
New York NY 10038. 

October 17-18 
The Western Computer 
Conference, The Calgary 
Convention Centre, 
Calgary, Alberta. Some of 
the session topics to be 
discussed are distributed 
data processing in the 
natural resources industries; 
growth of the original equip- 
ment manufacturers (OEM) 
market in Canada's western 
provinces; transborder data 
flows, national and interna- 
tional; and use of graphics 
in seismographic and 
geophysical modeling. Con- 
tact Janet Glover, Con- 
ference Co-ordinator, Whit- 
sed Publishing Ltd, 2 Bloor 
St W, Suite 2504, Toronto, 
Ontario CANADA M4W 
3E2. 

October 20-21 
Fourth Annual Tidewater 
Hamfest-Computer Show- 
Flea Market, Cultural and 
Convention Center, Norfolk 
VA. Contact TRC, POB 
7101, Portsmouth VA 
23707. 

October 21-23 
New York State Association 
for Educational Data 
Systems Annual Conference, 

Granit Hotel, Kerhonksen 
NY. The theme of this con- 
ference is Instructional Com- 
puting — Hardware/ 
Software/Courseware. Con- 
tact Mary E Heagney, 9201 
Shore Rd, Brooklyn NY 
11209. 

October 22-23 
Minicomputer Technology, 

George Washington Univer- 
sity, Washington DC. This 
course will cover internal 
operation, programming, 
and performance of 
minicomputers with 
examples drawn from cur- 
rent systems. Contact Conti- 
nuing Engineering Educa- 
tion, George Washington 
University, Washington DC 
20052. 



162 October 1979 © BYTE Publications Inc Circle 326 on inquiry card. 



• 5-S1NI iuiiiu" 
tor users flt 
^Start's m-88 

^SSSgSB *"- " \ hi s high-powered P£g£to ££3?£ »» 

S=SilSS5tili Ige wifh lull documentation is sOTM 

SSiH=S?=S» DISCOUNT PRICE OF $-iCn 

sSlSS^S D ' S lOU. rnmDile r Loader, 

'sa-SfflsssS-iaa TheFortranOomprier,uuo 

Hi?. HS| The Macro Assembler. Editor, and extensive Wary 

&SSSS«SS l^der Editor, and Cross _ so , e ntif.cfunctionsalon OU 

5S4sEs55®85B! ReferenceUtilrtiesalone QU 

aaSSsS^'arSa V— «■ SSJ Associates 

«^-^- te - m ^ r ^ K Broadway Telex: 668-585 

SSSsSS^SS, Mfeboat Associates 

ni.W Klt-f emplato and '™' u £ nd s ,de in sin- 1 1 72 . - o n F 

Fl lppy Disk Wt HQ ^ (ot use ot seconu $12<s0 

cmalc sided b i* I ■-t^i-^ifsiS'^iailiBMIil*** - ' 

g&eddnves 1 ^ ^_... llliJi" 1 * 1 " ~ | 

""^^iw»» 2248 Broads N|^ N 

ogSSS^r^S^ 

casseitetape. * Rad j Shack andTRb-bu d ^^^^^^^^ 




October 22-24 
The Association of Com- 
puter Programmers and 
Analysts Ninth Annual Con- 
ference, Washington DC. 
The general theme of this 
conference is Preparing 
Today for Tomorrow's New 
Technologies. Suppliers of 
software packages and com- 
puter services have been in- 
vited to describe and present 
their products in a series of 
structured presentations. 
Other sessions will cover 
trends in system technology 
and new methodologies for 
sharpening the professional 
skills of both systems 
analysts and programmers. 
Contact DBD Systems Inc, 
1500 N Beauregard St, Alex- 
andria VA 22311. 

October 22-24 
Computers in Aerospace 
Conference II, Hyatt House 
Hotel, Los Angeles CA. The 
conference theme, Computer 
Technology for Space and 
Aeronautical Systems in the 
Eighties, will be carried out 
by a series of panels, invited 



presentations, and con- 
tributed papers which will 
bring computer system 
technologists together with 
specialists in the application 
of embedded computers in 
space and aeronautics. Con- 
tact American Institute of 
Aeronautics and Astro- 
nautics, 1290 Avenue of the 
Americas, New York NY 
10019. 

October 22-25 
ISA/79, O'Hare Exposition 
Center, Chicago IL. The 
conference theme, Instru- 
mentation for Energy Alter- 
natives, will emphasize cur- 
rent practices in instru- 
mentation design and imple- 
mentation. Contact Instru- 
ment Society of America, 
400 Stanwix St, Pittsburgh 
PA 15222. 

October 22-26 
Integrated Circuits for Signal 
Processing, University of 
Waterloo, Waterloo, 
Ontario, Canada. This 
course is designed to meet 
the needs of electronic 



design engineers, 
supervisory-level engineers 
and technical managers who 
are involved in hardware- 
oriented programs and 
desire an up-to-date 
knowledge of modern inte- 
grated circuits for signal 
processing. Contact ICSP 
1979, Electrical Engineering 
Dept, University of 
Waterloo, Waterloo, 
Ontario, CANADA 
W2L 3G1. 

October 22-26 
Pascal Programming for 
Mini and Microcomputers, 

Ramada Inn, Worburn MA. 
Sponsored by the Poly- 
technic Institute of New 
York and the Institute for 
Advanced Professional 
Studies, this workshop will 
include application 
examples, lectures, informal 
sessions with the instructor, 
as well as individual and 
group programming ses- 
sions. Contact Professor 
Donald D French, Institute 
for Advanced Professional 
Studies, One Gateway 



Center, Newton MA 02158. 

October 24-26 
Design and Selection of 
Minicomputer Systems, 

George Washington Univer- 
sity, Washington DC. The 
course will cover all aspects 
of systems implementation 
using microcomputers: hard- 
ware selection and confi- 
guration, software design 
and programming, peri- 
pheral equipment, inter- 
facing with special equip- 
ment, and operations 
management. Contact Con- 
tinuing Engineering Educa- 
tion, George Washington 
University, Washington DC 
20052. 

October 28-30 
The Tenth North American 
Computer Chess Champion- 
ship, Detroit Plaza, Detroit 
MI. Sponsored by the 
Association for Computing 
Machinery, this is a 4 round 
Swiss-style tournament with 
the first 2 rounds to be 
played on October 28th (1 
PM and 7:30 PM), 1 on 



WORD PROCESSING 

TEXTWRITER IS THE ULTIMATE TEXT FORMATTER 
For CP/m, TRS-80, Northstar & Micropolis 

CONTRACTS & SPECIFICATIONS • PERSONALIZED FORMLETTERS 



Standard paragraphs or sections stored in 
files and inserted by name when printed 

• BOOKS & ARTICLES 

Footnotes collected & printed at page 
bottom, chapters kept in separate files 
chained together when printed 



Names, addresses, etc. replaced by entries 
from a mail list file or from the keyboard 

REPORTS & MANUALS 

Table of contents & alphabetized index 
printed automatically 



Formats files created by your editor 
Available on all common 8" & 5 1 A" disks 
printed manual in 3-ring binder 



Works with any terminal & printer • Written in assembly language for high speed 

Versions for CP/m, TRS-80 CP/m, Northstar DOS and Micropolis MDOS • Fifty page 



Ask Your Dealer For A Demons t rat ion ^X^ or Further ^^S^ 



Textwriter III $125 

Manual alone - $15 

Add $2 per order for shipping 

Foreign airmail $7.50 

$1 extra UPS COD 

California residents add 6%% sales tax 



W- 



'^JL\ naturally © 

life bug free 

1492 Windsor Way, Livermore, CA 94550 



164 October 1979 © BYTE Publications Inc 



Circle 295 on inquiry card. 



October 29th (7:30 PM) and 
the last round on Tuesday, 
October 30th (7:30 PM). 
Contact Monroe Newborn, 
McGill University, School of 
Computer Science, 805 Sher- 
brooke St W, Montreal PQ, 
CANADA H3A 2K6. 

October 29 
Modern Software Develop- 
ment Techniques for 
Managers, George 
Washington University, 
Washington DC. The pur- 
pose of this course is to pro- 
vide managers who are in- 
volved with in-house soft- 
ware development, or for 
those who contract out soft- 
ware needs, with the techni- 
ques of modern software 
development. Contact Con- 
tinuing Engineering Educa- 
tion, George Washington 
University, Washington DC 
20052. 

October 29 - November 2 
Applied Interactive Com- 
puter Graphics, University 
of Maryland, College Park 
MD. This course is designed 



to cover the most important 
facets of graphics that are 
necessary to develop general 
graphic applications. 
Systems considerations are 
stressed, including con- 
figuration selection criteria 
and the pros and cons of 
off-the-shelf software. The 
most important factors and 
techniques are described for 
hardware, software and 
geometric modeling. Contact 
UCLA Extension, 10995 Le 
Conte Ave, Los Angeles CA 
90024. 

October 30-31 
Eleventh Anniversary Pro- 
fessional Training Con- 
ference, Hyatt Regency — 
O'Hare, Chicago IL. The 
conference theme, Excelera- 
tion: Expanding the Training 
Spectrum... for Today and 
Tomorrow, will deal with 
such topics as data proces- 
sing, office automation, 
resources from space, the 
economy, and a wide 
variety of training and 
management issues. Contact 
Advanced Systems Inc, 1601 



Tonne Rd, Elk Grove 
Village IL 60007. 

October 31 - November 1 
Interface West, Anaheim 
Convention Center, 
Anaheim CA. This third an- 
nual west coast small com- 
puter and office automation 
systems conference and 
exposition will feature over 
100 company exhibits and 
60 conference sessions cover- 
ing a variety of data pro- 
cessing, word processing, 
data communications, 
management hardware, soft- 
ware and service topics. 
Contact the Interface 
Group, 160 Speen St, Fram- 
ingham MA 01701. 



NOVEMBER 1979 



November 1 
Invitational Computer Con- 
ference, Cherry Hill NJ. See 
October 10th for details. 

November 5-7 
Thirteenth Asilomar Con- 



ference on Circuits, Systems 
and Computers, Asilomar 
Hotel and Conference 
Grounds, Pacific Grove CA. 
Contact Roger C Wood, 
Electrical and Computer 
Engineering Dept, University 
of California, Santa Barbara 
CA 93106. 



November 5-8 
Electronics Production 
Engineering Show, Kosami 
Exhibition Center, Seoul 
Korea. This international 
industrial exposition will be 
devoted to the needs of 
manufacturers of electronic 
products in Korea. Contact 
Expoconsul, Clapp and 
Poliak International Sales 
Division, 420 Lexington 
Ave, New York NY 10017. 

November 6-8 
Midcon/79 Show and Con- 
vention. O'Hare Exposition 
Center and Hyatt Regency 
O'Hare, Chicago IL. Contact 
Electronic Conventions Inc, 
999 N Sepulveda Blvd, El 
Segundo CA 90245. 







»XIT€X MORSE TRANSCEIVER 



MRS100 FEATURES: 

• Connects directly with any ASCII or Baudot 
Teletype®/Terminal 

• Operates from 1 to 150 WPM with Auto- 
Sync. 

• Displays WPM rate of copied signal plus 
FIFO buffer status. 

• Contains a built-in 80 Hz bandpass filter 
and sidetone oscillator. 

$295 Assembled & Tested • $225 Complete Kit • $95 Partial Kit 




NEW FROM XITEX... ABM-100 
Universal Converter ASCII • Baudot • Morse 
The ABM-100 is a universal code converter 
for translating between ASCII and Baudot, 
or between Morse and ASCII (or Baudot). 
Also used as a TTY® speed converter. 
Assembled and tested the ABM will operate 
from a single +5V supply and sells for $129. 
Write for complete details 



Circle 392 on inquiry card. 



October 1979 © BYTE Publications Inc 165 



November 6-8 
Institute of Electrical and 
Electronic Engineers (IEEE) 
Third International Con- 
ference on Computer Soft- 
ware and Applications, The 
Palmer House, Chicago IL. 
Contact IEEE Computer 
Society, POB 639, Silver 
Spring MD 20901. 

November 6-8 
Third Digital Avionics 
Systems Conference, Fort 
Worth TX. This conference 
will probe the expectations 
and challenges of the digital 
revolution in avionics 
systems. Contact John C 
Ruth, Technical Program 
Chairman, POB 12628, Fort 
Worth TX 76116. 

November 12-14 
Computer Cryptography, 

The George Washington 
University, Washington DC. 
The objective of this course 
is to provide each partici- 
pant with a working 
knowledge of the use of 
cryptography in computer 
applications. Contact 



Continuing Education, 
George Washington Univer- 
sity, Washington DC. 
20052. 

November 14-16 
International Micro and 
Mini Computer Conference, 

Astro Village, Houston TX. 
This conference concerns 
micro and mini computer 
systems, a survey of the 
range of current applications, 
and exploration of potential 
areas for future develop- 
ment. Emphasis will be 
placed on technical papers 
and exhibits. Contact Dr S 
C Lee, School of Electrical 
Engineering and Computer 
Sciences, University of 
Oklahoma, Norman OK 
73019. 

November 15 
Invitational Computer Con- 
ference, Southfield MI. See 
October 10th for details. 

November 28-30 
Business and Personal Com- 
puter Sales Expo '80, 
Philadelphia Civic Center, 



MICROTEK 

OUTPERFORMS 
SUPER BRAIN 




CHECK 
THE CHART 



SEE PAGE 19 



Philadelphia PA. Contact 
Produx 2000 Inc, Roosevelt 
Blvd and Mascher St, 
Philadelphia PA 19120. 

November 29-30 
Metric Management 
Workshop, Dallas North 
Park Inn, Dallas TX. The 
workshop is designed to 
help personnel at all levels 
plan and implement a cost- 
effective transition to metric 
in their company. The ses- 
sions will cover establishing 
a metric plan and strategy, 
assigning responsibility for 
the transition within the 
existing organizational struc- 
ture, and developing a sensi- 
ble approach to controlling 
conversion costs. Contact 
Len Boselovic, ANMC, 1625 
Massachusetts Ave NW, 
Washington DC 20036. 



DECEMBER 1979 



December 3-5 
Implementing Cryptography 
in Data Processing and 
Communications Systems, 

New York NY. Going 
beyond an introduction to 
cryptographic systems, the 
seminar will stress imple- 
mentation of the data en- 
cryption system (DES) 
and address public key 
implementation considera- 
tions. Contact Ms Jansen, 
Cryptotech, 12 State Rd, 
Bellport NY 11713. 

December 3-5 
Winter Simulation Con- 
ference, Holiday Inn, 
Embarcadero, San Diego 
CA. This conference will 
feature papers and panel 
discussions on discrete and 
combined (discrete and con- 
tinuous) simulations. Con- 
tact Professor Robert E 
Shannon, University of 
Alabama in Huntsville, 
School of Science and 
Engineering, POB 1247, 
Huntsville AL 35807. 

December 3-5 
COMDEX 79, MGM Grand 
Hotel, Las Vegas NV. This 
conference and exposition 
for third party sellers of 
computer systems, word 
processing systems, 



peripherals and software 
packages and media will 
focus on solutions to 
business problems normally 
encountered in structuring a 
successful dealership and the 
operational aspects of the 
dealership from both the 
supplier and customer side. 
Contact The Interface 
Group, 160 Speen St, Fram- 
ingham MA 01701. 

December 10-12 
Project Management for 
Computer Systems, Chicago 
IL. This seminar will illus- 
trate techniques for plann- 
ing, implementing, install- 
ing, and controlling projects. 
Contact The University of 
Chicago, 1307 E 60th St, 
Chicago IL 60637. 

December 10-13 
1979 Fall DECUS US 
Mini/Midi Symposium, San 

Diego CA. This symposium 
is an opportunity for Digital 
Equipment Computer users 
to participate in a technical 
exchange. Contact DECUS, 
One Iron Way, MR2-3, 
Marlboro MA 01752. 

December 10-14 
Institute of Electrical and 
Electronic Engineers (IEEE) 
Computer Society's Tutorial 
Week 79, Hotel Del 
Coronado, San Diego CA. 
Fifteen different 1 day 
seminars will be offered 
throughout the week. Con- 
tact IEEE Computer Society, 
POB 639, Silver Spring MD 
20901. 



In order to gain optimum 
coverage of your organiza- 
tions computer conferences, 
seminars, workshops, 
courses, etc, notice should 
reach our office at least three 
months in advance of the 
date of the event. Entries 
should be sent to: Event 
Queue, BYTE Publications, 
70 Main St, Peterborough 
NH 03458. Each month we 
publish the current contents 
of the queue for the month of 
the cover date and the two 
following calendar months. 
Thus a given event may ap- 
pear as many as three times in 
this section if it is sent to us 
far enough in advance. 



166 October 1979 © BYTE Publications Inc Circle 209 on inquiry card. 



PEfiQOM SAMPLER 




For your SS-50 bus computer — the 
CIS-30+ 

• Interface to data terminal and two cas- 
sette recorders with a unit only 1/10 
the size of SWTP's AC-30. 

• Select 30, 60, or 120 bytes per second 
cassette interfacing, 300, 600 or 1200 
baud data terminal interfacing. 

• Optional mod kits make CIS-30+ work 
with any microcomputer. (For MITS 
680b, ask for Tech Memo TM-CIS- 
30+— 09.) 

• KC-Standard/Bi-Phase-M (double fre- 
quency) cassette data encoding. De- 
pendable self-clocking operation. 

• Ordinary functions may be accom- 
plished with 6800 Mikbug™ monitor 

• Prices: Kit, $79.95; Assembled, 
$99.95. 

Prices include a comprehensive instruction 
manual. Also available: Test Cassette, Re- 
mote Control Kit (for program control of 
recorders), IC Socket Kit, MITS 680b mod 
documentation, Universal Adaptor Kit 
(converts CIS-30+ for use with any com- 
puter). MIKBUG®Motoro!a, Inc. 



In the Product Development 
Queue . . . 

Coming PDQ. Watch for announce- 
ments. 

6809 Processor Card — With this SS-50 
bus PC board, you'll be able to upgrade 
with the microprocessor that Motorola 
designers describe as the "best 8-bit 
machine so far made by humans." 

The Electric Crayon™ — This color 
graphics system includes its own fi? and 
interfaces to virtually any microcomputer 
with a parallel I/O port. 

Printer Interface — For your TRS-80™. 
Interface any serial RS232 printer to your 
TRS-80™ with this system. 



™ELECTRIC WINDOW, ELECTRIC CRAYON, Pilon- 
30 and Pilon-10 are trademarks of Percom Data 
Company, Inc. 

TRS-BO is a trademark of Tandy Corporation and Radio 
Shack which has no relationship to Percom Data Company. 

Orders may be paid by check or money order, 
or charged to Visa or Master Charge credit 
account. Texas residents must add 5% sales 
tax. 




For your data storage — Pilon-30™ and 
Pilon-1 0™ data cassettes 

• Orders-of-magnitude improvement in 
data integrity over ordinary audio cas- 
settes. 

• Pilon-coated pressure pad eliminates 
lint-producing felt pad of standard 
audio cassettes. 

• Smooth pilon coating minimizes erra- 
tic tape motion. 

• Foam pad spring is energy absorbing. 
Superior to leaf spring mounted pad 
which tends to oscillate and cause flut- 
ter. 

• Five-screw case design virtually pre- 
cludes deformation during assembly. 

• Price: $2.49. 




For your S-100 computer— the CI-812 

• Both cassette and data terminal inter- 
facing on one S-100 bus PC board. 

• Interfaces two recorders. Record and 
playback circuits are independent. 

• Select 30, 60, 120, or 240 bytes per 
second cassette interfacing, 110 to 
9600 baud data terminal interfacing. 

• KC-Standard/Bi-Phase-M (double fre- 
quency) encoded cassette data. De- 
pendable self-clocking operation. 

• Optional firmware (2708 EPROM) 
Operating System available. 

• Prices: kit. $99.95; assembled, 
$129.95. 

Prices include a comprehensive instruction 
manual. In addition to the EPROM Operating 
System, a Test Cassette, Remote Control Kit 
(for program control of recorders), and an IC 
Socket Kit are also available. 



CASSETTE SOFTWARE 

For 8080/Z-80 /xCs . . . 

BASIC ETC — Developed by the co- 
authors of the original Tiny BASIC, BASIC 
ETC is easy to use yet includes com- 
mands and functions required for power- 
ful business and scientific programs as 
well as for hobby applications. 9.5K bytes 
of RAM. 1200-baud cassette and 42-page 
user's manual $35.00 

Cassette Operating System — EPROM 
(2708) COS for the Percom CI-812 dual 
peripheral interfacing PC card . . $39.95 

If you're programming on a 6800 ^C, 
you'll want these development and de- 
bugging programs written by Ed Smith of 
the Software Works: 

Disassembler/Source Generator— Dis- 
assembles SWTP Resident Assembler, 
TSC Mnemonic Assembler/Text Editor or 
Smoke Signal Mnemonic Assembler/Text 
Editor and produces compacted source 
code suitable for re-editing. Prints or dis- 
plays full assembly-type output listing. 
4K bytes of RAM. 
(Order M68SG) $25.00 

Disassembler/Trace — Use to examine 
(or examine and execute) any area of 
RAM or ROM. "Software-single-step" 
through any program, change the con- 
tents of CPU or memory location at any 
time, trace subroutines to any depth. 
2.3K bytes of RAM. 

(Order M68DT) $20.00 

EPROM Support/Relocator Program — 
This program relocates a program in any 
contiguous area of RAM or ROM to any- 
where in RAM. Use to assemble and test 
programs in RAM, adjust programs for 
EPROM operating addresses and then 
block move to your EPROM burner ad- 
dress. 952 bytes of RAM. Loads at hex 
1000. 

(Order M68EP) $20.00 

Relocating Assembler & Linking Loader 
(M68AS) $50.00 

Relocating Disassembler & Segmented 
Source Text Generator (M68RS) $35.00 

Americana Plus — 14 tunes for the New- 
tech Model 68 Music Board in machine 
language ready to load and run. Cassette 
compatible with Percom CIS-30+ and 
SWTP AC-30. Order MC-1SW . . $15.95 

HARDWARE 

Newtech Model 68 Music Board — Pro- 
duces melodies, rhythms, sound effects, 
morse code, etc. from your programs. 
Includes manual with BASIC for writing 
music scores and assembly language 
routine to play them. Installs in SWTP I/O 
slot. Assembled & tested $59.95 

The Percom ELECTRIC WINDOW™ — 

Memory-resident and programmable, 
this video display character generator 
board for your SS-50 bus displays up to 
24 80-character lines. Features dual 
character generators, dual-intensity 
high-lighting. One programmable regis- 
ter controls scrolling. Compatible with 

standard video monitors $249.95 

SS-50 Prototype Cards: 

Large card (up to 70 40-pin ICs) $24.95 

I/O size card $14.95 




PERCOM™ 'peripherals for personal computing' 



PERCOM DATA COMPANY, INC. 

DEPT. B 

211 N.KIRBY - GARLAND, TX. 75042 



To order products or request additional lit- 
erature, call Percom's toll-free number: 
1-800-527-1592. For detail technical in- 
formation call (214)272-3421. 



Circle 306 on inquiry card. 



BYTE October 1979 



167 



Low-Level Program 
Optimization: 

Some Illustrative Cases 



James Lewis 

President 

Micro Logic Corp 

POB 174 

Hackensack NJ 07602 



A program or subroutine 
can usually be modified so 
that it requires less time or 
space for execution. 
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii 

The above observation about opti- 
mization suggests that a program or 
subroutine can usually be changed, so 
that it either runs faster or takes up 
less memory space, and one can often 
accomplish both at the same time. 

Programs can be optimized for 
other things, such as readability, 
maintainability, structure, etc. This 
article, however, stresses optimiza- 
tion for time and space. If a program 
written for a microprocessor can be 
made shorter using space optimiza- 
tion, less memory can be used, or 
more functions can be packed into the 
same memory. Either way, optimiza- 
tion pays off. If the program can be 
made to run faster, more functions 
can be performed in the same amount 
of time. In fact, optimization can 
make the difference between whether 
or not an application of a micro- 
processor is feasible. 

A distinction can be made between 
2 types of optimization techniques. 
One is code optimization and the 
other is algorithmic optimization. 
Code optimization involves concen- 
trating on the structure of the actual 
code on a low level. This includes 
such operations as reordering instruc- 



tion sequences and combining 2 
instructions into 1 instruction. Algo- 
rithmic optimization is on a high level 
and involves rethinking the whole ap- 
proach to a program or section of a 
program. This is much more general 
and powerful than code optimization, 
but its rules cannot easily be written 
down. It takes an experienced pro- 
grammer or system designer to per- 
form algorithmic optimization effec- 
tively. Examples of code optimization 
tricks will be given below. 

In the event that a program cannot 
be modified so that both space and 
time are lessened, there is usually the 
possibility of a trade-off. That is, if 
space is decreased, time will increase, 
and if time is decreased, space will 
increase. Only the particular situa- 
tion can determine which route to 
take. 

How much optimization is possi- 
ble? Experience has shown that upon 
careful analysis a first draft program 
can typically be reduced by as much 
as 50 percent or more in terms of 
memory space. Time optimization is 
another story. Some programs can be 
accelerated at the expense of using 
more memory. However, significant 
time reductions can usually be made 



About the Author 

James Lewis is president of Micro Logic 
Corp. His company has done microprocessor 
applications ranging from laser-beam con- 
trollers to chemical-analyzer systems. Their 
development lab is in Hackensack N]. 



at little expense of memory; in fact, 
there may even be a savings of 
memory. 

How much optimization should be 
done? In the process of optimizing a 
program, it becomes harder and 
harder to discover more program 
reductions. How far one should go 
depends on the relation between the 
cost of the programmer's time and the 
savings due to optimizations. 

The process of optimization has 
fringe benefits. In analyzing a pro- 
gram, the programmer gains a clearer 
picture of how it works and often 
finds bugs. It is clear that a good soft- 
ware engineer should spend some 
time optimizing code. 

Before discussing the techniques 
themselves, it should be pointed out 
that not all of the ideas mentioned are 
always beneficial. For example, one 
of the tricks reduces the elegance of 
the subroutine structure. If this type 
of elegance is desired, perhaps the 
trick should not be used. 

The ideas presented are applicable 
to most microprocessors. They are 
intended for use on assembly 
language programs, although some of 
them apply to other languages. An 
English assembly language is used in 
the examples for generality. Note that 
the command CALL SUB means push 
the return address on the stack and 
then jump to the subroutine. 

The code optimization examples 
will usually be presented in the 
following format: 



168 October 1979 © BYTE Publications Inc 



''v'lVr™?*- '■"- 

.' I, ■- • •• 

.-„ . ,.,..,- 

■..."■ .',:•:' ;,..; 






<v- '''"'■*" oSi'ii.'rilsi 

KftBBXl 
I SHE 

;■'•■ .; "". 

.fiMftjB 



Wad Processors are here. Just thumb 
through the pages of this magazine. 
There are at least five different com- 
panies selling them. So, which one's for 
you? How do you judge the differ- 
ences? And what about cost. Are you 
willing to pay the 300 plus dollars that 
some of the companies are asking? 

Well go ahead and compare! AU- 
TOTYPE comes out ahead in EVERY 
category! 

Features? AUTOTYPE has more pow- 
erful features than ANY other Word 
Processor on the market. But, don't 
take our word. Go ahead, compare! 
AUTOTYPE has an exclusive MACRO 
programming capability. No other Word 
Processor can make that claim. AU- 
TOTYPE also has a scratch Holding 
Buffer. Again, no one else even comes 
close. 

Price? AUTOTYPE beats 'em all! With 
a price tag of $195, AUTOTYPE is well 
below the competition. But, again, don't 
just take our word. Go ahead, look for 
yourself. Then fill out the order form 
Del ow to start processing wo r ds instea d 
of using a word processor! 

CAN I MOVE PARAGRAPHS 
AROUND? 

YES! AUTOTYPE has a Holding Buffer 
that can be used to save any amount of 
text and then Unhold it to the location 
you want. AUTOTYPE even allows you 
to do multiple Unholds! 

CAN I MERGE CUSTOMERS 
NAMESINTO LETTERS? 

YES! AUTOTYPE contains a "merge" 
character that may be placed any- 
where in text. Then, at the time text is 
printed, a separate file may be merged 
into the letter and then printed! An- 
other feature that NO OTHER WORD 
PROCESSOR has! 

CAN I ENTERTEXTIN SOME OTHER 
FORMAT THAN 64 CHARACTERS 
WIDE? 

YES! AUTOTYPE has a screen redi- 
mension command. The screen can be 
set from 16 characters wide to 120 
characters wide. There's even horizon- 
tal scrolling to view the text! Once more, 
we're far beyond the competition! 

CAN IT HANDLE TEXT LARGER 
THAN MY COMPUTERS MEMORY? 

YES! Most other Word Processors de- 
mand that the entire text be inside the 
computer. AUTOTYPE allows you to 
"spool" your text from the disk. This 
means that you can have edit files that 
are over 200 type written pages long!! 

CAN IT UNDERLINE? 
CAN IT BOLDFACE? 
CAN IT INDENT? 
CAN IT HYPHENATE? 

YES! YES! YES! YES! AUTOTYPE 
has ALL the standard Word Processor 
features including underlining text, 
boldface printing and paragraph in- 
dentation. AUTOTYPE also has soft 
and hard hyphens. Soft hyphens are 
used at the end of lines and disappear 
if moved! 

WHAT ABOUT INSERTING IN THE 
MIDDLE OF A WORD? 

Certainly! AUTOTYPE allows inserting 
anything anywhere! You can move 
single letters or entire chapters right 
into the middle of any word. Now 
THAT'S POWER! 

Circle 174 on inquiry card. 






A'.;jv,i:: '•;■'' 



m 



r-* tor ,™r..[., ;■-■ fill 



rv^.;.: £?mAW*,\\" 



CAN IT SEARCH AND REPLACE? 

YES! But, there's more! AUTOTYPE al- 
lows simple searches or search and re- 
place. AUTOTYPE also allows wild 
card characters in the search string for 
probable matching! A very simple fea- 
ture that AUTOTYPE makes very pow- 
erful! 

CAN IT DO AUTOMATIC PAGE 
NUMBERING AND TITLING? 

Of Course! Any length title up to the 
current line length. Page numbers can 
start anywhere. And if that's not 
enough, the number of blank lines 
below the title is adjustable! 

DOES IT HAVE "DYNAMIC" PRINT 
FORMATTING? 

OH YES! And with a flare! The pages 
that you see printed here were all 
printed from the same file. Only the print 
MACRO was altered! What's more, 
they were all printed on a standard se- 
rial printer. Complete "dynamic" print 
formatting can be accomplished with 
NO alteration of text!! Let's see the 
competition make that claim! 

CAN IT DO SUBSCRIPTS AND 
SUPERSCRIPTS? 

YES! Once again, AUTOTYPE has the 
features to be called a true proces- 
sor of words and not just another word 
processor. 

CAN IT VERTICAL TAB? 

YES! And do negative vertical tabs to 
the top of page also! This is invaluable 
for two column printing. 

CAN YOU ADJUST THE INDENT, 
LINE LENGTH AND 
JUSTIFICATION? 

COMPLETELY! Either in the text itself, 
by manual formatting commands or 
with a print MACRO. Only AUTOTYPE 
gives you that kind of choice! 

WILL IT EXECUTE A SERIES OF 
COMMANDS AUTOMATICALLY? 

YES! That's one of AUTOTYPE'S stan- 
dard features. No other Word Proces- 
sor has the ease of use or the powerful 
commands that AUTOTYPE has. 

ARE THE TABS ADJUSTABLE? 

All tab stops are displayed graphically 
with a simple command. Tab removal 
and setting are simple cursor move- 
ments and a single key command! No 
more "guessing" where your tabs are 
set. They're all laid out in front of you! 

HOW MUCH DOES AUTOTYPE 
COST? 

$195. This question is the easiest to 
answer. It's simple. We want you to use 
your computer to its fullest extent. And 
we want you to be able to do it at a 
reasonable price. This is the one area 
where our competition is way ahead 
of us!! They simply charge more than 
we do! 

HOW DO I ORDER? 

We thought you'd never ask! Just fill 
out the order form below and mail to 
INFINITY MICRO. Or call us directly 
and place your order. It'll be shipped 
the same day. 




WORD PROCESSING 
POWER IS HERE! 
With AUTOTYPE© 



Mall To: 

INFINITY MICRO 

P.O. BOX 4627 

SANTA CLARA, CA 95050 

(408) 988-1867 

VIDEO 

□ Memory mapped Video at CC00 
hex. as 64 characters by 16 lines. 
Processor Tech or equivalent. 

□ *Cursor addressable terminal. 
(ADM-3A) 

□ *Cursor addressable terminal. 
(HAZELTINE 1500) 

DISK 

□ CP/M on IBM standard 8" 

□ CP/M on Micropolis MOD I 

□ CP/M on Micropolis MOD II 

□ CP/M on North Star 

□ CP/M on Double Density 8" 
Please specify Manufacturer. 



ADDRESS 
CITY 



_ZIP 



Please ship AUTOTYPE disks 

and manuals immediately! Please find 

enclosed $ @ $195/each. 

* Available Nov-Dec of 1979 
Copyright© 1979 Infinity Micro 



BYTE October 1979 



169 



"CRT INTERFACES" 
black ' white/colon 

Monitors * Combination Rcvr/monitor sets 
* Modulator kits • B-W Cameras * Color 
Cameras * Audio Subcarrier kits * Parts 




WRITE or PHONE for DETAILS & PRICING. 



DIAL: 402-987-37711 



Dealers welcomed. Well established program. 



J3-B ATV Research g^'Ctar. 

Broadway i» /J.^s) NE. 68731 



Circle 19 on inquiry card. 




The best choice 
in mainframes ! 



• SIOO CARD FRAME 

• 22 MH* 12" CRT MONITOR 

• 18 AMP POWER SUPPLY 

• UPPER & LOWER CASE 
ASCII KEY BOARDS 



• AXIAL BLOWER 

• ASSEMBLED & TESTED 

• READY FOR YOUR CARDS 

• S995.00 



VER Y ATTRACTIVE O.E.M. AND 
DEALER DISCOUNTS AVAILABLE. 



•Ml INFINITE INCORPORATED 

Celebrating Our Uth Year. 
819 E- STRAWBRIDGE, MELBOURNE, FL 32901 - (305) 724-1588 



Circle 173 on inquiry card. 



HAZELTINE 
1400 



only 



$649.95! 




Verbatim Mini Diskettes . . . 
. . . $3.70 each (boxes of 1 0) 

Intertube . . $784.00 

TRS-80 16K Level II 

Expansion Kit $89.95 

Centronics 779 tractor .... 

$1050.00 

Horizon Mass. . . . $1999.00 

-VBA~\ Mail T0R A SYSTEM INC. 
Order 29 " 02 23rd Avenue 
0nly * Astoria NY 11105 
(212) 728-5252 



170 October 1979 © BYTE Publications Inc 



Title 


Description of optimization technique 


Example of program 

before 

optimization 


The same program 
shown after 
optimization 



Returning a call 



If a call to a subroutine is followed by a return instruction, the 2 instructions can 
be replaced by a jump to the subroutine. 



CALL ARNOLD 
RETURN 



JUMP ARNOLD 



Endless subroutine 


If the last line of a subroutine is a jump to another subroutine, as in the first example, 
one can often position the subroutine which is jumped to directly below the jump in- 
struction, so that the jump instruction is not needed. 


JUMP BETTY 
CINDY: LOADX 


BETTY: STORE X 


RETURN 
BETTY: STORE X 


RETURN 
CINDY: LOADX 


RETURN 


RETURN 



Expanded loop 



To increase the speed of an important loop, one can expand the loop either partially 
or wholly at the expense of space. This works best when the loop has a fixed number of 
iterations that is relatively small. 



LOAD IMMEDIATE 10 
LOOP: CALL DANNY 
CALL EDDY 
DECREMENT 
JUMP IF NOT ZERO LOOP 



LOAD IMMEDIATE 5 
LOOP: CALL DANNY 
CALL EDDY 
CALL DANNY 
CALL EDDY 
DECREMENT 
JUMP IF NOT ZERO LOOP 



Passing fixed data 



If a block of data has to be passed to a subroutine, rather than setting up and pass- 
ing a pointer to the data, put the data directly following the call and rewrite the 
subroutine to look for the data at the return address. This may involve more code in the 
data processing subroutine, but can pay off in many cases. The subroutine must compute 
a new return address that follows the data, and use this altered return address instead 
of the original. 



LOAD ADDRESS OF DATA 
CALL FARRAH 



DATA: BYTES 36,24,36 



DATA: 



CALL FARRAH 
BYTES 36,24,36 




Model DMB-6400 Series dynamic 64k byte RAMS incorporate the 
features which are standard in the DM-6400 Series and adds 
bank select for multi-user-timesharing applications. 



ALPHA MICRO, CROMEMCO, 
and NORTH STAR output port 
bank select, 

Memory bank size can be incre- 
mented to 64k bytes in 16 k 
increments. 



Four (4) 16k byte, functionally 
independent memory banks. 

Eight (8) 64k byte banks of mem- 
ory per output port for expan- 
sion to 512k bytes for each 
output port. 



Model DM-6400 Series dynamic 64k memory boards feature IEEE 
S-100 compatible timing and on board transparent refresh. 

• Memory selectable and deselec- • 25 MHz on board crystal oscillator 

table in 4k byte increments. for independent timing. 

DMB-6400 and DM-6400 Common Features: 



4 MHz Z80 operation with no wait 

states. 

Tested and burned-in. 



Low power- 8 watts maximum. 
Reliable, expandable memories. 



ONE YEAR GUARANTEE 



□ DMB-6400/64KRAM 

□ DMB-4800/48KRAM 



THE FOLLOWING PRODUCTS ARE AVAILABLE 

□ DMB-3200/32KRAM □ DM-6400/64K RAM 

□ DM-4800/48KRAM 



□ DM-3200/32KRAM 



U.K. & EUROPEAN REPRESENTATIVE: 

ABACUS COMPUTERS LTD. 
62. NEW CAVENDISH STREET 
LONDON, W1M 7LD U.K. 
TEL: 01-580/8841 TELEX: 881-3085 

AUSTRALIAN REPRESENTATIVE: 

COMPUTERLAND OF MELBOURNE 
555 COLLINS STREET 
MELBOURNE. VIC3000 
TEL: 625581 



MEASUREMENT 

systems & controls 

incorporated 

867 North Main Street • Orange, CA 92668 
Telephone: 714/633-4460 



Circle 215 on inquiry card. 



BYTE October 1979 



171 




TERMINAL 

DATA 

CORPORATION 



MODEL 1200 RS 232 OATA SPUTTER 

available in kit form 

\/lodel 1 200K gives the terminal or micro- 
processor user a second interface for a printer, 
plotter, cassette or tape drive. It operates at any 
speed & isolates the two output devices from 
each other, while providing 2 RS 232 interfaces 
from the terminal or microprocessor. 

The kit consists of 3 RS-232 connectors, 
printed circuit board, all necessary components, 
enclosure, mounting hardware & assembly in- 
structions $59 

write o r call 

TERMINAL DATA CORP. 

11878 CoakleyCir. 

Rockville, MD 20852 

(301) 881-7655 



Circle 371 on inquiry card. 



TRS-80, PET, 
APPLE, 

SORCERER 

Hardware/Software 
Systems 



Available now: 

■ HAM INTERFACE-including the 
most sophisticated RTTV systems 
money can buy. 

■ Baudot and ASCII printer 
i nterf aces 

■ Electra Sketch® ANIMATION 
GRAPHICS Compiler 

Write or call for free catalog 

AMCROTRONICSJnc.. 

P.O. Box 518 (a) Keyes, CA 95328 
(209) 634-8888 / 667-2888 (R) (S) 

We are experiencing telephone difficulties, 
please keep trying. 



Circle 206 on inquiry card. 




• f LOPPY DISKS, MINI OR 
STANDARD MEMO REX DR 3M 

• 3M DATA CARTRIDGES 
DC300A, DC1Q0A 

• 3M DIGITAL CASSETTES 

• 3M OR MEM0REX AUDIO 
CASSETTES. C-6Q 

• 3M DISK CARTRIDGES 

WE OFFER: 
'COMPETITIVE PRICING 
•IMMEDIATE DELIVERIES 

(Any Quantity) 
• UNCONDITIONAL GUARANTEE 

BETA BUSINESS SYSTEMS 
8369 VICKERSST..0G 

■mm SAN DIEGO. CA 9211 1 
17141 565-4505 



■ 



Power of two 



Short tables that have more than 1 byte per entry are easier to work with if the 
number of bytes per entry is a power of 2. This may waste some space in the table, but may 
save more space and also time in the code which handles the table. Computing an offset 
into a table that is a power of 2 can be done with a series of shifts instead of the in- 
teger multiplication that would otherwise be required. 



TABLE: 



BYTES 36,24,36 
BYTES 36,22,37 
BYTES 38,23,38 
BYTES 35,20,34 



TABLE: BYTES 36,24,36,00 
BYTES 36,22,37,00 
BYTES 38,23,38,00 
BYTES 35,20,34,00 



Use the stack 



Instead of saving temporary values at some memory location, they can often be saved on 
the stack. This usually holds true, even when manipulating data on top of the stack. The 
details are too machine dependent to give an example, but some of the newer 
microprocessors recognize this by having more than one hardware-implemented stack 
pointer. 



Combine instructions 



It is sometimes easy to miss the possibility of combining instructions. One situation 
which can be missed is when one can combine a symbolic value with a constant at assembly 
time rather than at execution time. 



LOAD IMMEDIATE ADDRESS 
ADD IMMEDIATE 1 



LOAD IMMEDIATE ADDRESS + 1 



Circle 33 on inquiry card. 



Multiple additions 



Normally, several ADD IMMEDIATE instructions in a row would be a bad idea. In a 
frequent situation, however, it can be very useful. Suppose one wants to pass a number 
to a subroutine and have the subroutine return 1, 2, or 3, depending on whether the 
passed number was 5, 12, or 13 respectively. Note that the optimization shown is of 
space at the expense of some time. 



ONE: 
TWO: 



COMPARE IMMEDIATE WITH 5 

JUMP IF EQUAL TO ONE 

COMPARE IMMEDIATE WITH 12 

JUMP IF EQUAL TO TWO 

LOAD IMMEDIATE 3 

RETURN 

LOAD IMMEDIATE 1 

RETURN 

LOAD IMMEDIATE 2 

RETURN 



ONE: 
TWO: 



COMPARE IMMEDIATE WITH 5 
JUMP IF EQUAL TO ONE 
COMPARE IMMEDIATE WITH 12 
JUMP IF EQUAL TO TWO 
ADD IMMEDIATE -6 
ADD IMMEDIATE 6 
ADD IMMEDIATE -10 
RETURN 



[Editor's note: The techniques presented here tend to produce nonstructured programs. The pro- 
grammer must make a choice between readable structured code and speed optimized code. Struc- 
tured programming techniques are recommended for all programs not requiring crucial space and 
time specifications . . . RGAC/B 



8P2SM PARALLEL/SERIAL I/O BOARD 
WITH MODEM 

$149* 

p \ttS« eNN 

Byte Cassette 
lnt erface! 




PARALLEL PORTS: 8 Ports, 64 total bi-directional bits. 



SERIAL PORTS: 



AVAILABLE BAUD 
RATES: 



2 Serial Ports with associated control 
lines 

One Port TTLor RS-232. 
One Port TTL or MODEM. 



MODEM: Full Duplex, answer or originate, 300 

Baud or cassette interface 
BUS TYPE: s -100 

PRICE: $149 (kit) 

$ 1 99 (assembled and tested). 



307.2 

153.6 

76.8 

38.4 

19.2 

9600 

4800 

2400 



kilobaud 

kilobaud 

kilobaud 

kilobaud 

kilobaud 

baud 

baud 

baud 



1760 

1200 

600 

300 

150 

110 

75 

27.5 



baud 
baud 
baud 
baud 
baud 
baud 
baud 
baud 



or any user supplied baud rates up 
to 500 kilobaud. 



6809! 



S-100 Compatibility. 
6809 Computability. 



• 1KRAM 

• 1 OK PROM space 

• MONBUG II monitor included 

• 2400 baud cassette interface 

• 20 I/O lines 

• RS-232 level shifters 

• Real time clock 

• DMA 

• Parallel keyboard input 

• Memory-mapped video firmware 

• Fully S-1 00 compatible 

(including 8080 type I/O) 

• A complete system, ready to use. 



6809 

16 bit internal arithmetic 
Hardware multiplication 
Two stack pointers 
Two index registers 
18 addressing modes 
Fully relocatable code 
Five interrupts 
Up to three times the 
throughput of a 4MHz Z-80 




MD-690a Single Board Computer 
$239 kit $299 assembled 



Please rush the following: 

□ CPU Card (kit) □ I/O Card (assembled) 

□ CPU Card (assembled) □ I/O Card (kit) 

NAME 

COMPANY 

ADDRESS 

CITY 



STATE/ZIP 



MicroDaSys 

P.O. Box 36051 
Los Angeles, CA 

90036 
[213] 935-4555 



CA residents add 6% 



Circle 220 on inquiry card. 



October 1979 © BYTE Publications Inc 173 



Circle 209 on inquiry card. 



MICROTEK 

OUTPERFORMS 
CENTRONICS 




CHECK 
THE CHART 



SEE PAGE 19 



' PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET 

PET PRODUCTS 

j Programs — Workbooks 

for Floppy Disk — for Cassette 




PROGRAMS 
SW-1* MAILS ma, ling hst system 
SW-2- CHECKBOOK tecord 

SW-3* ACCOUNTS keep track ot whoowes you how muc 
SW-4 MEOIT create and maintain data tiles 
SW-5* CALENDAR appointments, meetings at a glance 



WORKBOOKS 
WB-1 Getting St«r1»d with Your PET $3 95 " 
WB-2 PET String and Array Handling $3 95 UJ 



$4 95° 
$4 95 • 
$3 95^ 
$3 95 0- 



WB-3 PET Graphlct 
WB-4 PET CM»tt« I/O 
WB-5 Miscellaneous PET Features 
WB-6 PET Control and Logic 
"These piograms are special purpose dale base management systems They all can 

• Sort numeric or string fields 

• Select based on numeric or string (=) 

• Select based on substring match 

• Select based on range of entry number 

Prices: $9.90 each tor programs using cassette storage tor data 
$12.95 each using sequential floppy disk storage for data. 
$5 95 each for instruction manual, approximately 40 pages. 

Add $1 50 for shipping and handling 

TIS 
Money back guarantee P.O. Box 921, 0«pt. B 

Lot Alamo*. NM B7M4 

PET is a trademark ot Commodore Business Machines 



• PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET • PET 



Languages Fcpum 



And Its Interest 
SNOBOLs 



Dr Stefan M Silverston, 23 Deerhaven Dr, 
Nashua NH 03060 

I was pleased to see Mr Bruce Burns' letter in the June 
1979 BYTE. As one of the small number of SNOBOL4 
implementors (SNOBAT for IBM 360) around, I have 
always felt SNOBOL4 has much to offer the program- 
mer, in many areas of application. It has some features 
provided by no other programming language known to 
me. 

Without meaning to dampen anyone's enthusiasm, I 
should mention that SNOBOL4's syntax and control 
structures are rather lacking by today's standards. 
SNOBOL programs tend to be a bit hard to read, due 
largely to the ubiquitous blank, which can denote (1) 
string concatenation, (2) pattern matching, and (3) 
separation between labels and statement subjects. Flow- 
of-control also is rather opaque. The prevalence of side- 
effect-driven programming, for example, via value 
assignment in pattern matches, also detracts from pro- 
gram readability and maintainability. These flaws could 
well be remedied in any new SNOBOL implementation. 

As Mr Burns points out, there are good reasons why 
SNOBOL4 has not been implemented on microcom- 
puters. For one thing, SNOBOL implementations usually 
require considerable memory, more than what is ordi- 
narily available on microsystems. Further, SNOBOL 
tends to run rather slowly in many implementations, 
even on large machines. This could be exaggerated for 
microcomputers, where storage management and swap- 
ping with peripheral memory might be necessary. 

Of the 8-bit microprocessors in wide use, the Z80, with 
its block moves and compares, would probably be the 
most amenable to SNOBOL4 implementation. I intend to 
tackle SNOBOL4 development on my own Z80 floppy 
disk system in the near future, incorporating some im- 
provements as discussed above. 

SNOBOL4 should be a lot easier, as well as more effi- 
cient, with the new generation of 16-bit microprocessors. 
A SNOBOL implementation for the Z8000, say, should 
be a "natural". ■ 



Languages Forum is a feature which is intended as an interactive 
dialog about the design and implementation of languages for per- 
sonal computing. Statements and opinions submitted to this forum 
can be on any subject relevant to its purpose of fostering discussion 
and communication among BYTE readers on the subject of 
languages. We ask that all correspondents supply their full names 
and addresses to be printed with their commentaries. We also ask 
that correspondents supply their telephone numbers, which will not 
be printed. 



174 October 1979 © BYTE Publications Inc Circle 376 on inquiry card. 



Circle 105 on inquiry card. 



Tic-Tac-Tactics 



John C Miller, 110 Riverside Dr, New York NY 10024 

The May 1979 BYTE article on Tic-Tac-Toe (page 196) 
raises more interesting questions of programming 
philosophy and esthetics than those referred to in the arti- 
cle itself. No doubt Mr. Hinrichs' program plays an 
aggressive game, and never loses, as he claims. But his 
approach is also curiously limited in that the program is 
only able to play the first move side of the game, and this 
limitation seems the result of Mr. Hinrichs' reliance on 
data entries to dictate most of his move sequences. A pro- 
gram capable of playing the second move would be much 
more difficult using his methods, which are also un- 
satisfactory on principle because they fail to take proper 
advantage of the computer's most powerful capabilities. 

A more rational approach, which actually involves 
computing each move rather than looking it up in a table, 
goes as follows: 

• Win if possible; otherwise 

• Block the opponent from winning on his next move if 
necessary; otherwise 

• Set a trap (2 ways to win on your following move) if 
possible; otherwise 

• Avoid any move allowing the opponent to set a trap 
on his next move, and then 

• Make a (not previously avoided) move forcing (under 
threat of immediate loss) the opponent to make a 
move allowing you to set a trap, if possible; otherwise 

• Avoid any move allowing opponent to force you into 
a move allowing him to set a trap, if possible; other- 
wise, 

• Among moves not previously avoided, choose one 
which allows the opponent to blunder by choosing a 
move which allows you to set a trap, and then 

• Among moves not previously avoided, choose one 
which allows the opponent to blunder by choosing a 
move which allows you to win on your following 
move, if possible; otherwise 

among moves not previously 



Choose randomly 
avoided. 



As a suggestion to a reader interested in implementing 
this strategy, which evidently allows elegant use of sub- 
routines, it is further suggested that the board be coded 
internally using the 3-by-3 magic square: 

2 9 4 
7 5 3 
6 18 

for which a win corresponds precisely to playing 3 num- 
bers whose sum is 15. 

The 9-step strategy outlined above has all the desirable 
properties of Mr. Hinrichs' program, including aggres- 
siveness both in seeking wins and allowing opponent 
mistakes. In addition, it plays both first and second move 
equally well and "feels" right, in that it allows the com- 
puter to compute, instead of looking up moves in a data 
table. ■ 



DYNACOMP 



Quality software for: Aitair 

North Star 
TRS-80 (Level II) 

Sophisticated software written by recognized computer pro- 
fessionals. Each program is supplied with complete 
documentation. All programs can be run with standard ter- 
minals (32 characters or wider) and within 12K program 
memory space. * 

FLIGHT SIMULATOR 

(as described in SIMULATION, Volume II) 

• Realistic and extensive three-dimensional simulation of 
take-off, flight and landing. 

• Based on aerodynamic equations and real airfoil. 

• Practice instrument approaches and navigation using 
radials and compass headings. 

Price: $17.95 

SIMULATION, Volume II (BYTE Publications): $6.00 

VALDEZ* (Requires 16K of program memory) 

• Exciting simulation of supertanker navigation in Prince 
William Sound and Valdez Narrows using radar map. 

• Detailed physical model of ship response and tidal pat- 
terns. 

• Chart course through ship and iceberg traffic. 

Price $14.95 

BRIDGE 3.0 

• Complete contract and duplicate bridge game. 

• Computer both bids and plays. 

• Computer will play offense or defense according to the 
bid. 

• Challenging entertainment for the advance player. 

• Excellent learning tool for the bridge novice. 

Price: $17.95 

HEARTS l.S 

• An entertaining computer simulation of this popular 
card game. 

• Play against two computer opponents. 

• Beware the Black Maria! 

Price: $14.95 

NORTH STAR TEXT EDITOR 

(Update of program described in BYTE, June 1979) 

• Designed as an easy-to-use (and remember) basic text 
editor. 

• Works through unmodified North Star DOS. 

• Line-oriented editing, variable line width, simple 
paragraph indexing. 

Price: $10.95 (Available only on North Star diskette) 

NORTH STAR COMPRESSION PROGRAM 

• Removes all unnecessary spaces and remark statements 
from program. 

• Requires only a single disk drive. 

• Any size program may be processed. 

• Increases execution speed of programs while using less 
memory. 

Price: $9.95 (Available only on North Star diskette. 
Requires release 4 or higher North Star BASIC.) 

Except where noted, all software is available on North 
Star diskettes, and Aitair and TRS-80 cassettes. 

Additionally, Microscoft BASIC ASCII listings are 
available on paper tape and cassette (modem compati- 
ble, 300 baud). 

All orders processed within 48 hours. Write for more 
detailed descriptions of these and other programs 
available from DYNACOMP. 

DYNACOMP 

P.O. Box 162 
Webster, New York, 14580 

New York residents please add 7% NYS sales tax. 



October 1979 © BYTE Publications Inc 



175 



Drop JCL and Start 
with WFL 



Donald J Gregory, 1011 Rose Marie, #39 
Stockton CA 95207 

I agree with James Jones ("How to Define an OS Which 
Does Not Need a Wizard," April 1979 BYTE, page 245) 
that we must not repeat the mistakes of the past when 
designing operating systems for microcomputers, 
especially when designing the user interface. With most 
users writing their programs in high-level languages, it is 
absurd for them to be forced to write their system- 
interface routines in a low-level quasi-assembler designed 
for the convenience of the machine. What we need is an 
interface that is strongly based on a well-known, power- 
ful, and easy-to-use high-level language, such as Pascal, 
or its progenitor, ALGOL. 

Such an interface already exists — on one line of the 
big machines. The Burroughs Corporation Large Systems 
computers (series B7000/B6000) have a user interface 
called Work Flow Language (WFL) which is essentially a 
limited ALGOL with a few extensions. The basic system 
instructions are all handled by a few very simple com- 
mands: to run a program one simply writes RUN and the 
program name; to compile a program, the command is 



COMPILE, the program name, and the compiler's name; 
to copy a file, one uses the COPY command; to erase a 
file, simply REMOVE it; and to rename a file, just 
CHANGE its title. The remainder of this language con- 
sists of structures familiar to every Pascal and ALGOL 
user: it supports variables of type REAL, INTEGER, 
BOOLEAN, and STRING; for control structures there 
are the WHILE. ..DO, DO. ..UNTIL, IF... THEN... ELSE 
statements, and the ever unpopular GOTO statement. 
Subroutines are supported (with parameters) and values 
can be passed between WFL routines and the applications 
programs they run. 

The most impressive aspect of Work Flow Language 
(WFL) is its handling of peripheral device assignments. 
Each program is permitted to have default specifications 
for its files in its own code, which frees the user from con- 
stantly defining his files in his WFL. But if those files in 
the program are not what is wanted for a particular run, 
the files can be redescribed in the WFL (using the ALGOL 
syntax for a file declaration), and the definitions in the 
WFL will override those in the program. 

The use of a high-level user interface turns out to be 
more feasible for overall job construction. While working 
on an IBM-to-Burroughs conversion a year ago, I wrote a 
Job Control Language (JCL) to a WFL translator, and 
found that as many as 50 different JCL jobs could be 
algorithmically converted into only 1 WFL job. 

There is so much power, flexibility, and convenience 
available in WFL that any operating system designer 



The GSCON 5R-I0I 
Printer/Typewriter 




At last a letter quality printer at a 
price everyone can afford! 

• Receive- only printer of fers dual 
pitch, self- correcting typing 

• Accepts IBM typing balls and 
ribbons 

• Serviceable by anyone 
knowledgeable in SELECTRIC® 
repair. 

• Interfaces with virtually any 
minicomputer including Apple, 
TRS-80, Commodore Pet 
North Star and more 

ORDERS NOW BEING ACCEPTED 

Act now - quantities are limited! 
Dealer Inquiries Invited 




IDTI 

Office 

Products, 
line 

8002-D Haute Court -Springfield, Virginia 22150 • 



g 




(703)671-7503 



176 October 1979 © BYTE Publications Inc 



Circle 103 on inquiry card. 



The selection is great 
The choice is easy. 

Meet MINIMAX. 
The most advanced, least expensive computer 

ever created. 



Today, the selection of microcomputers is 
incredibly large. But the choice of 
businessmen, scientists, architects and 
engineers is clearly MINIMAX. If s the new 
microcomputer thaf s beyond compare. 
But please do. 

• 1 08,544 Bytes of internal memory 

• Choice of either 800 kilobytes or 

2.4 megabytes of floppy disc memory 

• Disc information retrieval takes only 
2 seconds per 30,000 characters 

• Uses lightning fast 2 megahertz 6502 CPU 

• Resident System Software (ROM) 

• High Resolution Graphics (240X51 2) 
with split screen capabilities 

• Superior business software package 

• PAGEMATE™ DATA BASE 

• All programs are integrated 

• Software development tools 



MINIMAX by Compu-Think Corp. is 
distributed east of the Mississippi, except in 
New England, by DTI Office Products. If you're 
a dealer or end-user looking for the clear 
choice in microcomputers, and want 
unprecedented sales and service support, 
contact us for more details. 

MINIMAX I With 800K eternal memory dual- 
disc drives (5#") Only $4495 
MINIMAX II With 2.4 Megabyte eternal 
memory dual-disc drives (8]/ 2 ") Only $5995 

(Printer not included) 



Send Me More On MINIMAX! 
Name 



Company. 

Address 

City 



L. 



State. 



.Zip. 



B1079 



j 



DEAlf R INQUIRIES INVITED 




I' 



Office 
Products, 



SOGC-§ HaiE CourtSpringf ield, Virginia 22BO - (703)671-7503 



Circle 104 on inquiry card. 



BYTE October 1979 177 



Circle 96 on inquiry card. 




use TRcopy 



WITH YOUR LEVEL II TRS-80* 



TRcopy is a casselle lape copying syslem lhat lets 
you SEE what your computer is reading. 

COPY ANY CASSETTE TAPE * 
With the TRcopy system you can copy any TRS- 
80 Level II cassette tape whether it is coded in 
Basic or in machine language. You can also copy 
data created by programs and you can copy assem- 
bler listings. 

YOU CAN SEE THE DATA 
As the tape is being loaded, you can SEE the 
actual data byte-for-byte from the beginning to the 
end of the program. Up to 320 bytes are displayed 
at one time. ASCII characters are displayed on the 
first line and hexadecimal code is displayed on the 
following two lines. Data is displayed exactly as it 
is input including memory locations and check sums. 

IDENTIFY PROGRAMS 
With TRcopy you can identify programs on cas- 
sette tapes without written documentation because 
you can SEE the filename. If you forget to label a 
tape, you can use TRcopy to display the tape contents 
and identify the cassette. 

VERIFY CASSETTE TAPES 
With TRcopy you can verify both theoriginaltape 
and the tape copies. You can make certain that your 
machine reads the original tape correctly and that it 
makes byte-for-byte copies. TRcopy also counts as 
it reads giving you the exact length of the data. 

MAKE BACKUPS FOR YOUR PROGRAMS 
Now you can make backup copies ofyourvaluable 
programs. Many times a cassette that you make will 
load better than one that is mass produced. The 
original can then be kept as a backup in case the 
copy is damaged. 

MAKE COPIES OF YOUR SOFTWARE 
If you are in the software business you can use 
TRcopy to make tested copies of your programs for 
sales distribution. TRcopy produces machine lan- 
guage tapes that are more efficient than those pro- 
duced by the assembler itself. 

RECOVER FAULTY DATA 
With TRcopy you can experiment with the volume 
and level controls andyoucanSEE whatthe computer 
is reading— even if your computer will not read the 
data through normal read instructions! In this way it 
is possible to read and copy faulty tapes by adjusting 
the volume control until you SEE that the data is 
input properly. 

SIMPLE -FASCINATING -FUN 
TRcopy is not only a practical utility program.lt 
is also a fascinating graphics program that lets you 
SEE, for the first time, cassette data as your com- 
puter is reading it. And it's as simple as 1-2-3. 
Just load, verify and copy. You will now be able to 
use cassette tapes with confidence knowing that 
TRcopy is there when you need it. 

The TRcopy system is a machine language program 
with documentation explaining tape leaders, sync 
bytes, cbeck sums and other formatting conventions. 
With the TRcopy system, you can SEE what you are 
doing! 



TRcopy System Including 
Cassette Tape and Documcnto 



OQ95 



I in 14 days. No COD's. Re 
ir a full refund if you are not satisfied. 

id * TRS-80 is a trademark "You cannot CO 

of the Tandy Corporation. TRcopy casse 



Data/Print 

DEPT.BT, BOX 903, FARGO, N.D. 58107 



YOUR 
ORDER 



55 5 



£ 



CX3 



OJ = O 

I S SB 






B 







>- * 



>- 

a. 
o 



W 2.S, 



. 4, O k. 
- ° 

. § c <f> 
riff 

h- I 

: £ -J! 

,~° i - 

JS *- 

•" «? -2 
j * _s- 

v £ u 

l E t 



<y * p 



TOLL FREE 



SAME DAY 
SHIPMENT 



must experience it before committing us all to a travesty 
such as JCL. The user's manual on WFL published by 
Burroughs Corporation does not serve as an adequate 
introduction to the language (it was not designed for that 
purpose). To help bridge this information gap, I have 
published a 275-page document, the B6700 WFL Primer, 
which can be obtained for $15 from Gregory Publishing 
Co, A C Ridlon, distributor, 6090 S Sterne Pkwy, Little- 
ton CO 80120. 

In the design of a user interface, let us not slide back 
into the dark ages. With WFL as an inspiration, we can 
begin in a user-friendly environment and go on from 
there. ■ 



Case Statements and 
Related Topics 



Peter Grogono, 73 Roxton Crescent 
Montreal West Quebec, CANADA H4X 1C7 



David Faught made several comments and suggestions 
concerning multiple conditions in the BYTE Language 
Forum (December 1978, page 176). The following notes 
are written in response to his ideas and suggestions. 

First, some preliminary observations. The FORTRAN 
statement that corresponds most closely to the case state- 
ment is not the "numeric IF" statement; it is the "com- 
puted GOTO" statement, which has the following form: 

GOTO (1,2,3,4,5),N 

The numbers are statement labels, and N is an integer 
variable. If 1 < N < 5, control will be transferred to the 
corresponding statement. If N < 1 or N > 5, the effect of 
the statement is undefined; most FORTRAN systems 
abort the program and print a diagnostic message. 

FORTRAN IV, which is the most common version of 
FORTRAN today, has two forms of IF statement. The 
older form is the "numeric IF" statement. It is confusing 
and not particularly useful, but it was the only form of IF 
statement provided in FORTRAN II. The other IF state- 
ment, the "logical IF," was introduced in FORTRAN IV, 
but the numeric IF was retained so that FORTRAN II pro- 
grams could be compiled by FORTRAN IV compilers. 
The FORTRAN "numeric IF" statement, in which E is an 
integer or real expression and the numbers are once again 
statement labels, is written in the following way: 

IF (E) 1,2,3 

Control is transferred to a labeled statement according to 
the value of E: 



178 October 1979 © BYTE Publications Inc 



RADIO SHACK COMPUTER OWNERS 
TRS-80 MODEL I AND MODEL II 



TRS80 



MONTHLY 
NEWSLETTER 



PRACTICAL APPLICATIONS 
BUSINESS 

GAMBLING • GAMES 
EDUCATION 
PERSONAL FINANCE 
BEGINNERS CORNER 
NEW PRODUCTS 
SOFTWARE EXCHANGE 
MARKET PLACE 
QUESTIONS AND ANSWERS 
PROGRAM PRINTOUTS 
AND MORE 



PROGRAMS AND ARTICLES PUBLISHED IN OUR FIRST 12 ISSUES 
INCLUDE THE FOLLOWING: 

A COMPLETE INCOME TAX PROGRAM (LONG AND SHORT FORM) 

INVENTORY CONTROL 

STOCK MARKET ANALYSIS 

WORD PROCESSING PROGRAM (FOR DISK OR CASSETTE) 

LOWER CASE MODIFICATION FOR YOUR VIDEO MONITOR OR PRINTER 

PAYROLL (FEDERAL TAX WITHHOLDING PROGRAM) 

EXTEND 16-DIGIT ACCURACY TO TRS-80 FUNCTIONS (SUCH AS 

SQUARE ROOTS AND TRIGONOMETRIC FUNCTIONS) 

NEW DISK DRIVES FOR YOUR TRS-80 

PRINTER OPTIONS AVAILABLE FOR YOUR TRS-80 

A HORSE SELECTION SYSTEM***ARITHMETIC TEACHER 

COMPLETE MAILING LIST PROGRAMS (BOTH FOR DISK OR CASSETTE 

SEQUENTIAL AND RANDOM ACCESS) 

RANDOM SAMPLING***BAR GRAPH 

CHECKBOOK MAINTENANCE PROGRAM 

LEVEL II UPDATES***LEVEL II INDEX 

CREDIT CARD INFORMATION STORAGE FILE 

BEGINNER'S GUIDE TO MACHINE LANGUAGE AND ASSEMBLY 

LANGUAGE 

LINE RENUMBERING 

AND CASSETTE TIPS, PROGRAM HINTS, LATEST PRODUCTS 

COMING SOON (GENERAL LEDGER, ACCOUNTS PAYABLE AND 
RECEIVABLE, FORTRAN-80, FINANCIAL APPLICATIONS PACKAGE, 
PROGRAMS FOR HOMEOWNERS, MERGE TWO PROGRAMS, 
STATISTICAL AND MATHEMATICAL PROGRAMS (BOTH 
ELEMENTARY AND ADVANCED) . . . AND 



Ffcfct 



WORD PROCESSING PROGRAM (Cassette or Disk) 

For writing letters, text, mailing lists, etc., with each new subscriptions or renewal. 

£f LEVEL II RAM TEST - 

Checks random access memory to ensure that all memory locations are working properly. 



SEND FOR OUR 36 PAGE SOFTWARE CATALOG (INCLUDING LISTINGS OF HUNDREDS OF TRS-80 PROGRAMS AVAILABLE 
ON CASSETTE AND DISKETTE). $2.00 OR FREE WITH EACH SUBSCRIPTION OR SAMPLE ISSUE. 



•CQMPJTRQNICS: 

MATT-evlATCAL APRj CATQnjS SERn/CE'" 

New City, New York 10956 



Box 149 

ONE YEAR SUBSCRIPTION $24 

TWO YEAR SUBSCRIPTION $48 

SAMPLE OF LATEST ISSUE $ 4 

START MY SUBSCRIPTION WITH ISSUE 

(#1 - July 1978 • #7 - January 1979 • #12 - June 1979) 

NEW SUBSCRIPTION RENEWAL 

CREDIT CARD NUMBER 




HOUR 
24 ORDER 

LINE 
(914) 425-1535 




EXP. DATE . 



SIGNATURE 

NAME 



ADDRESS 



ADD $6/YEAR (CANADA, MEXICO) - ADD $12/YEAR AIR MAIL - OUTSIDE OF U.S.A., CANADA & MEXICO , 



Circle 159 on inquiry card. 



BYTE October 1979 



179 



E < goes to 1, E = 
goes to 2, E > goes to 3. 

The motivation for the three-way branch in numeric IF 
statements is efficiency. All computers have instructions 
which compare the contents of a register with zero, but 
many have no instructions for directly comparing the 
contents of two registers. Thus, the Boolean expression A 

> B is usually evaluated in machine language as A — B 

> 0. In FORTRAN II the programmer was forced to con- 
vert all comparisons into comparisons with zero, since 
the compiler would not do this for him. In practice, three- 
way branches are required less frequently than two-way 
branches in most programming applications. In 
FORTRAN II programs, IF statements in which the three 
branching labels are all different are comparatively rare; 
in most cases, two of the labels are the same. 

When a three-way branch is really required, it can be 
coded in an ALGOL-like language, such as Pascal, in this 
way: 

if E < 

then si 
else if E = 

then s2 
else ( E > j s3 

where si, s2, and s3 are simple or compound statements. 
However, this kind of code in a Pascal program is usually 
an indication of tricky programming, which Pascal is in- 



HIGH SPEED PRINTER 

"OKIDATA CP.110" Prints an 8-1/2" 



by 11" page in less than 60 seconds. 

riA - BRAND NEW 

INDUSTRIAL SURPLUS 



1 Modular power supply 
11 0/220 V. with circuit 
breaker, power cord & 
on/ott switch 

• Self test circuit included 

► Full 80 character lines 

> High speed: 1 1 characters 

per second 

> Bidirectional print 

► Uses low cost standard 
8-1/2" TTY paper 
INTERFACE FOR 

TRS80& Apple. . . $100.00 
Service Manual. $ 40.00 



*650°° 

REG. $1200.00 





• 12" Display 

• Numeric Keypad 

• Reverse Video 

• Upper & Lower Case 

• Line, Char. Insert/Delete 



INTERTUBE 
TERMINAL 



$77900 

SPECIAL 

INTRODUCTORY 

PRICE 



Shipped Freight Collect 



EXPORT BUSINESS 
WELCOME 



INTERNATIONAL ELECTRONICS EQUIPMENT CORP 

P.O. BOX 522542, MIAMI, FLORIDA 33152 • (305) 595 2386 



tended to discourage. If the expression E occurs naturally 
in the program, and happens to have negative, zero, or 
positive values, the above statement is appropriate. 

It is more likely, however, that E is some kind of flag, 
set elsewhere in the program to — 1, 0, or +1. If this is 
the case, it is a much better use of Pascal to define a 
special type for the flag, enumerate its values, and use the 
Pascal case statement: 

type 

flag = (down, half mast, flying); 
var 

mapleleaf : flag; 

case mapleleaf of 

down : si; 

halfmast : s2; 

flying : s3 
end 

This example leads to my principal topic: case state- 
ments. First, consider the Pascal case statement. An 
expression (the case selector) is evaluated, and the state- 
ment within the scope of the case keyword whose label 
has the same value is executed. The compiler will usually 
compile a case statement into a table of jump instructions 
in the object code, so it must be possible to map the 
values of the expression to the integers. In the example 
above, the compiler would map down, halfmast, and fly- 
ing to the integers 0, 1, and 2, respectively. Most Pascal 
compilers would compile a 1000 word table for the fol- 
lowing statement: 

case number of 

1 : si; 

2 : s2; 
1000 : s3 

end 

Many people have commented about the absence of an 
"escape" clause in the Pascal case statement. How do you 
tell the compiler to take special action if there is no label 
which matches the value of the case selector? Pascal pro- 
vides a very powerful and useful notation for set oper- 
ations, and tests on sets can be used to guard case 
statements in this way: 

if selector in [1,2,3,7,8,9,10] 
then 

case selector of 
1,2,3, : si; 
7,8,9,10 : s2 
end 
else error 

This statement acts in the following manner: it decides 
if the value of the selector is acceptable. To be acceptable 
it must have one of the values in the list enclosed by 
square brackets, which is a Pascal set constant. If the 
value is acceptable, the appropriate statement (si or s2) is 
selected by the case statement and executed; otherwise 
the procedure error is called. The example draws atten- 



180 October 1979 © BYTE Publications Inc 



Circle 183 on inquiry card. 



tion to a minor inconsistency in Pascal. The set expres- 
sion [1,2,3,7,8,9,10] can be abbreviated to (1.. 3,7.. 10], 
but the case labels cannot be abbreviated in this way. It is 
tempting to suggest that the inconsistency be resolved by 
allowing case labels to be abbreviated in the same manner 
as set constants, but this obscures the really interesting 
point, which is that the case labels are, in fact, set con- 
stants themselves. 

The most consistent way to write the above statement 
is this: 

if selector in [1.3, 7.. 10) 
then 

case selector of 
[1.3] : si; 
17.. 10] : s2 
end 
else error 

This notation can be easily extended, as the next example 
shows. (Assume that ch is a letter, and that the three 
cases T', 'X',and "other" are to be distinguished; the set 
A — B contains all members of a set which are not also 
members of B): 

case ch of 

[T] : si; 
['XI : s2; 

['A'./Z'] - ['P'/X'] :s3 
end 



As Faught pointed out in his article, the conventional if 
statement can also be extended in other ways. Consider 
the recursive definition of Ackermann's function, which 
can be written in Pascal in the following way: 

ii m = 

then a := n + 1 
else if n = 

then a := a(m—l,l) 
else a := a(m—l,A(m,n — l)) 

This could be written more elegantly using a form of the 
case statement in which labels are Boolean expressions: 

case 

m = : a := n + 1; 
n = : a := a(m — l,l); 
(m > 0) & (n > 0): 
a := a(m — l,a(m,n — l)) 
end 

Case statements of this kind must be defined carefully. 
Consider the general form of the statement: 

case 

bl : si; 
b2 : s2; 

bn : sn 
end 



If, however, the case statements are to be executed effi- 
ciently, the compiler must be able to evaluate the label 
expressions during compilation in order to generate a 
jump table. This implies that the case labels must not con- 
tain variables. 

Enclosing the case statement in an if statement does not 
really solve the problem because we still have to write the 
acceptable case labels twice; once in the if condition, and 
once in the case statement itself. The only way around 
this is to allow an else or otherwise label, followed by a 
statement which is executed if there is no matching case 
label. Several of the more recent Pascal compilers pro- 
vide this option. 



in which bl, b2 ... bn are Boolean expressions (sometimes 
called "guards") and si, s2 ... sn are statements. When 
this case statement is executed, there are three possi- 
bilities: 

• None of the Boolean expressions are true; 

• Exactly one of the Boolean expressions is true; 

• More than one of the Boolean expressions is true. 

In the first case we can say either that the statement has 
no effect or, if we are designing a strict language, that it is 
illegal. In the second situation there is no problem. In the 
third situation, we can either declare the statement il- 



PET PRINTER ADAPTER 



GET HARD COPY FROM YOUR 
COMMODORE PET USING A 
STANDARD RS-232 PRINTER 




200C 



The CmC ADA 1200 drives an 
RS-232 printer from the PET 
IEEE-488 bus. Now, the PET 
owner can obtain hard copy 
listings and can type letters, 
manuscripts, mailing labels, 
tables of data, pictures, in- 
voices, graphs, checks, needle- 
point patterns, etc., using a 
standard RS-232 printer or 
terminal. 



$98.50 ADA1200B 

Assembled and tested 

$169.00 ADA1200C 

With case, power supply 
and RS-232 connector 



i ft! 


MS?.. 



Order direct or contact your local computer store. 
Add $3.00 for postage and handling per order. 



O, 



CONNECTICUT microCOMPUTER 
WKFIELD, C 
TLX: 7104560052 



750 POCONO RD. BROOK FIELD, CT 06804 

(203) 775-9659 



Circle 76 on inquiry card. 



October 1979 © BYTE Publications Inc 181 



legal, execute only one statement, or execute all the state- 
ments whose guards are true. If we select the last alter- 
native (executing more than one statement), we must 
specify the precise order in which guards will be 
evaluated and statements executed. The necessity for this 
can be seen from this example: 



case 

x < : x :■ 
x = : x : 
x > : x :■ 

end 



0; 
10; 
x - 1 



Suppose that we execute this statement with x = 0. After- 
wards, is x = 9 or is x = 10? A language designer must 
consider such possibilities and specify exactly how the 
program will behave in each case. This is the hardest part 
of language design. It is quite easy to specify the syntax 
rules of a language, but is it much more difficult to 
specify the complete semantics. 

The language which Dijkstra uses in his book A Dis- 
cipline of Programming (Prentice-Hall, 1976) has a state- 
ment resembling the case statement with Boolean labels 
used above, although he uses different keywords and 
punctuation. Dijkstra uses a similar statement for loops: 
the entire statement is executed repeatedly until none of 
the guards is true. 

Case statements tend to be lengthy, and it is tempting 
to try to abbreviate them. Faught proposes statements of 
(roughly) the following form: 



MICROTEK 

OUTPERFORMS 
ANADEX 




CHECK 
THE CHART 



SEE PAGE 19 



case x of 

< : si; 
= : s2; 
> : s3 
end 

This is not general enough for all applications. For in- 
stance, it is difficult to see how Ackermann's function 
would be coded. There are, however, many situations in 
which each arm of an if or case statement makes an 
assignment to the same variable. In ALGOL 60, a state- 
ment has a value, and in places where other languages re- 
quire a statement, ALGOL 60 allows an expression. Thus 
in ALGOL 60 we can write Ackermann's function in this 
way: 

a : = 

if m = 

then n + 1 
else if n = 

then a(m — l,l) 
else a(m~l,a(m,n — l)) 

When ALGOL 60 was designed, many computers had 
only one arithmetic register, usually called the accu- 
mulator. A high level language compiler compiling one 
statement at a time would not usually, in the current 
statement, use the value left in the accumulator by the 
previous statement. The ALGOL convention was intend- 
ed to get around this potential inefficiency by allowing a 
statement to have a value, the value being that left in the 
accumulator after the statement was executed. 

This idea was carried over to ALGOL 68, which also 
has a case statement. It is less flexible than the case 
statements described above because there are no case 
labels. Instead, the introductory clause "case m in" is 
followed by n statements, and if 1 < m < n, the rath 
statement is executed. 

Thus, the ALGOL 68 case statement is very similar to 
the FORTRAN computed GOTO statement. Although 
the lack of case labels makes the ALGOL 68 case state- 
ment rather weak and sometimes hard to read, it does 
enable the compact expression of some algorithms. As in 
ALGOL 60, an expression may be used where a statement 
is expected. The algorithm for determining the number of 
days in a month can be expressed in ALGOL 68 in the 
following way: 

days : = 

case month in 
31, 

if year mod 4 = 
then 29 
else 28 

a 

31,30,31,30,31,31,30,31,30,31 
esac 

Most languages since the mid sixties have a case state- 
ment of one kind or another. For a fuller description of 
the use of case statements in various languages, read the 
paper "Notes on the case Statement" by C Wrandle 
Barth, in Software: Practice and Experience, volume 4, 
#3, 1974, pages 289 thru 298. ■ 



182 October 1979 © BYTE Publications Inc Circle 209 on inquiry card. 



"Quality Hardware Deserves Quality Software. 



II 



alpha 
micro 



ANI-1 oo™ 

COMPUTER 



+ 



datalab 

WORD 

PROCESSING 

PACKAGE 



QUALITY 
SYSTEM 



WORD-PROCESSING (EDITIT" & FORMIT) 



* Right and left margin justification (word 
wraparound) by space fill ortrue proportional 
spacing of characters on Diablo, Qume & 
NEC printers. Accomodates forced spacing. 

* Displays text on compatible terminal as it 
will appear on printer, including boldface 
and underlining. 

* Displays orprintsanyselectedpageoren- 
tire file - continuously or page at a time. 

* Form letter processing with prompting for 
inputfrom terminal and/oruptoten external 
files. Use pre-searched and pre-sorted mail- 
ing lists, include unique responses, use 
separate or interleaved printing of addresses 
on envelopes, insert date, etc. 

* Size of file limited only by capacity of disk. 

* Unlimited move and copy of any portion of 
file to any or multiple places. 

* Obtain directory of all files in any account 
anddisplaycontentsofanyexternalfile.all 
while in the editor. 

* Read any external file in any account or 
device, and write into any location. 

* Edit any file, with or without line numbers. 

* Automatically locate any point in any file. 



* Find the next occurrence, prior occurrences, 
subsequent occurrences or all occurrences 
of any string. Substitute any or all found 
strings with new strings. 

* Delete or insert any number of characters, 
words, lines or pages anywhere. 

* Complete descriptive help on all word 
processing commands within the editor and 

amos: 

* Powerful single-stroke "Alter" sub-editor. 
Provides single line, selected linesorglobal 
controls: positions cursor forwards or 
backwards; finds, replaces, inserts or de- 
letes one or more characters; extends line; 
deletes to character(s). 

* Global editing control of selected columns. 

* Back-up files created automatically; Quit 
command restores files to prior version. 

* Automatic special numbering of BASIC pro- 
grams and automatic submission of .BAS 
files to the BASIC compiler, .MAC files to the 
AMOS™ assembler, TXT files to FORMIT™ 
and TXT/m files to TXTFMT. Files edited 
with VUE can also be formatted with 

formit: 



* Renumber any numbered file with any in- 
crement. 

* Beep the terminal any number of times at 
the end of any single orqueued operation(s). 

* Automatic paragraph recognition by user- 
definable indentation, automatic optional 
paragraph line feed, automatic paragraph 
indentation of any degree, including none 
and negative indentation. 

* Automatic page numbering with full control: 
upper or lower case Roman or Arabic 
numerals; top, bottom, center, right, left 
or alternating. 

* Up to six independent headers per page. 

* Automatic placement of any text at extreme 
right, left or center. 

* Control page width, length and line spacing. 

* Subscript, superscript, underline and bold- 
face - together or in any combination. 

* Written in Assembler: shareable, re-entrant 
and fast. 

* Thoroughly tested, no known bugs. 

* No control character dependence. Self- 
evident command words may be abbreviated. 

* Extremely fast & easy to learn and use. 



Documentation 

Five separate manuals, combined in a dur- 
able 22 ring loose-leaf binder. Over 150 
pages. Manuals include tables of con- 
tents, indexes, cross-referencing and 
summaries. 

USER'SGUIDE: Detailed, simple instructions 
for AMOS™ and datalab commands used 
by people who are not programmers or 
system operators. 

EDITIT: Documentation for use of Version 2.0. 

FORMIT: Documentation for use of Version 2.0. 

TRYIT: A self-instructional manual to teach a 
novice how to prepare, modify and variously 
format a letter. In less than one hour, 
anyone can use the Alpha Micro system 
productively. 

OPERATORS GUIDE: Gives full instruction for 
installing the complete package, using the 
special operatorfunctions in new utilities, 
and writing drivers for special printers. 

AMOSand AM-1 00 are trademarks of Alpha Microsystems. 



Selected New Utilities 

• Restrict any program to operator access 
only. 

• Request log-in automatically. 

• Display operator-definable messages at 
log-in and/or log-off. 

• View any file in blocks of defined number 
of lines; continue with scroll or screen 
clear. 

• Receive, check and send mail to accounts 
of one or more users with menu-driven 
program. 

• Users may send messages of any length 
to other jobs; operators may send mes- 
sages to all jobs. 

• List all major HELP files and display any 
selected major or secondary HELP file 
under screen oriented page control. 

• Obtain understandable table giving 
status of user and operator jobs, and 
number of total, free and used blocks on 
each defined device. 

• Many other functions. 



MONEY-BACK GUARANTEE 
ON DOCUMENTATION 

COMPLETE PACKAGE: $250. 

Documentation and all programs 

Documentation Alone: $50. 

Money back guarantee if returned undamaged. 
Copyright ° 1979 datalab inc. 

To order, contact your local dealer or 
call collect: 31 3-995-0663. ..Or write: 

datalab 

inc. 

1221 Minglewood 
Ann Arbor, Michigan 48103 U.S.A. 



Circle 92 on inquiry card. 



BYTE October 1979 183 




Introduction to Low Resolution 

GRAPHICS 



Shows How to 
Draw 






Now you can produce amazing 
computer graphics — even if you 
can't draw a straight line. Literal- 
ly! Learn how to draw lines and 
shapes, make graphs, draw pic- 
tures and even do animations. The 
simple secrets of how to do all this 
are contained in SCELBI's new 
book "Introduction to Low Reso- 
lution Graphics." 

Today's exciting personal and 
small business computing ma- 
chines are generally provided with 
at least some kind of "low resolu- 
tion" graphics capability. What is 
low resolution graphics? It is gra- 
phics presented on a point-by- 
point basis where the number of 
points is limited to about 8000 or 
less. The APPLE II by APPLE 
Computers, Inc., the Radio Shack 
TRS-80 and the Commodore PET 
all have low resolution graphics 
capability. So do many other kinds 
of microcomputers. 

What can you do with low reso- 
lution graphics? Lots cf things . . . 
If you know how! You can plot plain and simple or fancy and complex graphs to consolidate data, for business or pleasure purposes. But 
you can do so much more than that! You can use the capability to improve the presentation and impact of almost anything you want 
your computer to tell people. It can be used to animate games or data, clarify and amplify educational materials, or just plain entertain 
people. Get started putting your computer to new and exciting uses through the world of graphics. Anyone can learn and apply these 
easy-to-understand techniques. Order your copy today! 



Straight lines 

Triangles 

Circles 

Elipses 

Borders 

Reverse backgrounds 

Deck of playing cards 

A clown that winks 

Football grid 

Animated football game 






In addition to these fundamen- 
tals of drawing and animation, 
the book tells how to synchro- 
nize computer-generated sounds 
to your illustrations. 



$9.95 n No. 65 (use coupon on facing page) 



*P 







Put Together 

Your Own Z80 Programs 

Using These 

Time-Tested Recipes 



— Utility Routines — 

— Stack Operations — 

— Search and Sort Routines — 

— Floating Point Routines — 

- Z80 Instruction Set - 

— And More — 



^m Q ^\ Software 
^mO^J Gourmet Guide & 



Cookbook 



You need this cookbook! 

You'll be able to put together pro- 
grams without having to start 
from scratch. You'll have the most 
useful routines at your command 
— already programmed and ready- 
to-use. You'll get a plain-talk ex- 
planation of how the powerful 
Z80 instruction set works. And 
that's a big value to everyone, 
Z80 owner or not! 

Why is it called a cookbook! 

Because it's a book of recipes. It 
contains routines, subroutines and 
short programs. These are the in- 
gredients. All you do is take a 
pinch of this, a pinch of that. 
Combine the ingredients, and 
voila — your own masterpiece! 
Just the program to suit your 
taste. 



Check These 
Features 

• Handy reference to Z80 
instruction set 

• Search and sort routines 

• Many general purpose 
utility routines 

• Flow charts and source 
listings 

• I/O and in terrup t 
programming 

• Machine codes given in both 
hexadecimal and octal 
notation 

• How to control and 
manipulate Z80 stack 

• Code and numeric 
conversion routines 



Time tested recipes. 

Although the Z80 cookbook is brand new, SCELBI's software cookbook idea has been around for years. The recipes are 
tested! Tens of thousands of our 6800 and 8080 cookbooks have been used throughout the U.S. and in countries around the 
the "Z80 Software Gourmet Guide & Cookbook" to your recipe filebox. Order today! 

$14.95 Q No. 75 (use coupon on facing page) 



really time 
world. Add 






184 BYTE October 1979 




Z80 

Instruction 

Handbook 

A complete guide 
to the Z80 in- 
struction set. Ma- 
chine codes pre- 
sented in both 
octal and hexa- 
decimal format. 
An index lists in- 
structions alpha- 
betically along with machine codes 
and timing information. Industry- 
standard mnemonics used throughout, 
$4.95* No. 20 




PIMS 




Personal 
Information 
Management 
System 




Plain talk on 
what a computer 
can do for you. 
How to use a 
computer with- 
out knowledge of 
programming. 15 
examples include 
personal mailing list, accounts pay- 
able — even an intelligent ham radio 
log. For the TRS-80, PET and others. 
$9.95* No. 10 



\. 



Understanding 

f understanding , Microcomputers 

I MiCKfKOMPiTERS 300-page no-non- 
sense easy-reading 
text. Simple-to-use 
glossary. Extra 
knowledge for 
reading and under- 
standing computer 
magazines and 
manufacturer's lit- 
erature. Instruc- 
tions for microcomputers. Machine 
language programming. Input/output 
devices. Gives an intro to BASIC. 
$9.95* No. 90 




Calculating with. 

BASIC 



Calculating 
with BASIC 



A variety of 
programs to 
help the stu- 
dent, scientist, 
engineer, tech- 
nician or hob- 
byist apply the 
language to 
practical prob- 
lems. Covers 
mathematics, finance and statistics, 
mechanical engineering and electron- 
ics. For fun Hangman and Space Cap- 
ture games are provided. 
$7.95* No. 30 



MICRO 
COMPUTER 



Microcomputer 
Potpourri 



Referenceforbe- 
ginner, techni- 
cian, engineer. 
Glossary with all 
the jargon. Helps 
beginners under- 
stand computer 
magazines, mf g. 
POTPOURRI literature and 

serves as refer- 
ence for the pro. Reviews micropro- 
cessor chips in detail. Complete text 
on understanding microcomputers. 
$2.95* No. 70 



^ SCELBI Publications, P. 0. Box 3133, Milford, CT 06460 203-874-1573 

IMPORTANT ORDERING INFO! Include $1.00 shipping/handling for each item. 
Prices shown are for North American customers. Master Charge, VISA, Postal and 
Bank Money Orders preferred. Personal checks delay shipping up to 4 weeks. 

□ No. 10 □ No. 20 □ No. 30 □ No. 65 a No. 70 □ No. 75 a No. 90 
Name (please print) 



Bank No. 



Exp. 



City/State 
Signature _ 



Zip 



Amt. Enc. 



See SCELBI books at your favorite 
computer or electronics store. 



Circle 329 on inquiry card. 



BYTE October 1979 



185 



Some Laws of 
Personal Computing 



DrTG Lewis 

Computer Science Department 

Oregon State University 

Corvallis OR 97331 



The Origins of Personal Computing 

In the beginning, man created pocket cal- 
culators to do rote arithmetic, eg: addition, 
subtraction, multiplication and division. 
Few people involved in the pocket calcu- 
lator industry realized that pocket calcula- 
tion was just the initial thrust into the "com- 
puting for the millions" consumer market. 
Indeed, the millions of dollars made by this 
computer consumer product helped to pay 
for the development of more sophisticated 
devices we now call personal computers. 

Computing lacks a definite starting point. 
The works of Charles Babbage, and possibly 
Alan Turing, have little impact on daily com- 
puting (some will argue that these two pio- 
neers have everything to do with modern 
computing, but I speak of practical rather 
than theoretical computing). So where are 
the fundamental theorems of computing? Is 
there a set of "equations of motion" for 
programming? 

This article contains ten empirical obser- 
vations, dubbed "laws of personal comput- 
ing," that are derived from personal experi- 
ence with personal computers in the real 
world of business. While many of the rules 
are controversial, I believe most can be 
proven to be true. 

The first law of personal computing is 
of the form "action equals reaction." The 
law is derived by historical observation. 

The first electronic computers were per- 
sonal computers. That is, only a few pro- 
grammers had access to the ENIAC, Whirl- 
wind, and ATLAS. This arrangement faded 
rapidly in favor of batch operation and 
multiprogrammed operating systems. 
Clearly, the shift was the result of economic 
decisions. Large corporations poured large 
sums of money into data processing depart- 
ments, and demanded efficiency in return. 
Military installations required security and 
performance as their return on investment. 
Batch operation satisfied their demands. 

However, users (programmers mostly) 



were soon able to show economics of scale 
and efficiency of operation by installing a 
limited form of interaction called remote 
job entry. Remote job entry moved rapidly 
into timesharing with terminals because this 
increases the man-machine interaction. 
Finally, we have come full circle to dis- 
persed, stand alone, turnkey computers dedi- 
cated to a few users. 

The key feature of the historical evolu- 
tion of computing is "interactiveness." The 
more we can communicate with a computer 
system, the more we can enjoy using the 
system (within limits), and the more "per- 
sonal" computing becomes. This leads to 
the first law of personal computing: 

1. Personal computing equals interactive 
computing: the personalness of a com- 
puter system increases in direct pro- 
portion to its interactiveness. 

The New Economics of Computing 

Personal computing is governed by eco- 
nomics as much as by technology. Indeed, 
the directions taken by technology are 
governed by economics. Therefore, we must 
study economics in order to derive other 
laws of computing. 

The concepts of programming, micro- 
programming, and integrated circuit design 
span the spectrum of software, firmware and 
hardware. Why is it more suitable to micro- 
program the IBM 370/168 (model 370 hard- 
ware, model 168 firmware) and not micro- 
program the Intel 8080? Where is the trade- 
off between an "expensive" system and an 
"inexpensive" system when all features of 
such a system are considered? 

A system designer can choose to build a 
cheap processor (like the 8080, say) and save 
money on production, design, and mainte- 
nance of the cheap processor. The same 
designer can elect to build an expensive, 
sophisticated computer system and as a 
result increase the cost of hardware. Why 
construct an expensive computer? The 



186 October 1979 © BYTE Publications Inc 



answer lies in looking at the total cost of a 
computer system. Let's take an example: the 
Intel 8080 requires that the HL registers be 
loaded each time a memory reference is 
made. This feature is simple to implement 
and saves hardware dollars. However, every 
program written for the 8080 must pay the 
price of this simplicity. Typically, a macro 
called HL is used to relieve the programmer 
of this chore. The Motorola 6800 includes a 
more sophisticated addressing mechanism 
using an index register for assisting in mem- 
ory references. The addressability features of 
the 6800 often lead to 25 percent reduction 
in the number of instructions needed to per- 
form the same function on the 8080. Both 
6800 and 8080 architectures are more time 
consuming to program than the Texas In- 
struments 9900 chip due to the 9900's 
greater sophistication. Furthermore, the 
Microdata 32/S and Hewlett-Packard 3000 
are stack machines supporting a high level 
language. Hence they are "easier" to pro- 
gram than any of the chips discussed above. 
But of course, the 32/S and 3000 are more 
expensive hardware machines than the chip 
machines. 

Where is there a trade-off between com- 
plexity in hardware, complexity in firmware, 
and complexity in software? The trade-off 
is strictly economic, and leads to the second 
law of personal computing. 

2. Conservation of agony: the work ex- 
pended to program a computer to 
solve a problem plus the work expended 
to construct the computer system 
remains constant for that problem. 

The second law of personal computing 
actually states that the problem solution 
remains at a constant level of complexity 
regardless of the system used to solve the 
problem. 

The cost per unit of effort in building 
hardware may decrease (large scale inte- 
grated circuit (LSI) devices), and the cost of 
programming may increase (due to unsophis- 
ticated microcomputers). Therefore, in 
1980, the most economical systems will be 
mainly firm hardware (due to its low cost) 
and a small share in software (due to the 
conservation of agony). 

The results of the second law say some- 
thing about the "power" of a computer 
system. Increasing speed or storage capacity 
increases power. Conversely, decreasing cost 
increases power of a personal computer. For 
example, the Intel 4040 (4 bit pocket cal- 
culator chip) increased personal computing 
power because it was cheap even though it 
was slow and had little storage capacity. 

If we look at history once again, it is clear 
that an acceleration force is at work: increas- 



ing capability leads to an increasing number 
of applications in which the computer can 
be useful. In turn, the increased use of com- 
puter systems in new applications results in 
increased sales. The sales stimulate mass pro- 
duction and further cost reductions. The 
result is to decrease the unit cost of the com- 
puter system. 

We can demonstrate this counter intuitive 
notion as follows. In the mid-1960s, proc- 
essor speed increased dramatically. This en- 
couraged timesharing of the central proc- 




WE'D LIKE TO SHARE A 
FEW WORDS WITH YOU... 

mOQGm / mo' dam / n: A device for transmission of digital informa- 
tion via an analog channel such as a telephone circuit. 

MiCrOmOdGITI II* / ml' kvo'mo'ddmtu /trademark — a complete 
data communications system for the Apple II** Personal Computer, 
combining functions which formerly required a modem, an automatic 
calling unit, and serial and parallel interfaces. Onboard ROM firmware 
provides for remote console, ter- 
minal mode, and simplified im- 
plementation of more sophisti- 
cated applications with BASIC 
programs. The Micromodem II 
comes with the FCC registered Mi- 
crocoupler, operates at 1 10 or 300 
baud (Bell 103 compatible), and 
can automatically dial or answer 
the phone and transfer data. 

MicrOmOdetTi 100* /m7' kro-mo'dam wun hun'drad/ 

trademark — a complete data communications system for S-100 micro- 
computers, providing all the capabilities of a serial interface card and an 
acoustic coupler, with the addition of programmable automatic dialing 

and answer. The Micromodem 
100 comes with the Microcoupler 
and is fully S-100 bus compatible 
including 16-bit machines and 4 
MHz processors. The Micromo- 
dem 100 operates at either of two 
software selectable baud rates — 
300 baud and a jumper selectable 
speed from 45 to 300 baud. 

aCOUStiC COUpler / 3«kiis'tikkup'tar/n: Amodem that works 
through the standard telephone handset, transmitting data through the 
regular earphone and microphone. It can be affected by room noise and 
suffers from the distortion inherent in the carbon microphone. 

MiCrOCOUpler*/ ml'kro-kup'lar/ trademark — an FCC regis- 
tered device that provides direct access to the telephone system without 
the losses or distortions associated with acoustic couplers and without a 
telephone company supplied data access arrangement. 

D.C. HAYES ASSOCIATES, INC. 

MICROCOMPUTER PRODUCTS 

10 Perimeter Park Dr. Atlanta, GA 30341 (404) 455-7663 

• Micromodem II, Micromodem 100, and Microcoupler are trademarks of D.C. Hayes Associates, Inc. 
** Registered trademark of Apple Computer. Inc. 




Circle 162 on inquiry card. 



October 1979 © BYTE Publications Inc 187 



essor. The support of many terminals re- 
duced both the cost per terminal and the 
cost of the unit of computation. 

In the 1970s, the storage capacity has 
been increasing dramatically. There is a surge 
of activity in data base applications and a 
corresponding decrease in cost of storage. In 
short, we are witnessing the third law of 
personal computing in action: 

3. As the power of a personal computer 
increases, its price decreases. 

The third law deals only with hardware 
capability. Earlier we stated that hardware 
capability plays a decreasingly important 
role in personal computing. Indeed, the 
effects of the third law of personal comput- 
ing are rapidly diminishing due to the fourth 
law: 

4. Software is hard; hardware is soft: 
it is economically more feasible to 
build a computer than to program it. 

It is economically easier to design, imple- 
ment, and mass produce a machine like the 
Intel 8080 or IBM 360 than it is to design 
and implement an operating system, com- 
piler, or sophisticated application program. 
The cost of a chip may run to $250,000 



CHECKS IN MICRO- 
QUANTITIES? 



NOW 
THERE'S A WAY 



Wondering how to use your micro to print checks for personal 
and business use? Now, from ARIES, there is a way to do it easily 
with continuous checks in small quantities. And, without a huge 
investment. 

Micro check printing eliminates time consuming, error-prone hand- 
writing of PERSONAL, PAYROLL, or ACCOUNTS PAYABLE checks. For 
home or small business use, it's an idea whose time has come: A new way 
to make your micro pay off. 

NOW AVAILABLE FROM ARIES: 




PERSONAL CHECKS 



BUSINESS CHECKS 



check) 



BV," width 

[7Vi" without margins) 

7" depth (includes V/i" voucher, IV 

200 @ $4H 00 

500 @ $95 50 

Use for either Payroll or Accounts Payable 
Includes imprinting of payer at upper left of check— 4 lines of 30 positions each, hank name and 
address, transit and routing numbers; and the M.I.C.R. encoding at the bottom 

Brochure and Samples Available Upon Request Prices Good Thru 1979 
Include BANK M I.C.R. Encoding Sheet With Order 



RVz" width 

[7Vi" without margins) 

iVi" depth 

200 @ $39.00 

500 @ $79.00 



NO ONE ELSE OFFERS MICRO CHECK- 
PRINTING SO EASILY. WITH ARIES 
YOUR MICRO PAYS OFF. 



ARIES 



Computer Products 
P.O. Box 7932 B Eugene OR 97401 

Price include freight anywhere in Continental U.S. 



when design and initial production are 
totaled. The cost of firmware BASIC may 
not exceed $100,000 (many do, however), 
but the auxiliary costs of documents, ser- 
vice, training and marketing may exceed one 
million dollars. 

A company contemplating a new hard- 
ware architecture is gravely penalized for 
making radical changes to the instruction set 
of their existing computer. Is it not to be 
expected that the IBM 370 is only an evolu- 
tionary departure from the IBM 360? Why is 
the Z80 processor nearly as successful in the 
market place as the 8080? 

The high cost of programming as opposed 
to the cost of a chip is reversing the tradi- 
tional roles of software and hardware. In the 
future, more emphasis will be placed on the 
software and less emphasis will be placed on 
the machine architecture. Indeed, much of 
the current software will become "hard," by 
being distributed in hardware read only 
memories as firmware. 

One result of the fourth law is corollary 
A, which states the rule that governs pocket 
calculators today: 

A. Programs and data should be shared, 
but hardware should be replicated. 

The only item in a computer system that 
must be shared from a technological stand- 
point is data. Common access to information 
stored in a data base may be logically justi- 
fied by an application. Whether the access is 
done by timesharing or by dispersed proc- 
essors is immaterial. Also, whether the data 
is copied for transmission, or the program 
that intends to process the data is copied for 
transmission to the data base machine is 
again immaterial. 

The computer business has been overly 
enthusiastic about timesharing in the past. 
We must recall that timesharing was invented 
to lower the cost of hardware. Now that 
hardware is no longer the major cost item in 
a system, timesharing is not justifiable in 
most cases. In fact, I believe that timesharing 
failed. It failed because people couldn't 
understand it. Only computer experts are 
able to use MULTICS, VM/370 and other 
extremely capable timesharing systems. The 
average person will not tolerate JCL, tele- 
phone lines, computer jargon, and unreliable 
central computers that lose their files. In 
short, timeshared computers are hampered 
by their prerequisite of knowledge. 

The computer utility concept of the late 
1 960s failed because of the lack of expertise 
on the part of the users. The high level of 
sophistication needed to use a utility 
doomed it to failure. It also put a bad name 
on personal computers. 



188 October 1979 © BYTE Publications Inc 



Circle 14 on inquiry card. 



In effect, the "guilt by association" syn- 
drome plagues personal computing today. 
Myths (it's too complicated), training (what 
is a byte?), and service (how do I get state- 
ments printed?) are three of the remnants of 
the computer utility that have turned people 
away from computing. 

We can now state a conclusion called the 
fifth law of personal computing: 

5. Knowledge costs more than software 
and hardware: the usefulness of per- 
sonal computers increases in inverse 
proportion to how much people must 
know in order to use them. 

The lesson is clear: any consumer product 
that is successful must be simple. The pocket 
calculators that solve known problems 
(arithmetic) are successful. The pocket cal- 
culators that solve unknown or unrecognized 
problems are failures. 

The facts of life are even more severe for 
computers sold to the consumer market. The 
final economic law succinctly summarizes 
the fickle buyer's attitude: 

6. The color, shape and size of a personal 
computer are often more important to 
a buyer than what is inside of it. 

Once the personal computer system over- 
comes all other economic obstacles, it must 
be packaged and maintained by a reputable 
service organization. This means that all 
unnecessary buttons, switches and knobs 
must be eliminated. The manuals must re- 
duce jargon and the software must be tai- 
lored to a particular industry. 

The WH89 system by Heath, the C4P by 
OSI, the Apple II, the Commodore PET and 
the Radio Shack TRS-80 are all vivid exam- 
ples of packaging in the personal computer 
hobby market. Datapoint, Wangco, and 
Basic-Four demonstrate the law with tai- 
lored software packages for small businesses. 

Service fills the gap between the user's 
knowledge and the personal computer's lack 
of capability. Service rescues the user when 
the personal computer cannot repair itself. It 
is service that counts when the manuals do a 
poor job of explaining a feature of the sys- 
tem. Finally, service is performed by hu- 
mans, and so far, humans understand other 
humans better than they understand a 
machine. 

We can now turn to some interesting 
examples that lead to the final laws of per- 
sonal computing. In particular, these laws 
affect the majority of computer experts 
engaged in applications implementation. 



Implications of Interactiveness 

The first law of personal computing 
equates "interactiveness" with "personal- 
ness." That is, in order to achieve a high 
degree of interactive computing, the per- 
sonal computers of the future must be 
oriented toward languages and systems with 
a high degree of interpretation. Compiler 
languages, for example, have been shown to 




There is a reason so many Datec customers are communication line technicians, 
computer engineers and data processing experts. They recommend Datec for the 
simple, solid state, mgged design that has proven to be more reliable than bigger 
name couplers. 

Acoustic couplers are the work horses of a data communications system. They 
should work every time, every day, so that you can install them and then forget them. 

Mo wonder communication line technicians have nicknamed the Datec 32 the 
"heavy duty" acoustic coupler. 




CRYSTAL 
CONTROL 

Ciystal controlled trans- 
mitter and receiver insures 
long tenn stability and idffi 
reliability, even in the **. 
most unfriendly operating f| 
environment. 



BIG EARS 

Rugged, tight-fitting rubber cups 
effectively seal out vibration 
and room noise. They aren't beautiful, 
but they woik. 



BURNED-IN 

Datec may be the only company that torture- 
tests every PC board by buming-in each one 
for 168 hours at elevated temperatures. 



This process reduces the 
probability of field failure 
below 2% for the first 1000 
hours of operation. We find 
the faulty one before 
we ship it 



TALKS WHEN 



\ IT RAINS X ^ 




Datec couplers are 
highly sensitive, 
operating at 
received levels 
of -55dBm or 
lower. Our sen- 
sitive receiver 
can pull weak 
signals out of the "mud" 
of leaky, rain-soaked 
telephone cables. 



GOARANTEED 

Remove a few screws and 
the PC board pops out. 
It couldn't be simpler. 
Any problems incurred 
through normal use, and 
it's replaced or repaired 
free with no questions asked 
during the first year. 

READILY AVAILABLE 

Datec 300 bps acoustic 
couplers are readOy 
available in both originate 
and originate/answer models. 
All Datec equipment 
including the new Datec 212 
Is Bell compatible. 
OEM inquiries are welcome. 



DATEC INC., 300 E. MAIN ST., CARRBORO, NC 27510. (919) 929-2135 

DATEC DID IT! Quality— designed in, burned-in, and guaranteed. I 



Circle 127 on inquiry card. 



October 1979 © BYTE Publications Inc 189 



require from three to ten times as much 
effort in implementing a given program as 
an interpreter would require. 

It is little wonder that BASIC has 
achieved the title "language of the masses." 
It is a simple interpretive language, easy to 
implement on a modest processor. Unfor- 
tunately, it is extremely inappropriate for 
major applications requiring typical business 
data processing. 

7. BASIC is to personal computing as 
sign language is to English. 

BASIC programs are easy to write, but 
difficult to understand, and provide in- 
adequate control of a personal computer 
system. Few dialects of BASIC permit 
indentation, structuring, comments (with- 
out memory penalty), or error control 
and recovery. Here are a few objections to 
BASIC as a serious, professional imple- 
mentation language. 

a. Poor error recovery facilities, eg: the 
application program must be capable 
of detecting file access errors, etc, and 
then calling an exception handling 
routine. 

b. No dynamic overlapping or memory 
mapping of programs too large to fit in 
main memory. 

c. Restricted data structures, eg: no pro- 




Discover why 
hundreds of PDP-11 users 
have turned to us 
for Pascal. 



They're i n process control. In 
data base management. In educa- 
tion, research and communica- 
tions. Running on LSI-1 Is, PDP- 
1 1 /70s and everything in be- 
tween. RSTS/E, RTI I, RSX or IAS — 
it makes no difference, they praise 
our Pascal. 

Because they all have one thing 
in common. A desire to get more 
from their PDP-1 1 than another 
language — or another Pascal — 
can provide. 

We've captured the elegance of 
Pascal in a real world compiler. It 
converses directly in machine lan- 
guage, giving remarkable execu- 
tion speed and efficient memory 
use. It features straight-forward 



program structure, 
uncluttered syntax, 
and other advantages of 
full standard Pascal. 

But there's more, in the form of 
real-time extensions. 15 digit (dou- 
ble precision) arithmetic. In-line as- 
sembly code. I/O hardware ac- 
cess. FORTRAN interface. Direct- 
access files. Overlays. Plus others. 
There's even an interactive sym- 
bolic debugger. 

Reliability? Introduced in 1975, 
we're at over 400 sites now. We 
guarantee stated performance and 
provide I year of follow-up sup- 
port. Give us a call; we have a 
demo library manuals, and bench- 
mark, ready for your inspection. 



©ir<j 



^ nn minicomputer 

Sdrtoire inc. 

2340 SW Canyon Road 
Portland, Oregon 97201 
(503) 226-7760 
TWX 91 0-464-4779 

PDP-1 1. LSI-1 1 . PDP-11/70, RSTS/E. RT1 1 , RSX, and IAS are trademarks of Digital Equipment Corporation 



Distributors: 

Australia: Sydney; Network Computer Services, 

290 3677 

Canada; Vancouver; Valley Software, 

(604) 524-9741 

England; Stafford; Hourds Computing Ltd, 

0785 44221 

Japan; Tokyo; Rikei Corporation, 03-345-141 1 



visions for linked lists, trees, dynamic 
memory allocation for data, mixed 
data types. 

d. Limited user prompting, eg: forms 
handling, cursor control, scrolling and 
audio signals are lacking. 

e. Inadequate software security and 
protection, eg: no file security locks, 
interlock mechanisms for shared files, 
or source code shielding. 

f. Slow execution due to poor inter- 
pretation. 

g. Inadequate primitives for standard 
data processing, eg: no sorting, file 
access constructs, forms handling for 
report generation, or communications 
access constructs. 

In short, BASIC is useful in the develop- 
ment of small programs for unsophisticated 
applications, or for programs that will be 
thrown away rather than modified. 

The area of system control is no better 
off than the system languages area of per- 
sonal computing. At least BASIC is partially 
standardized and widely known. Operating 
systems, on the other hand, have no consis- 
tent basis to begin with. Indeed, we question 
the utility of an operating system in inter- 
active computing. This is pointed out in the 
eighth law: 

8. An operating system is a feeble 
attempt to include what was over- 
looked in the design of a programming 
language. 

This heretical notion is fully obvious in 
systems employing interpretive BASIC to 
the hilt. The Wangco, Tektronix 4051, and 
similar small scale interpretive BASIC sys- 
tems have no visible operating system. All 
commands normally associated in traditional 
operating systems are put into extended 
BASIC in these personal computers. In gen- 
eral, interpretive systems (and thus inter- 
active systems) have no need for an operat- 
ing system. 

In future personal computers, it is likely 
that a network of loosely coupled processors 
will communicate data and programs to one 
another. In such a network concurrent proc- 
esses will be allowed and will often compete 
for limited resources. In this situation the 
synchronizing primitives of today's operat- 
ing systems will migrate to hardware (or 
firmware) and not be of concern to the lan- 
guage interpreter. 

The Ultimate Laws 

We have covered the motivations for per- 
sonal computing and have stated eight laws 
along the way. In the final analysis we can 
derive two ultimate laws of computing used 
(knowingly or otherwise) by computer 



190 October 1979 © BYTE Publications Inc 



Circle 293 on inquiry card. 



manufacturers: 

9. The ultimate personal computer is a 
robot: the goal of personal computing 
is to reduce the differences between 
humans and computers. 

In effect we are striving to make personal 
computers do what people can do, but 
faster, more accurately, and cheaper. We 
seek a partnership with personal computers 
akin to the symbiosis between humans and 
household pets. 

A faster personal computer allows us to 
process census information in two or three 
years instead of 15 years. Speed is essential 
in a lunar landing, and so is accuracy. An air 
traffic control computer is much more accu- 
rate than a human operator. The result is 
safer air transportation for people. 

10. Knowledge is power: information is 
the fabric of knowledge; the controller 
of information wields power. 

While personal computers are fast, accu- 
rate and cheap, they also cause high speed 
propagation of errors, speed of light crime, 
and sometimes loss of life when they fail. 

Politicians are able to push a button and 
disseminate campaign propaganda to the mil- 
lions. Factories can replace entire vocations 
by automating production. Financial insti- 



tutions are at the mercy of their data proc- 
essing centers. 

The laws of personal computing are not 
only important to computer scientists, but 
also to society as a whole. Perhaps there is 
a place today for the futurist, the philo- 
sopher of computer science." 



Improve 
\5urLoL 



Is there room for a little improvement -around 
your lot? 

Like landscaping in the front yard? A big pool in 
the back? Maybe another bedroom if you have a lot of 
"little ones"? 

Whatever your home needs, United States Savings 
Bonds can make improvement a lot easier. All you 
have to do is join the Payroll Savings Plan. That way, 
a little piece of each paycheck is set aside to buy 
Bonds. Automatically. 

In a little while, you'll have a lot of Bonds piled up. 
And that means a lot of savings. 

So join the Payroll Savings 
Plan. Buy United StatesSavings 
Bonds. 

And do a little for your lot. 




SI.VdT.z:^^ 



r AQ«ncy: Leo Burn. 



Take* . 
. stock 
m ^rnerica. 



1 T. Licidry. Philip Morrij U. S. I 



The Public Service Campaign sponsored by 
THE MAGAZINE PUBLISHERS ASSOCIATION 



^jMfiiiMtiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiUMtiiiiiiiviiiiJiiiiiriiiiuiiiiirijririiri iiiiiiiiiiiiiiiiiiiiiiiriiiiiiiiiiiiiiiiiiiiniiiiiiiiiii iiiiuiiiiim [iiimiiiiiiiiiiiiiiiiiiimiiiiiiiiiiiiiiiiiil^ 

I G. W. COMPUTERS LTD. | 

I This is how your business appears on the screen 

| Approximately 60-100 entries/inputs require only 2-4 hours 

= weekly and your entire business is under control. 



'PROGRAMS ARE INTEGRATED - 

01 = ENTER NAMES/ADDRESS, ETC 

02 = *ENTER/PRINT INVOICES 

03 = *ENTER PURCHASES 

04 = *ENTER A/C RECEIVABLES 

05 = *ENTER A/C PAYABLES 
06= ENTER/UPDATE INVENTORY 
07= ENTER/UPDATE ORDERS 

08 = ENTER/UPDATE BANKS 
09= EXAMINE/MONITOR SALES LEDGER 
10= EXAMINE/MONITOR PURCHASE LEDGER 
11 = EXAMINE/PRINT INCOMPLETE RECORDS 
12=EXAMINE PRODUCT SALES 



SELECT FUNCTION BY NUMBER 

13 = PRINT CUSTOMER STATEMENT 

14 = PRINT SUPPLIER STATEMENTS 

15 = PRINT AGENT STATEMENTS 
16= PRINT TAX STATEMENTS 
17=PRINT WEEK/MONTH SALES 

18 = PRINT WEEK/MONTH PURCHASES 

19 = PRINT YEAR AUDIT 

20= PRINT PROFIT/LOSS ACCOUNT 

21 = UPDATE END MONTH FILES 

22 = PRINT CASH FLOW FORECAST 

23 = ENTER/UPDATE PAYROLL (NOT YET AVAILABLE) 

24 = RETURN TO BASIC 



= WHICH ONE? (ENTER 1-24) E 

S Each program goes to sub menu, e.g.: E 

E (9) allows: A, LIST ALL SALES; B, MONITOR SALES BY STOCK CODES; = 

= C, RETRIEVE INVOICE DETAILS; D, AMEND LEDGER FILES; E 

E E, LIST TOTAL ALL SALES. E 

E Think of the possibilities and add to those here if you wish. E 

E Price for current package Version 1 is $550, or Version 2 (including aged debtors analysis, etc.) is $750, or full listing, $300. E 

E PET 16/32K disk-based version, SWTP 6800, IMS/CPM/Z80/S-100. Compatible systems shortly available for Apple and Tandy. = 

| contact Tony Winter on 01-636-8210 § 

| 89 Bedford Court Mansions | 

i Bedford Avenue | 

| London W1, UK | 

^iiiimiiiiiiiiiiiiimiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiimiiiiiiiiN 



Circle 153 on inquiry card. 



October 1979 © BYTE Publications Inc 191 



Circle 219 on inquiry card. 




Ah! MICAH . . . 
SatisfyirT Software 

that turns your system on! 



MICAH 



EXPAND 

Your CP/M to run 
CROMEMCO SOFTWARE! 

MICAH's worldwide bestseller. A powerful tool to 
expand your CP/M system to be compatible with 
Cromemco Software. (BASIC, FORTRAN, COBOL, 
DBMS, WPS, etc.) Specify: system configuration/ 
memory size. 5" or 8" Disk w/manual: $95.00 

OSBORNE BUSINESS SOFTWARE in 16K BASIC 
and CBASIC2. Now available: Payroll, A/R and 
A/P. CP/M or Cromemco compatible. Specify 

your system. Coming soon: G/L. 

ea.: $95.00 



•MICROPLOT (Versatile 

Printer Graphics) 
•DBMS conversion to NAD 

(for Cromemco) 
•SPOOLER (for Cromemco) 



•CBIOS (CP/M for Cromemco) 
•DUPE (Disk Utility Package) 
•WINNING BLACKJACK 
(for CP/M) 



•Call or write for more information and prices • 
• credit cards accepted • 



MICro Applications and Hardware 

CONSULTANTS and SOFTWARE DEVELOPERS 
MICAH • Box 22212 • San Francisco, CA 94122 • 415/664-0778 or 564-4495 



Retro-Graphics™ 




or your uumo terminal, i 

Graphics PC card mounts easily in the Lear 
Siegler ADM-3A to provide you with an afford- 
able graphics computer terminal. 
Features: 



• Z-80 Based 

• 512 by 250 
Dot Matrix 

• Simple Plug-in 
Interconnect 



Point Plotting 
Automatic Vector 
Generation 

Optional TEKTRONIX 
Software Compatibility 



You will be impressed with the packaging, per- 
formance and price of the Retro-Graphics card. 
Write or phone today for complete specifications. 

DIGITAL ENGINEERING, INC. 

1787 Tribute Road, Suite K 

Sacramento, CA 95815 

(916) 920-5600 



BYTE's Bits 



Trees 



Guy L Steele Jr, MIT Artificial Intelligence Lab, 
Massachusetts Institute of Technology, Cambridge MA 02139 



I think that I shall never see 

A matrix lovely as a tree. 

Trees are fifty times as fun 

As structures a la PL/I 

(Which Dijkstra claims are too baroque). 

And SNOBOL's strings just can't compare 

With all the leaves a tree may bear, 

And COMIT strings are just a joke. 

Vectors, tuples too, are nice, 

But haven't the impressive flair 

Of trees to which a LISP is heir. 

A LISPer's life is paradise! 

Many people think that JOSS 
And others, too, are strictly boss; 
And there are many BASIC fans 
Who think their favorite language spans 
All that would a user please. 
Compared to LISP they're all a loss, 
For none of them gives all the ease 
With which a LISP builds moby trees. 

RPG is just a nurd 

(As you no doubt have often heard); 

The record layouts are absurd, 

And numbers packed in decimal form 

Will never fit a base-two word 

Without a veritable storm 

Of gross conversions fro and to 

With them arithmetic to do. 

And one must allocate the field 

Correct arithmetic to yield 

And decimal places represent 

Truncation loss to circumvent: 

Thus RPG is second-rate. 

In LISP one needn't allocate 

(That boon alone is heaven-sent!) 

The scheme is sheer simplicity: 

A number's just another tree. 

When numbers threaten overflow 

LISP makes the number tree to grow, 

Extending its significance 

With classic tree-like elegance. 

A LISP can generate reports, 

Create a file, do chains and sorts; 

But one thing you will never see 

Is moby trees in RPG. 

One thing the average language lacks 

Is programmed use of push-down stacks. 

But LISP provides this feature free: 

A stack — you guessed it — is a tree. 

An empty stack is simply NIL. 

In order, then, the stack to fill 

A CONS will push things on the top; 



192 October 1979 © BYTE Publications Inc Circle 101 on inquiry card. 



To empty it, a CDR will 

Behave exactly like a pop. 

A simple CAR will get you back 

The last thing you pushed on the stack; 

An empty stack's detectable 

By testing with the function NULL. 

Thus even should a LISPer lose 

With PROGs and GOs, RETURNs and DOs, 

He need his mind not overtax 

To implement recursive hacks: 

He'll utilize this clever ruse 

Of using trees as moby stacks. 

Some claim this method is too slow 

Because it uses CONS so much 

And thus requires the GC touch; 

It has one big advantage, though: 

You needn't fear for overflow. 

Since LISP allows its trees to grow, 

Stacks can to any limits go. 

COBOL input is a shame: 

The implementors play a game 

That no two versions are the same. 

And rocky is the FORTRAN road 

One's alpha input to decode: 

The FORMAT statement is to blame, 

But on the user falls the load. 

And FOCAL input's just a farce; 

But all LISP input comes pre-parsed! 

(The input reader gets its fame 

By getting storage for each node 

From lists of free words scattered sparse. 

Its parses all the input strings 

With aid of mystic mutterings; 

From dots and strange parentheses, 

From zeros, sevens, A's and Z's, 

Constructs, with magic reckonings, 

The pointers needed for its trees. 

It builds the trees with complex code 

With rubout processing bestowed; 

When typing errors do forebode 

The rubout makes recovery tame, 

And losers then will oft exclaim 

Their sanity to LISP is owed — 

To help these losers is LISP's aim.) 

The flow-control of APL 

And OS data sets as well 

Are best described as tortured hell. 

For LISPers everything's a breeze; 

They neatly output all their trees 

With format-free parentheses 

And see their program logic best 

By how their lovely parens nest. 

While others are by GOs possessed, 

And WHILE-DO, CASE, and all the rest, 

The LISPing hackers will prefer 

With COND their programs to invest 

And let their functions all recur 

When searching trees in maddened quest. 

Expanding records of fixed size 

Will quickly programs paralyze. 

Though ISAM claims to be so wise 

In allocating overflow, 

Its data handling is too slow 

And finding it takes many tries. 

But any fool can plainly see 

Inherent flexibility 

In data structured as a tree. 



SUPER 
SOFTWARE! 

MICROWARE 6800 SOFTWARE IS 
INNOVATION AND PERFORMANCE 

LISP Interpreter 

The programming language LISP offers exciting new possibilities for 
microcomputer applications. A highly interactive interpreter that uses 
list-type data structures which are simultaneously data and executable 
instructions. LISP features an unusual structured, recursive function- 
oriented syntax. Widely used for processing, artificial intelligence, 
education, simulation symbolic, and computer-aided design. 6800 
LISP requires a minimum of 12K RAM. 
Price $75.00 

A/BASIC Compiler 

The ever-growing A/BASIC family is threatening old-fashioned 
assembly language programming in a big way. This BASIC compiler 
generates pure, fast, efficient 6800 machine language from easy to 
write BASIC source programs. Uses ultra-fast integer math, extended 
string functions, boolean operators and real-time operations. Output is 
ROMable and RUNS WITHOUT ANY RUN-TIME PACKAGE. Disk ver- 
sions have disk I/O statements and require 12K memory and host DOS. 
Cassette version runs in 8K and requires RT/68 operating system. 
Price: Disk Extended Version 2.1 $150.00 
Cassette Version 1.0 $65.00 

A/BASIC Source Generator 

An "add-on" option for A/BASIC Compiler disk versions that adds an 
extra third pass which generates a full assembly-language output 
listing AND assembly language source file. Uses original BASIC names 
and inserts BASIC source lines as comments. SSB and SWTPC 
Miniflex version available. 
Price: $75.00 

A/BASIC Interpreter 

Here it is— a super-fast A/BASIC interpreter that is source-compatible 
with our A/BASIC compiler! Now you can interactively edit, execute 
and debug A/BASIC programs with the ease of an interpreter— then 
compile to super efficient machine language. Also a superb stand- 
alone applications and control-oriented interpreter. Requires 8K RAM. 
The cassette version is perfect for Motorola D2 Kits. 
Price: $75.00 

RT/68 Real Time Operating System 

MIKBUG— compatible ROM that combines an improved monitor/ 
debugger with a powerful multitasking real-time operating system. 
Supports up to 16 concurrent tasks at 8 priority levels plus real time 
clock and interrupt control. Thousands in use since 1976 handling all 
types of applications. Available on 6830 (MIKBUG-type)or 2708 
(EPROM-type) ROM. Manual is a classic on 6800 real-time applications 
and contains a full source program listing. 
Price: RT68MX (6830) $55.00 
RT68MXP (2708) $55.00 

6800 CHESS 

A challenging chess program for the 6800. Two selectable difficulty 
levels. Displays formatted chess board on standard terminals. Re- 
quires 8K memory. Machine language with A/BASIC source listing. 
Price: $50.00 



Our software is available for most popular 6800 systems on cassette or diskette 
unless otherwise noted Disk versions available on S S.B.. SWTPC. or Motorola 
MDOS Please specify which you require Phone orders are welcomed We accept 
MASTERCHARGE and VISA We try to ship orders within 24 hours of receipt. 
Please call or write if you require additional information or our free catalog. 
Microware software is available for OEM and custom applications. 



iVlIl^lxlJVVrVtxt^ DES MOINES, IA 50304 

SYSTHMS COKI'OKAIION (515) 265-6121 



Circle 225 on inquiry card. October 1979 © BYTE Publications Inc 193 



Circle 236 on inquiry card. 



IMMEDIATE 
DELIVERY 

Domestic & Export 

DEC LSI -11 
COMPONENTS 

A full and complete 
line with software 
support available. 



mini Computer 
Suppliers, Inc. 

25 CHATHAM ROAD 

SUMMIT, NEW JERSEY 07901 

SINCE 1973 



(201) 277-6150 Telex 13-6476 




Z s - SYSTEMS 

64K RAM BOARD 



: tailHH 
Jiiltlii 
Mil! 

.iistliir 



The Z S -SYSTEMS 64K RAM 
board is designed to operate 
in any Z80 based microcom- 
puter having S-100 bus. It 
uses 16K dynamic RAM chips, 
& features: 

— Board select 

— Bank select 

— Transparent on-board 
refresh 

— 2 or 4MHz operation 
(w/ no wait state) 

— Memory disable 

FLOPPY DISK 
CONTROLLER 

Handles with no modification 

up to: 

4 standard 8" drives 

(Shugart or compatible) or 
* 3 minidrives 5" 
Run with 2 or 4 MHz CPU 



Compatible with Cromemco 

and M/PM multiuser. Fully 

assembled, burned in, & 

tested. Available from stock 

to 60 days 

As low as $500.00 in 

quantities of 100 



Price of one. 



.$695.00 



With 16K RAM $359.00 

Plus shipping charges 




Use CP/M Disk Operating System 
Using the 1771 LSI controller 

Price of one $245.00 

PC board only $35.00 



SEND FOR FREE INFORMATION 

6 months warranty on our boards with normal use 

Zs-SYSTEMS 

PO Box 1847, San Diego, CA 92112 
(714) 447-3997 



When all their efforts have gone sour 
To swell fixed records, losers glower. 
But list reclaimers hour by hour 
By setting all the garbage free 
Yield CONSequent capacity: 
Thus trees indefinitely flower. 
(And trees run on atomic power!) 

To men of sensibility 
The lesson here is plain to see: 
Arrays are used by clods like me, 
But only LISP can make a tree. 

- The Great Quux (with apologies to Joyce Kilmer) 
©Copyright 1973 Guy L Steele Jr All rights reserved. 



How this poem came to be printed 
Notes by C Helmers 

The above parody was found on the MIT Artificial Intelli- 
gence Laboratory's computer during a recent (July 3) visit made 
to Henry Baker at the University of Rochester Computer 
Science Department. Its content reflects the LISP orientation of 
our August 1979 issue, and in a humorous way summarizes the 
true artificial intelligence hacker's point of view about LISP as a 
tool. 

Henry dug up an electronic view of the poem on the computer 
and communicated by that means my desire to make it more 
widely available. The poem's author, it turns out, is Guy Steele, 
who is presently connected with the MIT Artificial Intelligence 
Laboratory. I had in fact spent some time talking with Guy on a 
previous occasion, not knowing anything at all about his pen- 
chant for poetic parody. The poem was written in 1973. 

One of Guy's major technical accomplishments to date is his 
recent student project at MIT: design and implementation of a 
LISP-machine chip in silicon. 

In his letter accompanying the poem, Guy points out that 
probably the most obscure piece of jargon is the word "moby" 
used as an adjective. The etymology is a reference to Melville's 
whale, Moby -Dick. Thus a "moby tree" is a tree which is 
figuratively as large as a whale, or gigantic. Most of the other 
terminology referring to LISP is covered in recent BYTE issues; 
the references to other languages such as JOSS, RPG, FOR- 
TRAN, FOCAL, APL, the OS operating system of IBM, etc are 
best left undefined for the purposes of the poem. 

The import of the communications network as a tool for in- 
dividual computer users is signified by the practical example 
provided in this poem's arrangement for use in BYTE. The file 
containing "Trees" was publicly available to any person signing 
onto the MIT-AI computer. Henry Baker in particular was able 
to sign onto the computer from his usual location in Rochester, 
NY via the Arpanet, an electronic network connecting many re- 
search computers. Henry then left a "mail" message via the net- 
work for Guy at Stanford, California, where Guy was spending 
the summer. Guy then got in touch with me at my office by 
phone (also electronic). The arrangement was concluded with 
transmission of a physical copy to BYTE via the postal service. 

Readers of BYTE who own personal computers with an 
RS-232 interface will soon be able to sign up for private services 
equivalent to the electronic mail functions used by Henry and 
Guy in arranging this over the Arpanet. At least 2 different com- 
panies now offer (see recent advertisements) private off-hours 
timesharing and networking services at relatively low rates. 
These are typically billed via Master Charge and VISA. One of 
these services, Telecommunications Corporation of America, 
promises to offer a nationwide users' directory of identification 
numbers for its users, analogous to a phone directory. This ar- 
rival of individual-oriented digital communications-oriented 
networks will probably mark one of the great milestones of per- 
sonal computing. ■ 



194 October 1979 © BYTE Publications Inc Circle 401 on inquiry card. 



$3,995 



Million-Character Computer System 
One- Year Transferable Warranty 



$3,995 




SEE System 6684 Unique Standard Features 

• CPU integrated into Diskette Cabinet with 

peripheral ports in rear of cabinet 

• 4 Full communications ports RS232 or 20 

mA/60 mA CL; 75 to 19,200 bits/sec. 



$4,995 




SEE System 6784 Unique Standard Features 

• CPU integrated into video terminal cabinet 

with peripheral ports in rear 

• Video has 16 programmable function keys, 

128 high resolution characters with 
graphics, numeric keypad, reversed video, 
full editing, 24 x 80 display 



Standard Features on All Systems 



• Central Processing Unit with 12 slots; 2 MHz (ex- 
pandable to 4MHz with pipelining architecture) 

• 8 Free Slots for expansion; capacity for 442,368 
characters of memory within standard chassis 

• 49,152 characters of 200 ns random access memory; 
150 ns memory optional 

• 8 vectored interrupts; all input and output is interrupt 
driven 

• 1.2 million characters, double sided, dual 8" diskettes. 
IBM 3470 compatible 



• Printer controller; Centronics compatible 

• Magnum BASIC. Extremely fast business BASIC with 
full editing capabilities, print using, sequential and random 
files, integer and floating point arithmetic with up to 16 
digits precision; N-dimensional matrices and much more 

A superset of Microsoft 16K extended disk BASIC 

• Interactive conversational macro assembler and editor 
for 6800 family microprocessors. 

• One-year transferable limited warranty on parts and 
labor for all SEE hardware 

• Guaranteed 24-hour turn-around time on repairs 



Optional Features on All Systems 



• Up to 64 interconnected, intelligent terminals with no 
degradation of response time. Each is a stand alone CPU. 
True distributed processing 

• Expandable to 12 MB of 150 ns RAM for each terminal 

• Up to 64 RS232 ports with full communications. Talks to 
any peripheral or CPU with RS232 interface 

• Expandable to 4 MB of diskette storage 

• Up to 660 MB hard disk storage with removable modules 

• ANSI standard 10.5 inch tapes (1600 BPI) 

• 11 MB cartridge tape system 

• Matrix and word processing printers from 55 CPS to 
1400 LPM 



• Choice of 6809 and/or 6512 CPU board with speed of up 
to 4 MHZ with 1 50 ns memory 

• Interactive relocatable macro assembler, development 
system and DOS for 6502 and 651 2 microprocessors. Can 
assemble source programs up to 2 MB long 

• PASCAL compiler 

• FORTRAN compiler 

• BASIC compiler 

• COBOL compiler 

• Powerful word processing software 

• Comprehensive business software, incl. General Ledger, 
Accounts Receivable, Accounts Payable, Inventory, Payroll; 
Packages for Physicians, Publishers, Manufacturers, etc. 



Quantity discounts to bona fide dealers, OEMS, and schools 
Special configurations and modular shipment available 
A few distributorships available in the United States and other countries 




SYSTEMS ENGINEERING ENTERPRISES 

1 749 Rockville Pike, Rockville, Maryland 20852 
(301)468-1822 



Circle 350 on inquiry card. 



BYTE October 1979 



195 



Space Game 



Loring C White 

26 Boswell Rd 

Reading MA 01867 



Listing 1: Altai r BASIC listing for Space Game. This program allows data 
entry without the use of a return. This increases the real-time appearance of 
the game. 

10 PR1NTCHR$(26) 
2 Y5=5:GOSUB670 
30 PRINT'YOU HAVE BEEN ASKED TO GO ON A MISSION TO DESTROY FIVE" 

40 PRINT" ENEMY CRAFT THAT THREATEN THE GALAXY * 

50 PR I NT "YOU MUST POSITION YOUR CRAFT SO THAT THE ENEMY " 

60 PRINT" IS IN POSITION IN THE CENTER OF YOUR GUN SIGHT IN ORDER" 

70 PRINT"TO DESTROY THE ENEMY SPACECRAFT. 

80 PRINT"THE AIMING IS DONE AS FOLLOVS : " 

90 PRINT"HIT A 'U' FOR UP MOTION" 

100 PRINT"HIT A 'D' FOR DOW.MOTION" 

110 PRINT"HIT A 'L' FOR LEFT MOTION" 

120 PRINT"HIT A 'R' FOR RIGHT MOTION" 

130 PRINT"HIT A 'F' TO FIRE ROCKETS" 

140 PRINT"HIT A 'CONTROL C TO ABORT THE MISSION (CHICKEN OUT!)" 

150 PRINT"THE ENEMY RETURN FIRE WILL GRADUALLY DESTROY YOUR AIMING 

160 PRINT"ABILITY! ! ! ! ! ! SO DON'T DELAY!!!!' 

170 FORN=0TOI 5 000: NEXT 

180 INPUT"TYPE 'N' FOR NOVICE PILOT;'E' EXPERI ENCED; ' A' FOR 'ACE'";V$ 

190 IFV$="E"THENV8=I50 

200 IFV$="N"THENV8=300 

210 IFV$="A"THENV8=75 

220 PRINTCHR$(26) 

230 Y5=l0:X5=10:GOSUB670 

240 PRINT" GOOD LUCK ON YOUR MISSION ---ON INTO BATTLE! ! !" 

2 50 FORN=0TOl 000: NEXT 

260 POKE3758, I 8 : POKE403 I . 18 
270 D2=l :DI=I : PRINTCHRS ( 26 ) 
280 GOSUB1 140 

290 Y5=6:X5=0:GOSUB670:GOSUB500 
300 Y5=1NT( I0*RND( I )+7 ) 

3 10 X5=INT(20*RND( I ) + 2 1 ) 
320 GOSUB670 

3 30 GOSUB64 
340 GOSUB690 
350 GOSUBI080 

360 IF( INP( I6)ANDI)=0THEN350 

370 D=( INP( 17)ANDI27) 

380 GOSUB670 

390 IFD=76THENX5=X5+I 

400 IFD=82THENX5=X5- I 

410 IFD=85THENY5=Y5+1 

420 IFD=68THENY5=Y5- 1 

4 30 IFD=70THEN7 10 
440 1FD=3THEN490 
450 GOSUBI050 
460 GOSUB670 

470 GOSUB640 

480 GOTO340 

490 POKE3758, 16:POKE403I . I 6 : END 

Listing 1 continued on page 198 



If you don't have analog graphics capa- 
bility but do have an 8080 computer with a 
video display such as the ADM-3A, you may 
find this program a real challenge. 

For the past year or so I have been using 
the ADM-3A video monitor for running 
programs written for Teletype display, 
such as the early Star Trek games. Most of 
the new games are written with cursor 
control, giving a vast improvement to the 
display. When I utilized the cursor control 
feature of the ADM-3A it opened up a new 
world of programming enjoyment; with 
cursor control it is possible to write various 
areas on the screen without disturbing 
others. 

For example, in business programming 
it is desirable to preserve various tables and 
enter data at the end of each line without 
having to rewrite the table every time new 
data is written. In card games such as black- 
jack, it is convenient to print out the various 
cards in a line from left to right and hold the 
display while other cards are being written 
on another part of the screen. This type 
of display is possible only with a terminal 
having cursor control. Most of the programs 
I have rewritten are much more pleasing 
in the cursor control format. 

The program in listing 1 features capa- 
bilities not found in many of the space 
war games available commercially. It does 
not require a graphics or analog display 
terminal. In order to realize the full capa- 
bilities of the game it is necessary to have 
a 24 line by 80 character video monitor 
set for 9600 bps or faster, with a BASIC 
speaking computer. My system runs in 
MITS Altair, 16 K Extended BASIC, and 
the program itself will run in less than 4 K 
bytes of memory. MITS Altair 8 K Revision 
3.2 BASIC can also be used and the program 
revisions are discussed below. 

Program Features 

Some of the features of the program are: 

• The enemy craft takes evasive action 
during the run. 

• There are three levels of difficulty: 
novice pilot, experienced pilot and 
ace. 

• Final performance classification is dis- 
played after each mission. 

• Based on the skill of the pilot, the 
computer adjusts the degree of diffi- 
culty accordingly. Thus a novice 
can advance to experienced or ace 
by achieving a 75 percent record 
or better over a set time. Likewise 
a poor performance results in a down- 



196 October 1979 © BYTE Publications Inc 




Without our supe* programs, 

you've got Just another 

mild mannered computer. 

Computer Custom Systems is proud to introduce the latest advance in computer programming for the TRS-80. 
Chained, link-listed and ring link-listed software that provides unmatched access time. These programs will 
turn your mild mannered TRS-80 into super computer. 

Programs developed especially for the TRS-80 32K. 



GENERAL LEDGER 2 disk minimum, 3 recommended 
350 account members. 1600 transactions per data diskette. Open ended 
transactions. Trial balance, adjusted trial balance, balance sheet, 
income statements. Listings by data and account number. Maintenance 
program for entry of beginning balances $200 

ACCOUNTS RECEIVABLES* 2 disk minimum, 3 recommended 
320 account numbers per data disk. Open ended transactions. 
Automatic aging 30, 60, 90+ days. Pay on account or pay selected 
invoice. Bill selected or all accounts. Listing of all or selected accounts 
keyed to subaccount numbers $200 

ACCOUNTS PAYABLE* 2 disk minimum, 3 recommended 
320 account numbers per data disk. Open ended transactions per data 
disk. Variable percentage discount aging. Check writing. Listing of 
accounts $200 

PAYROLL* 2 disk minimum, 3 recommended 

164 employees per data disk. Open ended number of employees. Gross, 
Net, FICA, FIT, and 10 user-defined deductions. Self generated W-2's 
and 941A's. Summaries for payday, monthly, quarterly and yearly. 
Salaried, hourly or commission sales or any combination $175 

INVENTORY* 2 disk minimum, 3 recommended 

Retail inventory control for 960 items per data diskette. Open ended 
diskettes for more inventory items. Part number, item description, 
location, manufacturer, quantity on hand, on order, cost, minimum 
quantity on hand. Self generated orders when minimum quantity is 
reached $175 

JOB COSTS ANALYSIS* 2 disk minimum 

Material costs, taxes, travel costs, special equipment, miscellaneous 

costs, sub-contractor expenses. Tie in with PAYROLL for labor costs 

$175 

CHECK REGISTER* 1 disk minimum. 

Open ended check register to 32000 checks on up to 6 diskettes. 
Generated bank reconciliation statements. Retrieval of checks and 
information by date written, account number, check number, or several 
internal codes which are user defined. Replaces old hand operated 

systems $100 

'Optional tie in with GENERAL LEDGER. 



MAIL LIST 2 disk minimum 

500 listings per diskette. Name 

Number, Selection code. Sorts b 



Address, City, State, Zip, Phone 



by last name and zip code and prints 
mail labels. Optional tie in with WORD PROCESSOR $125 

WORD PROCESSING 1 disk minimum 

Full upper and lower case characterization. Up to 3 pages of text in 
memory at a time. Store up to 30 pages of text per diskette. Load, 
Save, Print-out (single or multi-copies) Insert/Delete lines, characters, or 
blocks of text. Block Move/Delete/Copy lines. Typesetting and variable 
length page. Type in the text sloppy, clean it up on the screen and 
print out a perfect copy. Interfaces with Selectric II. Optional tie in with 
MAIL LIST. See special offer below $150 

COLUMN CALCULATOR 1 disk minimum 

Statistical analysis of 1200 items of data with linear regression, histo- 
grams, and plotting of the results. All information can be manipulated 
by columns and rows; adding, subtracting, multiplying and dividing 
columns by other columns and putting the results in a third 
column $80 

DESIGNER PACKAGE 2 disk minimum 

Index card file has now been computerized for quick access to 
information. 320 "cards" with 20 information items each with access to 
each card via any combination of the items listed. Up to 90 drawings 
per data diskette with instant retrieval for review, update or deletion. 
Open ended number of drawings and cards $175 

BUILDER III 3 disk minimum 

Complete job cost analysis package for home builder. 189 user-defined 
cost categories. Automatic invoice control to actual cost of the home 
under construction. User input for estimated costs of home. Computer 
generated cost-to-cost comparisons. Up to 47 homes under construction 
per data diskette $200 

REAL ESTATE 1 disk minimum 

Provides complete real estate analysis to assist you in the purchase of 
investment real estate. Calculates based on square feet, price, land 
value, rentals. Gross multiplier of rentals. Projected income expense 
statement. Debt service and financial calculations on a cost basis and 
in an inflationary economic climate. Plotting of rate of return and various 
other statistical analysis $80 



SPECIAL ONE-TIME OFFER 

A combination of the WORD PROCESSOR and MAIL LIST. Type your 
letter once and the computer will automatically insert the name and 
address and personalize the letter to any extent that the user wants. 
The letter will be automatically typeset and printed out using the 
selection code built up with the MAIL LIST program or will be sent 
to all persons on the diskette. 2 disk minimum ONLY $75 



REAL ESTATE INVESTMENT PACKAGE 

A combination of the WORD PROCESSOR, COLUMN CALCULATOR, 
DESIGNER PACKAGE, and a special MAIL LIST. Included with this 
package are the FINANCIAL REPORT program for up to 45 properties/ 
data diskette and CAPITAL GAINS ANALYSIS program. 2 disk 
minimum ONLY $275 



To order the most advanced software for your TRS-80, select the program you desire and send your check 
or money order today. Or telephone and well charge it to your VISA or Master Charge. 

Computer Custom Systems, Inc. 



603 W. 13th St. Austin, Texas 78701 



512 472-6168 



Circle 56 on inquiry card. 



BYTE October 1979 197 



Listing 1 continued from page 1 96: 
500 PRINT* 



510 


PRINT* r 


520 


PRINT* 1* 


530 


PRINT* 1* 


540 


PRINT" I 


550 


PRINT" 1 r 1 


560 

570 


P R 1 NT " 1. ......... I 1.......... 


PRINT* 1 1 1 


580 


PRINT* 1 


590 


PRINT" 1 I 


600 


PRINT" 1" 


610 


PRINT" 1" 


620 
630 


PRINT" * 


RETURN 


640 


PRINT"! -O- 1 " ; 


6 50 


P=Y5 : Q=X5 


660 


RETURN 


670 


PRINT CHR$(27)+"="+CHR$(3 2+Y5)+CHR$(3 2+X5) ; 


680 


RETURN 


690 


PRINTCHR${ 2 7 ) + " = "+CHR$( 3 2 )+CHR$ ( 32 ) ; 


700 


RETURN 


710 


IHY5=I2THEN740 


720 


GOSUB8 80 


730 


GOTO3 20 


740 


IFX5=3ITHHN7 70 


750 


GOSUB8 80 


760 


GOTO3 2 


770 


Y5=12:X5 = 30:GOSUB670:PR1NT" POV 


780 


FORN=0TOI 00 : PR 1 NTCHRS ( 7 ) : : NEXT 


790 


EORN=0TO 100: NEXT 


800 


GOSUB6 70: PRINT" 


810 


HORN=0TOI00:NEXT 


820 


Y5 = 2 2:X5=0:GOSUB670 


8 30 


PRINT'M AY THE FORCE BE WITH YOU !!!!! 


840 


Y5=I :X5 = 50:GOSUB670 


850 


PRINT'ENEMY DESTROYED=" ;DI 


860 


DI=DI+I : IFDI=6THEN920 


870 


GOTO3 00 


880 


P=Y5 :Q=X5 : Y5=2 : X5=50 :GOSUB670 


890 


PRINT'NUMBER MISSED=" ; D2 : D2=D2+I 


900 


Y5=P:X5=Q:GOSUB6 7 


910 


RETURN 


920 


Y5 = 22:X5 = IO:GOSUB670 


930 


D2=D2- 1 


940 


Y5=20:X5=0:GOSUB670 


950 


PRINT"THE HCME BASE HAS BEEN SAVED- OONGRATUL AT 1 ONS !! * 


960 


PR INT" YOUR MISSION RECORD: " ; 5/ ( 5+D2 ) • 1 00 ; *% PERFORMANCE" 


970 


I F5 / ( 5+D2 ) * 1 00>75THENV8=V8 - 50 


980 


1 F5 / ( 5+D2 ) * 1 00<5 1 THENV8=V8+50 


990 


PRINT"DO YOU WANT ANOTHER MISSION 


I00C 


) IF( INP( I6)ANDI )=0THENI000 



1010 X=( INP( I7JANDI27) 

10 20 IFX08 9THENSTOP 

1030 GOTO2 70 

1040 Y5=0:X5=0:GOSUB670 

1050 PRINTCHRS ( 27 ) + " = "+CHR$ ( 32+P)+CHR$( 3 2+Q) ; 

1060 PRINT* 

1070 RETURN 

1080 T=T+I 

1090 IFT>V8THENI I 10 

I 100 RETURN 

1 I 10 IFX5>3 6THENI I 16 

1 I I I IFY5<I2THEN! I 16 

I I 12 X5=X5- I :Y5=Y5+I :GOSUB 1 50 :GOSUB670 :GOSUB64 0:GOSUB690 :GOTOI 120 

1114 GOTOI 120 

1116 X5=X5+I :Y5=Y5- I : GOSUB I 5 : GOSUB6 7 : GOSUB6 4 : GOSUB6 9 : GOTO 1 120 

1120 IFY5>I8THENPRINTCHR$(26):PRINT*Y0U'RE SHOT DOMM! ! " :GOTO490 

1122 IFY5<5THENPRINTCHR$(26) : PRINT'YOU'RE SHOT DCWN M ' : G0TO4 9 

I 130 T=0: RETURN 

1140 IFV8<=75 THENQ$ = *RATING=ACE P ILOT*GOTOI I 70 

1150 IFV8> = 300THENQ$ = *RATING=NOVICE P I LOT* : GOTOI 1 70 

1160 Q$=*RATING=EXPERIENCED PILOT* 

1170 Y5=2:X5=25:GOSUB670 

I 180 PRINTQS 

I 190 RETURN 



grade in classification and a resulting 
slower evasive action taken by the 
enemy. Performance record is based 
on the number of enemy craft des- 
troyed to the number of misses. 
• During the mission the enemy craft 
gradually destroys the pilot's capa- 
bility to aim rockets, and thus time 
becomes an important factor. 

Program Description 

At the start of the program the instruc- 
tions are listed and you are asked to classify 
yourself in accordance with your capabili- 
ties. At this point it is best to start off 
with the novice classification by typing an 
N. If you show promise you will be up- 
graded as each mission is accomplished, 
and can advance to ace with some practice 
and concentration. It should be mentioned 
however, that no matter how good you 
think you are, the computer can and will 
speed up enemy evasive action and it will 
become more and more difficult to complete 
the mission with good results. If the enemy 
craft is allowed to maneuver too far off the 
display you will be shot down and the game 
will be over. 

One of the features of the game is pilot 
data entry without use of the return key. 
This was programmed by using the INP 
function of Altair BASIC. It is possible 
to maneuver the plane by just hitting one 
key, such as the U key, for upward motion. 
In order to get reliable performance of the 
computer with the INP function it is neces- 
sary to disable the control C function of 
Altair BASIC. The control C is normally 
used for aborting program execution and 
returning to command mode. The control 
C function is temporarily disabled in Altair 
16 K BASIC Revision 4.0 by poking decimal 
addresses 3758 and 4031 to an unused port 
(port 18 on my system). The program is 
set up for the MITS, 2SIO board with the 
video monitor located at port number 16. 
If you have your monitor at another port, 
it is necessary to change lines 260, 360, 
370, 490, 1000 and 1010. For example, 
if you have a video monitor at port then 
change: 

Line 360 to I F(INP(0)AND1 )=0 THEN350 
Line370toD=(INP(1)AND127). 

These changes assume that your status 
and data ports are and 1 respectively. 
Also change lines 1000 and 1010 in the 
same way. For those of you who wish to 
run the program with Altair, 8 K BASIC, 
Revision 3.2 you may change the control C 
disable routine as follows: 



198 October 1979 © BYTE Publications Inc 



Line 260 POKE1422,18:POKE1514,18 
Line 490 POKE1422,16:POKE1514,16 

where 18 is an unused port and 16 is the 
video status port. Line 490 restores the 
Altair BASIC control C feature, and line 
number 260 aborts the control C, permit- 
ting pilot control direct from the key- 
board without use of the carriage return 
key. If you enjoy programming, try this 
on your Star Trek program to eliminate the 
need to use the return key. 

Running the Game 

After typing RUN, the instructions are 
clearly listed and time is allowed for the 
average reader to absorb the mechanics 
of the game. You are then asked what level 
of competence you have as a pilot. After 
you type in the appropriate response and 
hit a carriage return, the board is displayed 
and the enemy craft is randomly positioned 
in range of the gun sight. You are allowed a 
reasonable time to maneuver your craft 
(not the enemy) to where the enemy plane 
is in a more central position within the 
gun sight, but if you delay too long or 
fumble, the enemy will take evasive action 
and it will be necessary to reposition your 
gun sight. 

Once the plane is positioned in the exact 
center of the gun sight you must fire the 
rocket by hitting the F key. If this can be 
done before the plane moves out of line 
you will have done the job and the appro- 
priate score will be entered in the upper 
righthand corner of the screen. If you 
fire before the plane is centraily located, 
a miss is recorded. 

Your score and rating are adjusted 
appropriately after each mission (five craft 
must be shot down). By achieving a 75 
percent or better record you can increase 
your rating by 50 points and eventually 
advance to the next higher rating. The next 
rating also changes the degree of evasive 
action taken by the enemy and hence 
grows with the pilot's competence. In like 
manner, if you fail to complete your mis- 
sion, your rating will be lowered and the 
game will become easier, in keeping with 
your ability as a pilot. You will be demoted 
only if the number of misses exceeds the 
number of craft shot down. 

Using Other Video Monitors 

For those readers who have other types 
of (cursor controlled) video monitors it 
will be necessary to change lines 670 and 
690. Line 690 homes the cursor to the upper 
left corner of the display and whatever 



procedure is appropriate to do this on your 
monitor may be substituted for this sub- 
routine. Line 670 positions the cursor at 
the X,Y location desired for the particular 
printout desired. The Y position is the 
variable Y5 and the X position is X5. 

For example, if you want to position the 
printout at the exact center of the screen 
(24 lines by 80 characters) then Y5 is set to 
12 and X5 is set to 40. Cursor control 
programming involves only the additional 
information of where to print just before 
the PRINT statement is issued. By using a 
subroutine to locate the cursor for each 
print statement, you avoid having to rewrite 
the location for every printout. In this 
particular program we call a subroutine at 
line 670 after specifying Y5 and X5. In 
some cases the cursor should remember 
where it was on a previous printout, and 
in that case I set the variables P and Q to 
the original Y and X locations for storage 
(see line 650). 

If you haven't tried a terminal having 
cursor control you are missing a lot. Try this 
game and you may be tempted to convert 
some of your old business or game programs 
using the above techniques." 



Word Processor + Business System 



MicroDaSys Makes It Easy. 




FEATURES 



• S-100 Bus 

• Full-Sized Disk Drive (Standard) 

• Up To Four Disk Drives 

• Z-80®* Micro-Processor 

• CP/M®** Disk Operating System 

• Printer Interface 

• Full Word Processing Capability 

• Designed for Business Use 

AVAILABLE SOFTWARE 

• Accounts Receivable/Payable 

• Payroll 

• General Ledger 

• Inventory 

• Mailing List 

• Text Processor 

• Plus 500 More! 



AVAILABLE LANGUAGES 

• BASIC Compiler (Included) 

• FORTRAN 

• Pascal 

• COBOL 

• And Many More! 

CALL OR WRITE NOW! 

MicroDaSys 

POST OFFICE BOX 36051 
LOS ANGELES, CA 90036 

(213)935-4555 



Circle 221 on inquiry card. 



October 1979 © BYTE Publications Inc 199 



Easy to Use Hashing Function 



Don Kinzer 

3885 NW Columbia Ave 

Portland OR 97229 



Hashing, or scatter storage, is a well 
known and widely used technique for 
handling lists. Perhaps the most common 
usage is in assemblers and compilers where it 
greatly speeds the handling of symbols. This 
article briefly discusses the merits and draw- 
backs of hashing relative to other sorting and 
searching techniques and presents an easy to 
use hashing function implemented on a 6800 
microprocessor. 

The concept of hash tables first appeared 
in the literature around 1953 but it is 
generally accepted that hashing was used 
prior to that. Other names given to the same 
process are scatter storage, randomized 
storage and key transformation table. These 
names will be seen to be equally applicable 
shortly. 

Using the hashing technique, a symbol 
(collection of alphanumeric characters) to be 
put in the table is processed through a 
hashing function to obtain an index into a 
storage table. This index is then used for the 
address of a potential storage space for that 
symbol. We say potential because it is 
possible that some other symbol could have 
previously hashed to the same location. 
Such an occurrence is called a collision and 
the current symbol must be reprocessed to 
generate a new table address which is again 
checked for being empty and so on until 
an opening is found. 

When it is necessary to look up the value 
of a symbol a process similar to that above 
is performed. The symbol is processed 
through the same hashing function as before. 
Next the address is checked to make sure 
that it is not empty. If it is empty, the 
symbol is undefined. Now that we know a 
symbol is stored there, we must then check 
to see that it matches the symbol we are 
looking for because this may be a collision. 
If the symbols do not match, we have to 
rehash just as before until we find the sym- 
bol or an empty location. 

It is possible, with a given set of symbols, 
a given hashing function and a specified 
table length, that trying to insert a particular 



symbol into the table will result in an 
infinite number of collisions indicating no 
empty spaces even though the table is not 
full. By the same token another symbol 
may take many attempts before being 
finally inserted. 

It should be quite obvious that the ideal 
case would be an infinitely long table space. 
However, a real world compromise dictates 
that we "waste" a percentage of the table 
to keep the number of rehashes low. The 
trade-off is very evident. The lower the 
percentage of table utilization, the lower 
will be the number of collisions. As the 
percentage of table utilization increases, so 
will the number of collisions. Furthermore, 
the number of collisions, and therefore the 
number of rehashes, directly affects exe- 
cution time. It's the old memory size versus 
speed trade-off once again. In practice, a 
reasonable compromise is to shoot for 50 to 
80 percent table utilization and to determine 
the hash count (number of rehashes allowed) 
empirically. If the hash count is exceeded on 
a symbol insertion operation, the table is 
declared full, but on a symbol retrieval 
operation the symbol is declared undefined. 

When the table size and hashing function 
are selected appropriately, the average num- 
ber of hashes is generally less than log2 n 
where n is the number of symbols in the 
table. Compare this to a linear search which 
averages n/2 comparisons. An average 
assembly language program will contain 
about 100 labels and symbols. Hashing 
would average about seven collisions while 
a linear list would require about 50 com- 
parisons on the average. 

The crux of the hashing matter is finding 
a good hashing function which will minimize 
collisions. The procedure for this usually 
involves some complex mathematical analy- 
sis based on the characters expected in the 
symbols and their relative frequency of 
occurrence. The optimum hash function 
generally ends up being division by certain 
prime numbers or some other equally 
awkward scheme (for a microprocessor). 

As an alternative to this, I offer an 
empirically determined hashing function 
that works well within the confines of an 
assembler. The reason for using it, however, 
was logically derived and goes something 



200 



October 1979 © BYTE Publications Inc 



S reasons why you should not buy 

the electric pencil II™ 

• c 1978 Michael Shrayer 

Check the appropriate box(es): 

You love typing the same copy 20 thousand times a day. 

□ Your secretary can type 250 words per minute. 

□ You're dying to spend $15,000 on a word processing system, just for the 
tax investment credit. 

□ All your capital assets are tied up in a 1 0-year supply of correction fluid. 

□ You never commit a single thought to paper. 

If you have checked one or more boxes, you do not need The Electric Pencil. 
On the other hand, you may want to join the thousands of people who haven't 
checked a single box. 




The Electric Pencil II is a Charac- 
ter Oriented Word Processing System. 
This means that text is entered as a 
string of continuous characters and is 
manipulated as such. This allows the 
user enormous freedom and ease in the 
movement and handling of text. Since 
line endings are never delineated, any 
number of characters, words, lines or 
paragraphs may be inserted or deleted 
anywhere in the text. The entirety of 
the text shifts and opens up or closes 
as needed in full view of the user. The 
typing of carriage returns or word 
hyphenations is not required since 
lines of text are formatted automatic- 
ally. 

As text is typed and the end of a 
line is reached, a partially completed 
word is shifted to the beginning of the 
following line. Whenever text is insert- 
ed or deleted, existing text is pushed 
down or pulled up in a wrap around 
fashion. Everything appears on the 
video display as it occurs, which elim- 
inates guesswork. Text may be review- 
ed at will by variable speed scrolling 
both in the forward and reverse direc- 
tions. By using the search or search 
and replace functions, any string of 
characters may be located and/or re- 
placed with any other string of charac- 
ters as desired. 

Numerous combinations of 
line length, page length, line 
spacing and page spacing permit 
automatic formatting of any 
form. Character spacing, bold 
face, multicolumn and bidirec- 
tional printing are included in 
the Diablo versions. Multiple 
columns with right and left justified 
margins may be printed in a single pass. 

Wide screen video 

Versions are available for Imsai 
VI O video users with the huge 80x24 
character screen. These versions put al- 
most twice as many characters on the 



CP/M versions 

Digital Research's CP/M, as well as 
its derivatives, including IMDOS and 
CDOS, and Helios PTDOS versions are 
also available. There are several NEC 
Spinwriter print packages. A utility 
program that converts The Electric 
Pencil to CP/M to Pencil files, called 
CONVERT, is only $35. 

Features 

• CP/M, IMDOS and HELIOS compatible 
Supports four disk drives 
Dynamic print formatting 
DIABLO and NEC printer packages 
Multi-column formatting in one pass 
Print value chaining 
Page-at-a-time scrolling 

• Bidirectional muttispeed scrolling con- 
trols 

• Subsystem with print value scoreboard 

• Automatic word and record number 
tally 

• Cassette backup for additional storage 

• Full margin control 

• End-of-page control 

• Non-printing text commenting 

• Line and paragraph indentation 

• Centering 

• Underlining 

• Bold face 

Upgrading policy 

Any version of The Electric Pencil 



Have we got a version 
for you? 

The Electric Pencil II operates 
with any 8080/Z80 based microcom- 
puter that supports a CP/M disk sys- 
tem and uses an Imsai VIO, Processor 
Tech. VDM-1, Polymorphb VTI, Solid 
State Music VB-1B or Vector Graphic 
video interface. REX versions also 
available. Specify when using CP/M 
that has been modified for Micropolis 
or North Star disk systems as follows: 
for North star add suffix A to version 
number; for Micropolis add suffix B, 
e.g., SS-IIA, DV-IIB. 



Vers. 


Video 


Printer 


Price 


SSI I 


SOL 


TTY or similar 


$225. 


SP-II 


VTI 


TTY or similar 


225. 


SV-II 


VDM 


TTY or similar 


225. 


SR II 


REX 


TTY or similar 


250. 


Sill 


VIO 


TTY or similar 


250. 


DS-II 


SOL 


Diablo 1610/20 


275. 


DP-II 


VTI 


Diablo 1610/20 


275. 


DV-II 


VDM 


Diablo 1610/20 


275. 


DR-II 


REX 


Diablo 1610/20 


300 


DIM 


VIO 


Diablo 1610/20 


300 


NS-II 


SOL 


NEC Spinwriter 


275 


NP--II 


VTI 


NEC Spinwriter 


275 


NV-II 


VDM 


NEC Spinwriter 


275 


NR-II 


REX 


NEC Spinwriter 


300 


Nl-ll 


VIO 


NEC Spinwriter 


300 


SSH 


SOL 


Helios/TTY 


250 


DSH 


SOL 


Helios/Diablo 


300 




MICHAEL SHRAYER SOFTWARE, INC 

1253 Vista Superba Drive 

Glendale, CA. 91205 

(213)956-1593 



may be upgraded at any time by sim- 
ply returning the original disk or cas- 
sette and the price difference between 
versions, plus $15 to Michael Shrayer 
Software. Only the originally purchas- 
ed cassette or diskette will be accepted 
for upgrading under this policy. 



Attention: TRS-80 Users! 

The Electric Pencil has been de- 
signed to work with both Level I 
(16K system) and Level II mod- 
els of the TRS-80, and with vir- 
tually any printer you choose. 
Two versions, one for use with 
cassette, and one for use with 
disk, are available on cassette. 
The TRS-80 disk version is easily tran- 
sferred to disk and is fully interactive 
with the READ, WRITE, DIR, and 
KILL routines of TRSDOS 2.1. 
Version Stora ge Price 

TRC Cassette $100. 
TRD Disk $150. 



i!N 



Demand a demo from your dealer ! 



Circle 319 on inquiry card. 



BYTE October 1979 



201 



Listing 1: The assembly listing of the hash function and random number gen- 
erator. If the first hash of a label does not work, the routine is entered a 
second time through the REHASH function. The random number generator 
generates a 24 bit random number which is used to determine the table loca- 
tion of the label. 



0020 
0020 
0023 



1.000 



0100 



* 

* STORAGE 
* 

ORG $20 
RNt.iM RMB 3 
TECriFiR RMB 2 

* 

5YMTM- fOU fiOOO 

ORG $1.00 

** HASH 

* THIS routine: processes the symbol pointed to by X 

* AND RETURNS THE ADDRESS Or A SYMBOL LOCATION OF 
*. THE AK SYMBOL TABLE IN THE X REGISTER. 

* IT IS UP TO THE CALLING ROUTINE TO CHECK THE 

* VALIDITY OF THE SYMBOL LOCATION, 
* 

* REHASH IS THE ENTRY POINT IF A RETRY IS NECESSARY 
* 

* THE B REGISTER CONTAINS THE HASH COUNT (THE 

* NUMBER OF-" TIMES HAESH + REHASH HAVE ECEN CALLED). 
* 



0100 


5F 




HASH 


CL.R 


E< 




SET HASH COUNT TO 


0101 


A6 


00 




LDA 


A 


OfX 


GET FIRST CHAF* 


0103 


AB 


05 




ADD 


A 


5»X 


FOLD THE SYMBOL. TO 3 BYTE 


0105 


97 


22 




ST A 


A 


RNDM+2 




0107 


A6 


01 




LDA 


A 


l.X 




0109 


A9 


04 




ADC 


A 


4.X 




01 OP 


97 


21 




STA 


A 


RNDM+1 




0100 


A6 


02 




LDA 


A 


2»X 




01 OF 


A9 


03 




ADC 


A 


3»X 




0111 


97 


20 


* 


STA 


A 


RNDM 


F-OLD DONE 


0113 


5C 




* 
REHASH 


INC 


B 




UP THE HASH COUNT 


0114 


BD 


01 2C 




J BR 




RANDOM 


GENERATE RANDOM BITS 


0117 


96 


22 




LDA 


A 


RNDM +2 


GET A BYTE OF RANDOM 


0119 


94 


OF- 




AND 


A 


$0F 


MASK OFF 4 


11 B 


36 






PSH 


A 




SAVE TILL LATER- 


one 


96 


21 




LDA 


A 


RNDM+1 


GET ANOTHER BYTE 


01 IE 


94 


F8 




AND 


A 


$F8 


MASK OFF 5 (9 BITS TOTAL) 


0120 


8K< 


00 


* 


ADD 


A 


♦SYMTBL 


ADD TO LS HALF 

OF SYMBOL TABLE ADDRESS 


0122 


97 


24 




STA 


A 


TBLADR+1 


SAVE 


0124 


32 






PUL 


A 




GET FIRST BYTE BACK 


0125 


89 


10 


* 


ADC 


A 


tSYMTBL/21 


56 ADD TO MS HALF OF 
SYMBOL TABLE ADDRESS 


0127 


97 


23 




STA 


A 


TBLADR 


SAVE 


0129 


DE 


23 




LDX 




TBLADR 


GET ENTRY ADDRESS 


012B 


39 




* 


RTS 






DONE 



** RANDOM 

* THIS ROUTINE RETURNS A 24 BIT RANDOM 

* NUMBER IN RNDM THROUGH RNDM+2 WHICH MUST BE 

* NON-ZERO UPON ENTRY, THE ROUTINE MAKES 24 

* PASSES TO INVOLVE ALL BITS OF THE SEED IN 

* THE RESULT. 



012C 


36 




RANDOM 


PSH 


A 






01 2D 


37 








PSH 


B 




SAVE REGS 


012E 


C6 


18 






LDA 


D 


♦ 24 


GET LOOP COUNT 


0130 


96 


20 


RNDLP 


LDA 


A 


RNDM 


GET MS BYTE 


0132 


49 








ROL 


A 






0133 


49 








ROL 


A 






0134 


49 








ROL 


A 






0135 


49 








ROL 


A 






0136 


49 








ROL 


A 






0137 


98 


20 






EOR 


A 


RNDM 


XOR BIT 18 WITH 23 


0139 


49 








ROL 


A 




PUT RESULT IN CARRY 


013A 


79 


00 22 






ROL 




RNDM+2 


SHIFT IT IN 


0130 


79 


00 21 






ROL 




RNDM+1 


PROPAGATE ACROSS 


0140 


79 


00 20 






ROL 




RNDM 


ALL THE. WAY 


0143 


5A 








DEC 


P 




PASS DONE 


0144 


26 


EA 






BNE 




RNDLP 


LOOP TILL DONE 


0146 


33 








PUL 


B 






0147 


32 








PUL 


A 




RESTORF REGS 


0148 


39 




* 
* 
* 




RTS 






DONE 










END 










NO 


i ERROR (S) 


DETECTED 








SYMBOL 


. TABLE 














WASH 


0100 




RANDOM 0] 


.2C 




REHASH 0113 RNDLP 


RNDM 


oo:io 




SYMTBL 1000 




TBLADR 0023 



like this: it is the purpose of hashing to 
randomly distribute symbols about a table; 
why not then use a random number gener- 
ator to generate the table index? 

The random number generator, RAN- 
DOM, and the HASH routine used are 
shown in listing 1. The random number 
generator uses the maximal length sequence 
generator technique to generate a 24 bit 
random number. With a nonzero initial 
state in the three bytes, each call to RAN- 
DOM will leave them in a specific final 
state. Different initial states produce 
randomly different final states. 

The HASH routine merely loads the 
three bytes with the symbol and calls 
RANDOM to generate a random bit se- 
quence. The assembler for which HASH 
was written allowed six character symbols. 
In order to utilize every bit of symbol 
information to hash to an address, the six 
character symbol is crammed into three 
bytes by "folding" it in half. This is done 
by adding the outermost bytes (characters) 
together for one byte of the random number 
generator followed by adding together the 
next outermost two characters and lastly the 
innermost two. This can be done without 
losing information because the ASCII char- 
acters of the symbols have a hexadecimal 
value less than 7F. Two of these added 
together have a value less than hexadecimal 
FE which fits in eight bits. 

The HASH routine in listing 1 assumes a 
4 K byte symbol table limitation. With six 
bytes for the symbol name and two bytes 
for its value this allows 512 symbol spaces. 
This being the case, only nine bits are 
needed for a table index. Since the result 
of the call to RANDOM is 24 random bits 
we are perfectly free to choose any nine of 
those bits for the index. HASH does this by 
taking out the most significant nine of the 
least significant 1 2 bits of the generator. 

Recall that HASH only returns a 
potent/ally useful table address. In the case 
of a label insertion operation it is up to 
the calling routine to check that the re- 
turned address is empty. If not, REHASH 
is called which utilizes the last contents of 
the random number generator as a seed for 
the next random number. Calling HASH 
again will produce exactly the same address. 
Alternate means of handling collisions such 
as linear or quadratic distribution will not be 
discussed here. 

In the case of a label retrieve operation 



202 October 1979 © BYTE Publications Inc 



Boohs to Grose the impossible 



BITS' 

Stock up for Winter Reading 



PERIODICAL GUIDE FOR 

COMPUTERISTS 1978 

by E. Berg 

D This Is the latest issue of E. Berg's index 
of microcomputer related articles from 27 
periodicals. Articles are indexed under 
more than 120 subjects and also indirectly 
by author. This is an invaluable aid in deal- 
ing with the great volume of microcom- 
puter information. 80 pp. $5.00 

□ PERIODICAL GUIDE FOR COM- 
PUTERISTS 1977 $5.00 

STIMULATING SIMULATIONS 

2nd Ed. 

by C. W. Engel 

D Here are twelve entertaining game 
programs in BASIC that illustrate the 
technique of simulation. They're well 
documented, educational and fun. 

100 pp. $4.95 

FROM THE COUNTER TO THE 

BOTTOM LINE 
by Carl Warren & Merl Miller 

□ Microcomputers are bringing the cost 
of automated bookkeeping within the 
budget of many small businesses. This 
book, by two authors prominent in the 
microcomputer world, can help you 
carefully weigh the costs and benefits of 
computerizing your business system. 

289 pp. $12.95 

THE BASIC HANDBOOK 
by David A. Lien 

□ Herein are defined over 250 commonly 
used BASIC statements, functions, oper- 
ators and commands; with test programs, 
sample runs, helpful hints, variations, and 
alternate ways of implementation when the 
words are not available in your BASIC. Now 
you can translate programs written for 
another version of BASIC to run on your 
machine! 360 pp. $14.95 

PIMS - PERSONAL INFORMATION 

MANAGEMENT SYSTEM 

by Madan Gupta 

D This book describes a database 
management program designed for per- 
sonal use on small computers using 
BASIC. Complete listings, operating in- 
structions, and application examples are 
included. Unleash the power of your per- 
sonal computer. 88 pp. $9.95 

BASIC COMPUTER GAMES 
edited by David Ahl 

□ 101 classic computer games in 
microcomputer BASIC including listings, 
sample runs and descriptive notes; hours 
of challenge, fun and learning on your com- 



puter at a small price. 



& 



188 pp. $7.50 



MORE BASIC COMPUTER GAMES 

D 84 brand new games 192 pp. $7.50 

SARGON 
by Dan & Kathe Spracklen 

D Sargon won the 78 West Coast Com- 
puter Faire tournament for microcom- 
puters. Now you can run it on your own 
microcomputer! 

141 page book (8K, Z-80 listing) $14.95 




'HH k HiiMl KiMI! UK h> JjmnWfetc 



<*3EgSS3Bn»J3 




SECOND tv 



YOUR HOME COMPUTER 
by James White 

□ A clearly written, non-technical description of personal 
computers with the emphasis on understanding. 

235 pp. $9.95 

CONFERENCE PROCEEDINGS OF THE 

WEST COAST COMPUTER FAIRES 

edited by Jim Warren 

□ These are big packages of fascinating information and prac- 
tical guidelines from the West Coast Computer Faire symposia: 

QJ IV 1979 390pp. $13.00 D II 1978 505pp.$13.00 
□ III 1978 350 pp. $13.00 □ 11977 336pp.$12.00 

DIAL YOUR BANK CARD ORDERS 

TOLL FREE 800-258-5477 



(in N.H. dial 924-3355) 



MON-FRI 9-5 



or enclose your check with this ad: 1B109 

Postage & Handling $.75/item USA, $1.00/item foreign (to a 
maximum of $3.00), $7.00 per item foreign airmail. 

ftlTC 

191 I J inc Books to erase the impossible 

POB 428. 25 Route 101 West, Peterborough NH. 034S8 




THE MIND APPLIANCE 
by T. G. Lewis 

D Here are dozens of BASIC programs to 
put your microcomputer to work in every 
room of the house. Let your computer dial 
the telephone, help plan menus, balance 
your checkbook and become a file for 
important information. 138 pp. $7.95 

HOW TO PROFIT FROM YOUR 

PERSONAL COMPUTER 

by T. G. Lewis 

D Accounting, inventory, payroll, mail- 
ing list processing, and other business and 
home applications of the microcomputer 
are illustrated in this book, using a 
"blueprint" structural design method and 
BASIC. Put your computer to work. 

192 pp. $8.95 

GETTING INVOLVED WITH YOUR 

OWN COMPUTER 
by Leslie Solomon & Stanley Veit 

D Whether your interest is business 
applications, word processing, security, 
games, graphics, or robots, this book will 
getyou started and keep you on track with 
lots of information on hardware, software, 
and microcomputer resources. 

216 pp. $5.95 

WHAT TO DO AFTER 

YOU HIT RETURN 

from the Peoples Computer Co. 

□ Games, simulations, and more games; 
written in extended BASIC for fun and 
learning. Complete instructions, examples 
and listings, in PCC's lively style. 

168 big pages $10.95 

HOW TO BUILD A COMPUTER - 

CONTROLLED ROBOT 

by Tod Loofbourrow 

□ This book details the step-by-step 
directions for building a robot, named 
"Mike", controlled by a KIM-1 microcom- 
puter. Photographs, diagrams, tables, cir- 
cuits, and program listings are included. 
What will your robot look like? 

132 pp. $7.95 

AN INTRODUCTION TO PERSONAL 

AND BUSINESS COMPUTING 

by Rodnay Zaks 

□ If you are considering a small com- 
puter for your business or personal use, 
here is some good background information 
including fundamental computer concepts, 
hardware and software considerations, 
and language choices. Good preparation 
for the microcomputer user. 

245 pp. $6.95 

STANDARD DICTIONARY OF 

COMPUTERS AND INFORMATION 

PROCESSING 2nd ed. 

by Martin H. Weik 

□ This very complete, fully cross- 
referenced dictionary includes full expla- 
nations, practical examples, many perti- 
nent illustrations, and supplementary 
information for over 12,500 hardware and 
software terms. 

Hardcover 390 pp. $17.95 

THE INCREDIBLE SECRET 
MONEY MACHINE 
by Don Lancaster 

□ Don Lancaster shares his secrets on 
how to set up your own incredible money 
machine— computer, technical, craft or 
other small-scale business— and keep it 
going strong. A virtual goldmine of impor- 
tant information packed into 160 light- 
hearted pages. 1 59 pp. $5.95 



You may photocopy this page 



BYTE October 1979 



203 



Circle 97 on inquiry card. 



IT'S HERE... 

anti-magnetic 
protection for 
cassette-stored 
data r 




TAPE* SAFE 

METAL CASSETTE SHIELDS 

Don't risk the erasure of valuable cassette-stored 
data through accidental magnetic-field exposure. 
Such irretrievable loss can occur during storage or 
transit if unprotected tapes are exposed to the mag- 
netic fields produced by motors, transformers, gen- 
erators, electronic equipment— even the intense 
transient fields induced by electrical storms. TAPE* 
SAFE Cassette Shields are constructed of the same 
special magnetic alloy used to shield cathode ray 
tubes and other magnetic-sensitive components. 
Heliarc-welded seams and hydrogen annealing as- 
sure optimum shielding properties. Each attractively- 
finished TAPE*SAFE Shield accommodates one cas- 
sette in its original plastic box. The handsome FILE 
DECK, in contrasting color, stores six TAPE*SAFE 
Shields (One FILE DECK sent FREE with each six Cas- 
sette Shields). Order direct from this ad. Visa and 
MasterCharge telephone orders accepted. 
TAPE*SAFE Cassette Shields— 514.95 ea., postpd. 
Six or more at onetime— $12.95 ea., postpd. 
Inquire about quantity discounts 

Data-Safe Products, Inc. 

1926 Margaret St., Phila.,PA 19124* 215/535-3004 
Dealer Inquiries Invited 




SPECIAL INTRODUCTORY OFFER 

Ship TAPE*SAFE Shields at $ ( 

Ship FILE DECK Racks at $ ea. 



Total Enclosed $- 



-(check or money order) 



Pa. Residents add 6% Sales Tax. 



Name- 



Addfess- 
City- 



i- .= I 



Zip- 



the calling routine needs to check if the 
symbol matches that at the table address. 
If they do not match and the location is 
not empty, REHASH until the hash count 
limit is exceeded or an empty location is 
found whereupon the symbol is declared 
to be undefined. Note that it will take 
exactly the same number of attempts to 
find a symbol as it did to put it in the table 
to begin with. 

This has by no means been a thorough 
treatment of the subject of hashing but only 
an attempt to pass on something which 
works rather well in my experience. The 
interested reader is encouraged to do further 
research into the topics mentioned here." 

REFERENCES 

1. Grappel R, "Randomize Your Programming," 
BYTE, volume 1, number 13, September 1976. 

2. Hopgood, F R A, Compiling Techniques, 
American Elsevier, 1970. 

3. Knuth, Donald E, The Art of Computer Pro- 
gramming, volume 3, Sorting and Searching, 
Addison Wesley, 1973. 

4. Lancaster, D, "Understanding Pseudo-Random 
Circuits," Radio Electronics, April 1975. 



Processor Technology 
Softwore 

New cassettes and manuals for Sol and 
CUTER systems. 

Extended Casette Basic o . . 5.00 

o 
Gamepac 1 o . . 5.00 

Gamepac 2 ^ . . 5.00 

FOCAL cc . . 5.00 

TREK 80 O . . 5.00 

EDIT . . 5.00 

DEBUG «- .. 5.00 

Cassette Assembler ^ . . 5.00 

PILOT < . . 5.00 

ALS-8 in ROM (9216) 34.00 

The above is available in limited quantity only and 
subject to prior sale. California residents add 6 1 /2% 
sales tax. Add $3.00 for handling orders less than 
$99.00. 

A> CHEOPS ELECTRONICS 

441 Swallow Ct., Livermore, CA 94550 
(415) 449-8080 



204 



October 1979 © BYTE Publications Inc 



Circle 45 on inquiry card. 



MICROCOMPUTER BOOKSHELF 




AN INTRODUCTION 
TO MICROCOMPUTERS 

Volume — The Beginner's Book 

by Adam Osborne 

This book introduces 
computer logic and ter- 
minology to the com- 
plete beginner in the 
field of microcom- 
puters. Numerous il- 
lustrations and photo- 
graphs combine with 
clear, easy-to-follow 
text to provide an ele- 
mentary but broad- 
based background. 

#26-8 $7.95 

Volume 1 — Basic Concepts 

by Adam Osborne 

A must for anyone in the computer field, 
this best-selling text explains hardware and 
programming concepts common to all 
microprocessors. 

#02-0 $9.50 

Volume 2 — Some Real Microprocessors 

by Adam Osborne et al. 
This unique reference provides objective 
descriptions of virtually every micro- 
processor on the market today. Lets you 
know what's available, how they work (or 
don't work), and how to use them. Loose- 
leaf. Binders and yearly updates (six issues) 
sold separately. 

Vol. 2 book. 1978 ed. #15-2 $25.00 

Vol. 2 binder #16-0 $ 5.00 

Vol. 2 1978/79 updates #97 $25.00 

VoV 2 \919/80 updates #94 $25.00 

Volume 3 — Some Real Support Devices 

by Jerry Kane et al. 

Same objective, in-depth coverage as 
Volume 2, but applied to support 
devices: memory, data converters, data 
communication devices, direct memory ac- 
cess controllers, busses, and much more. 
Loose-leaf. Binders and yearly updates (six 
issues) sold separately. 

Vol. 3 book, 1978 ed. #18-7 $15.00 

Vol. 3 binder #19-5 $ 5.00 

Vol. 3 1978/79 updates #98 $25.00 

Vol. 3 1979/80 updates #95 $25.00 



D C 



RUNNING WILD - THE NEXT 
INDUSTRIAL REVOLUTION 

by Adam Osborne 

A 24-hour work week? Bionic man? Job 
redistribution? No one should miss this 
enlightening survey of the microelectronics 
industry and forecast for the future. Photos 
and illustrations. Intended for all audiences. 
#28-4 $3.95 



C 



OSBORNE SOFTWARE 

Some Common BASIC Programs 

by Lon Poole et al. 

76 short practical programs, most of which 
can be used on any microcomputer with any 
version of BASIC. Complete with listings, 
remarks, descriptions and examples. Special 
PET cassette and TRS-80 cassette versions. 




SCBP book 

SCBP PET cassette 

SCBP TRS-80 cassette 



#06-3 $9.50 
#25-X $15.00 
#32-2 $15.00 



^ 

CBASIC 



Payroll with Cost Accounting - CBASIC 
Accounts Payable/Receivable - CBASIC 
General Ledger - CBASIC 



OSBORNE/McGraw-Hill 



ASSEMBLY LANGUAGE 
PROGRAMMING 



8080A/8085 



6800 - Z80 
6809 






These books explain assembly language pro- 
gramming, the functions of assemblers and 
assembly instructions, and basic software 
development concepts. Numerous practical 
programming examples are included for 
each. All books by Lance Leventhal. 




6502 ALP 
Z80ALP 
6800 ALP 
8080A/8085 ALP 



#27-6 $9.50 

#21-7 $9.50 

#12-8 $9.50 

#10-1 $9.50 



6809 ALP (check box below to be notified of availability) 

Also: 

Z80 Programming for Logic Design #11-X $9.50 

6800 Programming for Logic Design #05-5 $9.50 

8080 Programming for Logic Design #04-7 $9.50 



( ) 




Book/Cassette # 


Price 


Quantity 


Amount 


# 








# 








# 








# 








Calif, residents add 6% sales tax. Subtotal 
S.F. BART residents add 6-1/2 % sales tax. 




No tax on update subscriptions. California residents tax 




SHIPPING (Shipping for large orders to be arranged) 

D All foreign orders $4.00 per item for airmail Shipping 




■ No charge in the US. on update subscriptions. 

□ $0.45 per item 4th class in the U.S. (allow 3-4 weeks) TOTAL 






NAME:. 



ADDRESS:. 

CITY: 

ZIP: 



.STATE:. 



.PHONE:. 



□ $0.75 per item UPS in the U.S. (allow 10 days) 

□ $1.50 per item special rush shipment by air in the U.S. 
For faster shipment or credit card, phone (415) 548-2805 



eft 



OSBORNE/McGraw-Hill, 

630 Bancroft Way, Dept. 
Berkeley. C A 94710 
(415) 548-2805 
TWX 910-366-7277 



Inc. 

I25 



Circle 292 on inquiry card. 



BYTE October 1979 205 



Budget Building 
on a Bare Board 



About the Author 

Dan S Parker works 
with microcomputers as a 
hobbyist (with an Altai r 
8800a), and in his re- 
search works as a doctoral 
student in the Physics De- 
partment of the University 
of California at Davis. He 
has developed a disk based 
8080 data acquisition sys- 
tem for on and off line 
data retrieval and plotting 
of cryogenic experiments 
on magnetic phenomena 
of rare earth crystals. 



Dan S Parker 

1007 3rd St #3 

Davis CA 95616 



For the experimenter with an eye toward 
saving a little money or who has a well- 
stocked parts cabinet, the thought of buying 
a blank computer board can be very appeal- 
ing. It is now possible to assemble an entire 
S-100 computer system using your own 
parts and commercially designed printed cir- 
cuit boards which are offered with complete 
documentation but with no parts. Table 1 
indicates how this could be done. Even if 
you would rather assemble an SS-50 (6800 
processor) system, read on anyway since 
much of what is said will apply to bare 
boards for those systems too (even though 
the selection of bare 6800 based computer 
boards is somewhat limited at present). 
Savings sometimes reach as much as 30 to 
50 percent over the purchase price of a kit 
or an assembled board if parts are purchased 
carefully and only as needed. Three com- 
panies, Cybercom, Solid State Music (now 
SSM) and Ithaca Audio, offer low cost bare 
printed circuit boards for S-100 experi- 
menters who are willing to do a little shop- 
ping for parts bargains and still have a pro- 
fessionally designed system. 

I would like to summarize a few of 
my experiences assembling bare computer 
boards. It can be a rewarding endeavor if a 
few minor pitfalls are avoided. 

Documentation and Software 

Have you ever tried to assemble a circuit 
board with no parts layout, schematic, silk 
screen mask, or other documentation? Of 
course it would be impossible. All blank 
boards cone with some form of documenta- 
tion as just mentioned. Normally it consists 
of the preceding, plus a sheet or two of in- 
structions on how to assemble the board. 
Don't expect elaborate and expensive man- 
uals with your board. My experience has 
been that the documentation included with 
most bare boards is adequate for those who 
have already assembled one or more kits and 
who have the basic skills. 

Many companies also offer the documen- 
tation packages for their boards as separate 
packages, usually priced at a dollar or so to 
cover printing and mailing costs. If you're 
really interested in a board, this is a very 
good investment. Always ask if the docu- 



mentation can be had separately— this isn't 
always advertised. 

Some types of computer cards demand 
that software support be provided. Foremost 
among these are video display and modem 
boards, which usually require a driver pro- 
gram to communicate with the interface. 
All such bare boards that I've seen offered 
include such software, although usually only 
in a hard copy source form which must be 
relocated or loaded in by hand. 

About the Table 

Table 1 lists some of the bare S-1 00 com- 
patible boards on the market today. A few 
words are in order concerning the bare board 
tabulation. Many companies act as distribu- 
tors for boards produced by other manu- 
facturers. The table attempts to list only the 
main or representative distributor of the 
product. Prices can change rapidly, and dif- 
ferent dealers may offer the same board for 
varying prices. A very handy address refer- 
ence to these companies and a listing of 
hobby computer products which contains 
many of the boards listed in table 1 can be 
had by sending a business size, self-addresed, 
stamped envelope to S-100 Reference List, 
c/o Robert Elliott Purser, POB 466, El 
Dorado CA 95623. 

Dealer Liability and Warranty 

Almost without exception, you take a 
risk in purchasing a blank board if some- 
thing goes wrong. The same is true of buying 
a complete kit. The adage "y° u get what 
you pay for" is certainly true in the bare 
board business. Dealer liability" is limited to 
the replacement of the board if it proves 
defective. Any parts, such as sockets, that 
can't be salvaged if the board proves defec- 
tive in design or manufacture are the burden 
the buyer must accept. Be sure you under- 
stand the limits of the warranty that the 
dealer offers. Also keep in mind that the 
dealer has no control over the quality of 
parts with which you choose to populate 
your board nor the care you take in its 
assembly. As a result, he or she is much 
less likely to provide extensive support or 
advice. I much prefer purchasing bare 
boards from companies that also offer 
kits and assembled versions of the same 
board. 

Buying Parts 

Purchasing parts for a blank board can be 
a real education. Assuming a parts list is in 
hand, it is a small chore to look through the 
prices in the advertisements, choosing which 
parts to order from which company. Limit 
yourself to purchases from no more than 
two or three companies if you can. If you've 



206 October 1979 © BYTE Publications Inc 



had trouble or have heard of others having 
trouble locating a part, call the company 
that lists that part in their catalog and ask 
for a stock check. It's nice to do business 
with a company that has a toll free tele- 
phone number. 

Often you can save money on parts and 
increase your spare parts supply at the same 
time. Pull-up resistors and bypass capacitors 



are two items that are needed in quantity. 
For example, I recently finished a board 
that needed 40 4.7 K ohm resistors, which 
were priced at Si each for a total of $2. But 
the same company offered a package of 100 
resistors of any one value for 1 .7 cents each, 
totalling $1.70. It doesn't take much to fig- 
ure out the better deal. The disk ceramic 
capacitor often used for noise bypass on 



Table 1: A summary of available blank boards and where to obtain them. 





Description 


Bare 


Partial 


Company 


Comments 


C/3 


32 K static 


$38.00 




F Reichert Sales 




•g 


#300 (8 K) 


22.50 




Electronic Systems 




re 



8K 


29.95 




Digital Research (Texas) 




CQ 


8 K 


25.00 




Jade 




> 

la 


MB-4 (4 K) 


29.95 




Cybercom 






E 

0) 


MB-6A (8 K) 


29.95 




Cybercom 




MB-7 (16 K) 


29.95 




Cybercom 




§ 


MEMI (8 K) 


25.95 




Wameco 




0) 

_Q 


8 K 


25.00 




Ithaca Audio 




re 

E 
E 

re 


16 KDR 


35.00 




Ithaca Audio 


16 K and 64 K dynamic 


8 K 


29.95 




Barnes Electronics 




16 K 


35.00 


88.00 


Digital Micro Systems 




Q 


LOGOS-1 (8 K) 


21.95 




Advanced Computer Products 




Q_ 


32 K 


59.95 


99.95 


Advanced Computer Products 






8 K 


29.00 




Duston 




V) 


8080A 


34.95 




Advanced Computer Products 




"D 


8080A 


30.00 




Jade 




O 


8080A 


25.95 




Wameco 




00 


Z-80 


35.00 




Jade 




O 

C/3 


Z-80 


34.95 




Advanced Computer Products 




0) 


CPZ80 


35.00 




Ithaca Audio 




o 
o 


6800 


30.00 




MRS 




Q_ 


6502 


39.95 




CGRS Microtech 






MFIO-1 


49.95 




MSD 


Multi-I/O 




TIDMA 


35.00 




Electronic Systems 


Cassette I/O 


3 


80-1 03 A 


49.95 




DC Hayes 


Modem 


a. 


IO-2 


25.00 




Cybercom 


Parallel I/O 


3 

O 


IO-4 


25.00 




Cybercom 


Serial and Parallel 


IA-1100 


25.00 




Ithaca Audio 


64 by 16 Video 


3 

Q. 


VB-1B 


29.95 




Cybercom 


64 by 16 Video 


SCT-100 




95.00 


Xitex Corp 


64 by 16 Video and Parallel 












port 




Master I/O 


47.50 




Space Time Products 


Serial, Parallel, Programmable 
and Read Only Memory 




Tarbell 


40.00 




Tarbell Electronics 


Disk Controller 




16 K 




57.50 


Digital Research (Texas) 


2708s 


> 


JG 8/16 


30.00 


59.95 


Jade 


2708/271 6s 


O 

E 

0) 


EPM-1 


30.00 




Wameco 


4 K 1702As 


EP 16 K 


25.00 




Ithaca Audio 


2708/271 6s 


^ 


4 K 


29.95 




Barnes Electronics 




> 


Bytesaver 




136.00 


Cromemco 


8 K 2708s 


O 


Byteuser 


24.95 


64.95 


Advanced Computer Products 


8 K 2708s 


"O 


MB-3 




64.95 


Cybercom 


2 K/4 K 1702As 


re 

0) 


MB-8 




84.95 


Cybercom 


8 K/16K 2708s memory 


DC 


MB-9 




72.00 


Cybercom 


Also programmable 




32K 


30.00 




Wameco 


2708/2716s 


■D 


13 slot 


35.00 




Jade 




TO 
O 


1 5 slot 


40.00 




Cybercom 




m 


11 slot 


29.50 




Vector Electronic 


Active terminations 


0) 


20 slot 




76.00 


Thinkertoys 


Active terminations 


o 


18 slot 


29.95 




California Industrial 


Active terminations 


§ 


12 slot 


35.00 




Wameco 


Active terminations 


V] 


Better Bug Trap 




45.00 


Micronics 




3 

o 


Real Time Clock 


30.00 




Wameco 






CompuTime 


80.00 




CompuTime 




JO 


CT100 










"a> 


S-4 Front Panel 




20.00 


Sargents Distributors 


I/O and read only memory 


wj 


Digital/Analog 


34.00 




Pinnacle Products 




I 


Buss Terminator 


21.95 




VAMP 





October 1979 © BYTE Publications Inc 207 



memory boards is another item that is 
sometimes more cheaply purchased in bulk, 
especially the 0.1 and 0.01 /uF varieties. 14 
and 16 pin socket prices really start to drop 
if you buy in slightly larger quantities, too. 

One rule of thumb holds true: it only 
takes one back ordered or hard to find part 
to keep your board inoperable. A catalog 
listing of a part does not necessarily indicate 
that that company has those parts. 

Why Companies Sell Blank Boards 

You might think that a company market- 
ing bare boards as well as kits and assembled 
units would be competing against itself, par- 
ticularly since you can almost always save 
money over the kit price by purchasing your 
own parts separately. Volume and exposure 
seem to be the two big reasons. First, circuit 
boards, like everything else, are cheaper in 
larger production runs. Selling off the extra 
boards for a proven product reaches the 
additional market of do-it-yourself comput- 
erists who like to go to the extra trouble of 
purchasing parts separately for the promise 
of saving a few dollars. Secondly, marketing 
the bare board doesn't increase the support 
demand at nearly the rate that support must 
be provided to the kit or assembled board 
purchaser. Finally, for some types of boards, 



Interactive Computer 
Graphics Software. 



For Microsi 



osoft and DEC* Fortran 



I 



y \ i 

SE&SOR HEIGHT = 29 FT 

The above graphs are examples of the 
GSR The top graph was made on a X-Y-Z 
self -refreshed display. The bottom graph 
was made on a Diablo* 1620 printer. 



■mmcthte Comput 
Graphic Subroutine Package (GSP) i 
now available for small computer sys- 
tems. The subroutine package will 
drive many different devices ranging 
from standard CRT terminals to incre- 
mental plotters, and even high speed 
self-refreshed raster scan displays. - 
The complete package is written in 
standard Fortran IV, making it porta- 
ble to all computers, including mini 
and micro systems. 

The entire set of over 20 subpro- 
grams, including drivers for a CRT ter- 
minal and a Diablo 1620 printer, sells 
for $400. Drivers for other devices 
/■may be'. -added. 

!:.. ^Trademark of Digital Equipment Corp. 

Compco 

8705 North Port Washington Road 
Milwaukee, Wis. 53217 414/351-3404 

COMPUTER SPECIALISTS 



exposure can be increased dramatically by 
offering the board blank. A case in point is 
the D C Hayes modem board listed in Table 1. 
Offering it bare significantly increases the 
number of people who have the board. Wide 
customer acceptance and use is what com- 
munications and computer interface stand- 
ards are all about. 

A Few Final Dos and Don'ts 

Never undertake the project of populating 
a bare board without first obtaining a copy 
of the parts list and pricing the needed parts. 
Write or call the company and ask for a parts 
list in advance of purchasing the board. A 
self-addressed, stamped envelope when re- 
questing the list is a nice gesture. 

Don't get caught on a special "secret" 
deal of blank boards being dumped on the 
market because one of the chips it used is no 
longer available, or has become prohibitively 
expensive, or the board needs extensive foil 
cutting and jumpers to work. Buy bare 
boards as you would a kit or completed 
board: only from a reputable company. 

Many companies offer "partial kits" 
which consist of the bareboard and especially 
hard to find components, or, in the case of 
memory boards, 16 K byte and 32 K byte 
boards with only a partial complement of 
memory on them. Table 1 includes a column 
of some boards that are presently offered as 
partial kits. Plan ahead so that the parts will 
be there when you need them, and sub- 
stitute parts sparingly. Don't buy more 
blank boards than you need right away, 
hoping to store the extras away for a rainy 
day. The market is changing too quickly. 
Most of the boards listed in table 1 have 
appeared within the last year. As an example, 
I purchased extra 4 K byte and 8 K blank 
memory boards over a year ago with the idea 
of slowly populating them with 2102 
memory chips. The boards still sit gathering 
dust, obsoleted by the newer 16 K byte 
boards, and higher density, lower power, 
lower cost per bit memory ch ips. It's not cost 
effective to populate my old boards anymore. 

Buying and populating blank boards 
can be a significant money saver. I figure 
that, having populated about a dozen 
bare boards in the past two years, my 
savings have equalled at least the price of 
a fully populated 16 K byte memory board, 
if not more. In almost all cases, I would 
never have been able to afford the cash out- 
lay for such a board if it were only offered 
as a kit or fully assembled. Spend a little 
time considering the above, and you'll be 
generously rewarded in savings on your 
board purchase. For more information 
about the companies in table 1, contact 
me or your local computer store." 



208 October 1979 J BYTE Publications Inc 



Circle 53 on inquiry card. 



BYTE's Bugs 



Pseudorandom 
Errors 

A typographical error 
occurred in 2 program 
listings in the article "Three 
Types of Pseudorandom Se- 
quences" by C Brain Honess 
in the June 1979 BYTE, page 
234. In listing 1 on page 
236, line 150 should have 
been: 

150 LET A = N/10000. 

In listing 2 on page 238, line 
200 should have read as 
follows: 

200 PRINT 

"DEGENERATION AFTER"; 
I; "NUMBERS." 

A note on a BOMB card 
mailed from Greenville SC 
brought these errors to our 
attention. 



Marsport Bugs Defeated 

Dr Reimut Wette has 
informed us of several 
typographical errors which 
occurred in "Marsport, Here 
I Come" (April 1979 BYTE, 
page 84). The corrected 
segments of code for 
listing 1 are shown here 
circled. 



024 
C.025 



026 
027 
028 

114 
115 
116 
117 
118 
(119 
U20 
121 
122 
123 
124 



*LBLA 
STOI ^ 



k LBL0 
GSBd 
CF0 

*LBLc 

Rl 

X~Y 

Rl 



-P 
RTN 



*LBL4 

7 

x-i 

STO0 



201 
202 
203 



C204" 



9 
x 
STQ7 



205 
206 
207 
208 



"GSBC^i 



ST01 
ST02 
ST03 



Gravitational 
Problems 



Mr Hinrichs seems to 
have developed a much 
better than average 
planetary landing program 
("Marsport, Here I Come," 
April 1979 BYTE). He is 
especially to be congratu- 
lated on his adaptation of 
the physics of celestial 
mechanics to a program on 
a programmable calculator! 
However, on page 100 he 
has made a common physics 
error in saying, "The 
attraction of gravity is 
exactly balanced by the 
centrifugal force at all 
times." The attraction of 



gravity is not balanced by 
anything. In fact, if it were 
balanced at all times, it 
would not have any effect 
and there would be no orbit 
— only straight line motion 
at constant speed. What Mr 
Hinrichs in his equations on 
page 104 implies is that the 
attraction of gravity inter- 
feres with the tendency of a 
body to maintain a constant 
speed and direction just 
enough to continuously 
change the direction 
(circular orbit) without 
changing the speed. This is 
true only for a circular 
orbit. In other cases, the 
unbalanced force of gravity 
can change speed as well as 
direction. 

Fortunately this confusion 
between inertia and a force 
(called centrifugal) has no 
effect on the workings of 
what is an excellent 
program. 

Robert Reiland 

RD#1 

Portersville PA 16051 ■ 




Now the world's most popular micro- 
computer, with 16K of memory and 
Level II basic for only $750, complete. 
We accept check, money order or phone 
orders with Visa or Master Charge. 
(Shipping costs added to charge orders). 

Disk drives, printers, peripherals, soft- 
ware and games.. .you name it, we've got 
it (Both Radio Shack and other brands). 
Write or call for our complete price list. 



Shown is Level I. 
Level II includes 
alphanumeric keypad. 



Full 90 day 
Radio Shack 
Warranty. 



C&S ELECTRONICS MART, 




32 E. Main Street • Milan, Michigan 48160 • (313) 439-1400 



Circle 37 on inquiry card. 



October 1979 © BYTE Publications Inc 



209 



Otote and Newsletters 



DIRECTORY 



The following is the third BYTE Clubs and Newsletters Direc- 
tory. The directory was compiled from information supplied by 
the various clubs listed. A form was sent to all clubs and 
newsletters listed in the second directory requesting up-to-date 
information. If the form was not returned, we deleted the club 
from the third directory. In addition, the listing was correlated 
with back issues of the magazine and materials on file in the 
BYTE offices. If information is missing in one or more 
categories, it means the data was not provided. We will be keep- 
ing the file available and updating it for the next directory; so, if 
there are errors or if you have a new club which has just been 
formed, send the information to: Laura Hanson, Clubs and 
Newsletters Editor, BYTE Publications Inc, 70 Main St, Peter- 
borough NH 03458. 



The listings follow this 
form: 

1. Name of organization 

2. Mailing address 

3. Meeting location 

4. Meeting algorithm 

5. Newsletter or publica- 
tion 

6. Contact person 

7. Contact phone number 

8. Dues or subscription 
fees 

9. Special interests 
10. Other comments 



Clubs 



Zips- 00000 - 1QQQQ 

1. MUMPS Users Group 

2. POB 208 
Bedford MA 01730 

3. 1978 Atlanta, 1979 San 
Diego, 1980 Cape Cod 

4. Yearly in June 

5. MUG Quaterly 

6. R E Zapolin, Executive 
Director 

7. (617)271-2534 

8. $25 per year 

9. US Branch - Exchange of 
information among users 
of ANSI Std MUMPS 
(and older dialects), offer 
tutorials and publications 
on MUMPS language. 

10.ANSI MUMPS is used 
world-wide on maxis, 



minis, microcomputers in 
medical, commercial and 
educational applications. 
A large number of public 
domain programs exist. 
A list of publications is 
available. 

1. New England Computer 
Society 

2. POB 198 
Bedford MA 01730 

3. Mitre Corp, Cafeteria, Rt 
62, east of Rt 3, Bedford 
MA 

4. First Wednesday of the 
month 

5. NECS Newsletter 

6. Dave Mitton, Secretary 

7. (617) 493-3154 days 

8. $6 per year 

9. User Groups in PET, 
APPLE, 6800, Digital 
Group, and TRS-80. 

10. Computerized Bulletin 
Board System (CBBS), 
(617) 864-3819. 



1. TRUGEM (TRS-80 Users 
Group of Eastern Mass- 
achusetts) 

2. 61 Lake Shore Rd, Natick 
Ma 01760 

3. Cochituate MA (call or 
write first) 

4. Second Wednesday of 
each month at 7 PM 

5. The TRUGEM Newsletter 
(monthly) 

6. A Richard Miller, Presi- 
dent 



7. (617) 653-6136 (9 AM to 
9 PM) 

8. $10 per year local or 
remote. Send fees to: Ed 
Robinson, TRUGEM 
Treasurer, 11 Leighton 
Rd, Auburndale MA 
02166. 

9. TRS-80 hardware and 
software; peripherals 
from Radio Shack and 
independents; Programs 
Exchange Library (non- 
commercial); demonstra- 
tions and sales of com- 
mercial hardware and 
software encouraged. 

10. Meeting monthly since 
January 1978. All TRS-80 
users are invited to at- 
tend. 

1. The Boston Computer 
Society 

2. 17 Chestnut St, Boston 
MA 02108 

3. Commonwealth School, 
151 Commonwealth Ave, 
Boston 

4. Fourth Wednesday of the 
month at 7 PM 

5. The BC5 Update (an 
enormous publication 
with nation-wide in- 
dustry exclusives and 
news of New England) 

6. Jonathan Rotenberg 

7. (617) 227-9178 

8. $10 per year (includes all 
subgroups) 

9. User Groups: PET, 
Sorcerer, OSI and North 
Star. Subgroups: educa- 
tion, business applica- 
tions, Pascal and begin- 
ner tutorials. Others on 
the way. 

10.A complete resource 
center for the microcom- 
puter industry which, in 
addition to running 
meetings and publishing a 
newsletter, publishes 
books, runs trade shows, 
other seminars and pro- 
vides a free consulting 
and problem solution ser- 
vice by phone. 

1. TRS-80 Club of Arling- 
ton. 

2. 96 Dothan St, Arlington 
MA 02174 

3. Same as above 

4. Write for details 

5. Yes; send $1 donation 
and 2 long, self- 
addressed, stamped 
envelopes for 2 issues. 



6. Poi Pow 

9. TRS-80 disk business 
software; library in- 
cludes: data base 
management, word pro- 
cessor, inventory, mailing 
list, stock, accounting, 
etc. 

10. Interested in good 
business software at 
lowest costs; we review 
business software written 
for the TRS-80. No 
games. We review new 
developments in software 
and hardware for the 
small business system. 

1. RICH (Rhode Island 
Computer Hobbyists) 

2. POB 599, Bristol RI 
02809 

3. Various locations around 
Providence 

4. Third Tuesday of the 
months of March, April, 
May, June, September, 
October, November 

5. Yes 

6. Emilio D Iannuccillo 

7. (401)253-5450 

8. $3 per year 

10. We are a small active 
group dedicated to keep- 
ing abreast of current 
technology, plus lending 
a hand to each other 
regarding hardware and 
software. We also give 
help and advice to new 
comers into the world of 
microprocessors. 

1. Connecticut Computer 
Club 

2. c/o Leo Taylor, 18 Ridge 
Ct W, West Haven CT 
06516. 

3. Suffield Library, Suffield 
CT 06708 

4. First Thursday of each 
month 

5. Connecticut Computer 
Club Newsletter 

6. Leo Taylor, Secretary 

7. (203) 389-6551 

8. 1980 dues $6 

10. We have 2 talks per 
meeting; generally one on 
software and one on 
hardware. The club does 
not specialize on any one 
machine. We have 65 
members at the moment 
with a turn-out of about 
40 per meeting. The club 
was featured in the first 
issue of onComputing 
magazine in an article by 
one of our members. 



210 October 1979 © BYTE Publications Inc 



HAVDEN PROUDLY ANNOUNCES. . . 



I 



I 



The Champ of Champs 



"SARGON II — Buy this program, 
when it becomes available — . . .an 
evaluation routine that enabled it to 
beat the giants! . . . unequaled in the 
endgame . . ." Personal Computing, 
July, 1979. 

Because new algorithms have been 
added, the program is able to: push 
passed pawns toward queening; play 
a stronger end game; and range into 
deeper play levels at end game with- 
out userdirection. And, the comput- 
er displays the levels of play at which 
it is thinking and also shows the 
move it is currently thinking of mak- 
ing, changing the move shown until 
its final choice is made. SARGON II 
has 7 levels of play, and levels 0-3 
play in tournament time. It has a ran- 




domized opening book up to 7 levels 
of play for 3 moves. When setting up 
the board, the user can scan up and 
down, left and right. And finally, you 



Check out these other 
Hayden Computer 
Program Tapes: 

• BACKGAMMON 

• GAME PLAYING WITH 
BASIC 

• MAYDAY • CROSSBOW 

• BATTER UP!!: A MICRO- 
BASEBALL GAME 

• MICROTYPING 

• ENGINEERING MATH-1 

• GENERAL MATH-1 











































" 5k : .» 



SP , : ' 



can usethe hint option atany level 
but and request SARGON II to tell 
what the best next move is. Available 
now — #03403, TRS-80 Level II; 
#03404, Apple II; $29.95. Coming 
soon for CP/M, SORCERER, and 
PET. 

Available at your 
local computer 
store 

Hayden -^ 
the computer 
program tape 
publisher! 




1980 Hayden Computer Calendar will be available in October! i 

• full-color original computer art j 

• complete program for perpetual calenda^ Hayden Book Company, Inc. 

• computer anecdotes 50 Essex Street, Rochelie Park. NJ 07662 



Circle 161 on inquiry card. 



BYTE October 1979 



211 



1. Amateur Computer 
Group - New Jersey Inc 

2. U. C.T.I. 1776 Raritan 
Rd, Scotch Plains NJ 
07076 

3. Union County Technical 
Insitute, Rutgers Univer- 
sity, County College of 
Morris and Middlesex 
County College. 

5. ACG-NJNews 

6. Sol Libes or Marty 
Nichols 

7. (201) 277-2063 or (201) 
361-7180, respectively 

8. $8 per year 

9. Have following User 
Groups: 8080/Z80; 6800; 
KIM; TRS-80; PET; 
Apple; and Pascal. 

10. Run classes and have 
software libraries; publish 
annual membership direc- 
tory; over 1000 members; 
annual "Trenton Com- 
puter Festival" held at the 
end of April with a 5 
acre computer flea 
market. Chapters in 
Morris and Ocean coun- 
ties. 

1. Data Processing Club 

2. c/o Dennis M Lloyd 
Business Studies Division 
Gloucester County Col- 
lege, Tanyard Rd, Sewell 
NJ 08080 

3. Same as above 

6. Dennis M Lloyd 

7. (609) 468-5000 Ext 242 

8. $5 

9. All data processing areas. 

10. We wish to expand data 
processing education out- 
side of the classroom. 

Zips- 10000- 20000 

1. Microcomputer Business 
Users Group 

2. 161 W 75 St, New York 
NY 10023 

3. Baruch College, Manhat- 
tan 

4. Third Thursday of the 
month 

5. BUG Newsletter 

6. Dr Laird Whitehill 

7. (212) 580-3589 (reiBUG) 

8. No dues, subscription $10 
for 79 

10.A group for vendors of 
software and users of 
software who are serious 
about using or vending 
microcomputers for busi- 
ness purposes. Guest lec- 
turers and panel discus- 
sions concentrate on ap- 



plication and system soft- 
ware evaluations, as well 
as such topics as how to 
develop and sell micro- 
computer software pro- 
ducts. Group publishes a 
newsletter which keeps 
those who did not attend 
informed about meeting 
content and exact place 
of next meeting. 

1. Long Island Computer 
Association 

2. 35 Irene Ln E, Plainview 
NY 11803 

3. New York Institute of 
Technology 

4. Second Friday of the 
month for the 8080 
subgroup; third Friday 
of the month for the 
regular meeting and 
subgroups 

5. The Stack 

6. Aileen Harrison 

7. (516) 938-6769 

8. $10 per year 

9. Pascal, 8080, 6800, PET, 
TRS-80, North Star, etc. 

10. We meet the third Friday 
of the month with guest 
speakers, show and tell, 
hands-on demonstrations 
etc. We have many 
subgroups, and have 170 
members. 

1. Mohawk Valley 
Microcomputer Club 

2. POB 331, RFD 1, W 
Carter Rd, Rome NY 
13440 

3. Varies 

4. Third Tuesday of the 
month 

5. Micros Along the 
Mohawk 

6. Mike Troutman 

7. (315)336-0986 

8. $2 per year (includes 
newsletter) 

9. Several special interest 
groups: 6800, 8080/Z80, 
and beginners. 

10. Membership of approx- 
imately 100. Very high 
predominance of SwTP 
6800 systems ( = 75% ver- 
sus 25% for all others). 

1. Apple Byter's Corps 

2. 225 Walton Dr, Snyder 
NY 14226 

3. Buffalo Savings Bank, 
Sheridan-Harlem Branch, 
3980 Sheridan Dr, 
Amherst NY 14226 

4. Every third Friday at 7:30 
PM 

5. Monthly, no particular 
title 



6. Gary Weir, President and 
typist 

7. (716) 839-3486 

8. $10 per year 

9. Exchanging programs; 
helping new Apple II 
owners. We have begun 
a computer network and 
special interest groups in 
assembly language pro- 
gramming and computer- 
assisted instruction pro- 
gramming. Newsletter 
enhancement is the cur- 
rent rage. 

10. We are growing too 
quickly to settle on any 
firm objectives (as our 
numbers grow, so do our 
problems and potentials). 
We do want growth, but 
could use the help of 
well-established, similar 
groups. 

1. Rochester Area 
Microcomputer Society 

(RAMS) 

2. POB Drawer D, 
Rochester NY 14609 

3. Rochester Institute of 
Technology Room 1030 
Bldg9 

4. Second Thursday of each 
month 

5. Memory Pages 

6. Mike Ciaraldi 

8. $7.50 per year 
(1978-1979) 

9. URTH (University of 
Rochester FORTH), 
6800/6809/68000 special 
interest group, and a 
Pascal interest group. 

10. As a club, our largest 
problem is getting pro- 
grams that most of the 
membership can run. 

1. AM-100 Users Group 

2. 616 Long Pond Rd, 
Rochester NY 14612 

4. Local meetings arranged 
by invitation. 

5. Newsletter for AM-100 
Users Group 

6. Lefford F Lowden 

7. (716) 227-0841 

8. $15 in US and Canada, 
$36 International 

9. System software and user 
developed software; bugs 
and their fixes; program- 
ming techniques; and 
feedback among members. 

lO.Aimed at owners, users, 
and potential owners of 
the Alpha Microsystems 
AM-100 computer 
system. 



1. Central Pennsylvania 
Computer Club 

2. 3263 Bull Rd, York PA 
17404 

3. Varies, York-Lancaster 
area 

4. Third Friday of even 
months, and the fourth 
Wednesday of odd 
months 

5. Data Dump 

6. Cletus Hunt III, York area 
Joseph Pallas, Lancaster 
area 

7. (717) 764-4977, (717) 
569-3137 respectively 

8. Currently being re- 
evaluated 

9. Many 6800 users, but no 
organized special interest 
group. 

10. Emphasis is on informal 
exchange of information 
among club members and 
display of members' com- 
puters. 

1. Philadelphia Area Com- 
puter Society (PACS) 

2. POB 1954, Philadelphia 
PA 19105 

3. LaSalle College Science 
Building 

4. Third Saturday of each 
month 

5. The Data Bus (monthly) 

6. Dick Moberg 

7. (215) 923-3299 

8. $10 per year, $5 for 
students 

9. Subgroups in the follow- 
ing areas: Apple; TRS-80; 
PET; Robotics; 
spaceflight simulation; 
and others. Courses in 
BASIC; Pascal; home- 
brewing; computers for 
kids; Selectric repair; and 
others. 

10. Current membership is 
approximately 350. 
Average meeting atten- 
dance is over 100 people. 
Meetings consist of 
courses and subgroups 
followed by the main 
meeting at 2 PM. A mini 
flea market and mapping 
session follow the 
meeting. For more infor- 
mation call the PACS 
Hotline (215) 925-5264. 

ZIPS 20000-30000 

1. Washington Amateur 
Computer Society 

2. 4201 Massachusetts Ave, 
#168, Washington DC 
20016 



212 October 1979 © BYTE Publications Inc 



Subscribe now to Strategy & Tactics 
—and get a 




SPI, the world's largest publisher of historical simula- 
tion games, wants you to subscribe to Strategy & 
Tactics — a fascinating and authoritative bi-monthly 
magazine of military history. Because we're confident 
that exposure to Strategy & Tactics and simulation 
gaming will be the beginning of a long-term customer 
and reader relationship with SPI, we'd like to give you 
a free, full-fledged simulation game to start you off 
(see description at right). Moreover, Strategy & Tactics 
itself has a simulation game in every issue (as a com- 
panion piece to its main article) so you'll get a new 
game as part of each issue in your subscription. 
Strategy & Tactics and SPI games are a fresh and ex- 
citing way to gain insights into the great conflicts of 
history. This offer is open only to brand new 
subscribers. Act now! 




With the first issue of your new subscription to S&T we'll 
send you a free copy of StarGate, an action-filled game of 
intergalactic conflict. As the Virunian oppressors, tyrants of 
the Milky Way, return home in tatters from a conflict in 
another galaxy, they are pounced upon by the long down- 
trodden races who rise in rebellion. Includes fewer than 100 
cardboard playing pieces (for easy payability), 11" x 17" 
map, and complete rules, all folding to a handy 5V2 x 8V2 
size that slips into a re-usable plastic envelope. 




Game Normally sells for $3, 95— 
it's yours FREE for subscribing to S&TI 



SPI has been serving customers by mail since 1970 



dM Hj^^ Send check or mone 

€»SPI 

^S| W 257 Park Aven 



money order to: 



Dept. 1094 
257 Park Avenue South 
New York, New York 10010 

Send me my free game and enter my S&T subscription for: 

□ 1 yr. (6 issues) $16 □ 2yrs. $30 □ 3 yrs. $42 

We recommend the purchase of one or more of the follow- 
ing games if you are a player new to the hobby. 



• Great 
Articles 

• A Game 
in every issue 

• Winner for 

three years running 
of the hobby's award 
for BEST MAGAZINE 

Circle 331 on inquiry card. 



D Freedom 
$19.95 

name 


in 


the Galaxy 


□ John Carter, 
Warlord of Mars 
$19.95 


□ StarForce 
$12.00 


street 








apt# 


citv 






state 


zip . _ 



FOREIGN ORDERS: Add 20% handling charges. Payment must be by Postal Money 
order (in US funds) or check drawn against US bank. Customer pays all duties and 
tariffs. 



FOR OFFICE 
USEONLYI 


Cus. Code 


Total 


Cm/ft 


Postag* 


Tax 



BYTE October 1979 



213 



3. First floor hall, Keane 
Hall, Catholic University 
of America 

4. First Friday of the month 
at 7:30 PM 

5. JWAC 

8. $3.50 per year 

9. Organized to provide a 
forum for the computer 
hobbyist and student of 
computing science. 

1. Amateur Radio Research 
and Development Corp 
(AMRAD) 

2. 1524 Springvale Ave, 
McLean VA 22101 

3. Patrick Henry Branch 
Library, 101 Maple Ave 
E, Vienna VA 22180 

4. First Monday of each 
month at 7:30 PM 

5. AMRAD Newsletter 

6. Paul L Rinaldo, President 

7. (703) 356-8918 

8. Regular $10; second in 
family $5; full-time 
students $2. 

9. Computers and amateur 
radio. 

10.AMRAD operates a 
Computerized Bulletin 
Board System (CBBS) in 
the Washington, DC 
area. Phone No. (703) 



281-2125. 

1. Tidewater Computer 
Club 

2. 677 Lord Dunmore Dr, 
Virginia Beach VA 23462 

3. Electronic Computer Pro- 
gramming Institute, Janaf 
Office Building, Janaf 
Shopping Center 

4. First and third Tuesday 
of each month 7:30 PM 

5. Hardcopy (quarterly) 

6. C Dawson Yeomans, 
President 

7. (804)420-6379 

8. 50c per month 

9. A general interest in 
microprocessors. Club 
members own at least 
one of all major micro- 
processors. Subjects at 
meetings and special pro- 
jects often are useful on 
many microprocessors. 

10. Special interest classes 
precede each meeting at 
6:30 PM. Special projects 
are conducted at times 
convenient to par- 
ticipants and are reported 
at meetings and in the 
Newsletter, 

1. Triangle Amateur Com- 
puter Club 



2. POB 17523, Raleigh NC 
27514 

3. Dreyfus Auditorium, 
Research Triangle In- 
stitute, Triangle Park NC 

4. Last Sunday of the 
month 

9. The club is dedicated to 
the advancement of in- 
terest in amateur or per- 
sonal computing. 

1. Carolina Apple Core 

2. 5212 Inglewood Ln, 
Raleigh NC 27609 

3. Different locations 

4. Third Tuesday of the 
month 

5. Yes 

8. $5 per year 



Zips 30000-40000 

1. Indian River Computer 
Society (IRCS) 

2. c/o Florida Institute of 
Technology (Electrical 
Engineering Dept) 
Melbourne FL 32901 

3. Florida Institute of 
Technology Campus 

4. Meetings are held twice a 
month 

6. Lee Zaretsky 



7. (305) 723-3701 (Electrical 
Engineering Dept Exten- 
sion) 

8. $2 per 10- week quarter 

9. IRCS is dedicated to 
hobbyist microcomputers 
and their many applica- 
tions. 

10. Although IRCS meetings 
are geared to fit into the 
quarter schedule of the 
university, it does not 
mean that members must 
be students. Anyone in- 
terested in microcom- 
puters is invited to attend 
our meetings and join if 
they like what they see. 

1. Space Coast Microcom- 
puter Club 

2. 315 Inlet Ave, Merritt 
Island FL 32952 

3. Merritt Island Public 
Library Auditorium 

4. Fourth Thursday of each 
month 

5. Enterprise (monthly) 

6. Ray O Lockwood VP, 
Editor 

7. (305)452-2159 

8. $5 per year 

9. Primarily S-100 systems. 
10. Affiliated loosely with 

Kennedy Space Center. 




Commit an 
Original Sin 



with a FAST NEW SOFTWARE IDEA ,. 
For Apple II Users... j \,W 



How About POSTING 1,000 RECORDS to the 
GENERAL LEDGER in 7 MINUTES?* 



'* vi 



It's possible with NewWare's 
INTERACTIVE system that has been 
SERVICE BUREAU TESTED and 
CPA APPROVED! 

Individual Packages Are: 

1. General Ledger 4. Inventory 

2. Accounts Receivable 5. Payroll/Personnel 

3. Accounts Payable 6. Order Entry 

7. Mail List 

Order Today: Each Package $120.00* 

'Disk with Source Code, add $10.00 

(shipped only with packages) 
'Disk with Demo Data, add $10.00 

(shipped only with packages) 

402/339-7352 



Packages Available for Various Configurations 
Standard No Charge Features: 

• Terminal or printer report selection 

• High Speed Journal to Ledger Posting 

A. Automatic General Ledger 
Journal Transaction generation 

B. Automatic Inventory transaction generation 

C. Automatic Accounts Receivable transaction generation 

D. Real time accounts receivable application system 



Prolong Your Apple • Get 10,000,000 

Bytes with Corvus Hard Disk Drive - 

Call or Write for full details 



f you're a Member of Software Central 
Call to see our programs in operation 

t 

8525 Park Drive, Dept. B 
Omaha, Nebraska 68127 




Please Note: 
All of our packages 
are guaranteed to operate 
within design specifications. 



214 October 1979 © BYTE Publications Inc 



Circle 290 on inquiry card. 



Circle 334 on inquiry card. 



CiM 



Software 
Tools 



Circle 260 on inquiry card. 



Have you thought 
about text editing? 

Our ED-80 Text Editor offers a refreshing new approach for the 
creation and editing of program and data files conversationally - and it 
saves money! Its powerful editing capabilities will satisfy the most 
demanding professional - yet it can still be easily used by the inexper- 
ienced beginner. 

Look at these 
outstanding features: 

■ By far the best text editor available for microcomputer- 
based systems. 

■ Repays its initial cost many times over with its unique 
time-saving editing capabilities. 

■ FULL SCREEN window displays for viewing and edit- 
ing data a page-at-a-time, rather than line-by-line. 

■ Forward and backward scrolling in the FULL SCREEN 
mode. 

■ Displays the results of every edit command. 

■ Commands include forward or backward Locate and 
Change, Insert, Delete, Replace, Inline, Input, Print, 
List, Window, Get, Put, Macro, Tabset, Append, Case, 
Scale, and Dump. 

■ Simple line-oriented commands with character string 
manipulation capabilities. 

■ Text may be located by string value, by line number, 
or by relative line number. 

■ Global string search and replace capabilities. 

■ Commands for moving, copying, and merging edit files 
on the same or different diskettes. 

■ Self-explanatory diagnostic messages. 

■ Single keystrokes for the most commonly used com- 
ands. 

■ Safeguards to prevent catastrophic user errors that 
result in loss of the edit file. 

■ Designed for today's high speed CRT's, video monitors, 
and teletypewriter terminals. 

■ Thoroughly field tested and documented with a User's 
Manual of over 60 pages. 

■ Compatible with existing CP/M edit files and deriva- 
tive operating systems. 

And remember - in today's interactive programming environment — the 
programmer's most important software development tool is the text editor. 
Our ED-80 Text Editor is working in industry, government, univer- 
sities, and in personal computing to significantly cut program develop- 
ment time and high labor costs. Why not let ED-80 begin solving your 
text editing problems today? 

I Mail to: SOFTWARE DEVELOPMENT & TRAINING, INC. 

] P. 0. Box 451 1 , Huntsville, AL 35802 

• ED-80 is protected by copyright and furnished under a paid-up license 

I for use on a single computer system. 

| □ Please send additional information. 

| G Se R d Diskette, User's Manual, and paid-up license agreement $99.00 



"^2 3^ 



Specify SINGLE DENSITY Diskette size □ 5" □ 8' 

Send User's Manual (credited on purchase of a paid-up license) $10.00 

Check or money order enclosed for $ 

Please charge to my creditcard □ VISA □ Master Charge 

Card No. Bank No Exp.Date 



I 

| NAME 

| ADDRESS . 
I CITY 



. STATE . 



.ZIP. 



I SIGNATURE . 



C-l 



SOFTWARE DEVELOPMENT & TRAINING, INC. 
Post Office Box 4511 Huntsville, Alabama 35802 

Dealer Inquiries Welcomed 
® CP/M is a trademark of Digital Research 




With our new IEEE-488 Interface 

Our popular series 40 printers are now available with an 
IEEE-488 compatible interface or an industry standard Buffered 
Parallel interface. Both interfaces include a line buffer and 
software addressability. Featuring our famous commercial 
quality construction, the new models start at $585 in singles. 
Other models available are the low cost Parallel ASCII 
starting at $425 andan RS2 3 2 /Current Loop interface begin- 
ning at $575. Generous OEM discounts are available. All 
models are complete stand-alone units with a 40 column 
impact dot matrix printer and a 64 character ASCII set. 
Includes power supply, casework and interface electronics. 



For more Information write to: 

MPI 2099 West 2200 South. 
Salt Lake City. Utah 84119 
or call (801) 973-6053 





Eliminates 

the 

Expansion 

Chassis 

SAVE! 



RADIO SHACK 
CR1 




H&K Serial 
Interlace 

Bidirectional 
Parallel 
to Serial 
Converter 



Any RS232 Serial 
Printer 




RS232C — $150. 

20 MIL — $185. (optional) 



TERMS: 

C.O.D. and 
Cashier's Check 

Shipping and 
Handling $10.00 ea. 



HK 

COMPUTER CORPORATION 

H&K COMPANY 



15 East 31 st Street 

Kansas City, Missouri 64108 

(816) 561-1776 



Circle 160 on inquiry card. 



BYTE October 1979 



215 



We are 3 years old, and 
have close to 100 mem- 
bers. 

1. The Birmingham Micro- 
processor Group (BMG) 

2. 3548 Stonehenge PI, Bir- 
mingham AL 35210 

3. South Side library 

4. Fourth Sunday of each 
month at 2 PM 

5. The Printout 

6. Tom Bowen 

7. Home (205) 956-9576 
Business (205) 870-1367 

8. $6 per year 

9. The BMG is a general in- 
terest organization with 
special interest as 
follows: Apple Corp — 
Apple II owners and 
users; TRS-Can— TRS-80 
or Radio Shack Users; 
Hardware Hackers — 
Homebrew. 

10. We currently have 116 
members on the books 
with 25-30 being active 
participants in the general 
interest area and another 
25 that are active in 
special interest activities. 

1. Central Alabama TRS-80 
Computer Society 



2. c/o Lewis E Garrison, 
Secretary, 6375 
Pinebrook Dr, Mont- 
gomery AL 36117 

3. Normandale Community 
Center 

4. Third Tuesday of each 
month 

5. None 

6. Lewis E Garrison or 
Walter Bray 

7. (205) 272-8462 or (205) 
272-3621 respectively 

8. $2 per month or $24 per 
year 

9. TRS-80 

Zips 40000-50000 

1. Amateur Computer So- 
ciety of Central Ohio 

2. 2589 Brookwood Rd, 
Columbus OH 43209 

3. Center of Science and In- 
dustry 

4. First Wednesday of each 
month 

5. I/O 

6. Fred Hatfield K8VDU 

7. (614) 888-9287 

8. $10 per year 

9. Personal networks, com- 
puter chess, and graphics. 

1. Akron Digital Group 



3. 



2. 107 7th St NW, Barber- 
ton OH 44203 
Kenmore Public Library, 
2200 14th St SW, Akron 
OH 

4. Fourth Wednesday of the 
month at 7 PM 

6. Lou Launch 

9. The club programs are 
planned toward the small 
systems hobbyist with 
tips on programming and 
hardware application. 

1. Goodyear Computer 
Club 

2. c/o ] F Derry D-109E 
PLTl, Goodyear T and R 
Co, Akron OH 44316 

I McLeod or R Flower 
D-471 G3, Goodyear 
Aerospace Corp, Akron 
OH 44315 

3. Goodyear Hall 

5. The Late Edition 

6. ] F Derry or R Flower 

7. (216) 794-4010 or (216) 
794-3573 respectively 

8. $10 per year 

9. Hardware - modem 
design and building etc; 
investment analysis; new 
hardware/software devel- 
opments; and education. 

10. Personal computers used 



by members: TRS-80, 
Apple, OSI C28P, 
IMSAI, KIM, PET, 
Homebrews, North Star 
Horizon, RCA 1802, and 
M-6800. Have had joint 
meetings with Akron 
chapters of the Associa- 
tion of Computing 
Machinery (ACM) and 
the Institute of Electrical 
and Electronic Engineers 
(IEEE) Computer Society. 

1. Alliance Micromputer 
Club 

2. 3885 Norwood Ave, 
Alliance OH 44601 

3. Harter Bank Community 
Room 

4. First Tuesday of each 
month at 7 PM 

5. None 

6. Gary S Fix, President 

7. (216) 823-8996 

8. None 

lO.About 20 members cur- 
rently with about half 
owning a personal micro- 
computer system in- 
cluding several TRS-80s. 

1. Dayton Microcomputer 
Association 

2. c/o Dayton Museum of 




<5N 



«**■" 



from Computer Headware 
... the Self-Indexing Query System 

for your Apple II, North Star, or CP/M machine 



Distributed by: 

• Information Unlimited / 219-924-3522 
P.O. Box 8372, Merrillville, Indiana 46410 

• Lifeboat Associates / 212-5800082 (CP/M model only) 
2248 Broadway, Suite 34, New York City 10024 

• Structured Systems Group, Inc. / 41 5-547-1 567 
5208 Claremont Avenue, Oakland, California 94618 





216 October 1979 © BYTE Publications Inc 




CONTROL PROGRAM FOR MICROCOMPUTERS 

NOW BETTER THAN EVER 

You've probably heard about CP/M. But 
if you haven't, it's the world's most popular 
operating system. CP/M is considered the 
"software bus" for 8080 and Z80 microcom- 
puters because it gives you the hardware- 
independent interface you need to make your 
computer work for you. Because it's hardware- 
independent, you can get programming lan- 
guages, word processing software, and busi- 
ness applications packages from scores of 
suppliers at affordable prices. 

CP/M 2.0 is the latest in the evolution of 
a proven reliable and efficient software system. 
It's the kind of reliability that comes from five 
years of field testing in thousands of installa- 



tions. And it's supported by an experienced 
staff dedicated to maintaining CP/M as the best 
product in the industry. 

CP/M 2.0 gives you many new features, 
with an enhanced upward compatible file sys- 
tem, powerful new random access capabilities, 
and unprecedented field alteration facilities 
which allow you to tailor CP/M 2.0 to manage 
virtually any disk subsystem. From minidisks, 
floppy disks, all the way to high-capacity hard 
disks, the flexibility of CP/M 2.0 makes it a truly 
universal operating system. Get yourself or 
your company on the software bus: contact us 
for further details, or ask your dealer about 
CP/M 2.0 availability for your computer. 

DISKETTE and DOCUMENTATION 
Single Quantity Prices: $150 




MULTI-PROGRAMMING MONITOR 

NEW INDUSTRY STANDARD 

Digital Research announces a deluxe 
operating system that provides big computer 
facilities at small computer prices. MP/M is a 
monitor program which operates with your 
microcomputer to provide multi-terminal ac- 
cess with multiprogramming at each terminal. 
Best of all, it's CP/M compatible which means 
you can run a wide variety of programming lan- 
guages, applications packages, and develop- 
ment software. 

If you want, you can run simultaneous 
editors, program translators, and background 
printer spoolers. Oryou can use MP/M for data 
entry or data-base access from remote ter- 
minals. Or you can use MP/M real-time fea- 
tures to monitor an assembly line and auto- 



matically schedule programs for execution 
throughout the day. MP/M makes an excellent 
focal point for a cluster of connected micro- 
computers. The possibilities are limitless. 

Like CP/M, MP/M is especially built to 
adapt to most 8080 or Z80 microcomputers, 
with an 8086 version on the way. You can 
operate your I/O devices either interrupt- 
driven or polled, and you can even write your 
own system processes which are combined 
with MP/M through a simple system genera- 
tion. It's an exciting new product from the 
most experienced systems software supplier 
in the microcomputer industry. Contact us 
for details, or ask your dealer about MP/M 
availability for your computer system. 

DISKETTE and DOCUMENTATION 
Single Quantity Price: $300 



1 DIGITAL RESEARCH 

Post Office Box 579 

Pacific Grove, California 93950 

(408) 649-3896 



Circle 95 on inquiry card. 



BYTE October 1979 



217 



Natural History, 2629 


2. c/o National Sharedata 


9. This organization was 


8. $1 periodically (for 


Ridge Ave, Dayton OH 


Corp, POB 3895, 


formed to help 


stamps) 


45414 


Evansville IN 47737 


microcomputer users 


9. Mostly TRS-80 owners. 


3. Same as above 


3. Blind Association, Se- 


discover and exchange 


10. Club library open to 


4. Last Tuesday of the 


cond Ave and Virginia 


ideas on user projects, to 


members. 50c per pro- 


month at 7:30 PM 


4. Second Wednesday of the 


promote business or 


gram copying fee. Cass- 


5. DMA Data Bus 


month at 7:30 PM 


financial gain, and for 


ettes and diskettes are 


6. Dan Watson 


6. Robert Heerdink 


enjoyment. 


sold at a discount 


7. (513)223-2348 


7. (812) 426-2725 




through the club. 


8. $10 dues 


9. The group is varied with 


1. Educational Recreational 


Meetings consist of short 


9. 8080 Users - First Sunday 


interest in several types 


Computer Club 


presentations on BASIC 


1 PM - 274-1149; 6800 


of microcomputers. 


2. c/o Paul Heimnick, 1415 


or machine language, 


Users - First Tuesday, 7 




Olmstead St, Owosso MI 


some program swapping, 


PM - 435-9297; 6502 


1. Purdue University Com- 


48867 


and equipment and soft- 


Users - First and Third 


puter Hobbyist Club 


3. Salvation Army, 302 E 


ware demonstrations. 


Monday, 7:30 PM 


(PUNCH) 


Exchange St, Owosso 






-426-7711; TRS-80 Users 


2. Rm 67 Electrical En- 


5. ERCC Newsletter 


Zips 50000-60000 


(DARSUG) - call for time 


gineering Building, West 


(monthly) 




and place -426-1601; 


Lafeyette IN 47907 


6. Paul Heimnick, President 


1. Eastern Iowa Computer 


Apple II Users -Second 


3. Rm 117 Mathews Hall 


7. (517) 723-7602 


Club 


Wednesday 7:30 PM 


4. Mondays at 7 PM 


8. Dues $5 per year/$2.50 


2. POB 164, Hiawatha IO 


-223-2348. 


5. None 


subscription for 1 year 


52233 


10.A special session for 


6. John Eaton 


9. Emphasis on TRS-80 to 


3. REC building in Marion 


novices is held at 6 PM 


7. (317) 742-8521 


help educate others about 


4. The last Sunday of the 


immediately before the 


8. None at present 


computing. 


month at 7 PM 


regular meeting on the 


9. Various microcomputer 




5. Yes 


last Tuesday of the 


systems; predominately 


1. Battle Creek Area Micro- 


6. Mark Bergemann 


month. All other special 


M6800 users. 


computer Club 


7. (319) 377-1959 


groups meet at various 




2. 8587 Q Dr N, Battle 


8. $10 per year 


locations - call for infor- 


1. Detroit Personal Com- 


Creek MI 49017 


9. Just started bit-slice 


mation. Visitors always 


puter Network 


3. Pennfield High School 


microprocessor special in- 


welcome. 


2. 13043 McNichols, Detroit 


(above address) 


terest group with plans to 




MI 48219 


5. Yes 


build one sometime in 


1. Evansville Computer 


6. Andrew Fellman 


6. Jeff Stanton 


the future. 


Club 


7. (313)865-4374 


7. (616) 763-9685 


10. Working on a club 



SPECIALIZING IN 



QUALITY MICROCOMPUTER HARDWARE 

INDUSTRIAL • EDUCATIONAL • SMA.LL BUSINESS • PERSONAL 



BUILDING BLOCKS FOR MICROCOMPUTER SYSTEMS, CONTROL & TEST EQUIPMENT 




R 2 I/O 

2K ROM 

2K RAM 

3 Serial Ports 

1 Parallel Port 

WIRED: $295.00 




16 K RAM 

FULLY STATIC 
MEMORY 
KIT: $279.00 
WIRED: $310.00 




ECT-100-F 

RACKMOUNT 
CARD CAGES 
KIT: $200.00 
WIRED: $250.00 



ecf 



1 ^M - 



**&*** 



POWER SUPPLIES, CPU's, MEMORY, OEM VARIATIONS 



TT-10 

TABLE TOP 
MAINFRAMES 
KIT: $340.00 
WIRED: $395.00 



763 RAMSEY AVE. 
HILLSIDE, N.J. 07205 



ELECTRONIC CONTROL TECHNOLOGY god ese-soso 



218 October 1979 © BYTE Publications Inc 



Circle 120 on inquiry card. 



ONE PACKAGE DOES IT ALL 

Includes these Application Programs . . . 

Sales Activity, Inventory, Payables, Receivables, Check/Expense Register, 
Library Functions, Mailing Labels, Appointments, Client/Patient Records 



r MICRO-AP MICRO-AP MICRO-AP MICRO- 
>-AP MICRO-AP MICRO-AP MICRO-AP MICR 
P MICRO-AP MICRO-AP MICRO-AP MICRO- 
;RO-AP MICRO-AP MICRO-AP MICRO-AP MICR 
O-AP MICRO-AP MICRO-AP MICRO-AP MICRO- 
ICRO-AP MICRO-AP MICRO-AP MICRO-AP MICR 
JCRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO- 
iP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICR 
MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO- 
l-AP MICRO A P MICRO-AP MICRO-AP MICRO-AP MICR 
MICRO-AP MICRO-AP MICRO-AP MICRO- 
\P MICRO-AP MICRO-AP MICRO-AP MICR 
MICRO-AP MICRO-AP MICRO-AP MICRO- 
IP MICRO-AP MICRO-AP MICRO-AP MICR 
MICRO-AP MICRO-AP MICRO-AP MICRO- 
\P MICRO-AP MICRO-AP MICRO-AP MICR 



-AP MICRO-AP M 
:RO-AP MICRO-AF 
-AP MICRO-AP M 
:RO-AP MICRO-Af 
-AP MICRO-AP M 
JRO-AP MICRO-AF 
-AP MICRO-AP M 
:RO-AP MICRO-AF 




»-AP MICRO-AP Ml 
RO-AP MICRO-AP r 
>-AP MICRO-AP Ml 
RO-AP MICRO-AP ft 
)-AP MICRO-AP Ml 
RO-AP MICRO-AP R 
>-AP MICRO-AP Ml 
,RO-AP MICRO-AP I 



-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP Ml 
:RO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP ft 
-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP Ml 
:RO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP MICRO-AP ft 



RANDOM, MULTI-KEY RECORD RETRIEVAL under CP/M, CDOS, IMDOS, ADOS 



SELECTOR III ALLOWS 
INSTANT RECALL OF ANY 
RECORD USING ANY IN- 
FORMATION ITEM IN THE 
RECORD. That statement 
deserves re-reading, be- 
cause that ability makes 
SELECTOR III the most 
powerful Date Base Man- 
agement System in micro- 
computers today! 

With SELECTOR III 

you can... 

• define a record format, 
assign retrieval keys, and 
begin entering data in min- 
utes. 

• create sorted pointers to 
records matching your spe- 
cif or range of requirements. 

Circle 213 on inquiry card. 



• automatically generate 
reports with control-break 
summaries and unlimited 
variety. 

• bring an application on- 
line in hours instead of 
months. 

SELECTOR III comes com- 
plete with eight application 
programs that perform the 
tasks listed at top of page. 
And, since it's distributed in 
source code form, you can 
easily add subroutines to do 
specific computations or 
file updates. 

SELECTOR III runs under 
CBASIC Vers. 1 or 2, and is 
priced at $295. SELECTOR 



III-C2 is dedicated to Vers. 2 
only, runs about twice as 
fast, and costs $345. 

Both systems are available in 
a variety of CP/M, diskette 
size and density formats 
including IBM 8"; North Star; 
Micropolis; TRS-80; Pro- 
cessor Tech Helios II; Altair; 
iCOM; Dynabyte; Imsai; 
and others. 



Available from computer stores nationwide: 

LIFEBOAT Associates 

2248 Broadway, Suite 34, 
New York, N.Y. 10024 • (212) 580-0082 

Or order direct from 

MICRO-AP 

9807 Davona Drive, San Ramon, CA 94583 
(415) 828-6697 



BYTE October 1979 



219 



modem to use in a per- 
sonal computer network. 

1. Fox Valley Computer 
Society 

2. POB 2742, Appleton'WI 
54913 

3. Room D-104, Fox Valley 
Technical Institute 

4. Second Tuesday of the 
month 

6. Daniel K Dannells 

7. (414) 734-7161 

8. $5 initially 

9. Diversified. 

1. Mini 'App'les 

2. 13516 Grand Ave S, 
Burnsville MN 55337 

3. Minnesota Federal 
Savings and Loan, 
Hopkins MN 

4. Third Wednesday of the 
month 

5. Mini 'Apples 

6. Daniel B Buchler, Presi- 
dent 

7. (612) 890-5051 

8. $10 per year 

9. Apple users group; user 
contributed program 
bank; monthly meeting 
and program; games; 
business; computer-assis- 
ted instruction; word- 



processing; and docu- 
mentation distribution. 
10. Users group covers the 
twin cities of Minneapolis 
and St Paul metropolitan 
area. 'Local' members live 
roughly within a 100 mile 
radius. Newsletter sub- 
scribers are in all parts of 
the country. 

1. Minnesota Computer 
Society 

2. POB 35541, Minneapolis 
MN 55435 

3. Future location to be an- 
nounced 

5. MCS Newsletter 

6. Jean Rice 

7. (612) 941-1051 

8. $7 regular; $3 student 

9. Special interest group 
projects; general interest 
computer presentations; 
technical presentations; 
presentations to civic 
groups. 

lO.Our meetings consist of 
general business speakers, 
show and tell, and special 
interest groups. 

1. XXX-11 

2. 514 So 9th St, Moorhead 
MN 56560 



3. 


Moorhead MN 


1. 


Microprocessor User 


4. 


First and third Wednes- 




Group 




days of the month 


2. 


641 Woodlawn, Aurora 


5. 


XXX-11 Newsletter 




IL 60506 


6. 


C R Corner 


3. 


Fermi National Ac- 


7. 


(218) 233-7894 




celerator Laboratory, Hi- 


8. 


$9 per year 




Rise, Main floor, SW 


9. 


Languages. 




meeting facility 






4. 


Third Monday of the 






6. 


month at 8 PM 




Zips 60000-70000 


Mike Urso 






9. 


Primarily an Apple user 












group, but we include all 


1. 


CACHE (Chicago Area 
Computer Hobbyists Ex- 




processors in discussions. 




change) 


1. 


Chicago TRS-80 Users 


2. 


POB 52, South Holland 




Group 




IL 60473 


2. 


3950 N Lake Shore Dr, 


3. 


Northern Illinois Gas 




Apt 2310, Chicago IL 




Building, Golf and 




60613 




Shermer, Glenview 


4. 


Third Wednesday of the 


4. 


Third Sunday of the 




month 




month, main meeting at 1 


5. 


Yes 




PM 


6. 


Emmanuel B Garcia Jr 


5. 


CACHE Register 


8. 


$9 per year 


6. 


POB 52 






7. 


Recorder on (312) 


1. 


QuadCity Computer 




849-1132 




Club 


8. 


$10 per year 


2. 


4211 7 Ave, Rock Island 


9. 


Business; TRS-80; C P/M; 




IL 61201 




communications; North- 


3. 


Rock Island Arsenal 




star; PET; Apple; LSI-11; 


4. 


First Sunday of the 




robotics; ham; Pascal; pro- 




month at 7 PM 




gramming languages (not 


5. 


QC 3 News 




BASIC or Pascal). 


6. 


John Greve 



FOR THE VERY BEST IN 

NORTHSTAR® COMPATABLE SOFTWARE 



BUSINESS 

CRS - Client Record System. A complete program package for the Insurance agant. CRS will 
provide you with very fast online access to your client records, print reports end mail labels, end give 
you ell the information you will need to increase your sales through the use of CRS as a MARKETING 
TOOL. 

CRS stores a complete record for each client that includes the name, address.telephone tt , as wall 
es provisions for customer tt. salesman tt end up to six policies (expandable if needed). The policy 
information is complete with both the type of convarage and the company that is underwriting it, es 
well es exp. date, premium, term, end payment schedule. You also have a remark field. 

You can search the files by any field, end CRS supports a powerful 'sieve' search to provide you 
with ell the information you need to increase insurance sales. CRS comas with two(2) users manuals, 
one for the owner, end one for office personnel! (minimal system: one drive, 40K RAM storting 
2000H) $250.00 (manual: $40.00) 

TEXT PROCESSORS 

TFS - Text Formatting System. At lest a full featured text processor for NorthSter that you can 
rely on! TFS has left & right margin justification, page numbering, chaptering, page headings, 
cantering, paged output & MORE. Supports powerful text manipulations including: global & local 
'search and change,' file merges end block moves. This means that you can restructure your text file 
et any time to look the way you want it to, you can even 'chain' files together from disc for 
documents larger than your currant memory. 

TFS is completely 'load and so' therefore you can start using it at once. You get two(2) users 
manuals: one is a Quick Start manual to get you going in minutes, the other is en in depth study of 
TFS. (TFS requires RAM from 0000H to 2000H) $75.00 (manual only: $20.00) 



ASSEMBLERS 

ARIAN - A complete 8080 assamblar that intarfacas directly to your 0DS. ARIAN is completely 
'load and go'. Features include: dynamic file end RAM allocation, custom disc and RAM commend cap 
ability, savaral library routines directly accessabla by the user. Also, a complete text editor, end 
system executive. ARIAN is both powerful end easy to learn and use; it is en assembler that you can 
grow with. Comes complete with a 51 page users manual (ARIAN requires RAM from 0000H to 
2000H) $50.00 (manual alone: $1 0.00) 

ARIAN Utility Package • Several disc based utilities. Includes a complete DEBUG Package: 
$50.00 

PROGRAMMING LANGUAGES 

Tiny' PASCAL - This is the famous Chung/Yuan Tiny' PASCAL. FAST - ELEGANT . 
STRUCTURED. Local end global variables plus procedure end function independence make Tiny' 
PASCAL greet for high speed applications. Compiles to 8080 code that executes up to 25 times fester 
then BASIC. You also racieve SOURCE to Tiny' PASCAL written in PASCAL. This means that you can 
compile the compiler! Add features, ralocata, etc. (you will need 36k to do this) $40.00 

n r b r UTILITIES 

D E B E - (Does Everything But Eat!) This is a must for NorthStar users. You can: COMPACT & 
EXPAND BASIC programs. Compacting removes unnecessa y spaces and remarks. This saves 
memory end makes for programs run faster. Expanding puts tham back again. 

Cross reference BASIC programs by variables and transfer statements. 

Global substitutions of variable names in BASIC programs. 

Formatted print outs of BASIC programs as well. $40.00 




SPECIFY SINGLE OR DOUBLE DENSITY 

ALL ORDERS PREPAID OR C.O.D. 

ILLINOIS RESIDENTS ADD 5% SALES TAX 



P.O. Box 1628 

Champaign, IL 61820 

(217) 344-7596 



220 October 1979 © BYTE Publications Inc 



J 



Circle 357 on inquiry card. 



FROM THE 

ORIGINATOR 

OF THE 

TRS-80 PROJECT 



PASCAL 

UCSD Pascal, the powerful general purpose 
language system, developed for large and 
complex systems is now available for your 
TRS-80. 

The FMG/UCSD Pascal system opens a new 

generation of value for your TRS-80. Package 

includes: 

Operating System 

Screen Editor 

Z80 Macro Assembler 

Library 

Pascal Compiler * 

Utilities and System Reference Book 

(Requires 48K system with 2 drives.) 

Price S150.00 
Available without Macro Assembler 
Linker and Library (for Run-Time use only) 

Price S100.00 

MANUALS: 

UCSD Reference Manual S25.00 

Problem Solving using Pascal S14.95 

(The beginner's book for UCSD Pascal) 

Programming in Pascal $14.95 

Pascal Primer $17.95 



MICROSOFT BASIC 

An extensive implementation of BASIC for the 
TRS-80 Z80 microprocessors. Its features are 
comparable to those of BASICS found on 
minicomputers and large mainframes. Re- 
quires TRSCP/M Price $110.00 



TEXTWRITER II 

Exclusively from F M G 

A text formatting program that prints files cre- 
ated by an editing program. Contracts, per- 
sonalized form letters and other documents 
can be printed from a stored library of stan- 
dard paragraphs. 

Specially priced S 75.00 

Regular Price $130.00 

Manual S 25.00 



NEW TRS-80 
COMMUNICATOR 

RS-232 Communication Program allows the 
TRS-80 to transmit or receive programs or 
data files. Also makes the TRS-80 into a re- 
mote terminal. Requires Radio Shack RS-232 
andCP/M Price $25.00 



NEW Z80 SID 
Symbolic Instruction 
Debugger 

Symbolic memory reference with built-in 
assembler/disassembler. UsesZ80 mnemon- 
ics. 
Z80 SID Diskette and Manual Price $150.00 



CP/M OPERATING 

SYSTEM 

New 1.46 Version 

Includes RS-232 and I/O Byte implementa- 
tion, Editor Assembler, Debugger and Utilities 
for 8080 and Z80 systems. For up to four 
TRS-80 floppy disks. Package includes: 

CP/M System Diskette 574" 

CP/M Features and Facilities Manual 

CP/M Editor's Manual 

CP/M Assembler Manual 

CP/M Debugger Manual 

CP/M Interface Guide Price $150.00 
(Updates for 1.4 Version owners . . $ 15.00) 
(Requires 16K and one drive minimum) 
Setof 5 Manuals $ 25.00 



Call or write for 
Complete Information 




CORPORATION 

A Division of Applied Data Corporation 

P.O. Box 16020 (B10), Fort Worth 
Texas 761 33- (81 7) 294-2510 

Your exclusive dealer for 

UCSD PASCAL and 

TEXTWRITER II 



F M G for High Level Languages — BASIC — FORTRAN — COBOL & now PASCAL 



CP/M is a registered trademark of Digital Research Corp. 
TRS-80 is a registered trademark of Radio Shack 



Circle 134 on inquiry card. 



BYTE October 1979 



221 



1. 



(309) 786-8187 

$6 per year 

We cater to all brands of 

computers and deal with 

software and hardware. 



St Louis Area Computer 
Club Inc 

2. POB 28924, St Louis MO 
63132 

3. Thornhill Branch of St 
Louis County Library, 
Fee Fee and Willowyck 
Roads 

4. First Thursday of month 
at 7 PM 

5. SLACC Stack 

6. Noel Moss 

7. Days (314) 862-4040 or 
(314) 367-3189 evenings 

8. $5 per year 

9. 8080 homebrew; modems; 
and data communications 
and networking; 1802 
group; TRS-80 group; 
Pet group; and Apple 
group. 

10. Club serves as an infor- 
mation clearing house. 
Approximately x h of the 
members own 6800 
systems; the balance have 
other processors, especially 
8080/Z80 and 650X. 



Our meetings consist of 
club business, a formal 
presentation, and a rap 
session. 

1. Silly-Corn Hills Com- 
puter Club 

2. 2145 W Central Ave, 
Springfield MO 65802 

3. Varies. 16 main meetings 
a year and section 
meetings 

5. ASCII Code (Association 
of Computer Interested 
Individuals) 

6. Andrew A Griffin, 
Secretary 

7. (417) 866-2447 (8 to 4 
PM central time) 

8. Area computer users $12 
per year. Computer users 
outside SW MO and 
nonuser interested per- 
sons $7 per year 

9. All phases of computer 
use; relationship to com- 
puters in all phases of 
human life; 7 computer 
users groups; 9 computer 
applications groups 
(games to medical 
systems); 4 computer 
related interest groups 
(history, public access, 



programmable calcula- 
tors, and grievance om- 
budsman). Broadly 
varied membership in- 
cludes all types of users. 
10. Plans for September 79 
-September 80 member- 
ship year include: public 
ombudsman program for 
computer grievance; swit- 
ched network, personal 
computing network; a 
computer fair at a local 
mall; ASCII Code to 
move from 6 to 12 issues 
annually; several pro- 
gramming schools; public 
access center; and a 
television program (in 
production!). 



Zips 70000-80000 

1. The Tulsa Computer 
Society 

2. POB 1133, Tulsa OK 
74101 

3. Tulsa Vocational- 
Technical School 3420 S 
Memorial Dr 

4. Last Tuesday of the 
month at 7:30 PM 

5. The I/O Port 



8. $6 per year 



The Computer Hobbyist 
Group of North Texas 

2405 Briarwood, Car- 
rollton TX 76006 
Printed Circuit 
Warren Bean 
$7 per year 



Alamo Computer En- 
thusiasts 

2. 5411 Cerro Vista, San 
Antonio TX 78233 

3. Norris Technical Center, 
Room 208, St Philip's 
College, San Antonio TX 

4. Third Friday of the 
month 

5. Yes 

6. Dave Fashenpour 



North American Com- 
puter Association 

Suite 811, 1001 Main St, 
Lubbock TX 79401 
Dallas TX 
4. Second Friday of each 
month 
Tom Crites 
(806) 747-4119 
$200 

Independent computer 
representatives. Must sell, 



2. 



3. 



Creative Software Introduces: Programs & Products for the TRS-80 (16K level II) 



e * 



ll».« OCOUUECi) DnCMM 

tm.m Dane*! twos rtR new 

II3M.M OH IMttC Ktftlft M 

mew 
tiae.» ocas orocivtciim 

f UO.H OS* Blltlir HOC AC 

DDK 
SIW.H KAKMRMOS BUM THAT'S Hi! 

i«i quit on (a mk ra tht 



9 TX VMM BBS MB CDflfiE DC I.R.S. 

16 If OWM TIOETS TO «LI0< WW OFF 1* tt fW 

savias rmjo 
to awi«L F«ss ona. 



mi rofl nc Fououirc auxins w w> catuot for he 


WTH OF A«ll m\ ■ ■ ■ 




um 


nue.se 


IOC IJtf89.ll 


nttWEE/IDfl 


11588.88 


tabs tm.m 


atmes 


fi488.ee 


fEDlCAL/IOflN. t7te.lt 


EKTOtTAlflCfl 


$1388.96 


iicjwo nomi6 m.m 


FJUCAHCH 


fisee.ee 


S0VDGS $».« 


FOOD 


fiiee.ee 


utilities Mee.ie 


Gins 


tieie.ee 


WttTIOH fM.m 


(QffJOJ) 


t9ea.ee 


MStm/KOB 12B.lt 


total mm son its iim». 


TOTAL MK UAS $56769.18. 


w vuu m to sn a srooiic worm for this nmr <y or id 



Household Finance I & II $15.00 

Part I: Inputs data on each household expenditure; lists, adds, updates, 
changes or deletes previously input items. Writes data to cassette tape. 
Part II: Reads data tape. Provides monthly and yearly summaries of 
financial data, single category summaries, and graphs a spending profile. 



ALSO: New Programs for the PET: 

PET Word Processor $75 00 

Complete word processing capabilities including upper/lower case, 
string search, string change and many other features found on com- 
mercial word processors. Package includes both text editor and 
formatter and requires 16K or 32K PET. 



PET Space War II 



$10.00 



Fantastic real-time action! You are in complete control of the Enter 
prise as" you fend off aliens to search the universe for colonizable 
planets. Requires the Creative Software single joystick for the PET. 

PET Road Race $10.00 

Another great machine-language program gives you a choice of three 
different tracks as you battle with your opponent to finish the race. 
Includes oil slicks, automatic lap counters, and an elapsed time clock 
showing time to tenths of seconds. 



NEW! A super JOYSTICK interface for t he TRS-80! 

Three sockets allow you to use one Fairchild'" or two Atari"' joysticks 
with no modifications to the TRS-80. Joystick interface with two 
programs, separate power supply and instructions. 

Only $65.00 

Joysticks (Fairchild™ or Atari 1 "), each $12.50 

Household Utility 1 $12.00 

(Includes Calendar, Loans and Buy or Rent Programs) 

Household Utility 2 $12.00 

(Includes Compound Interest, Amortization and Car Costs Programs) 

Many other Creative Software products are available for the 
PET and TRS-80. If your local dealer doesn't carry Creative 
Software products or program information, write directly to the 
address below. When placing an order please note: 
Specify computer & program(s). Add $1.50 shipping for each 
program ordered, $2.50 for joystick interface. California residents 
add 6",, sales tax. VISA MASTERCHARGE accepted. Include 
card number and expiration date. 



Creative Software 

P.O. BOX 4030, MOUNTAIN VIEW, CA 94040 



222 October 1979 © BYTE Publications Inc 



Now! 
For the 
S-100 bus 



8086 Power 

WITH 16-BIT WORD LENGTH 



8086 CPU 

This card brings state-of-the-art performance to the S-1 00 
bus. It may be used to upgrade existing 8-bit systems by 
"swapping" the CPUs or it may form the foundation for a high 
performance 1 6-bit system. It will operate with 8-bit, 1 6-bit, or 
mixed memory and peripherals. It has a 1 -megabyte 
addressing range. It can be factory upgraded at nominal cost 
from 4 Mhz. to 8 Mhz. when the faster CPU chip is available. 
Price — $895. 









CPU Support Card 



This is a companion to our 8086 CPU. It includes a 2K 
monitor with machine language debugger and disk bootstrap 
loader, serial port with software-selected baud rate, time-of- 
day clock with battery backup capability, two general purpose 
timers/counters, and a vectored interrupt controller with 7 
interrupts generated on board and 8 accepted from the bus. 
Price — $395. 




8/16 Memory Card 



Through the use of the sXTRQ line of the proposed IEEE 
Standard, this memory board will appear to be 8K by 16 bits to 
our 8086 CPU or 1 6K by 8 bits to 8-bit CPUs. It is offered with 
250 nsec. memory chips only and will perform without wait 
states with our 8086 CPU using an 8 Mhz. clock. It has 24-bit 
extended addressing. Price — $595. 



Z80/8086 Cross Assembler 

This cross assembler runs under CP/M and its derivatives. 
Its mnemonics are the same as or similar to Intel's ASM-86. It 
is available in 5" soft-sectored, 5" North Star, or 8" soft- 
sectored (IBM) formats. Price — $250. 



Microsoft BASIC-86 

Microsoft's BASIC interpreter for the 8086 is essentially 
identical in features to their 5.0 release for the 8080 and is 
ANSI compatible. It is a "stand-alone" version and includes all 
disk and terminal I/O drivers. Programs written for any earlier 
version of Microsoft BASIC will run under BASIC-86 with little 
or no modification. Price — $350. 



MCS-86 User's Manual 

By Intel — Feb., 1 979, edition. This is the primary hardware 
and software reference manual for the 8086 CPU. Price — 
$6.25. (Includes shipping) 




(Prototypes shown) 



AVAILABLE NOW! 

STOCK TO TWO WEEKS 

Call for more information 

or the name of 

our nearest dealer 



A 



Seattle Computer Products, Inc. 

1114 Industry Drive, Seattle, WA. 98188 
(206) 575-1830 



Circle 330 on inquiry card. 



BYTE October 1979 223 



program, and service 
business systems. 

1. Permian Basin Computer 
Group 

2. c/o Ector School District, 
POB 3912, Odessa TX 
79760 

3. Midland Chapter: Stu- 
dent Union Building, 
Midland College. Odessa 
Chapter: Electronic 
Technology Building, 
Room 209, Odessa 
College. 

4. Midland Chapter: 
monthly, the second 
Tuesday, 7:30 PM. 
Odessa Chapter: mon- 
thly, the second Satur- 
day, 1 PM 

5. None 

6. John Rabenaldt 

7. (915) 697-4607 (after 6 
PM), (915) 332-9151 Ext 
43 (9 AM to 5 PM) 

8. No dues 

9. Selectric interfaces, color 
displays, and MECA 
tape. 

lO.The Permian Basin Com- 
puter Group consists of 2 
chapters. 

1. TRS Users - Permian 
Basin Group 

2. Rt #4, POB 1455, Odessa 
TX 79763 

3. Rm 209, Electronics 
Technology Building, 
Odessa College 

4. Second Saturday of the 
month at 1 PM 

5. None 

6. Allan D Emert 

7. (915) 381-3138 

8. None 

9. Information and software 
exchange. 

Zips 80000-90000 

1. Denver Amateur Com- 
puter Society 

2. 1380 S Santa Fe, Denver 
CO 80223 

3. Same 

4. Third Wednesday of 
every month. General 
board meeting - first 
Wednesday of every 
month. 

5. Interrupt 

6. Carl Grimes 

7. (303) 759-8969 

8. $12 per year membership 
fee 

9. Pascal, 6502, Z80/8080, 
CP/M, and TRS-80. 



10. Annual Computer Show, 
called the "Computer 
Corral," at the Denver 
Merchandise Mart 
October 27th and 28th. 

1. Southern Nevada Per- 
sonal Computing Society 

2. 1405 Lucilee St, Las 
Vegas NV 89101 

3. Society Headquarters, 
1405 Lucilee St 

4. Second Saturday of each 
month at 12 noon 

5. Hard Copy (monthly) 

6. Cy Wells, President 

7. (702) 642-0212 

8. Corporate: $12 per year; 
family: $18 per year; cor- 
responding: $6 per year; 
student: $3 per year 

9. Both hardware and soft- 
ware; exchange of infor- 
mation and experience; 
and guidance and en- 
couragement for the 
new hobbyist. 

1. Northern Nevada Com- 
puter Club 

2. c/o Mathematics Dept 
University of Nevada, 
Reno NV S9557 

3. University of Nevada 

4. (TBA) 

5. Meeting Announcements 

6. Professor Al Brady 

7. (702) 784-6831 

8. None 

9. Personal computing and 
educational computing. 



Zips 90000-99999 



1. San Fernando Valley 
6502 Users Club 

2. 3816 Albright Ave, Los 
Angeles CA 90066 

3. Computer Components 
Inc of Burbank, 3808 W 
Verdugo Rd, Burbank 
CA 91505 

4. Second Tuesday of every 
month at 8 PM 

5. 5FV 6502 Users Club 
Notes 

6. Larry Goga 

7. (213) 398-6086 

8. None at this time 
lO.The club is open to all 

owners of 6502-based 
computers including 
KIM, SYM, and AIM. 
PET and APPLE owners 
are also welcome. 
Formerly known as the 
San Fernando Valley 
KIM-1 Users Club. 



1. Compucolor and Intecolor 
Users Group 

2. 5250 Van Nuys Blvd, 
Van Nuys CA 91401 

3. Same as above. 

4. First Saturday of each 
month from 12 to 3 PM 

5. Users Bulletin (quarterly) 

6. Stan Pro 

7. (213) 788-8850 10 to 6 
PM weekly 

8. $25 per year; foreign add 
$8 

9. Business; games and 
graphic programs ex- 
change; unpublished 
ports; poke positions and 
machine data; addition of 
peripherals to Com- 
pucolor and Intecolor; 
and machine updates. 

10. International in scope. 

1. Ventura County TRS-80 
Club 

2. 567 W Loop Dr, 
Camarillo CA 93030 

3. Camarillo Public Library, 
3100 Ponderosa Dr, 
Camarillo 

4. First Tuesday of the 
month at 7 PM 

5. Yes 

6. Lee Steinmetz 

7. (805) 484-1724 

8. $10 per year 

9. The group's main pur- 
pose is to share informa- 
tion relating to the prac- 
tical applications as well 
as the entertainment 
possibilities of the 
TRS-80. 

1. Homebrew Computer 
Club 

2. POB 626, Mountain View 
CA 94040 

3. Fairchild Auditorium, 
Stanford Medical Center 

4. Meeting dates are 
published in the club 
newsletter 

5. Homebrew Computer 
Club Newsletter 

6. Robert Reiling, President 

7. (415) 967-6754 

8. Donation requested 

9. Information exhange on 
all systems and providing 
"vectors" to people and 
groups with similar in- 
terests. 

10.A newsletter copy will be 
sent upon request, in- 
clude a self-addressed 
stamped envelope. 
Anyone interested in 
computers is invited to 
attend Homebrew Com- 



puter Club meetings. 

1. Apple Core 

2. POB 4816, San Francisco 
CA 94101 

3. Homestead Savings, 22nd 
and Geary St, San Fran- 
cisco 

4. First Saturday of each 
month at 10 AM 

5. Cider Press 

6. Ken Silverman 

7. (415)878-5382 

8. $15 per year 

9. Apple owners only. 

1. Pacifica TRS-80 Users 
Group 

2. 637 Brussels St, San Fran- 
cisco CA 94134 

3. Eureka Square Shopping 
Center 

4. Second and Fourth 
Thursdays of the month 

6. John F Strazzarino 

1. Solano TRS-80 Users 
Club 

2. 550 Marigold Dr, Fair- 
field CA 94533 

3. Owens-Illinois, 2500 
Huntington Dr, Fairfield 
CA 

4. Third Thursday of the 
month 

6. Steve Irwin 

7. (707) 422-3347 

9. Informal group that gets 
together to discuss 
mutual TRS-80 problems 
and experiences. 

1. ABACUS (Apple Bay 
Area Computer Users 
Society) 

2. Hayward BYTE Shop, 
1122 B St, Hayward CA 
94541 

3. Same as above 

4. Second Monday of the 
month 

5. Yes 

6. Ed Avelar, President 

7. (415) 583-2431 

10. Have an active member- 
ship of 40, and have 
developed a club library 
of 200-pIus programs. 

1. RETUG (Redwood Em- 
pire TRS-80 Users Group) 

2. 7136 Belita Ave, Rohnert 
Pk CA 94928 

3. Santa Rosa Computer 
Center 

4. First Saturday of each 
month 

6. John Revelle 

7. (707) 545-2860 
9. TRS-80s. 



224 October 1979 © BYTE Publications Inc 



We Specialize in High Technology 

at Low Prices. 

Econoram* boards are generally available in 3 forms: unkit (sockets and bypass 
caps are pre-soldered in place for simple, one-evening assembly), assembled 
and tested, or qualified under our high-reliability Certified System Com- 
ponent (CSC) program (200 hour burn-in, immediate replacement in event of 
failure within 1 year of invoice date). 1 year limited warranty on all products. Refer 





#fflffl!);M»!Mfffftt!l^ j lo cnaii u 

Name 


9iow Tor pricinc 

Storage 


3- 

Buss 


Configurations 


Notes 


Unkit 


Assm 


esc 


Econoram HA 


8KX8 


S-100 


2-4K blocks 


1 




$149 


$179 


$239 


Econroam IV 


16KX8 


S-100 


1-16K 


1 




$269 


$329 


$429 


Econoram VIIA-16 


16KX8 


S-100 


2-4K, 1-8K 


1 




$279 


$339 


$439 


Econoram VIIA-24 


24KX8 


S-100 


2-4K, 2-8K 


1 




$398 


$485 


$605 


Econoram IX-16 


16KX8 


Dig Grp 


2-4K, 1-8K 


1 




$319 


$379 


n/a 


Econoram IX-32 


32KX8 


Dig Grp 


2-4K, 1-8K, 1-16K 


1 




$559 


$639 


n/a 


Econoram X 


32KX8 


S-100 


2-8K, 1-16K 


1 




$529 


$649 


$789 


Econoram XI 


32KX8 


SBC/BLC 


2-8K, 1-16K 


1 




n/a 


n/a 


$1050 


Econoram XII-16 


16KX8 


S-100 


see notes 


1, 


2 


$329 


$419 


$519 


Econoram XII-24 


24KX8 


S-100 


see notes 


1, 


2 


$429 


$539 


$649 


Econoram XIII 


32KX8 


S-100 


see notes 


1, 


3 


$559 


$699 


$849 


Econoram XIV 


16KX8 


S-100 


see notes 


1, 


4,5 


$289 


$349 


$449 


Econoram XV-16 


16KX8 


H8 


1-16K 


1, 


6 


$329 


$395 


n/a 


Econoram XV-32 


32KX8 


H8 


2-16K 


1, 


6 


$599 


$729 


n/a 



Notes: 

1. Works at 5 MHz with 8085 or at 4 MHz with Z-80. 4. Bank select board — 1 bank addressable on 4K boundaries. 

2. Bank select board — 2 independent banks addressable on 8K boundaries. 5. 24 address lines for extended addressing. 

3. Bank select board — 2 independent banks addressable on 16K boundaries. 6. Bank select option for implementing memory systems greater than 64K. 

* Econoram is a trademark of Bill Godbout Electronics. 



•••••••••••••••••••••••••••••••••••••••••••••••••••CSV 

Coming soon: This month, we're announcing the 
Econoram XIV with extended addressing, two new Econorams 
(XV-16 and XV-32) for the H8 buss, and our Memory Management 

Board. In the next few months, we'll be introducing... 

• 4 MHz Z-80 CPU board 

• 5 MHz 8085 CPU board 

• Triple Parallel + Single Serial board, with 3 full duplex parallel ports and 
serial port with full RS-232 handshake 

• 12 and 18 slot motherboards — double sided, shielded, and actively 
terminated 

• And, a rack mount or desk top enclosure, with power supply, to hold all 
this neat stuff 

Just thought you ought to know. 



16K Memory Expansion 
Chip Set S87.20 (regular 
$109; 20% off while they last) 

This Godbout quality product expands memory in Radio Shack-80, Apple, 
and Exidy Sorcerer computers. Our chip set features low power, high speed 
(250 ns) parts that work with 4 MHz systems. DIP shunts included. Easy-to- 
follow instructions for Radio Shack-80 modification make conversion simple. 1 
year limited warranty. 



" 



INTERFACE!?" S-IOO I/O 
$189 unkit, $249 assm 

Dual serial port with 2 full duplex parallel ports for RS-232 handshake; 
EIA232C line drivers and receivers (1488, 1489) along with current loop (20 mA) 
and TTL signals on both ports. Onboard crystal-controlled timebase with in- 
dependently selectable Baud rate generators for each part (up to 19.2 KBaud). 
This board has hardware LSI UARTs that don't tie up the computer's CPU, 
operates with 2 to 5 MHz systems, includes software programmable UART 
parameters/interrupt enables/handshaking lines, offers provision for custom 
frequency compensation on both receive and transmit sides to accommodate 
varying speed/noise situations or unusual cable lengths... and even all this 
isn't the full story on what this no-excuses board can do for you. 



Econoram II Closeout $129 

unkit (3/S375), $155 assm 

This is a limited quantity item. Our brand new Econoram IIA is out, but even 
by today's standards the original Econoram II is an excellent memory. 2 MHz 
operation, low power, configured as two independent 4K blocks, and one of the 
best track records in the industry for reliability and cost-effective operation. 
Easy one-evening assembly, 1 year limited warranty on all components. 



18 Slot Motherbd Closeout 
— was $1 24, now only S109 

Includes on-board active termination, with all 18 edge connectors pre- 
soldered in place for easy assembly. Limited quantity. 

Memory Management 
S59 kit, $85 assm, SIOO CSC 

Now you can add bank select and extended addressing to older S-100 
machines like the IMSAI, Altair, Sol, Polymorphic, etc. Either use this board 
with our new extended addressing boards, or retrofit our high density 
Econorams (the ones with phantom or extra qualifier lines) for use with the 
Memory Management Board to get more than 64K of memory space for your 
computer. 



2708 EROM board 
unkit 



4 independently addressable 4K blocks, with selective disable for each 
block. Built to CompuPro/Econoram standards (dipswitch addressing, top 
quality board, sockets wave-soldered in place), and includes dipswitch selec- 
table jump start built right into the board. Includes all support chips and 
manual, but does not include EROMs. 



ACTIVE TERMINATOR 

kit S34.50 

Our much imitated design plugs into any S-100 motherboard to reduce ring- 
ing, noise, crosstalk, and other buss-related problems. This is a simple, effec- 
tive, low cost way to upgrade your machine. 



SEE COMPUPRO 111 AT A STORE NEAR YOU. 

Many Godbout computer products are available under the CompuPro name 
at leading computer stores world-wide. Want to see for yourself exactly what kind of 
quality and effort we put into turning out cost-effective, high performance boards? 
Then see our products in person at a computer store near you. 





TERMS: Cal res add tax. 
Allow 5% for shipping, excess 
refunded. VISA®/Mastercharge g) 
call our 24 hour order desk at 
(415) 562-0636. COD OK with 
street address for UPS. Prices 
good through cover month of 
magazine. 



CompuPro™ 

Bldg. 725, Oakland Airport, CA 94614 



from 



(&(o)G)IB(i» 

^ ELECTRONICS ^ 



FREE FLYER: We'll be 
glad to teii you more than the 
space of this ad permits. Just 
send your name and address, 
we'll take care of the rest. If 
you're in a hurry, enclose 41c in 
stamps for 1st class delivery. 



Circle 150 on inquiry card. 



BYTE October 1979 225 



1. 68XX(X) Computer Club 

2. POB 18081, San Jose CA 
95158 

3. University of Santa Clara 

4. Second Tuesday of each 
month 

5. None 

6. Ray Boaz 

7. (408)269-9522 

8. None 

9. All 68XX(X) microcom- 
puters and related equip- 
ment. Latest develop- 
ments in hardware and 
software for 68XX(X). 
Further the use of 
68XX(X) computers in 
personal applications. 
Mutual aid in hardware 
and software problems. 

10. Meetings are for the in- 
formal exchange of infor- 
mation. A software 
library is maintained for 
the common use of all. 

1. Sacramento Microcom- 
puter Users Group 

2. POB 161513, Sacramento 
CA 95816 

3. SMUD Training 
Facilities, 59th St 

4. Fourth Tuesday of the 
month at 7:30 PM 



5. Push & Pop 

1. Aloha Computer Club 

2. POB 4470, Honolulu HI 
96813 

3. Kaimuki Regional Library 
(usually) 

4. Usually the second 
Wednesday of the month 
at 7:30 PM 

5. Debugga (monthly) 

6. Paul Lancaster or Gerry 
Cramm 

7. (808) 235-3880 or (808) 
254-2319, respectively 

8. $6 per year 

9. Anything goes, as long as 
it is microcomputers. 

10. Our users group meeting 
is followed by a short 
business meeting after 
which is a special presen- 
tation, then "mapping" 
and "random access." 



1. 



2. 



Apple Portland Program 
Library Exchange 
(A.P.P.L.E.) 

c/o Will Newman II, 

Secretary /Treasurer, 1915 

N E Couch, Portland OR 

97232 

Varies 

Stems From A.P.P.L.E. 



6. Will Newman II 

7. (503) 233-5711 (days and 
evenings) 

8. $2 application (one time) 
$6 per year membership 
includes subscription (12 
issues a year) 

9. Wide variety of profes- 
sional and hobby users. 
We trade programs and 
programming techniques 
and hold training classes 
(beginning to advanced) 
with local retailers. 

10. Inquiries must be accom- 
panied by a self- 
addressed, stamped 
envelope. 

1. Northwest Computer 
Society 

2. POB 4193, Seattle WA 
98104 

3. Seattle University Library 
Auditorium, Rm 115 

4. First and third Thursdays 
of each month at 7:30 
PM 

5. Northwest Computer 
News 

6. Roy Gillette, President, 
John Aurelius, Secretary 

8. $7 January thru Decem- 
ber; $10 June thru the 



2nd December 

9. Beginners, business, and 
hobbyists. Special sec- 
tions: Tacoma chapter, 
TRS-80 group, and Heath 
H-8 group. 

10. First meeting each month 
is formal with a speaker; 
the second meeting is in- 
formal. 

1. Apple Pugetsound Pro- 
gram Library Exchange 

2. 8710 Salty Dr NW, 
Olympia WA 98502 

3. Rotates through various 
computer stores in the 
Seattle/Tacoma area 

4. Third Tuesday of every 
month 

5. Call- A.P.P.L.E. 

6. Val Golding 

7. (206) 932-6588 

8. $10 for 1979. 

Newsletters 

Zips 00000-10000 

1. Harvard Newsletter on 
Computer Graphics 

2. Harvard University 



6800 SYSTEM SOFTWARE 

Unmatched • Field Proven • Documented • Industry Wide 



SD0S™ 

A totally interrupt-driven (both disk and other peripherals) disk 
operating system, including type-ahead. Provides device independent, 
byte addressable random files. Supports any mixture of disk drives up 
to 2.5 BILLION bytes per drive. Disk files can grow dynamically to 
match application needs. Automatic, overlapped read-ahead on 
sequential files and LRU sector buffer pooling on random-access files 
optimize disk I/O. System utilities allow operator file manipulation, 
disk initialization, backup with wildcard file selection, and disk 
structure repair facilities to handle the infrequent but unavoidable 
disasters that occur in the real world. Turn-key application systems can 
be easily built, coupled with SD Business Basic. 242 pages of 
documentation. 

IDB 

A RAM or EPROM-based assembly language debugger. Provides 
single-step with register display, multiple real-time conditional 
breakpoints, memory dump, multiple data display and entry modes. 
Can be used to debug interrupt-driven code. 39 pages of 
documentation. 

6800 Hardware supported: 

Conrac Model 480 (AMI MDC) + IC0M floppy 

WaveMate + Persci floppy (1771 + DMA) 

Electronics Product Associates + IC0M floppy 

Motorola EXORcisor + EXORdisk I or II 

SWTP + mini or DMAF floppy (FLEX) 

CMI 6800 + Winchester (1.6M) + Calcomp floppy (1771 + DMA) 

MSI 6800 + FD-8 mini-floppy or 10M cartridge disk 

Mizar Labs + double density Micropolis drives (1791 + DMA) 

SSB Chieftain— mini or 8-inch floppy 

Computer and Data Machines (England) 



BUSINESS BASIC COMPILER 

A super fast application oriented BASIC. 10digitBCD for values to 100 

million dollars with pennies. Random access to variable size, variable 
content records. Long, meaningful variable names, formatted output, 
IF-THEN-ELSE with multiple statements per line, and error-trapping 
make this BASIC extremely powerful. Compiled code, automatic 
integer optimization, and fast floating point make applications written 
in SD Basic run faster than on virtually any other microcomputer, and 
protect the source code of the application. 1 04 pages of documentation. 

EDIT 

A powerful and easy to use text editor with change, delete, insert, and 
remove commands. Automatic display of text or context changes, 
macro facilities for complex or repetitive editing. 44 pages of 
documentation. 

ASM 

A lovely 2 pass assembler with conditional assembly, long labels, 
symbol table dump and cross-reference, error cross-reference, 
extensive arithmetic and listing control. 103 pages of documentation. 

Write for a free catalogue or contact the hardware manufacturer. 
All SD software comes with a 1 year warranty. 



INNOVATION IN SOFTWARE 




SOFTWARE DYNAMICS 

2111 W. Crescent, Suite G 
Anaheim, CA 92804 
(714) 635-4760 



226 October 1979 © BYTE Publications Inc 



Circle 327 on inquiry card. 



Laboratory for Computer 
Graphics, 520 Gund Hall, 
Cambridge MA 02138 

6. William Nisen 

8. $125 per year; $45 for 9 
issues 

10. The newsletter monitors 
important commercial, 
technological, and pro- 
duct developments, as 
well as market, applica- 
tion and learning oppor- 
tunities. 

1. Sorcerer Users Group 

2. 1395 Main St, Waltham 
MA 02154 

3. None as of yet 

5. The Exidy Monitor 

6. Bruce R McGlothlin 

7. (617) 899-4540 

8. $10 per year 

9. The main purposes of the 
group are to make hard- 
ware and software 
developments known and 



available to the Sorcerer 


1. 


Physicians Microcom- 


user, to supply software 




puter Report 


to the user, and to in- 


2. 


POB 6483 


itiate an information ser- 


3. 


Lawrenceville NJ 08648 


vice. 


6. 


Dr Gerald M Orosz 




8. 


$25 per year; $12.50 for 


1. Computers in Psychia- 




students 


try/Psychology 


9. 


Monthly publication for 



9. 



26 Trumbull St, New 
Haven CT 06511 
Computers in Psychia- 
try/Psychology (formerly 
Micro-Psych) 
Marc Schwartz MD 
(203) 562-9873 
$15 per year for member- 
ship and 6 issues of the 
13-page newsletter 
Clinical, research and in- 
teresting mental health 
uses of computers, office 
management, and ad- 
ministration. The 
newsletter contains ar- 
ticles, reviews, ongoing 
bibliography, psychology 
program catalog, training 
opportunities, job open- 
ings, and news of 
members' activities. Now 
publishing Vol. 2 of 
newsletter. Vol. 1 
available for $12. 



doctors who wish to 
become better informed 
about the computer and 
its application in the field 
of medicine. 

Zips 10000-30000 

1. Digital Group Indepen- 
dent Users Group 

2. POB 316, Woodmere NY 
11598 

5. BRIDGE (Bi-directional 
Reflections for the Il- 
lumination of Digital 
Group Enthusiasts) 

6. Lloyd Kishinsky 

8. $10 for 10 issues of 
newsletter 

9. A newsletter devoted to 
helping digital group 
users over the voids. 

10. Newsletter published 
every 6 weeks. Vol. Ill 
starting in Fall '79. 
Newsletter includes 
helpful hints from users, 
items for sale, software 
exchange, applications, 
hardware and software 
fixes, Phideck special in- 
terest group, and articles 
submitted by members. 



Membership is approx- 
imately 350. 

1. BUSS 

2. 325 Pennsylvania Ave 
SE, Washington DC 
20003 

5. Buss: The Independent 
Newsletter of Heath 
Company Computers 

6. Charles Floto 

7. (202) 544-0484 

8. $8.50 for 12 issues 

9. Software and hardware 
compatible with com- 
puters made by the 
Heath Company. 

10. Sample issue availabe 
upon request mentioning 
BYTE. 

1. ARESCO 

2. POB 1142, Columbia MD 
21044 

5. Four newsletters: The 
Paper, VIPER, RAIN- 
BOW, and The Source. 

6. Rick Simpson or Terry 
Laudereau 

7. (301) 730-5186 

8. $15 for 10 issues 

9. The Paper - for owners 
of the Commodore PET. 
The VIPER - for owners 



PROFESSIONAL 




INCOME TAX PROGRAMS 
FOR TRS-80 



TM 



Accountants, lawyers, tax consultants nationwide, prepared over 30,000 1978 
Federal tax returns using our system. 

Displays and fills in Form 1040 and related schedules on the screen, then 
prints out the completed forms automatically. 

Change your mind? Make an error? Correct a single entry and you have a brand 
new form with all re-computations made automatically. 

No tax system, running on any computer anywhere, has all the features of our 
professional system, and yet— 

Our base program, which does 1040 and Schedule A costs only $189.95 

And! You can add schedules for only $37.95 each, customizing your system 
to your requirements. 

CONTRACT SERVICES ASSOCIATES 

706 SOUTH EUCLID ANAHEIM, CA 92802 

TELEPHONE (714) 635-4055 

FREE CATALOG AND BROCHURE TO PROFESSIONALS 



Circle 82 on inquiry card. 



October 1979 © BYTE Publications Inc 227 



The Comprint 912 printer. 
No one else can match 
our speed; our print 
quality; our quiet 
operation; or our 
reliability. Not for 
$660 they can't. 



Our Comprint 912 is 
the best printer for 
the money. 
Period. Any 
printer 
that can 
match our 



■ 



; . XftllCBO -iiHI IkLMNOPOPSHJUWXYZl^lT..-.-:!- »« * V 
i ■ '#^BCBC F S* 1131 LM CPQKS I UU WX Yl t x i t _ * o b c d c- 1 g I • 
; " ■ >'^iECDE:rGHlJKLnnOPQRSTUUWXYZ:vll *ahi t$»fyh 
;<« > .>r«.i.CUtFGHI JJSfcOtifir.QRSTUUWXYZt * ] T_^ obcdt* 





price 
can't 

even begin 
to match our 
performance. 
And any printer 
that boasts perfor 
mance like ours doesn't 
even come close to our 
price. No matter what 
your application; com- 
puter reports, listings, 
CRT hard copy message 




CRT hardcopy is an excellent 
application for the Comprint 912. 



228 BYTE October 1979 



receiving, scientific/ 
^^ industrial data 
^H logging, or any- 
^g thing you can 
" think of, the 
Comprint 912 
is the perfor- 
mance leader in 
printers under 
$1000. 

First consider 
our perfor- 
mance. 



The Comprint 912 prints nearly 3 
lines every second. 

Speed. 

At 225 
characters 
per second 
(170 LPM) 
the Com- 
print 912 
is up to 4 
times faster 
than impact 
printers costing hun- 
dreds of dollars more. 
With our printer you 
don't waste time and 
money waiting for your 
print-out. 

Print Quality. 
Our 9x12 matrix pro- 
vides sharp, crisp 
characters. Compare 
that with our competi- 
tion. Their very best is a 
9x7 matrix, which 
means no lower case 
descenders and 
cramped letters. With 
the Comprint 912 you 
don't have to put up 
with the irritation of 
fuzzy, hard to read 
computer printing. This 



xc G ptional print quality t n off er a 6 month warran- 

ly by the Comprint 912 in 7 ty, twice the industry 

niQss Pliability, 6 month standard. The key to all 
raiiQi i/o and 8 i/2" wide this superior p erf or- 
bQQn shipped to happy custc mance is our special 

The superior print quality provided 
by the Comprint 912 is obvious in this 
actual size sample. 

means increased prod- 
uctivity And because 
the Comprint 912 makes 
better originals, our 
originals make better 
Xeroxes. 

Quiet Operation. 

Most computer 
printers are irritat- 
ingly noisy. They can 
disrupt concentration 
and reduce the effi- 
ciency of anyone work 
ing near them. They're 
noisy because they're 





The Comprint 912 is quiet because it's 
electronic not mechanical. 

impact. The Comprint 
912 has no mechanical 
print head banging on 
the paper. If s elec- 
tronic. Its quiet. 
Reliability. 
Since the Comprint 
912 prints electronically 
rather than mechani- 
cally like ordinary im- 
pact printers, we have 
fewer moving parts and 
less vibration. The 
Comprint 912 has fewer 
things to go wrong and 
less wear. That's why we 

Circle 52 on inquiry card. 



Fewer moving parts in the Comprint 
912 mean greater reliability. 

paper. This aluminized 
" silver paper" works just 
like ordinary paper. It 
won't fade or discolor 
and actually costs less 
than plain paper and 
one time ribbons. For 
the vast majority of 
printing applications 
it's just plain better 
than plain paper. Espe- 
cially when you con- 
sider the hidden costs 
of plain paper printers 
due to their inferior per- 
formance compared to 
the Comprint 912. And 
on those rare occasions 
when you really do 




need a plain bond 
paper copy just run 
your Comprint 912 
printout through your 
plain bond copy ma- 
chine and you've got it. 
Even though our paper 
is special, it's available 
everywhere; from your 
dealer or distributor, or 
from us. 

Now consider our 
price. 
The Comprint 912. 
$660 with parallel 
interface, $699 with 
serial interface. 
We could talk about 
our other advantages, 
like our 80-character 
lines on 8-1/2" wide pa- 
per, or our compact, 
light-weight size, and 
the fact that the Com- 
print 912 has no ribbons 
to mess with, no chemi- 
cals, nothing to add but 
paper. 

But you have to see 
for yourself. Before you 
buy any printer, insist 
on seeing the Comprint 
912, the performance 
leader, at your local 
computer store or in- 
dustrial distributor. Or 
contact us for a de- 
scriptive brochure, a 
sample print-out, and 
applications literature. 




The performance leader. 



Computer Printers International, Inc. 

340 E. Middlefield Rd. 

Mountain View, California 94043 

415 969-6161 



BYTE October 1979 



229 



of the RCA VIP. Rain- 
bow - for owners of the 
APPLE II. The Source - 
for owners of the Exidy 
Sorcerer. 
10.A subscription is for all 
10 issues of one volume. 
Back issues are sent 
automatically. 

1. Microcomputer Investors 
Association 

2. 902 Anderson Dr, 
Fredericksburg VA 22401 

3. As called 

4. As called 

5. The Microcomputer In- 
vestor 

6. J Williams 

7. (703) 371-5474 

8. $30 per year 

9. An association of persons 
who utilize microcom- 
puters to assist in making 
and managing invest- 
ments. 

10. Each participating mem- 
ber is required to publish 
one article per year in 
The Microcomputer In- 
vestor. 

1. TRS-80 Users Group 

2. 7554 Southgate Rd, 



Fayetteville NC 28304 

5. TRS-80 Users Group 
Newsletter 

6. Mr Robert G Lloyd 

7. (919) 867-5822 

8. $15 per year 

9. To exchange programs 
with the members of the 
group at no cost. 

10. We are an international 
group with over 1500 
members from more than 
20 countries. 

1. TIPS Newsletter 

2. 101 Brookbend Cr, 
Mauldin SC 29662 

5. TIPS Newsletter 

6. Fred Holmes 

7. (803) 288-5664 

8. $3 for 4 issues 

9. Support all micropro- 
cessor products produced 
by National Semiconduc- 
tor from a hobbyist point 
of view, plus related 
semiconductor products 
from other companies. 
Microprocessors sup- 
ported include IMP-16, 
SC/MP and INS 8070. 
Complete construction 
plans for microprocessor 
systems including I/O 



(input/output) devices 
such as 24 by 80 video 
display, digital cassette 
and floppy disk. Also, 
system support software 
published. 
10. Complimentary issue 
sent for a self-addressed 
stamped envelope. 

Zips 30000-80000 

1. 6502 User Notes 

2. POB 33093, N Royalton 
OH 44133 

5. Yes 

6. Eric C Rehnke, Publisher 

7. (216) 237-0755 

8. $13 for Volume 3 in N 
America, $19 for Volume 
3 elsewhere. 

9. The newsletter supports 
KIM, SYM, AIM, and 
OSI 6502-based 
machines. We have 
special sections dealing 
with BASIC, Forth, 
FOCAL, Tiny BASIC, 
KIMSI, interface, music, 
etc. 

1. The International In- 
stitute for Robotics 



2. POB 615, Pelahatchie MS 

39145 
5. Robotics Newsletter 

7. (601) 854-5339 

8. $8 for 12 issues 

10. The newsletter solicits ar- 
ticles on all facets of 
robotics; we pay $15 to 
$50 per page for accepted 
articles. The Institute also 
offers free parts to 
hobbyists for articles; this 
is in addition to the pay- 
ment above. The Institute 
also makes available a 
basic and an advanced 
course in robotics.. 

1. SR-52 Users Club (Inter- 
national) 

2. 9459 Taylorsville Rd, 
Dayton OH 45424 

3. No meetings 

5. 52-NOTES 

6. Richard C Vanderburgh 

7. (513) 233-3698 

8. $1 per issue of 52-NOTES 
($1.67 abroad, excluding 
Canada and Mexico). 

10. Back issues are available 
at the same rates, begin- 
ning June 1976, monthly 
through February 1979. 
Texas Instruments-58/59 



BBOO, 64K BYTE RAM AND CONTROLLER SET 
MAKE 64K BYTE MEMORY FOR YOUR 6800 OR 
6502. THIS CHIP SET INCLUDES: 

* 32 M5K 4116-3 16KX1, 200 NSEC RAMS. 

* 1 MC3480 MEMORY CONTROLLER. 

* 1 MC3242A MEMORY ADDRESS 
MULTIPLEXER AND COUNTER. 

* DATA AND APPLICATION SHEETS. PARTS 
TESTED AND GUARANTEED. 

S325.0Q PER SET 



S100 FULLY ASSEMBLEO MOTHERBOARDS— 
FULLY SOCKETED, INDUSTRIAL GRADE 

* 8 SLOT ASSEMBLED S149.00 

* 19 SLOT ASSEMBLED $199.00 




64K BYTE EXPANOABLE RAM 

DYNAMICRAMWITHONBOARDTRANSPARENT 
REFRESH GUARANTEED TO OPERATE IN 
N0RTHSTAR, CR0MEMC0, VECTOR GRAPHICS, 
SOL, AND OTHER 8080 OR Z-80 BASED S100 
SYSTEMS *4MHZ Z-80 WITH NO WAITSTATES. 

* SELECTABLE AND DESELECTABLE IN 4K 
INCREMENTS 0N4K ADDRESS BOUNDARIES. 

+ LOW P0WER-8 WATTS MAXIMUM. 

* 200NSEC 4116 RAMS. 

* FULL DOCUMENTATION. 

+ ASSEMBLED AND TESTED BOARDS ARE 
GUARANTEED FOR ONE YEAR AND 
PURCHASE PRICE IS FULLY REFUNDABLE IF 
BOARD IS RETURNED UNDAMAGED WITHIN 
14 DAYS. 

ASSEMBLED/ 

TESTED KIT 

64KRAM $595.00 $565.00 

48KRAM $529.00 $499.00 

32K RAM $459.00 $429.00 

16K RAM $389.00 $359.00 

WITHOUT RAM CHIPS $319.00 S289.00 



EPROM 
2716-450NSEC $49.00 




VISTA V-200 MINI-FLOPPY SYSTEM 

+ S100 DOUBLE DENSITY CONTROLLER 
+ 204 KBYTE CAPACITY FLOPPY DISK 

DRIVE WITH CASE & POWER SUPPLY 
+ MODIFIED CPM OPERATING SYSTEM 
WITH EXTENDED BASIC 
S695.00 
* EXTRA DRIVE, CASE & POWER SUPPLY 
$395.00 



1BK XI DYNAMIC RAM 

THE MK4116-3 IS A 16,384 BIT HIGH SPEED 
NM0S. DYNAMIC RAM. THEY ARE EQUIVALENT 
TO THE M0STEK, TEXAS INSTRUMENTS. OR 
M0T0R0LA4116-3. 

* 200 NSEC ACCESS TIME, 375 NSEC CYCLE 
TIME. 

* 16 PIN TTL COMPATIBLE. 

* BURNED IN AND FULLY TESTED. 

* PARTS REPLACEMENT GUARANTEED FOR 
ONE YEAR. 

$9.50 EACH IN QUANTITIES OF 8 



BETA COMPUTER DEVICES 

P.O. BOX 3465 
ORANGE, CALIFORNIA 92665 

(714) 633-7280 




MOTOROLA MEMORY ADDRESS MULTIPLEXER— 
MC3242A 

THE MC 3242A IS AN ADDRESS MULTIPLEXER 
AND REFRESH COUNTER FOR 16 PIN, 16K 
DYNAMIC RAMS THAT REQUIRE A 128 CYCLE 
REFRESH. 

* CONTAINS MEMORY REFRESH COUNTER. 

* MULTIPLEXES SYSTEM 14 BIT ADDRESS TO 
THE 7 ADDRESS PINS OF THE RAMS. 

* COMPATIBLE WITH 3480 MEMORY 
CONTROLLER. 

+ PART IS GUARANTEED. 

$12.50 EACH 



MOTOROLA OYNAMIC MEMORY CONTROLLER- 
MC3480L 

MEMORY CONTROLLER DESIGNEDTOSIMPLIFY 

CONTROL OF 16 PIN4K0R16K DYNAMIC RAMS. 

+ GENERATES RAS/CAS ANDREFRESHTIMING 

SIGNALS FOR 16K TO 64K BYTE MEMORIES. 

* GENERATES MEMORY READ/WRITE TIMING. 

+ DIRECT INTERFACE WITH MOTOROLA OR 
INTEL 3242A ADDRESS MUX AND REFRESH 
COUNTER. 

* PART GUARANTEED. 

$13.95 EACH 



KIM/SYM/AIM-65-32K EXPANDABLE RAM 

DYNAMIC RAM WITH ON BOARD TRANSPARANT 
REFRESH THAT IS COMPATIBLE WITH KIM/ 
SYM/AIM-65 AND OTHER 6502 BASED 
MICROCOMPUTERS. 

* PLUG COMPATIBLE WITH K1M/SYM/AIM-65. 
MAY BEC0NNECTEDT0PETUSINGADAPT0R 
CABLE. SS44-E BUS EDGE CONNECTOR. 

* USES +5V ONLY (SUPPLIED FROM HOST 
COMPUTER BUS). 4 WATTS MAXIMUM. 

* BOARD ADDRESSABLE IN 4K BYTE BLOCKS 
WHICH CAN BEINDEPENDENTLYPLACEDON 
4K BYTE BOUNDARIES ANYWHERE IN A64K 
BYTEADDRESS SPACE. 

+ BUS BUFFERED WITH 1LS TTL LOAD. 
+ 200NSEC4116RAMS. 

* FULL DOCUMENTATION 

* ASSEMBLED AND TESTED BOARDS ARE 
GUARANTEED FOR ONE YEAR, AND 
PURCHASE PRICE IS FULLY REFUNDABLE IF 
BOARD IS RETURNED UNDAMAGED WITHIN 
14 DAYS. 

ASSEMBLED/ 

TESTED KIT 

WITH 32K RAM $495.00 $459.00 

WITH 16K RAM $425.00 $389.00 

WITHOUT RAM CHIPS $355.00 $319.00 

HARD TO GET PARTS ONLY (NO RAMS) $180,00 

BARE BOARD ANO MANUAL $65.00 




* W/ SOLID FRONT PANEL $239.00 

* W/ CUTOUTS FOR 2 MINI-FLOPPIES $239.00 

* 30 AMP POWER SUPPLY $119,00 



CALIF RESIDENTS PLEASE ADD 6% SALES TAX. 



Z-80 CPU • Z-80 CPU • Z-80 CPU • Z-80 CPU 

+ 2MHZ OR 4MHZ SWITCH SELECTABLE 

* 2 SERIAL PORTS 

* 2 PARALLEL PORTS 

* SELECTABLE BAUD RATES 150-9600 

+ POWER ON JUMP TO ON BOARD 2708 OR 
2716 EPROM (BOARD DELIVERED WITHOUT 
EPROM 

$325.00 



TRS-80 I6K MEMORY EXPANSION KIT 

THIS KIT PROVIDES THE IC'S TO EXPAND THE 
TRS-80 MAINFRAME FROM 4K BYTES TO 16K 
BYTES OR MAY BE USED IN THE EXPANSION 
CHASSIS. THE KIT INCLUDES: 

* 8 M5K 4116-4 16K X 1, 200 NSEC RAMS. 

* 1 DIP PROGRAMMING SWITCH. 

* 1SET0FEASYT0F0LL0WINSTRUCTI0NS 
THAT ONLY REQUIRES A SCREWDRIVER TO 
SUCCESSFULLY COMPLETE THE 
INSTALLATION. 

SB0.00 PER KIT 



230 October 1979 © BYTE Publications Inc 



GO FROM THIS . . . 



\ r^-:. 






FORms 



TO THIS! 



STOCK CONTINUOUS 
BUSINESS FORMS 

Just Program and Go! 



You can produce commercial quality output in a few short minutes with our 
"off-the-shelf* blank heading forms. 

Simply program your company information and run. 

Software dependent format allows for easy modification of information. 

Multiple company or multiple division output is easily accomplished on a single 
printer without changing forms. 

Excellent for systems houses and software dealers. 

Full size 8V2 x 11 format provides large work space and is compatible with 
letter size files. 

Window position for standard commercial number 10 envelopes. 

Half-inch grey bars for easy readability. 



: 


)(■■■ 


) 




— :■" ' — *— " 




e*r*~ =: 


— — j 


, —.-I 




1 




sz 








' 


. 



INVOICE 



INVOICE 
3 PART #1013 



i \ I 



STATEMENT 



STATEMENT 
3 PART #1023 



[ 




)C 


) 


e- ■;■■■■ 





... «„_,..... 


T : 


I 


_„_..,..„... 


■: = . 


! 






V 


l 
















" I - 


■ -I ■ 


, 




I 





PURCHASE 
ORDER 



PURCHASE ORDER 
3 PART #1033 



ORDERING INFORMATION 

Packed 1 ,000 to a carton 

Suggested list price: $79.00 per 1 ,000 

Minimum order to qualify for dealer discount: 5,000 (may be assorted). 

TERMS 

Initial order CO. D. 



Shipping weight 35 pounds per 1 ,000 

F.O.B. Valencia, CA 

Units may be purchased in any combination of 1 ,000's 



)FORmS 



BOX 55247 . VALENCIA, CA 91355 

© Copywright I 979 Circle 151 on inquiry card. 



coverage began June 
1977. 

1. The Target-an Aim 65 
Newsletter 

2. RR#2, Spencerville OH 
45887 

5. The Target-an Aim 65 
Newsletter 

6. Donald Clem 

7. (419) 647-6576 

8. $5 in US and Canada, 
$12 elsewhere 

9. The newsletter is for pre- 
sent and future Rockwell 
Aim 65 users. The Aim is 
built around the 6502 
microprocessor, so the in- 
formation is useful for all 
6502s. The newsletter 
contains software and 
hardware usable with the 
Aim. 

lO.The newsletter is pub- 
lished bimonthly. Six 
issues a year per 
subscription. Past issues 
have contained articles 
on the printer, the 
display, power supplies, 
product reviews, as well 
as other information. 

1. Apple Library 

2. 51625 Chestnut Rd, 



Granger IN 46530 
3. Mail only 

5. No 

6. Joe Torzewski 

7. (219) 272-4670 

8. None 

9. Support of Apple 
computer. 

10. Send self-addressed 
stamped envelope, 
please. 

1. Mid-Michigan Computer 
Club 

2. 9274 Marinus Dr, Fenton 
MI 48430 

3. No scheduled meetings 

5. None 

6. Tony Preston 

7. (313) 629-0363 

8. None 

9. Games, artificial intelli- 
gence, and operating 
systems. 

1. The Target 

2. Custom - Tronics, POB 
4310, Flint MI 48504 

8. $15 per year 

10. Bimonthly newsletter for 
owners or prospective 
owners of Aim 65 sys- 
tems. 

1. SCAMPUS (SC/MP 



Users Society) 

2. POB 132, Knob Noster 
MO 65336 

3. None 

4. None 

5. SCAMPUS Newsletter 

6. Tom Bohon, Coordinator 

7. (816) 563-2650 

8. $2 per year plus large, 
self -addressed stamped 
envelopes for newsletter 
mailings 

9. Composed of members 
who are interested in or 
actually building systems 
based on the National 
Semiconductor SC/MP-II 
processor. 

10.A11 members have access 
to a growing library of 
both articles and pro- 
grams for cost of 
reproduction and 
postage. The newsletter is 
approximately monthly. 
Current newsletter is 
available to interested 
parties for large, self- 
addressed stamped 
envelope. Group is trying 
to design a project com- 
puter for interested 
members to build. 

1. Theater Computer Users 



Group 

2. 104 N St Mary, Dallas 
TX 75214 

3. None, a national group 
for exchange of informa- 
tion. 

4. Newsletter, 4 times a 
year. 

5. TCUG NOTES about 4 
times a year 

6. Mike Firth 

7. (214) 827-7734 days or 
evenings. 

8. $4 to cover costs of 4 
issues of the newsletter 
(about a year). 

9. The uses of computers in 
live drama (theater) 
operations such as light 
control, administration, 
design, and sales. 

Zips 80000-90000 

1. COSMAC Users Group 

(CUG) 

2. POB 7162, Los Angeles 
CA 90022 

3. Local chapters may be 
formed in the future 

5. The 1802 Peripheral 

6. Patrick Kelly, Director 

7. Inquiries to above ad- 
dress; please include self- 






CGS-808 INTELLIGENT COLOR GRAPHICS 



Features: 

• Motorola MC6847 video display generator. 

• On-board 8085 microprocessor. 

• Eight colors — green, yellow, blue, red, 

buff, cyan, magenta, orange. 

• 11 progammable modes. 

• 1 alphanumeric mode with 32 x 16 charac- 

ters and inverse video. 

• 2 semigraphic modes with 8 colors in 64 x 

32 and 64 x 48. 

• 8 full graphic modes with 2 sets of 4 colors 

ranging from 64 x 64 to 128 x 192, and 2 
sets of 1 color in 256 x 192. 

• I/O mapped for true S-100 compatibility. 

CGS-808B(Bare "kit") $ 99.00 

(includes PC board, documentation, 
MC6847, MC1372, 8085 and 2708 with 
graphic driver subroutines) 

CGS-808A (Assembled & Tested) $385.00 

Firmware Pack II $ 99.00 

Phone Orders Welcome — Visa/Mastercharge 
Add $3.00 for Shipping and Handling. 
California Residents Add 6% Sales Tax. 



The CGS-808 is an intelligent color graphics 
board for the S-100 bus. With its own on-board 
microprocessor, the CGS-808 can plot points, 
draw lines and circles, generate upper/lower 
case characters, as well as custom character 
sets — all in color. 

Not only is the CGS-808 simple to use, just 
plug it in and run — it requires no memory 
space and little software overhead. It has its 
own parallel I/O port to interface directly with 
keyboards, joysticks, light pens or digitizers. 
Call or write for a free brochure. 



BIOTECH ELECTRONICS 

P.O. Box 485, Ben Lomond, CA 95005 
(408) 338-2686 



232 October 1979 © BYTE Publications Inc 



Circle 31 on inquiry card. 



Circle 139 on inquiry card. 
^lllllllllllllllllllillllillilillllliliilllllllillllilllillllilllllllillllllillllllllllllllllllliillilliilJC: 



T.D.Q. 
TAPE DATA QUERY 



Circle 359 on inquiry card. 



| PET-8 K 

| *FILE MANAGEMENT SYSTEM 



TRS-80-LEVEL II 



-UTILIZES DUAL AUDIO CASSETTE RECORDERS 

♦INTERACTIVE QUERY LANGUAGE 

-ENGLISH-LIKE COMMANDS 

—POWERFUL INFO RETRIEVAL CAPABILITY 

♦COMPUTERIZED BUSINESS & PERSONAL RECORDS 

—CUSTOMIZE YOUR OWN FILE STRUCTURES 

-CREATE & MAINTAIN DATA FILES 

—NO PROGRAMMING EXPERIENCE REQUIRED 

♦IMPLEMENTED IN BASIC 

T.D.Q. CASSETTE WITH MANUAL & REF. CARD $50.00 

THE FOLLOWING PRE-DEFINED T.D.Q. FILE STRUCTURES 
ARE AVAILABLE TO SOLVE YOUR DATA PROCESSING NEEDS: 



a INVENTORY CONTROL 

= ACCOUNTS RECEIVABLE 

= ACCOUNTS PAYABLE 

5 ORDER PROCESSING 

= CUSTOMER DIRECTORY 

= APPOINTMENT SCHEDULING 



$35.00 
$35.00 
$35.00 
$35.00 
$25.00 
$25.00 



EACH WITH CASSETTE AND MANUAL 

SEND SELF- ADDRESSED STAMPED ENVELOPE FOR 
COMPLETE SOFTWARE CA TALOGUE. 
SEND CHECK OR MONEY-ORDER TO: 

H. GELLER COMPUTER SYSTEMS 

DEPT. B, P.O. BOX 350 
NEW YORK, NY 10040 

(NEW YORK RESIDENTS ADD APPLICABLE SALES TAX) 



^•lllll Illllllllllllll 1 1 Illllllllllllllll IIIIIIIIIIIIIIIIIIIIIIIIlIT 



"\ 



'TINY' PASCAL 
for TRS-80® 

& NORTH STAR® 

Now you too can have Pascal! The Chung/Yuen 'Tiny' Pascal has 
been specially designed for TRS-80 & North Star owners. The full 
power & elegance of 'Tiny' Pascal is atyour command. Programs 
written in 'Tiny' Pascal run at least 4 times faster than the same 
program in BASIC! 'Tiny' Pascal is also a great way to learn 
Pascal Programming, & fun too. 

The minimum system requirements are: Level II, 16K for TRS-80, 
(no disk required) & 24K for North Star (specify density). 

SOURCE TOO! 
But most important, you also get source to 'Tiny' Pascal written 
in Pascal with each purchase! You can even compile the com- 
piler! (Requires 36K for North Star systems, & 32K, Level II for 
TRS-80). You can customize your own version, or just use it the 
way it is. 

'Tiny' Pascal is a subset of Standard Pascal & includes: 
RECURSIVE PROCEDURE/FUNCTION, IF-THEN-ELSE, 
REPEAT/UNTIL, 'PEEK & POKE', WHILE, CASE, & MORE! 
(Plus full graphics for TRS-80 as well) 
Also you can save & load programs. 
You get all this & more, plus a user's manual for $40.00. 

available from: 



/UPO/OTT 



P.O. Box 1628 

Champaign, IL 61820 

(217) 344-7596 

All orders pre-paid, Illinois residents add 5% sales tax 



TRS-80 disk software 



DISKETTE DATA BASE IDM-III 32K $49 

You can use it to maintain a data base & produce reports without any 
programming. Define file parameters & report formats on-line. Features key 
random access, multi-keys, sort, select, field arith, audit log. Almost use up 
all 32K. 



ACCOUNT manage client accounts & account receivable. Automatic t 
transaction recording. Print invoices and reports. 32K req. 



a 



WORD PROCESSOR 16K $39 

Our WORD-HI is the first word processor specifically designed for TRS-80 
that uses disk storage for text. Written in BASIC. No special hardware and 
text limit. Use for letters, manuals & reports. 

MAILING LIST 16K $35 

It lets you maintain data base and produce reports & labels sorted in any 
field. Random access. 2-digit selection code used. 

INVENTORY 16K $39 

While others use inefficient sequential file, we use 9-digit alphanumeric key 
for fast on-line random access. Record has key, description, level, safety 
level, order amt., unit cost & price, annual usage, location and vendor code. 
Reports give order info, performance summary, etc. 

KEY RANDOM-ACCESS UTIL 16K $19 

Lets you access a record by specifying a key. Features hashing, blocking, 
buffering technique, auto I/O error retry, etc. 

MICRO ARCHITECT 
96 Dothan St. 

Arlington, MA 02174 



Qmwsmismmm mmmmsm^smammmmmmmmmmmmmmm^ 



TRS-80 ... all business! ! 

...with CP/M, CBASIC2, 
& applications software. 

CP/M Operatinp System (w/Editor, Assembler, 

Debugger, Utilities & 6 manual set) $150 

CBASIC2 Compiler (w/manual) $ 95 

DESPOOL Print Spooler (w/manual) $ 75 

*0sborne & Assoc. PAYROLL W/COST 

ACCTNG $250 

*0sborne & Assoc. ACCTS. RECEIVABLE & 

ACCTS. PAYABLE $250 

*0sborne& Assoc. GENERAL LEDGER $250 

*=CBASIC2 source programs; add $15 (each) for 
applicable O & A book. 

APH - Self-administered Automated Patient 

History $175 

DOWNLOAD -TR-80 (or other) 
CP/M to CP/M $95 

data/program (source or object) transfer over 
RS232 link 

Send 30tf SASE for add'l. Software avail, (including 
CP/M Users Group software) and FREE "CP/M Primer." 

CA residents add 6% tax. Visa, M/C,M/0, Check OK. 



V C Y | B 



(714) 848-1922 



IR, IN, IE, IT, l^l_ |C, IS, 
IS- 

8041 NEWMAN AVENUE • SUITE 208 • HUNTINGTON BEACH. CALIFORNIA 92647 ; 



Circle 214 on inquiry card. 



Circle 85 on inquiry card. BYTE October 1979 233 



addressed stamped envel- 
ope. 

8. Membership is free; 
subscription to newsletter 
is $5 for 12 issues 
(minimum 8 pages, each). 
All subscriptions must 
start with Volume #1, 
Issue #1. 

9. The CUG is a user's 
group for all 1802-based 
microcomputers, in- 
cluding Basic ELF, ELF-II, 
Super-ELF, UC-1800, 
DSD-1802, VIP, home- 
brews, etc. 

lO.The CUG is a nonprofit, 
national syndicate of 
1802-based computer 
owners and users. Our 
members provide copies 
of their own software 
and hardware to other 
CUG members, charging 
only for actual copying 
and postage costs. Each 
member receives a detail- 
ed listing in our newslet- 
ter, which publishes both 
software and hardware 
articles and reviews. 

1. Poly 88 Users Group 

2. 1477 Barrington #17, Los 
Angeles CA 90025 



3. None 

5. Poly 88/Poly 8813 Users 
Group Newsletter 

6. Pat or Roger Lewis 

7. (213) M7-%M% after noon 

8. $5 US and $15 foreign for 
12 issues 

9. Software exchange or 
hardware tips. 

10. $2. 50 for programs 
without trade. $2 for 
cassette. $3 for disks. 

1. Business Computing Press 

2. POB 55056, Valencia CA 
91355 

5. Business Computing 
Newsletter 

6. Alan Bartholomew, 
Publisher, Greg Scott, 
Editor 

7. (805) 255-8543 or (213) 
881-8076 respectively 

8. Newsletter - available 
free at computer stores. 

1. Computer Information 
Exchange 

2. POB 158, San Luis Rey 
CA 92068 

3. None 

5. TRS-80 Bulletin, TRS-80 
Computing 

6. Bill McLaughlin, Editor 

7. (714) 757-4849 



8. Bulletin free, TRS-80 
Computing 2 for $15 

9. TRS-80 uses. 

1. PROTEUS, The Pro- 
cessor Technology Users 
Society 

2. 1690 Woodside Rd, Suite 
219, Redwood City CA 
94061 

3. Various chapters 
throughout USA and 
Canada 

5. PROTEUS/News 
(bimonthly, equivalent to 
48 pages per issue) 

6. Stan Sokolow 

7. (415) 368-3331 

8. $12 in USA, $15 in 
Canada or Mexico, $20 
elsewhere (US funds 
only, please) 

9. A balance between hob- 
byist and commercial in- 
terests: tutorial articles, 
hardware reviews, soft- 
ware reviews, news, 
group discounts, program 
library, tape recorded lec- 
tures, and communica- 
tion among members. 

10. Formerly known as 
Solus, we are now open 
to anyone owning a Sol, 
CUTS, or Helios, or any 



compatible hardware. 
Send $2 for a sample 
issue of the newsletter. 

1. Cromemco User Systems 
and Software Pool 

(CUssP) 

2. POB 784, Palo Alto CA 
94302 

4. Locally arranged 

5. CUssP Newsletter 

6. David Dameron 

7. (415) 321-5998 

8. $10 for 3 issues; $12 out- 
side USA, Canada and 
Mexico 

9. Users of Cromemco com- 
puters and boards. 

10. The purpose of CUssP is 
the exchange among users 
of operating notes, hard- 
ware and software mod- 
ifications, user written 
software, evaluations, 
and Cromemco 
announcements. 

1. LISP Users Newsletter 

2. 18215 Bayview Dr, Los 
Gatos CA 95030 

6. John R Allen 

9. This newsletter is design- 
ed to spread information 
about applications, im- 
plementation and general 



Get in touch with ^ ,. ^4/ 

tne R£s! W RL 




it>. no •' rure, wai- 
ess and light, magnetic fields, pre 
presence o< 
pf liters, • i 
notions 



you can ttnaoine? 

Most Q-Kit functions stand alone, 

I era!, wil 
make more efficient use of your 
microcomputer*. - any microcomputer! 



you're willing to build your own 



mO€i -"assembled kits for office 
*in )iii*r : or industry 



0»fl** v - expandc ;hon for 



1 Ki t P.O. BOX 35879 

■ * 602-299-9831 

TUCSON, AZ 85740 





Write for your free catalog! 
Dealer Inquiries Invited 

a division of j.r. conwell corporation 



234 October 1979 © BYTE Publications Inc 



Circle 203 on inquiry card. 



Circle 87 on inquiry card. 




Circle 204 on inquiry card. 



CY-480 

UPC™: 

THE WORLD'S 

ONLY SINGLE CHIP 

LSI UNIVERSAL PRINTER 

CONTROLLER! ONLY $35.00 

The CY-480 UPC™ . . . providing the kind of service and special features 
others don't! 

And that means for off-the-shelf low prices, the CY-480 provides great flexibility and 
easy interfacing. Cybernetic Micro Systems' amazing CY-480 will control and 
inter-face standard 5" x 7" dot matrix printers (including those from Victor, LRC, 
Practical Automation and Amperex) with speeds up to 200 CPS! Operating from a 
single +5V power supply, the flexible CY-480 will interface easily with any 
microcomputer or minicomputer system through standard 8-bit ports. The CY-480 
accepts either serial (RS232C) or parallel ASCII input from the host system's data 
channel. 

The CY-480 replaces bulky, expensive, dedicated controllers. 

This small, single LSI package offers a 5 x 7 dot matrix character generator, full 
upper and lower case ASCII 96-character font, and a 48-character (expandable by 
daisy-chaining) internal line buffer storage. Standard features include a 10, 12 or 16 
characters/inch variable character density command, and horizontal and vertical 
independently expanded print command. The CY-480 provides graphics capability 
and includes a "flip-print" operating mode for 180° viewing, and ready lines provide 
full asynchronous communications with handshaking. 

Stock delivery . . . only $35.00 a single unit . . . send for YOURS today! 



CYBERNETIC MICRO SYSTEMS 

2378-B Walsh Ave., Santa Clara, CA 95050 
Phone (408) 249-9255. 



VISA and 

MASTER CHARGE accepted. 



North Star* and 
PASCAL Users: 

JliMik's 

announces 

Hard disk and 8" drive interfaces to North 
Star DOS and BASIC and PASCAL 



TIMESHARING 

for the Horizon — 

Interrupt-driven, bank switching 
timesharing software; supports 
North Star DOS and BASIC and 
PASCAL. 



A complete selection of business applica- 
tion software is available for North Star* 
systems. 

Write or call for descriptive literature. 

Micro Mike's, Incorporated 

905 South Buchanan * Amarillo, Texas 79101 * USA 
(806) 372-3633 



FREE Catalog 

New 4-way relief from problems with 
minicomputer supplies and accessories. 



1. One-stop shopping. 

I nmac (formerly known as 
Minicomputer Accessories 
Corporation) has a catalog 
of over 1000 products. Every 
thing from racks and line- 
printer paper to connectors 
and cables. Each designed 
to help keep your minicom 
puter or word processing 
system up and running. 

2. Hassle-free ordering. 

I nmac lets you order by — 
mail or phone. So keep our new 
Fall 79 catalog close. It makes those once-tough tasks 
like ordering magnetic media easy, fast and foolproof. 

3. Fast shipment of just the quantity you need. 

I nmac ships your order within 36 hours from centers in 
California and New Jersey. In a bind? Call us for many 
special services that insure you get your order to your 
installation within 24 hours. Call now and give us a chance 

4. Field-proven quality means precision performance. 

I nmac guarantees every product in these 70 pages for 
at least 45 days. And even some for up to ten years. 

Send for your FREE 
I nmac catalog or call 
(408) 727-1970 today! 




Inrnac 



UinktunpulrtAcrrtfoiitt Cotponli 



2465 Augustine Drive, P.O. Box 4780, Santa Clara, CA 95051 
© 1979 International Minicomputer Accessories Corporation 



NO FRILLS! NO GIMMICKS! JUST GREAT 

DISCOUNTS 

MAIL ORDER ONLY 


HAZELTINE 

1400 


$679.00 

995.00 

1495.00 

.954.00 
995.00 


DIGITAL SYSTEMS 

Computer $4345.00 

Double Density 
Dual Drive 2433.00 

IMSAI 

VDP 80/1000 $5895.00 

Wr)P44 419^ no 


1500 


Mod 1 


CENTRONICS 

779-1 .... 


779-2 


700-2 

761 KSR tractor .... 
703 tractor 

MicroPrinter 


.1350.00 

1595.00 

2195.00 

395.00 

1629.00 
1339.00 
1999.00 
1599.00 
. 589.00 

995.00 


16K Memory assem.. . 399.00 
PCS 80/15 679.00 


15% oft on all other Imsai products 

DEC 

LA34 1149.00 

CROMEMCO 

System III $1000 off . . 4990.00 

10% off on all other 
Cromemco products 

TEXAS INSTRUMENTS 

810 Printer . 1595.00 


NORTHSTAR 

Horizon 1 assembled. 

kit 

Horizon II assembled. 

kit 

Disk System 

TELETYPE 

Mod 43 





Most items in stock for immediate delivery. Factory-fresh, sealed cartons. 

DATA DISCOUNT CENTER p.o.boxioo 

135-53 Northern Blvd., Flushing, New York 11354, 212/465-6609 

N.Y.S. residents add appropriate Sales Tax. Shipping FOB N.Y 
I BankAmericard, Master Charge add 3%. COD orders require 25% deposit 



Circle 179 on inquiry card. 



Circle 91 on inquiry card. 



BYTE October 1979 



235 



information on LISP-like 
languages. 

1. Quest Electronics 

2. 2322 Walsh Ave, Santa 
Clara CA 95051 

5. Questdata 

6. William Haslacher 

7. (408)988-1640 

8. $12 per year 

9. Monthly newsletter for 
1802 microprocessor 
users. 

1. HEX Users Group 

2. 36012 Military Rd S, 
Auburn WA 98002 

3. None 

4. None 

5. Irregular, 3 to 4 issues 
per year. 

6. Charles C Worstell 

7. (206) 927-6038 

8. $4 

9. Devoted to systems 
without American Stan- 
dard Code for Informa- 
tion Interchange (ASCII) 
keyboard (mostly 6800 
D2) 

1. 80-Northwest Publishing 
Co 

2. POB 7112, Tacoma WA 
98407 



5. The 80-U5 Journal (bi- 
monthly) 

6. Mike Schmidt, Editor 

7. (206) 759-9642 

8. $16 per year (US) 

9. The Journal is devoted 
entirely to the TRS-80 
microcomputer system. It 
covers all aspects in- 
cluding business, scien- 
tific, educational, 
tutorials, hardware and 



games. 
10. In less than 1 year, the 
Journal has gone interna- 
tional. It also pioneered 
the use of animated 
graphics with sound on 
the TRS-80. It gave birth 
to ANDY (Android Nim) 
and others, and introduc- 
ed advanced "string 
packing" techniques. 



Foreign Clubs and Newsletters 



1. MICOM (The Microcom- 
puter Club of Melbourne) 

2. MICOM, POB 60, 
Cantebury, Victoria 3126 
AUSTRALIA 

3. AMRA Hall, Wills St, 
Glen Iris 

4. Third Saturday of the 
month. 

5. Newsletter (monthly); 
magazine (quarterly). 

6. Andrew Stewart, 
Secretary 

7. (03) 277-1613 

8. $7.50 per year 

9. None; we try to interest 
all microcomputer en- 
thusiasts. 

lO.Membership: 120-plus. 



1. Australian 9900 Users 
Group 

2. GPO Box 835, 
Melbourne, Victoria 3001 
AUSTRALIA 

3. None - correspondence 
only 

5. None - direct contact 

6. Barry Day 

7. (03) 661-2523 

8. None 

9. Anything and everything 
to do with the 9900 or 
associated devices. 

lO.We are by necessity a 
correspondence group 
and are now in touch 
with groups in the USA 
and the United Kingdom. 



We will always answer 
all correspondence 
promptly and would be 
glad to make new con- 
tacts in both hardware 
and software fields. 

1. COM-3 

2. POB 268, Niddrie, Vic- 
toria 3042 AUSTRALIA 

5. COM-3 

6. Timothy Mowchanuk, 
Editor 

7. Work (03) 336-1855 
Home (03) 379-6812 

8. $10 (in Australia), $15 
(Foreign - surface mail), 
$25 (Foreign - airmail). 
All checks in Australian 
dollars. Make check 
payable to: C.E.G.V. 

9. Educational uses of com- 
puters. 

1. Brazilian Microcomputer 
Club, and TRS-80 Users 
Group 

2. Attention: Douglas 
Gilson, Rua Sambaiba, 
No. 516, Leblon, Rio de 
Janeiro BRAZIL 

3. Same as above 

4. Weekly 

5. None 

6. Douglas Gilson 



68 MICRO JOURNAL- * 



* 
* 




THE 



ONLY 
6800/09 

USER-ORIENTE0 
MAGAZINE 



Months ahead of all others with 
6800/09 articles & new products 

Crunchers Corner — Bryant (A monthly programming 
tutorial) * Flex M to BFD — Puckett * Tiny Music — 
Thompson * Semiconductor, Part 1 — Kinzer * Soup Up 
YourTVT — Pass * Hints & Kinks —fixes (soft & hard) * 
50 pages plus Each Month! 



Crunchers Corner — Bryant * A Look at 
the SWTPC CT-82 - Ferguson * 6800 
Relative Branch Calculation (Hand) — 
Berenbon * Relative Calculator (Machine) 
— Heatherington * Maillist (Disk) — Lilly * 
Modems — Schuman * Semiconductor - 
Part 2 — Kinzer * Locate — Pigford * A20 
MA, Printer-SWTPC - Perdue * AS-50 
Monitor Board — Pentecost * TSC Basic 
for 6800 — Shirk * Plus Much-Much More! 



Crunchers Corner — Bryant * A 
Case for the Small DOS — Mauch 

* MF-68 Motor Fix — Sorrels * 
Transfer (FLEX 1 to 2 or 5) - 
Womack * 6800 Delay — Beren- 
bon * Make Like a 6809 — Fein- 
tuch * Games (Basic) — Harmon 

* Boot (Flex-BFD) - Puckett * 
Freeze Display (SSB) —Johnson 

* Paper Tape Reader — Adams * 
FLEX™ Fixes and Much More! 



MAGAZINE COMPARISON 

(2 years) 

Monthly Averages 

6800 Articles 



KB 

7.8 



TOTAL 
PAGES- 



BYTE CC DOBB'S 

6.4 2.7 2.2 19.1 ea. mo. 

Average cost for all four each month: $5.88 
(Based on advertised 1-year subscription price) 

68' cost per month; $1.21 

That's Right! Much. Much More 

for About 

1/5 the Cost! 

EFFECTIVE SEPT. 1, 1979 

1-Year S14 50 2 Years S26.00. 3 Years S36.50 

OK. PLEASE ENTER MY SUBSCRIPTION 
Bill My: Master Charge Q— VISA f 

Card = Exp. Date _ . 

For □ 1-Year rj 2 Years Q 3 Years 

Enclosed: $ 

Name „ 

Street 

City State __ 



_Zip_ 



My Computer Is;. 



68 MICRO JOURNAL 

3018 Hamill Road 
HIXSON, TN 37343 

FOREIGN ADD: 
$9.50 Per Yr. Surface 
$29.00 Per Yr. Air Mail 



• MORE 6800 ARTICLES THAN ALL OTHERS COMBINED* 



236 October 1979 © BYTE Publications Inc 



Circle 337 on inquiry card. 



Circle 109 on inquiry card. 



Circle 332 on inquiry card. 




YOU'VE READ THEM ALL- 
NOW GET THE BEST! 

The 80-US Journal 

A PUBLICATION FORTRS-80 

USERS - COVERS ALL TRS-80 

CAPABILITY! 



BI-MONTHLY, SEND $16.00 CHECK OR 
MONEY ORDER FOR A 1 YEAR 
SUBSCRIPTION TO: 
80 US 

PO Box 71 12 
TACOMA, WA. 98407 

MASTER CHARGE, VISA OK - (206) 475-2219 

WANT TO CHECK IT OUT FIRST? SEND $3.00 

for current sample -copy. 

A SELECT CHOICE OF SOFTWARE IS AVAILABLE 



ED SMITH'S SOFTWARE WORKS 
NEW 

6809 SOFTWARE TOOLS 



CROSSMAC A 6800 TO 6809 CROSS ASSEMBLER version of RRMAC 
which runs on your 6800 to produce relocatable 6809 object code from ex- 
isting (6800) or new (6809) source files. Handles deleted 6800 instructions 
via macros. Supplied with 6809 machine language linking loader. 

M68CX $200.00 

RRMAC RELOCATABLE RECURSIVE MACROASSEMBLER and LINKING 
LOADER for 6809. The one macro assembler with real macro capabilities. 
Retains all features of 6800 version. 

M69RR $150.00 

M6809 RELOCATABLE DISASSEMBLER AND SEGMENTED SOURCE 
TEXT GENERATOR. An invaluable tool for modifying large object pro- 
grams for reassembly on your system. 

M69RS $50.00 

M6809 RELOCATING ASSEMBLER and LINKING LOADER is a version of 
RRMAC without its macro capabilities. Retains all of RRMAC's program- 
mer convenience features. 

M69AS $75.00 

All programs come complete with Programmer's Guide and extensively 
commented assembly listing. Available on cassette or mini-floppy. Specify 
cassette, SSB disk, mini-Flex disk or FLEX 2.0 disk. 

Order directly by check or MC/Visa. California residents add 6% sales tax. Customers 
outside of U.S. or Canada add $5 for air postage & handling. 

Dealer inquiries welcome. FLEX is a trademark of TSC 



Ed Smith's SOFTWARE WORKS 

P.O. Box 339, Redondo Beach, CA 90277, (213) 373-3350 



FINALLY! 

SECURITY FOR 

CP/M FILES! 

With LOCKER© and 

CSPOOL!© 

LOCKER© 

Rewrites disk files in scrambled format with a 64 
character "lock code". Added parity for Self-Correcting! 

CSPOOL© 

Transfers CP/M files to/from cassette tape! 

Mail to: INFINITY MICRO 
P.O. BOX 4627 
SANTA CLARA, CA 95050 
(408) 988-1867 

□ LOCKER® $38 

D CSPOOL for Sorcerer @ $38 

D CSPOOL for Sol/CUTS @ $38 

Please specify disk as CP/M on 8" IBM standard or 5 1 A" 
Micropolis. 



ADDRESS . 
CITY 



-STATE 



Copyright© 1979 Infinity Micro. 



theULTIMATE in 
CHEAP VIDEO 

BOOK & KIT 
ONLY $42.95 




Don Lancaster's "Cheap Video "concept allows almost 
unlimited options, including: 

* Scrolling- Full performance cursor. 

* Line/Character formats of 16/32, 24/80, 32/64.... 
or almost anything. 

* Graphics -up to 256 X 256 B&W; 96 X 128 COLOR 

C requires low-cost option modules) 

tt Works with 6502 , 6800 and other micros. 

SPECIAL OFFER: Buy the Kit (upper case alpha- 
numeric option included ) & get the Book at 1/2 price. 

, ELECTRONICS, DEPTH) -B, 1020 W. WILSHIRE BLVD.. OKLAHOMA CITY. OK 73116 



I'm Sold, PLEASE RUSH C ) SEND FREE CATALOG 

C ) TVT-65/8 Kit & Cheap Video Cookbook - $42.95 (enclosed) 
C ) TVT-6 5/s Kit only Cbook required for assembly) -$39.95 



address:, 
city: 



, zip: 



ELECTRONICS DEPTH) B, 1020 W. WILSHIRE BLVO.. OKLAHOMA CITY. OK 73116 



Circle 178 on inquiry card. 



Circle 297 on inquiry card. 



BYTE October 1979 237 



Circle 133 on inquiry card. 



Belais' Master Index to Computer Programs 
in BASIC Gives You Access to $14,836.14 
Worth of Computer Programs for Just $7.95! 

Now Available Off -T he-Shelf 



You paid hundreds or even thousands of dollars 
for your new microcomputer. By now it may be 
dawning on you that a S1.000 computer with no 
software isjusl S1.000 worth of scrap melal 1 

But computer programs cost money. In a recent 
survey of 1,984 computer programs offered for 
sale in the top three home computer magazines. 
the average price was found to beS27.94. What a 
rip-off 

You don't need to spend hundreds of dollars to 
get a complete library of programs for your com- 
puter. That is, you don't if you have Belais' Master 
Index lo Computer Programs in BASIC. 

Belais' Master Index gives reviews of 531 pro- 
grams that have appeared in 10 major home 
computer magazines— programs that you can 
type into your computer for free 1 

This large 8 1/2 x 11. 192-page directory is 
packed with information. This is not just a simple 
listing of article titles, but a complete reference 
work 1 

Each BMI review is complete— it has everything 
you need to know about a program, A brief index 
line capsulizes the review for quick reference. 
Source information shows you wherethe program 
can be found. Any updates or corrections are 
shown so you know the program is accurate and 
complete. The text of the review gives you a full 
description of what the program does. In addition, 
the review gives detailed technical information 
about what hardware and software the program 
needs. Everything you need to know is right at 
your fingertips 1 

We don't provide the program listings them- 
selves, of course. But we do tell you where you 
can pick them up— even ones that appeared in 
print years ago. 

You don't have to be a programming wizard to 
use Belais' Master Index. That's because BMI lists 
only finished, ready-to-run programs in BASIC. 
the easy-to-use language enjoyed by millions. 

Even if you're a master programmer, you'll 
appreciate Belais' Master Index. Why slave away 
hours, days, or even weeks writing a program 



when someone else has probably already done 
the work for you 9 These programs are working, 
documented, and ready-to-go. 

Programs like: Circuit Design. Psychoanalysis. 
PASCAL Compiler. Forrester's World Simulation. 
and Color T. V. Tester. Never again will you have 
trouble answering that question. "But what are 
home computers good for'?" 

Then again, there's always MONEY. Maybe you 
haven't thought of all the ways your "fun" com- 
puter could turn out a little of the green stuff for 
you. Maybe you haven't— but a lot of other people 
have, and they've written up their ideas for you 
to use. Belais' Master Index lists dozens of pro- 
grams that you can use to set up your own business. 

If you already have a business. Belais' Master 
Index has the programs to turn your home com- 
puter into a full-fledged business system. General 
ledger, billing, payroll, mailing lists, word proces- 
sing—no matter what type of business you have, 
Belais' Master Index has the programs you need. 

All this and save S2.00. too 1 The cover price of 
Belais' Master Index to Computer Programs in 
BASIC s $9.95 But because you're buying by mail, 
we don't have to pay a commission to a bookstore 
So we're going to pass the savings along to you. 
Order now and you can get your copy of Belais' 
Master Index for just S7.95' 

To order, write your name, address, and the 
words "Belais' Master Index " on a piece of paper 
Make out your check for S7.95 plus $1 shipping 
(Calif, residents add 54c sales tax). 

If you want to use your VISA or Master Charge 
card, give the total for your order, your account 
number, the expiration date of your card, and your 
signature. 

Send your order to Falcon Publishing. 
Oept. X. 140 Riverside Ave. P.O. Box 688. Ben 
Lomond. CA 95005. 

We absolutely guarantee you'll find Belais' 
Master Index one of the most useful books on your 
shelf. If you're not completely satisfied, return it 
to us within 30 days and we'll refund every cent 
you paid. You can't lose, so order NOW.' 



DISKDRIVES 

40 tracks, 2 sides 
with power supply & case 
VERBATIM DISKETTES 
DYSAN DISKETTES 



TRS 80 PERIPHERALS 

$320 16k MEMORY KITS $70.00 
for TRS-80, APPLE. SORCERER 

w/jumpers and instructions 
LIFETIME GUARANTEE!!!!! 



$3.00 

$4.60 



PRINTERS from 
CENTRONICS. INTREGAL 
DATA. NEC SPINWRITER. 
TEXAS INSTRUMENTS. 
ALL AT GREAT SAVINGS!! 



$379 



TRS-80 computers in stock!! 
We also carry APPLE. SORCERER. PET. SD SALES products. WE WILL NOT BE UNDERSOLD. 



GAMES 



TRS-80 SOFTWARE 

UTILITIES 



BUSINESS 



ANDROID NIM $14.00 

nim robots that wink and respond. 
Excellent graphics and sound. 

STAR TREK III $14.00 

Travel through the galaxy on the 
Enterprise and destroy kilingons. 
New updated version. 

AIR RAID $14.00 

Real time shooting gallery. 

SARGON:CHESS $19.00 

Best chess for TRS-80 

LIBRARY 100 $49.00 

100 games, utilities, and business 
programs in one package. 
Great value! 



NEWDDS+ $99.00 

Enhanced DOS. Contains many 
improvements over TRSDOS. 7 
useful utilities built in. For 40 
track use also. 

NEWDOS $49.00 

Same as above without utilities. 
SYSTEM INTEGRATION TEST 

$29.00 

tests memory, disk drives, and 

printer. 

MICROSOFT FORTRAN$325.00 

CPM $150.00 

RENUMBER $14.00 

disk $17.00 

G2 LEVEL III $49.00 

FOUTHbyMSS $35.00 



GL, AR. AP. INTERACTIVE$350 

reports include unbilled invoices, 
open/closed accounts, ageing. Trial 
balance, income statement, 
balance sheet. Handles 200 
accounts, 1750 transactions. 
Based on Osborne method. Stand- 
alone of each $125 

INVENTORY II $99.00 

activity listing, complete listing, 
selected listing, minimum quantity 
search, 1000 items per disk 
ALL ABOVE PROGRAMS 
BY SBSG 

ELECTRIC PENCIL . . . $99.00 
by Michael Shrayer 

disk $ 1 50.00 

BEST word processor For the 
TRS-80 



The above list is just a brief summary of some of our most popular software. We have a large selection of other 
software for many uses and for many computers. Documentation for any of our programs is available on re- 
quest. If you have any questions, please call. We would like to hear from you. 

TO ORDER, CALL OR WRITE: 

MIDWEST COMPUTER PERIPHERALS 

1467 S. MICHIGAN AV. 

CHICAGO, IL. 60605 

(312)251-5028 



FALL SPECIAL 

10% Discount on 

all Software orders 

over $100 







VISA* 





C.O.D. 



* TRS-80 is a Registered Trademark of Tandy Corp. 



7. 274-0308, 274-2439 

8. None 

9. We receive 
manufacturer's news, 
software publisher's 
news, exchange pro- 
grams, and exchange 
ideas. 

lO.Most of our club's 
members have the 
TRS-80, but we are open 
to anyone who has a 
microcomputer. 

1. The Ottawa Computer 
Group 

2. POB 13218, Kanata, On- 
tario, CANADA K2K- 
1X4 

3. National Research Coun- 
cil, Sussex Dr, Ottawa 

4. General meeting second 
Monday of each month 

5. OCG Newsletter 

6. Don Sharkey, President 

7. (613) 824-0909, (613) 
992-6858 

8. $10 (Canadian) for first 
full year $5 (Canadian) 
for renewals 

9. Active local user groups 
for most popular systems 
and processors. We have 
a locally designed and 
produced central pro- 
cessor board and ex- 
pansion boards - The 
Mimic System. There 
also is an active Mimic 
users group. 

lO.Currently we are 

cooperating with the Na- 
tional Museum of Science 
and Technology in estab- 
lishing a computer 
display. Weekly seminars 
or discussions are held 
for specific areas such as 
hardware, software and 
technical topics. Member- 
ship is approaching 250, 
monthly meetings are at- 
tended by an average of 
110 members and guests. 

1. Association of Computer 
Experimentors (ACE) 

2. 102 McCrany St, 
Oakville, Ontario, 
CANADA L6H 1H6 

3. Hamilton, Ontario 

4. Monthly (September to 
May) 

5. IPSO FACTO 

6. Bernie Murphy 

8. $15 per year in Canada; 
$18 per year elsewhere 

9. Microcomputers based on 
the 1802 microprocessor. 
Our members have 



various types of machines 
(ELF, VIP, Tektron, etc), 
and are involved in both 
hardware and software 
experimentation. 

1. Toronto Region Associa- 
tion of Computer En- 
thusiasts 

2. POB 6922, Postal Station 
A, Toronto, Ontario 
CANADA M5W 1X6 

3. Ontario Science Centre 
and Humber College 

4. Meetings are every 
second Sunday of month 
at 2 PM in the Ontario 
Science Centre and every 
fourth Friday at 7:30 PM 
at Humber College 

5. TRACE 

6. Ross Cooling 

7. (416)488-3314 

8. $13 

1. Vancouver PET Users 
Group 

2. POB 35353 Station E, 
Vancouver, BC 
CANADA 

3. 404 East 51st Ave (Sunset 
Community Center) 

5. Vancouver PET News 

6. Niels Hansen-Trip 

7. (604) 274-2064 

8. $20 per year including 
newsletter. Nonmember 
newsletter is $1 per issue. 

9. Support for the Com- 
modore PET 2001 com- 
puter and every other 
conceivable computer 
device. 

10. Meetings consist of 

presentations, demonstra- 
tions, and program 
swaps. 

1. Kitchener - Waterloo 
Microcomputer Club 

2. E2-3354 - Reading Room, 
Electrical Engineering 
Dept, University of 
Waterloo, Waterloo, On- 
tario CANADA N2L 3G1 

3. Room 3388 Building Eng 
4 University of Waterloo 

4. First Wednesday of the 
month 

5. None 

6. Roger Sanderson 

7. Home 885-2122, Work 
885-1211 Ext 3815 

8. None 

9. All areas of microcom- 
puting, especially hard- 



1. North London Hobby 
Computer Club 



238 October 1979 © BYTE Publications Inc 



Circle 235 on inquiry card. 



Circle 18 on inquiry card. 

ram y 

A specially designed SF TACTICAL BATTLE GAME for 
your PET, TRS-80 or APPLE Computer. 

The man called Sudden Smith watched the five blips on 
his screen spread out to meet the enemy. Two freighters 
converted into something like battlewagons, powerful 
but slow, and three real cruisers: the most powerful group 
of warships ever seen near the Promethean system — except 
for the Stellar Union fleet opposing them. Everyone was 
calling it Starfleet Orion, though it existed for only this 
day. It was life or death, and, after the object lesson on 
the planet Spring, everyone knew it. 

STARFLEET ORION is a complete 2 player game system 

• rule book • battle manual • cassette 

• ship control sheets • program listings 

Includes 2 programs, 22 space ship types, and 12 playtested 
scenarios. Game mechanics are extremely simple, but play 
is exciting, challenging, and rich in detail. Specify PET (8K), 
TRS-80 (Level II, 16K), or APPLE II (16K& 32K) $19.95. 

Ask your local dealer or send your check to: 

Automated Simulations 
Department Y 
P.O. Box 4232 
Mountain View, CA. 94040 

California residents please add 6% sales tax 



Circle 93 on inquiry card. 



25 START-AT-HOME 
COMPUTER BUSINESSES 

In "Low Capital, Startup 
Computer Businesses" 

CONSULTING • PROGRAMMING • MICRO COMPUTER 
OPPORTUNITIES • SOFTWARE PACKAGES • FREELANCE 
WRITING • SEMINARS • TAPE/DISC CLEANING • FIELD 
SERVICE • SYSTEMS HOUSES • LEASING • SUPPLIES • 
PUBLISHING • HARDWARE DISTRIBUTORS • SALES 



AGENCIES • USED COMPUTERS • 
SCRAP COMPONENTS • AND MORE . . 

Plus — ideas on moonlighting, going 
full-time, image building, revenue 
building, bidding, contracts, marketing, 
professionalism, and more. No career 
tool like it. Order no w— if not completely 
satisfied, return within 30 days for full 
immediate refund. 

• 8V2 x 11 ringbound • 156 pp. • $20.00 
Phone Orders 901-761-9090 



FINDER'S FEES • 

, tew e*^, startup 




DATASEARCH 

incorporated 
4954 William Arnold Road, Dept. B, Memphis, TN 38117 
Rush my copy of "Low Capital Startup Computer Businesses" at $20. 

NAME/COMPANY 

ADDRESS 

CITY/STATE/ZIP 

D Check Enclosed □ VISA □ Master Charge 
ft Exp. Date 



r 



TERMINALS 
FROM TRANSNET 



PURCHASE 
FULL OWNERSHIP AND LEASE PLANS 

PURCHASE PER MONTH 

DESCRIPTION PRICE 12 MOS. 24 MOS. 



A 



36 MOS. 



LA36 DECwriter II S1 ,595 S 152 S 83 S 56 

LA34 DECwriter IV 1,295 124 67 45 

LA120 DECwriter III, KSR . . . . 2.295 219 120 80 

LA180 DECprinter I, R0 2,095 200 109 74 

VT100 CRT DECscope 1,895 181 99 66 

VT132 CRT DECscope 2,295 220 119 80 



DT80-1 CRT Terminal 1 ,795 172 



93 



63 



TI745 Portable Terminal 1 ,875 179 98 66 

TI765 Bubble Memory Term. . 2,795 267 145 98 

TI810 R0 Printer 1,895 181 99 66 

TI820 KSR Printer 2,395 229 125 84 



ADM3A CRT Terminal 



875 



84 



46 



31 



QUME Letter Quality KSR 3,195 306 166 112 

QUME Letter Quality R0 2,795 268 145 98 



HAZELTINE 1410 CRT 895 86 47 32 

HAZELTINE 1500 CRT 1,195 115 62 42 

HAZELTINE 1 552 CRT 1,495 1 43 78 52 



Dataproducts 2230 



7,900 755 410 277 



DATAMATE Mini Floppy 1 ,750 1 67 



91 



61 



>, 



FULL OWNERSHIP AFTER 12 OR 24 MONTHS 
10% PURCHASE OPTION AFTER 36 MONTHS 



ACCESSORIES AND PERIPHERAL EQUIPMENT^ 

ACOUSTIC COUPLERS • MODEMS • THERMAL PAPER 
RIBBONS • INTERFACE MODULES • FLOPPY DISK UNITS 



PROMPT DELIVERY • EFFICIENT SERVICE 



■ rahsNet Corpora tion 

2005 ROUTE 22, UNION, N.J. 07083 

201-688-7800 



J 



CATCH THE 

S-100INC. 

BUS! 






Imsai "8080" Kit complete 
w/Front Panel 

S-100's Three Ring Binder 
w/Ten Vinyl Jackets for 5 1 A 
Mini Floppies (Holds 
Twenty Diskettes Plus 
Directory Pocket) 

Shugart SA400 5 1 /4" Disk 
Drive 

Intertec's "Intertube" 

Thinker Toys 8" Add On Drive 

Imsai MPU-A Kit 



OUR 
LIST SPECIAL 

PRICE CASH 

PRICE 



750.00 625.00 



13.00 7.00 

450.00 295.00 

995.00 779.00 

795.00 675.00 

190.00 95.00 



We carry all major lines such as 

S.D. Systems. Cromemco. SSM, Vector Graphic. North Star. Sanyo. ECT. TEI, 

Godbout, Thinker Toys, Hazeltine, IMC 

For a special cash price telephone us. 

Subject to Available Quantities • Prices Quoted Include Cash Discounts. 
Shipping & Insurance Extra. 

bus ...S-IQQ,inc. 

Address 7 White Place 

Clark, N.J. 07066 
Interface 201-382-1318 



Circle 366 on inquiry card. 



Circle 316 on inquiry card. 



BYTE October 1979 



239 



2. c/o D.E.C.E. Polytechnic 
of North London, 
Holloway Rd, London 
N78DB ENGLAND 

3. Polytechnic 

5. Gigo (bimonthly) 

6. Robin Bradbeer 

7. 01-607-2789 

8. £10 (1978/9) 

9. Homebrew workshop; 
PET users group; games 
workshop; business users 
workshop; and Nascom 
workshop. 

10. Regular courses on pro- 
gramming, digital elec- 
tronics etc run by 
Polytechnic of North 
London for the NLHCC. 
£5 per course per 
member. 

1. Japan Microcomputer 
Club 

2. Kikaishinko-kaikan, 
JEIDA 5-5-8, Shiba-koen, 
Minato-ku, Tokyo 
JAPAN 

3. Tokyo 

5. Microcomputer Magazine 
(monthly), Microcom- 
puter Circular (monthly), 
Microcomputer News 
(English version, un- 
periodically), Micro- 
computer Handbook (an- 
nually) 

6. Koji Yada 

7. 0424-61-2141 

8. Y3000 subscription, 
Y6000 dues, Y4800 for 
students 

9. Microcomputer contest 
(twice a year); microcom- 
puter seminar (20-30 
times a year); and a Sun- 
day school. 

lO.The main language is 
Japanese. We have about 
2500 members in our 7 
branches in Japan. 



1. Microtel-Club 

2. 9 rue Huysmans, 75006, 
Paris FRANCE 544 70 
23 

5. Yes 

8. $35 per year 

9. The club's aim is to 
develop the interest of 
the French population in 
the microcomputer and 
telecommunications 
areas. We strive to give 
our members the oppor- 
tunity to use and com- 
pare microcomputers. We 
support the most in- 
teresting projects of the 
club's users and promote 
exchanges among them. 

1. Microcomputer Club 

2. fte de Quijote #5, MEX- 
ICO 10, D.F. 

6. Alfredo Buzali 

7. 5-89-22-79 between 7 and 
8 PM 

9. Primarily concerned with 
the Apple II and Ohio 
Scientific products. 

1. Hobby Computer Club 

2. Christinastraat 171, 5 615 
RK Eindhoven, NETHER- 
LANDS 

3. At 12 places throughout 
Belgium and the 
Netherlands. 

4. Meetings are held at least 
monthly depending on 
the organizer. 

5. Hobby Computer Club 
Nieuwsbrief (Dutch) 

6. Erik Visser, Secretary 

7. Netherlands 040-514017 

8. 15 guilders for 1979, will 
increase for 1980 (225 
Belgian franc) 

9. No special favor for any 
computer or 
microprocessor. The 
main goal of the HCC is 



to increase contacts bet- 
ween computer amateurs, 
to exchange ideas and ex- 
periences. 
10. Our A5-sized bimonthly 
Nieuwsbrief will be a 
full-sized monthly in 
1980. Once a year we 
organize the HCC Day 
with a complete exhibi- 
tion and a program of 
readings. Our yearly 
members list shows 
which computer is used 
and each member's ap- 
plications. The HCC now 
has over 2300 members 
in Belgium and the Neth- 
erlands. 

1. Singapore Microcomputer 
Society 

2. 43K, Ponggol Rd, Singa- 
pore, 19, REPUBLIC OF 
SINGAPORE 

6. Jack Page 

7. 4680944 

8. $25 per year 

9. To develop and en- 
courage by all ap- 
propriate means the 
wider understanding and 
general use of microcom- 
puters and related 
systems in new and pro- 
ductive applications. 

1. Transvaal Amateur Com- 
puter Club 

2. POB 6639, Johannesburg, 
SOUTH AFRICA 

3. University of the Wit- 
watersrand, Johannesburg 

4. First Wednesday of every 
month, excluding January 

5. Newsletter published 
monthly 

6. Angus Anderson, Peter 
Hers 

7. 784-3532 and 793-1576, 
respectively 



8. R10-00 per year, no en- 
trance fee 

9. All aspects of small com- 
puters. 

10.TAC 2 was formed in July 
1977. Paid membership is 
now 210. Club members 
have developed and built 
their own machine, based 
on Motorola 6800 pro- 
cessor with their own 
42-pin bus. 

1. Central Program Ex- 
change (CPE) 

2. Department of Com- 
puting and Mathematical 
Sciences, The Polytech- 
nic, Wulfruna St, 
Wolverhampton WVI 1LY 
UNITED KINGDOM 

5. Program Exchange 

6. Dr G Beech, Project 
Director 

7. 0902 27371 Ext 159 

8. Annual subscription 
United Kingdom and 
Europe £25. Overseas £40 

9. New category of 
membership to encourage 
schools and other small 
users. Small user 
subscription is £10 per 
year and £20 overseas. 
CPE has published a 
booklet of computer pro- 
grams suitable for use in 
schools: Computer Re- 
sources for Education 
and Training - Schools 
Education price £3.50 per 
copy. 

10. Our library contains 
about 300 programs in 
various subject areas. ■ 



0, 



c PET ANALOG INPUT 

Analog to Digital Conversion System for the Commodore PET Computer 



L5JIA 



Give the PET the ability to sense* 
measurer and control the world around 
it. with HAM SYSTEMS modules. Just. plu«3 
the PETSET1 int.o the PET to «=fet 16 
channels of analog input. Screw 
terminals are provided for each channel 
so uou can hook up .JoystieKs* pots» or 
whatever appropriate sensors you have. 

Each of the 16 analog inputs* in 
the ranSe of to 5.12 volts* is 
converted to a decimal number between 
and 255 < 20 millivolt. s F-er count,). 
Conversion time is 100 mieroseonds. 

I n ad dition* the PETriOD provides 
two IEEE ports and one user port, as 
well as a DAM SYSTEMS port,. 

Software is provided. A one line 
program is all that, is necessary to 
read a channel . 




] -i- r*N*M*Hj[] 



TEMPEAATURE 

VELOCITY 

MESSUHE 



• ACCELERATION 
■ HUMIDITY 

• LIOHT LEVEL 
» FUI10 LEVEL 



1-AIM161 
1 - PETMOO 
1* CABLE A24 
1 - MANMOD1 
1-POW1 



PETSET1 

16 ANALOG INPUTS-8 8ITS-100 MICROSEC 



24 INCH INTERCONNECT CABLE 



POWER MODULE 



JX - 

^ \ TftS-80 MOD 

TflS-80 INTERFACE 



r cpib 1 r hs- 

L mod J L m 



PETSETia for 110 VAC $295 
PETSET1* for 230 VAC $305 

Ordtr diract or contact your local computer iton. 

CONNECTICUT microCOMPUTER , Inc. 

750 POCONO ROAD 

BROOKFIELD, CONNECTICUT 06804 

TEL: (203) 775-9659 TWX: 71 0-456-0052 

VISA AND M/C ACCEPTED - SEND ACCOUNT NUMBER, EXPIRATION DATE AND SIGN ORDER. 

ADD $3 PER ORDER FOR SHIPPING a HANDLING - FOREIGN ORDERS ADD 10% FOR AIR POSTAGE. 



240 October 1979 © BYTE Publications Inc 



Circle 76 on inquiry card. 



Circle 13 on inquiry card. 



Circle 177 on inquiry card. 




MAIL ADDRESS 
P.O. BOX 2528 
ORANGE, CA 92669 



STORE 

2231 WEST BALL ROAD 

ANAHEIM, CA 92804 



■¥■ NORTH STAR •¥■ RADIO SHACK "¥■ APPLE II #■ 



NEED BUSINESS SOFTWARE FOR YOUR NORTH STAR OR TRS-80 
TRY OUR INTEGRATED BUSINESS SYSTEM FOR ONLY $250.00. YOU 
GET ALL OF THE FOLLOWING SYSTEMS COMBINED INTO ONE NEAT 
PACKAGE : 

Accounts Receivable 
M V « I J Accounts Payable 
m "*Jjji Al A General Ledger 
■ I II, ! f Payroll 

(V 1 yfj / Inventory & Sales Analysis 

' V * " * * . Business Statistics 
Letter Writer 

<XS«On •XShQh •^"♦SW «X3»S%» «^m(5N> v*3*t<B>n vOwSKi vOt<©w <X®MSV v©»S>h •^•O.j w($"®v 

DO YOU NEED A HEAVY DUTY WORD PROCESSOR WRITTEN IN 
BASIC FOR EITHER YOUR NORTH STAR OR TRS-80? EMULATES THE 
EDIT FEATURES OF THE COMPUTER YOU ARE RUNNING IT ON. FULL 
LINE-BY-LINE OR CHARACTER-BY-CHARACTER EDITING. YOU CAN 
REPEAT, RELOCATE OR ALTER TEXT WITH EASE, TAB CONTROL, RIGHT 
OR LEFT JUSTIFICATION, CENTERING AND MANY MORE OPTIONS. OUR 
PRICE FOR THIS GREAT SYSTEM IS ONLY $99.00. 



TRS-80 USERS TRY OUR NEW SECRETARIAL PACKAGE: WORD 
PROCESSING - PERIODICAL INDEX - CALENDAR GENERATOR WITH A 
BUILT IN APPOINTMENT REMINDER - A SIGN AND BANNER GENERATOR. 
ALL THIS FOR $150.00. 

«*€3>«€>n uO»(s>u t^fSw£>o <&*«?>» <XSti£KJ <y©M(s>^ v*5«*£K> v<S»»ffK> <*<®MGM vfS*SK> '&**&» vG)MGh> 

APPLE I I USERS TRY OUR NEW ACCOUNTS RECEIVABLE PACK 
FOR ONLY $50.00. OR TRY OUR NEW STUDENT TESTING SYSTEM 
FOR ONLY $35.00. THE STUDENT TESTING SYSTEM MAKES TAKING 
NOTES FUN. SEND FOR OUR CATALOG WITH OVER 100 SYSTEMS FOR 
ANY ONE OF YOUR PERSONAL OR BUSINESS NEEDS. 



IF IN ANAHEIM, CA. , SEE OUR NEW STORE AT 
2 231 WEST BALL ROAD. PHONE ORDERS O.K. B of A 
AND MASTERCHARGE ACCEPTED. VIE MAY ALSO BE 
ABLE TO SATISFY YOUR CUSTOM PROGRAMMING NEEDS, 
GIVE US A CALL. 



JUST DROP IN AT OUR STORE the 2 3rd Century or 
ORDER BY PHONE. 



03 



A JA SOFTWARE 
[714) 774-1270 




Main/Frames $200 



Main/Frames ,„ m $200 



» 14 Basic Models Available 

► Assembled & Tested 
» Power Supply: 

8v@15A, ± 16v@3A 
» 15 Slot Motherboard ^ 

(connectors optional) \ 
* Card cage & guides 

► Fan, line cord, fuse, power 
& reset switches, EMI filter 

» 8v@30A, ± 16v@10A 
option on some models 



r Rack 
mounted 
from $200 



8" Floppy Main/Frame 
(includes power for drives 
and mainframe) from $365 



Write or call for our 
brochure which includes our 

application note: 
'Building Cheap Computers' 

INTEGRAND 

8474 Ave. 296 • Visalia, CA 93277 • (209) 733-9288 
We accept BankAmericard/Visa and MasterCharge 




BASEX 
MEANS SPEED! 
BASEX is a fast, easy to learn 
language for 8080, Z80, or 
8085 microcomputers. Its 
commands resemble BASIC, 
making translation easy. An 
interactive compiler permits 
you to enter, list, edit and run programs up to 10x faster than 
similar BASIC programs and use half the memory (2K plus pro- 
gram). 
Powerful features include: 

* Array variables 

* 16 Bit Arithmetic/Logic 

* Variable name length 

* Named subroutines with 
multiple arguments 



* Text strings 

* Versatile I/O Functions 

* Block memory searches/ 
transfers 

* Custom commands easily 

added 
CHOOSE YOUR BASEX. . . 
97-Page BASEX manual (pub. by Byte Books) 
North Star Disk/Meca Alpha Tape/Paper Tape 
TRS-80 Level II, 16K tape with graphics commands 
CPM 8" Disk, with disk handler commands 
Basex Tape & Disk Guide-provides complete handlers 

for North Star Disk and/or Meca Tape 

(includes manual with source) 
Add $ .75 shipping (special 4th class) or $1.50 special 

handling on all orders. 

See BASEX at your local dealer or order direct from 



$ 8 
$25 
$25 
$35 



$35 



w 



i(Si 



Interactive Microware, Inc. 

P.O. Box 771 

State College, Pa 16801 

(814)238-8294 



DEALER 

INQUIRIES 

INVITED 



t 



At last. . . 
the mechanical interface 

Turn your electric typewriter into a low 
cost, high quality hard copy printer. 



\ 



30 Day Delivery 

User list 
$439 00 

Dealer Inquiries 
Invited. 



Now available with 
interfaces for most 
personal computers: 
TRS-80, Apple, GPIB, etc. 




The all new 

I/O Pak from 

Rochester Data, 

Inc. interfaces the keyboard 

of any commercially available 

electric typewriter with any 

computer. The result: low cost, high 

quality hard copy. 

Write today for more information. 



Incorporated 
\^ 3100 Monroe Avenue, Rochester, New York 14618 



Circle 182 on inquiry card. 



Circle 325 on inquiry card. 



BYTE October 1979 241 



Practical Microcomputer 
Programming: 
The Intel 8080 

by W] Weller, 

A V Shatzel, and H Y Nice 

Northern Technology Books 

POB 62, Evanston, IL 1976 

306 pages hardcover 

6V2 by 9 l A inches 

$23. 95 

Practical Microcomputer 

Programming: 

The M6800 

by W ] Weller 

Northern Technology Books 

POB 62, Evanston, IL 1977 

288 pages hardcover, 

6V2 by 9 l A inches 

$23.95 

Practical Microcomputer 
Programming: The Z80 

by W ] Weller 

Northern Technology Books 

POB 62, Evanston, IL 1978 

481 pages hardcover, 

6V2 by 9 l A inches 

$32.95 



Book Reviews 



Practical Microcomputer 
Programming is a series of 
books begun in 1976 and 
masterminded by Walter 
Weller. Mr Weller is an 
applications software consul- 
tant specializing in the 
industrial, medical, and 
educational uses of small 
computers, and is the 
founder of Northern 
Technology Books, the 
publishers of this series. 

It is quite obvious that Mr 
Weller has a natural feel for 
how to present such 
technical material. Each 
book is presented in lucid, 
readable terminology, and 
the layout is carefully 
designed to treat each topic 
separately and completely. 
This gives the reader not 
only a tutorial workbook to 
learn more about the art of 
assembly language program- 
ming, but also an excellent 



THE. 



7 flF V 



DATA PRIVACY FOR TRS-80 ! 



FEATURES: KEY LENGTH =80 bits (more than DES!) 
o<s DATA RATE: Exceeds 15,000 chars./sec. 



Pocket-size encryption device 
Plugs into TRS-80 ready to use 



IS YOUR DATA SECURE ? 



Write for brochure & price list. 



•Tt^cr 



VISA" 



master charge 



R O. Box 425 
Pt). Northgate Sta. 

Seattle, WA 98125 



CORPORATION 



(206) 364-8585 



reference text which will be 
used time and again in 
preparing new projects. 

The objective of the series 
is to directly address the dif- 
ficulties of microcomputer 
application programming in 
assembly language as simply 
as possible. Although many 
programmers see little need 
to get embroiled in the com- 
plexities of an assembly 
language when a higher level 
language such as BASIC is 
available, there are indeed 
many applications in which 
a program in assembly 
language is desirable. In 
some applications it is 
absolutely necessary. Two 
important considerations in 
choosing to use an assembly 
language are necessary 
memory restrictions and 
speed. 

First, recall that this series 
was begun in 1976. At that 
time most programmers 
doing work on microcom- 
puters did not have the 
amount of memory thought 
of as common today. 
Presently programmers think 
nothing of talking about 
64 K byte 1 systems, and 
while such a large amount of 
memory is still not cheap, 
nonetheless it is within the 
realm of affordability, or at 
least will be in the very near 
future. In 1976, however, it 
was rare to think in terms of 
more than 4 K bytes of 
memory; consequently, get- 
ting a program to execute 
with the least amount of 
memory was paramount. A 
high-level language was a 
luxury few could afford. 
Therefore, in 1976 minimum 
memory requirements were 
quite important. But what 
about now, when a 64 K 
byte chip is within the 
foreseeable future? 

Obviously there are still 
many times when a mini- 
mum amount of memory 
should be used. There are 
many industrial applications 
which* still require strict con- 
servation of available 
memory. Today there is 



hardly a major home 
appliance or piece of office 
equipment that does not 
have a microprocessor 
controlling it, and it cer- 
tainly is not cost effective to 
provide each of these 
machines with the 16 or 
32 K bytes of memory 
necessary to support pro- 
gramming them in a high- 
level language. But there is 
one other consideration for 
using assembly language: 
speed. 

Speed is one of the major 
reasons that assembly 
language programming 
retains strong adherents. 
Assembly language pro- 
gramming is necessary to 
handle various tasks such as 
interfacing software, input 
and output handlers, and 
real-time controllers, 
because the electronics 
involved keeps getting 
faster. Assembly language 
programming is often a must 
for the transfer of data be- 
tween any of several devices 
at a rate consistent with the 
speeds at which these de- 
vices operate. 

There is another good 
reason for wanting to learn 
assembly language program- 
ming. There isn't an exact 
term to describe it, but 
words like fun, self-ful- 
filling, and fascinating par- 
tially describe the feeling 
one has after mastering 
assembly language program- 
ming. It lets you into that 
mystical world of the system 
programmer, it allows you 
to become intimate with the 
most inner workings of your 
computer, it lets you feel in 
total control of the 
sometimes awesome power 
the computer engenders. All 
in all, the individual 
becomes a more effective, 
confident, and efficient pro- 
grammer. 

What has all this to do 
with this series of books? It 
is Walter Weller's contention 
that learning to program in 
an assembly language should 
be a painless, rewarding 



242 October 1979 © BYTE Publications Inc Circle 88 on inquiry card. 



experience. There is nothing 
inherently intimidating 
about assembly languages, 
yet they have acquired a 
reputation guaranteed to 
frighten the novice pro- 
grammer. It was apparently 
Mr Weller's goal from the 
beginning to present the 
fundamental concepts of 
assembly language program- 
ming in a completely non- 
threatening way. He has 
accomplished this goal better 
than any other author to 
date. 

Each book of this series is 
a completely self-contained 
guide to the assembly 
language of a particular 
microprocessor. Each is 
packed with examples of 
assembly language routines 
which perform real functions 
useful to the novice pro- 
grammer. These routines not 
only supply the reader with 
instant software for a 
variety of applications, but 
also abundantly illustrate 
the usefulness of assembly 
language programming. I 
found each book of the 
series to be logically de- 
signed, including chapters 
detailing one particular area 
of assembly language pro- 
grams, appendices with 
source listings of significant 
software, and a comprehen- 
sive index making it easier 
to use the books as reference 
texts. 

These books are not 
exhaustive discussions of the 
programming characteristics 
of a particular micro- 
processor, nor do they 
represent complete details on 
all possible assembly 
language programming tech- 
niques. What these books 
do represent is a suitable 
cross-section of techniques 
that will aid the novice 
assembly language program- 
mer in sharpening skills, 
while serving as an excellent 
reference resource for the 
experienced programmer. As 
for the particular 
microprocessor each book 
covers, the discussion is 
specific and to the point, 
not theoretical or general. 

One final comment on the 
series as a whole before 
discussing particular details 
of each book: every line of 
code printed in each book 



has been checked and 
rechecked, right up to the 
moment before the book is 
actually printed. This helps 
eliminate annoying typeset- 
ting errors in the listings. 
While this does not abso- 
lutely guarantee the correct- 
ness of the examples or pro- 
grams listed, it certainly 
goes much further in doing 
so than most publishers care 
to pursue. This represents a 
tremendous plus to the 
reader. 

The Intel 8080 is the first 
book of the series, published 
in 1976. Although the 8080 
is one of the older micro- 
processors on the market, 
there are several manufac- 
turers (including Heath 
Company and Compucolor 
Corp) still basing their 
systems on this chip. In 
other words, this book still 
applies to a large number of 
machines currently 
available. 

There are over 80 example 
programs used to illustrate 
the solutions to common 
problems facing the 
assembly language applica- 
tions programmer. These ex- 
amples are practical as well 
as explanatory and can often 
be used directly to form 
parts of applications pro- 
grams. 

The authors cover a lot of 
territory in the 18 chapters, 
3 appendices, and index of 
this book. They naturally 
begin with binary arithmetic 
and logical (AND, OR, 
NOT) operations, bringing 
the programmer familiar 
with high-level languages, 
but not assembly language 
"down'' to the proper level 
of thinking. Next, a defini- 
tion of what constitutes 
memory and how it is 
accessed in a microcomputer 
is covered, which gives the 
novice assembly language 
programmer a basic idea of 
where things are located 
inside the machine. 

After the preliminaries are 
out of the way, the authors 
describe the parts of an 
assembly language program, 
such as labels and operands. 
Also discussed are assem- 
blers, cross-assemblers, and 
loaders. 

Chapter 4 begins the de- 
tailed descriptions of 8080 



instructions, including mov- 
ing data, binary arithmetic, 
software multiplication and 
division, and using the stack 
pointer. Chapter 8 then 
employs what has been 
learned so far to construct a 
number of commonly 
required subroutines. 

Next, binary-to-decimal 
and decimal-to-binary con- 
versions are covered, allow- 
ing the programmer to for- 
mat input and output, 
which is the subject of the 
next chapters: communi- 
cating with a terminal, and 
controlling a printer. Other 
types of communication to 
the physical world, such as 
digital and analog output, 
are also discussed. 

Chapters 16 and 17 cover 
a topic usually omitted from 
a programming guide, inter- 
rupt-driven processes. First, 
the concept of a real-time 
clock and its uses are dis- 
cussed, then the necessary 
considerations of real-time 
input and output are de- 
tailed. While the novice pro- 
grammer may not be able to 
use the information in these 



2 chapters immediately, the 
authors clearly show that 
progressing to that level is 
not that difficult, and the 
added flexibility of being 
able to take real-time events 
into account is of great 
benefit to the assembly 
language programmer. 

The final chapter discusses 
many helpful ways to debug 
assembly language pro- 
grams, the bane of many a 
programmer. Techniques 
here are illustrated using the 
authors' own debugging pro- 
gram, a tool serious pro- 
grammers can not afford to 
be without. It allows inspec- 
tion and modification of 
memory, single-step execu- 
tion via breakpoints, and 
many other handy techni- 
ques. The authors have 
included the source code of 
this program in the book, 
which is a real bonus. 

In addition to the debug 
program listing in the 
appendices, the authors 
have also included the 
source listings of the cross- 
assembler and loader used 
on the Computer Automa- 



rUlMGSARfT 

KEYED FILE 
MANAGEMENT SYSTEM 

Sophisticated applications made simple. 

Put data at your fingertips. . .easily accessed, displayed, and 
updated by key. MAGSAM™ allows your CBASIC programs to 
create and access sophisticated keyed file structures through 
simple CBASIC statements. 
Powerful, affordable, and easy to use. 

MAGSAM™ is now available in three versions offering an array of 
features and capabilities. Standard MAGSAM 7- features include 
random by key, sequential by key, generic by key, randomly by 
record number, and physical sequential access techniques. Each 
MAGSAM™ Package incudes the MAGSAM™ file manager, tutorial 
program, file dump utility. User Guide. Reference Card, and one 
year update service. 

• MAGSAM™ — Most advanced version. Secondary Indexing with 
any number of keys, and Record and Key Deletion with automatic 
reuse of freed space S145f 

• MAGSAM II™ — Single Key support with full Record and Key 
Delete capability S99f 

• MAGSAM I™ — Entry level version. Single Key support without 
Delete functions S75| 

• MAGSAM™ User Guide only — comprehensive tutorial and 
reference manual $15 

Available for 8" soft sector, Micropolis, and TRS-80 disk formats. 

Requires CP/M* or derivative and CBASIC. Distributed as CBASIC 

subroutines in source form. 

Visa and Masterchagre welcome. Dealer and OEM inquiries 

invited. 



fUlME 



micro Applications Group 

7300CALDUS AVENUE 
VAN NUYS, CA 91406 



' Trademark of Digital Research, t Single site license 



Circle 211 on inquiry card. October 1979 © BYTE Publications Inc 243 



tion LSI/2 to produce object 
code for the 8080. This 
assembler will assemble all 
hardware instructions de- 
tailed in Intel's document 
#98-004C Rev C, 8080 
Assembly Language Pro- 
gramming Manual, plus 
"certain compound and 
pseudo instructions." What 
this means is that, 
throughout the text, the 
authors have chosen to use 
different mnemonics for cer- 
tain instructions, "for 
clarity." An example is 
ReSet Carry (RSC) instead 
of ORA A. The authors' in- 
tentions are certainly appre- 
ciated, but it is unclear 
whether or not this offers an 
advantage to the program- 
mer just learning 8080 
assembly code, especially if 
he or she has access to an 
assembler which uses Intel 
mnemonics. Certainly it is 
easier to remember that RSC 
means reset carry (as 
opposed to ORA A), but is 
it realistic to assume that the 
reader will be in a position 
to take advantage of the 
improvement? 

Only a few of the dozens 
of mnemonics were 
"improved," so hand 
translation is not difficult. 
The authors have been 
careful to identify which 
ones were changed, and the 
comprehensive index makes 
locating references in the 
text simple. 

Once author Weller had 



put together a winning com- 
bination of information, he 
knew not to tamper with 
success. The M6800 and Z80 
books have essentially the 
same information that the 
8080 book does, but natural- 
ly there are specific dif- 
ferences for these micropro- 
cessors. There are a few dif- 
ferences in the conclusions, 
such as chapters on floating 
point arithmetic in the 
M6800 and Z80 books, and 
graphic output in the Z80 
book, but by and large, 
each book covers the same 
general territory. In essence, 
then, Weller has written the 
same book 3 times. This cer- 
tainly has its advantages, 
because now it is easy to 
compare the performance 
and instruction character- 
istics of these 3 
microprocessors. 

In the M6800 book, 
Weller again provided a 
listing for a debugging pro- 
gram as part of the appen- 
dices. As in the 8080 book, 
a number of the instruction 
mnemonics as defined by 
Motorola were found not 
suitable, and so Weller made 
a few substitutions of his 
own mnemonics (for ex- 
ample, DATA instead of 
FCB). As long as the reader 
is aware that this is hap- 
pening (which the author 
points out in the preface), 
he or she will not have any 
trouble following the discus- 



Weller's Z80 book turned 
out to be a more ambitious 
project, however. It includes 
a complete description and 
source code listing of an 
assembler of Weller's own 
design, in addition to the by 
now anticipated debugging 
monitor. These programs 
are available in paper tape 
or TRS-80 cassette form 
from the publisher, free of 
charge with the return of the 
coupon from the book. 

In the Z80 book, Weller 
also chose to go his own 
way with the assembly 
language mnemonics, even 
more so than with the 
M6800 and 8080 instruction 
sets. Essentially, he felt 
that Zilog did a great disser- 
vice to 8080 owners by com- 
pletely redefining the 
mnemonics of their chip, 
even though a great part of 
the instruction set is exactly 
the same as that of the 8080. 
In actuality, the Z80 
instruction set is an extended 
8080 instruction set, except 
that Zilog used a different 
set of mnemonics for the 
instructions the Z80 has in 
common with the 8080. 

All this means is that 
those who are experienced 
in 8080 assembly language 
are forced to learn an entire- 
ly new set of mnemonics for 
the Z80, even though the 
actual execution of the 
instructions would be exact- 
ly the same as before. 
Weller perceived this as an 



injustice to 8080 users; that 
being the case, his assembler 
merely extends the 8080 
instruction set to include the 
full use of Z80 instructions. 
This approach will obvious- 
ly alienate some Z80 users, 
but no doubt will please 
those upgrading from an 
8080 based system to a Z80. 
The author also provides a 
complete table which 
translates the mnemonics he 
uses in his assembler and 
debugger to the Zilog 
mnemonics. I prefer not to 
take sides in this matter, but 
I can't help but admire 
Weller for taking a stand for 
simplicity. 

Practical Microcomputer 
Programming is a very 
powerful series. It is well 
written and full of essential 
techniques for the assembly 
language programmer. The 
final question is: "what is 
next for Walter Weller?" 
The author intends to con- 
tinue the format used for the 
Z80 book and provide a 
complete assembler for the 
6502. He is hard at work on 
this assembler, and hopes to 
publish the book around the 
beginning of 1980. At long 
last 6502 users will have a 
definitive resource for this 
much neglected micro- 
processor. I am sure that the 
book will be well worth the 



wait. I 



Blaise W Liffick 

Senior Book Editor 

Byte Publications 



•* OurI. st AnniversaryC0111pUterSale 

? Thtt f*QM™ 16K $995 Jm I —i 



Cassette Recorder free 



The CBM 

Expand to 32K for an additional $1 49 

Dual floppy disk drive 2040 w/cable $1295 

Single floppy disk drive $895 

Pin feed printer 2023 $849 

Tractor feed printer 2022 w/cable $995 
Inventory management software - requires 

16K system w/dua! floppy and printer $125 
Text editor software - requires 16K 

system w/ dual floppy and printer $125 

All sales cash. No COD's. 3Vz% service charge on CHECKS, 

VISA AND MASTERCHARGE. 

Sale ends December 15, 1979. NO REFUNDS. 

Add 2% for shipping and handling. California residents add 6% 

sales tax. 

Allow 2 weeks forcashiers check to clear, 4 weeks for personal 

checks. Prices subject to 




apple h 



$1195 



$1195 



Apple II 16K 

Buy an Applesoft Card for only $35 

Apple II Plus 16K 
Buy an Integer Card for only $35 
16K Expansion Memory $95* 

PASCAL Language System $459 

15% OFF on all Apple software and interface 
boards. All merchandise is factory warranteed. 
*$10.00 Installation charge is required. 



CCM$* 



15818 Hawthorne Blvd. 
Lawndale,CA 90260 



s check to clear, 4 weeks for personal ^^^^V^^^^V ■ r^^l# .-**....—.«,— 

change without notice. ^^^ ^^^ 9 UCt Jf (21 3) 370-4842 



244 October 1979 © BYTE Publications Inc 



Circle 55 on inquiry card. 



Circle 217 on inquiry card. 



Circle 288 on inquiry card. 



Pascal / MT 



from 



wleta Tec^v 



aoso / zso 



COMPILER Si SYMBOLIC DEBUG! 
RUNS UNDER CP/M [Si Derivatives] 
Generates Romable Machine Code 
Needs only 32K bytes 
Output is 1DX faster than P-code 
Efficently compiles a subset of 
Standard Pascal 



Available for ALL CP/M Systems 

$99.95 



Options include: real/business arithmetic 
multi tasking, interrupt procedures, etc. 



Call/Write 



Dealer Inquiries 
Invited 



Meta Tech 

330Q Midway Drive 

Suite 2Q3 

San Diego, CA 9211 

[71-4] 223-5566 X2B3 



yOU DION T KNOW! 



OAE'S new PP-2708/16 
PROM Programmer is the 
only programmer with all 
these features: 

• Converts a PROM memory 
socket to a table top pro- 
grammer: No complex inter- 
facing to wire— just plug it 
into a 2708 memory socket* 

• A short subroutine sends 
data over the address lines 
to program the PROM 

• Programs 2 PROMS for less 
than the cost of a personal- 

i ity module. (2708s and TMS 
2716s) 

• Connect 2 or more in paral- 
lel — super for production 
programming 

• Complete with DC to DC 
switching invertor and 10 



^*Pat's Pending 



turn cermet trimmers (for 
precision pulse width and 
amplitude alignment) 

• All packaged in a handsome 
aluminum case 

PP-2708/16 ..A & T$325. 

PP-2716 (Programs Intel's 
2716) A & T $295. 

OAE 

Oliver Advanced Engineering, Inc. 

676 West Wilson Avenue 

Glendale, Calif. 91203 

(213) 240-0080 



f 


^ 


rJt^^jt, 


A Message 


to our Subscribers 


From time to time we make 


information of interest to 


the BYTE subscriber list 


them in the mail. Used are 


available to other companies 


our subscribers' names and 


who wish to send our 


addresses only (no other 


subscribers promotional 


information we may have is 


material about their products. 


ever given). 


We take great care to screen 




these companies, choosing 


While we believe the 


only those who are reputable, 


distribution of this 


and whose products, services, 


information is of benefit to 


or information we feel would 


our subscribers, we firmly 


be of interest to you. Direct 


respect the wishes of any 


mail is an efficient medium 


subscriber who does not want 


for presenting the latest 


to receive such promotional 


personal computer goods and 


literature. Should you wish to i 


services to our subscribers. 


restrict the use of your name, 




simply send your request to 


Many BYTE subscribers 


BYTE Publications Inc, Attn: 


appreciate this controlled 


Circulation Department, 


use of our mailing list, and 


70 Main St, Peterborough NH 


look forward to finding 


03458. Thank you. 


^ 


1 



PET WORD PROCESSOR 




This program permits composing and printing letters, 
flyers, advertisements, manuscripts, etc., using the 
COMMODORE PET and a printer. 
Script directives include line length, left margin, cen- 
tering, and skip. Edit commands allow the user to 
insert lines, delete lines, move lines and paragraphs, 
change strings, save onto cassette, load from cassette, 
move up, move down, print and type. 
The CmC Word Processor Program addresses an RS- 
232 printer through a CmC printer adapter. 
The CmC Word Processor program is available for 
$29.50. Add $1.00 for postage and handling per order. 

Order direct or contact your local computer store. 



^™0 

CONNECTICUT microCOMPUTER 

150 POCONO ROAD 

BROOKFIELD, CONNECTICUT 06804 

(203) 775-9659 

TLX: 7104560052 



m m 



Circle 76 on inquiry card. 



BYTE October 1979 



245 



Ppogpsrotning Ouickies 



An ASCII 
String Program 

William Comer, 419 Blackman St, Lake Charles LA 70605 



Programming long American Standard Code for Infor- 
mation Interchange (ASCII) strings or a large number of 
strings can be a tedious job. The Motorola 6800 program 
in listing 1 simplifies the task by automatically setting up 
the proper hexadecimal codes in the ASCII string. This 
program assumes you are using a 6800 system with the 
Motorola MIKBUG monitor program. You simply type 
in the statements you wa*it printed during execution of a 
machine language program. The starting address of the 
ASCII string is stored in hexadecimal locations A000 and 
A001 (high- and low-order byte respectively) before exe- 
cuting the program. 



Using the Program 

When a point is reached where you want to insert the 
text in your machine language program: 

• Load the program starting at hexadecimal memory 
location 0100. 

• Load the starting address of the ASCII string at 
hexadecimal address A000 and A001. 

• Load the starting address of the program into hexa- 
decimal memory locations A048 and A049 (01 in 
A048, 00 in A049). 

• Start the program by typing G. 

• Type in the statements exactly as you want them 
printed. 

• Return to MIKBUG control by hitting the reset 
button. 



Listing 1: M6800 program to load ASCII characters into memory using MIKBUG and MP-C Interface. 





Hexadecimal 










Address 


Code 




Label 


OpCode 


Operand 


Commentary 


0100 


CE 


80 


04 


START 


LDX 


#PIAD 




0103 


A6 


00 




IN1 


LDAA 


o,x 


Look for start bit. 


0105 


2B 


FC 






BM1 


IN1 




0107 


6F 


02 






CLR 


2,X 


Set counter for V2 bit. 


0109 


8D 


28 






BSR 


DE 


Start timer. 


010B 


8D 


22 






BSR 


DEL 


Delay Vz bit time. 


010D 


C6 


04 






LDAB 


#4 


Set delay full bit time. 


010F 


E7 


02 






STAB 


2, X 




0111 


58 








ASLB 




Set up counter with 8. 


0112 


8D 


1B 




IN3 


BSR 


DEL 


Wait 1 character time. 


0114 


0D 








SEC 




Mark commentary line. 


0115 


69 


00 






ROL 


0, X 


Get bit into CFF. 


0117 


46 








RORA 




CFF to AR. 


0118 


5A 








DECB 






0119 


26 


F7 






BNE 


IN3 




01 1B 


8D 


12 






BSR 


DEL 


Wait for stop bit. 


01 1D 


84 


7F 






ANDA 


#57 F 


Reset parity bit. 


01 1F 


81 


7F 






CMPA 


#$'F 




0121 


27 


E0 






BEQ 


IN1 


If rubout, get next character. 


0123 


FE 


A0 


00 




LDX 


ASSA 


ASCII string start address. 


0126 


A7 


00 






STAA 


o r x 




0128 


08 






INX 








0129 


FF 


A0 


00 




STX 


ASSA 




012C 


7E 


01 


00 




JMP 


START 




012F 


6D 


02 




DEL 


TST 


2, X 


Is time up? 


0131 


2A 


FC 






BPL 


DEL 




0133 


6C 


02 




DE 


INC 


2, X 


Reset timer. 


0135 


6A 


02 






DEC 


2,X 




0137 


39 








RTS 







Listing 2: To print an ASCII string during a machine language program, insert these 2 instructions into the program. 



Hexadecimal 
Code 

CE XX XX 

BD E0 7E 



Op Code Operand Commentary 

LDX # String Memory location. 

XXXX is the starting address of 

the ASCII string, 
JSR PDATA 1 MIKBUG subroutine to print 
on ASCII string. 



246 October 1979 © BYTE Publications lnc 



Circle 314 on inquiry card. 



Circle 321 on inquiry card. 



SORCERER* 
SOFTWARE! 



FOUR PROGRAMS ON CASSETTES 

FASTGAMMON™ by Bob Christiansen. Thousands of people are already playing FAST- 
GAMMON on TRS-80 and Apple. Now it is ready for SORCERER, with the sharpest graphics 
ever! Backgammon players love this machine language program that provides a skillful 
opponent. Eight-page instruction manual includes rules of backgammon. $19.95 

PLOT by Vic Tolomei. Now Apple owners will be envious of how easy you can get good 
graphics on yourSORCERER. PLOT includes both a super high resolution mode and a quick 
low resolution mode. Both are accessible from your BASIC programs using simple com- 
mands. Hi-res & lo-res examples included on tape. $14.95 

Z-80 DISASSEMBLER by Vic Tolomei. Decode machine language programs, including 
SORCERER'S monitor and ROM-PACs, with this Z-80 Disassembler written in BASIC. In- 
struction mode prints out machine code and Zilog mnemonics in standard format. Or use 
the ASCII mode which converts machine code to ASCII. $14.95 

MAGICMAZE™ by Vic Tolomei. A challenging maze game. Ten levels of play. Holding your 
lantern, you wander through a maze trying to stay on the right path and avoid pitfalls. 
Automatic scoring tells you how good a pathfinder you are. $11.95 



SOFTWARE INTERNALS MANUAL FOR THESORCERERbyVicTolomei.Amustfor 

anyone writing software for the SORCERER. Seven chapters: Intro to Machine 
Language, Devices & Ports, The Monitor, Cassette Interface, BASIC structure, 
Video & Graphics, The Keyboard. Indexed. Includes diagrams and software rou- 
tines. 64 pages. $14.95 




QUTILITy SOFTWTIRe 

6660 Reseda Blvd., Suite 103, Reseda, CA. 91335 
Telephone 24 hours, seven days a week: (213) 344-6599 

WHERE TO GET IT: Ask your nearest Sorcerer dealer to see Quality Software's Sorcerer 
programs. Or, if you prefer, you may order directly from us. MasterCharge and Visa card- 
holders may telephone theirorders and we will deduct$1 from orders over$19 to compensate 
for phone charges. Or mail your order to the address above. California residents add 6% sales 
tax. Orders outside North America add $5 for registered airmail, pay in U.S. currency. 
* The name "SORCERER" has been trademarked by Exidy, Inc. 




on ALL Computers, Peripherals, Software, and ALL other fine Radio 
Shack® products. 

Radio /haeK 

Authorized Sales Center 

1 117 CONWAY MISSIONJEXAS 78572 

(512) 581-2765 



vm* 



NO TAXES on out-of-state shipments. 
FREE Surface delivery available in the U.S. 
WARRANTIES will be honored by your local 
Radio Shack® sto.re. 



BYTE 

BACK I&6UE& 

FOR 6ALE 

The following issues are available: 

July, November, 1976; March, May thru December, 

1977; February thru October, December 1978; and all of 

1979. 

Cover price for each issue thru A ugust '77 is $1.50 plus 

251 postage and handling ($3.50 total foreign). 

September '77 thru 79 issues are $2. 00 plus 50$ 

postage and handling 
($4.00 total foreign). 
Send requests 
byJ££1> with 

payment 
to: 

BYTE 

Publications 
70 Main St. 
Peterborough 
NH 
03458 




Attn: 
Back Issues 



THE BRAND NEW 

EXCEL TX-80 

DOT MATRIX PRINTER 

*560 00 




ONLY 



STANDARD FEATURES: 

• 80 columns on plain paper with adjustable paper width 

• 150 characters per second (70 lines per minute) throughput; 

• Friction feed standard, tractor feed at $25 more 

• 96 character set (upper and lower case) plus PET's* 
graphic set 

• Elongated character (double width printing) 

• Microprocessor control and self-test when power up 

• Centronics compatible parallel interface 

• 90 days warranty parts and labor 

OPTIONAL INTERFACE BOARDS & CABLE SETS: 

• PET*, APPLE II*, TRS-80* and serial interface board available 
at $60 each 

• All our interface boards reside inside the printer and does 
not require extra power supply 

• Cable for each interface is available at extra cost 



SEND ORDERS TO: 

P. O. Box 1147 

El Cerrito, Calif. 94530 

Phone: (415) 465-4240 

TERMS: 

• Checks, Master Charge 
and Visa accepted • Allow 
up to 4 weeks for delivery 

• Please add $15 per 
printer for shipping & 
handling • Calif, residents 
add 6% sales tax. 



EXCEL COMPANY 

MICRO COMPUTER SYSTEMS 

618 GRAND AVENUE 
OAKLAND, CALIF. 94610 

We are the original PET* Keyboard 
Interface people 

'Trade Marks of Commodore, Apple & Tandy Corp. 



Circle 131 on inquiry card. 



BYTE October 1979 



247 






Circle 12 on inquiry card. 



Tremendous Savings 
on Refurbished A J 
Couplers/Modems 

Your chance to buy the best from the world leader in 
data communications. We have a variety of couplers 
and modems — formerly on lease to our customers 
— fully refurbished. This is a rare opportunity for you 
to have the same models used by the largest compa- 
nies in the world. 

• Some models under $100! 

• 30-day parts/labor warranty 

• Nationwide AJ service network 

• Fast delivery 

• Variety of models — up to 1200 baud 

• Limited quantities 

• Use your Visa or Master Charge 

Act now. First come, first served. Write Anderson 
Jacobson, Inc., 521 Charcot Ave., San Jose, CA 
95131. Or call your nearest AJ office: 

San Jose, CA Rosemont, IL Hackensack, NJ 
(408) 946-2900 (312) 671-7155 (201) 488-2525 



ANDERSON 
JACOBSON 



MICRO-AMERICA 



has it in stock!! 



• COMMODORE • 


8K PET 


$ 795 


16K PET 


$ 995 


32K PET 


$1295 


2040 DISKS 


$1295 


2022 PRINTER 




(Tractor) 


$ 995 


2023 PRINTER 




(Friction) 


$ 8499 




FAST, OFF THE SHELF DELIVERY ON: 

• COMMODORE PETS & Peripherals 

• TEXAS INSTRUMENTS 99/4 Personal Computer 

• CENTRONICS Printers 

• HP-41C 

• Accessories 

For Prices, Information or Phone Orders, Call: 

(617) 879-8709 

To Order by Mail, Send a Check or Money Order to: 

MICRO-AMERICA 

P. O. Box 894 
Framingham, Mass. 01701 



Circle 237 on inquiry card. 



The address in memory locations A000 and A001 is the 
location following the last character in the ASCII string. 
Read this location and insert hexadecimal 04 into the 
memory location listed in hexadecimal A000 and A001. 
This will be used as an end of text marker by a MIKBUG 
routine (PDATAl). 

To output the ASCII string during a machine language 
program, insert the program section shown in listing 2. 
This program saves a lot of time when programming a 
large number of long ASCII strings. It has saved me 
many hours of tedious programming. ■ 



Table of Subroutines 



Peter W Meek, 1788 Miller Ave, Ann Arbor MI 48103 

If you have a subroutine in a program, it is very likely 
you wrote the first line on a nice even number like 5000 
or 10000. Now the program is finished, and it is time to 
neaten it up. You type the RENumber command, but 
where is your subroutine now? 

If you put a table of subroutines at the end of every 
program, as shown below, the renumber command will 
keep track of them for you. 



10 



4999 
5000 



REM 



END 



5900 RETURN 
10000 



10900 RETURN 

20000 

20010 GOTO 5000 

20020 GOTO 10000 

99999 END 



START OF PROGRAM 



REM END OF PROGRAM 

REM START OF SUBROUTINE #1 



REM END OF SUBROUTINE #1 
REM START OF SUBROUTINE #2 



REM END OF SUBROUTINE #2 
REM TABLE OF SUBROUTINES 
REM SUBROUTINE #1 
REM SUBROUTINE #2 



Now the destinations of the GOTOs will be changed 
along with the actual line numbers. A program listing 
will end with a clear statement of where to look for that 
line which seems to have a bug in it. 

Of course, this can be used to keep track of any part of 
a program that you like. ■ 



248 October 1979 © BYTE Publications Inc 



Whate New? 



MISCELLANEOUS 




Sharp Introduces 
Alphanumeric Calculators 




Sharp Electronics Corp has introduced 
two handheld scientific calculators in 
which alphanumeric formulae can be 
entered as written without being 
translated into machine language. The 
most complicated formulae can be 
entered into the machine and displayed, 
and can be visually edited, corrected, or 
tested without going through any 
translation phase. The key to the ver- 
satility of both machines in an exclusive 
"rolling writer" dot matrix liquid crystal 
display which shows numbers, letters 



and symbols. Because the entries roll 
across the liquid crystal display, as 
many as 80 entries can be made. 

The EL-5100 has a 24-character 
display which can enter and store up to 
80 steps, because of the rolling writer 
feature. It has 61 keyed functions, 10 
data memories, and Memory Safe Guard 
to maintain data and programs even 
when the power is off. The EL-5100 ac- 
cepts the input of complicated formulae 
with up to 15 levels of parentheses and 8 
levels of pending operations. Complex 
formulae can be stored as long as need- 
ed. Five formulae, with up to 80 steps, 
can be stored for easy calculations and 
recalled at the touch of a key. Ten 
variables can be stored and used in the 
formulae. 

The EL-5101 has capabilities similar to 
the EL-5100. It has a 16-character 
display which can roll to 80 characters, 
storage up to 48 steps, and six data 
memories. 

Both models are wafer-thin, horizon- 
tally held, weigh just over 5 ounces, and 
come in a brushed metal finish. The 
EL-5100 is priced at $99.95 and the 
EL-5101 is $79.95. For further informa- 
tion, contact Sharp Electronics # Corp, 10 
Keystone PI, Paramus NJ 07652. 
Circle 622 on inquiry card 



Encryption Device Secures 
Data in TRS-80 

CRYPTEXT is a hardware encryption 
device designed to plug directly into the 
back of the Radio Shack TRS-80 Model 
I or into the expansion interface via an 
optional cable. The device allows users 
to secure virtually any data stored on 
cassette tapes or on disks against 
unauthorized access. Used with a 
modem, CRYPTEXT allows data or 
messages to be transmitted by telephone 
or other communication channels in 
complete privacy. Other uses include 
generating pseudorandom numbers for 
games or scientific programs. 

Prior to encoding data, CRYPTEXT 
requires a user to enter a 10-character 
key; each of the 2 80 possible keys results 
in a different and completely incoherent 
version of the data submitted for en- 
cryption. To decode secured data, four 
elements are essential: the encrypted 
data, the CRYPTEXT unit, the software, 
and the correct user-supplied key. The 
lack of any of these elements prevents 
access to the original data. 

The price is less than $300 and in- 
cludes demonstration software and user- 
oriented documentation. Optional cable 
and additional tape or disk software are 
available for a small additional charge. 
For further information, contact 
CRYPTEXT Corp, POB 425 Northgate 
Sta, Seattle VYA 98125. 

Circle 623 on inquiry card 



October 1979 © BYTE Publications Inc 249 



What's New? 



MISCELLANEOUS 




Daisy Printwheels 

These plastic daisy printwheels with 
96 character positions are available from 
AGT Computer Products Inc, 10906 
Rochester Ave, Los Angeles CA 90024. 
They presently offer 27 Qume compati- 
ble and 13 Diablo compatible typestyles, 
including those which are more com- 
monly used. These printwheels have 
rubber buttons with a plastic disk on the 
top for ease of handling. All printwheels 



have a metallized period, extra heavy 
underscore, and reinforced hub and 
spoke stress-points. In addition, 2 IBM 
compatible printwheels in Orator and 
OCR-B typestyles with the flip-top clasp 
for use in the IBM 6240 system are 
available. The company manufactures 
special wheels to order, and will modify 
existing molds in order to accommodate 
special characters or logos. 

Circle 586 on inquiry card. 



Portable Computer System 

Called the MAScot, this complete 
computer system is housed in a portable 
carrying case. The system contains the 
following modular components: a 
5-inch, 7 by 9 dot matrix video display- 
ing all 128 characters of the American 
Standard Code for Information Inter- 
change (ASCII) set, single or dual 5-inch 
floppy disk drives offering 80 to 320 K 
bytes of data storage, 40 or 80 column 
dot matrix printer, 300 or 1200 bits per 
second (bps) modem with built-in 
acoustical coupler, and 8- or 16-bit 
microprocessor featuring up to 1 M 
bytes of programmable memory. The 



carrying case also contains extra storage 
space, and the top cover is removable. 
The design highlights minimum size and 
weight combined with durability. 
MAScot firmware is extended BASIC, 
featuring integrated assembly instruc- 
tions using a high-level incremental com- 
piler. The operating system handles 
multidisk files. 

Depending upon configuration, the 
price ranges from $3999 to $9999. For 
further information, contact Micro 
Application Systems Inc, 4345 Lyndale 
Ave N, Minneapolis MN 55412. 

Circle 587 on inquiry card. 



Microbench 8086 
Software 

A series of computer programs to 
support applications development for 
the Intel 8086 16-bit microprocessor, 
Microbench 8086, has been announced 
by Virtual Systems Inc, 1500 Newell 
Ave #406, Walnut Creek CA 94596. 
These programs operate in conjunction 
with PDP-11 and LSI-11 computers to 
provide an economical program 
development capability for the Intel 
8086. 

Included in Microbench 8086 software 
are a relocating assembler, linking 
loader, librarian, and object file 
formatter. The assembler supports 
extensive macro and conditional 
assembly capabilities, cross reference 
listings, and provides for memory 
addressing beyond 64 K bytes. The 
loader provides linkage facilities, 
selective loading from libraries, and 
directives for specifying read-only and 
programmable memory alignment 
boundaries. 

The object file formatter produces 
binary modules in compatible formats 
for use with programmable read-only 
memory programmers and emulation 
systems. Microbench software is coded 
in Macro-11 for high throughput, and 
operates under RT-11, RSX-llM, RSX- 
11D and RSTS/E operating systems. 
Perpetual license fees start at $1695 
including documentation and first-year 
maintenance. 

Circle 588 on inquiry card. 



Where Do New Products Items 
Come From? 

The information printed in the new 
products pages of BYTE is obtained from 
"new product" or "press release" copy 
sent by the promoters of new products. If 
in our judgement the information might 
be of interest to the personal computing 
experimenters and homebr ewers who 
read BYTE, we print it in some form. We 
openly solicit releases and photos from 
manufacturers and suppliers to this 
marketplace. The information is printed 
more or less as a first in first out queue, 
subject to occasional priority modifica- 
tions. While we would not knowingly 
print untrue or inaccurate data, or data 
from -unreliable companies, our capacity 
to evaluate the products and companies 
appearing in the "What's New? feature is 
necessarily limited. We therefore cannot 
be responsible for product quality or com- 
pany performance. 



250 October 1979 © BYTE Publications Inc 



What's New? 



MISCELLANEOUS 




64 K Byte Microcomputer 
System 

This 2 board microcomputer system 
utilizes DECs LSI 11/2 central process- 
ing unit model KDll-HA with power 
fail and auto restart, 16-bit I/O (in- 
put/output) direct memory access 
(DMA) port, real-time clock input, vec- 
tor interrupt handling, and Chrislin 
Industries' CI-1103 32 K byte by 16 
memory board. The programmable 



memory module has an access time of 
300 ns from synchronous active and the 
cycle time is 525 ns. On-board memory 
select is available in 2 K byte increments 
up to 128 K words. Complete power 
consumption is under 6 W. The memory 
is tested and burned in and warranteed 
for a full year. The single quantity price 
is $1250. For further information, con- 
tact Chrislin Industries, 31312 Via Col- 
inas #102, Westlake Village CA 91361. 
Circle 592 on inquiry card. 



Single-Board 
Microcomputer System 
Designed as 
Learning Aid 




The TM990/189M, a self-contained 



single-board microcomputer system, has 
been announced by Texas Instruments 
Inc. This microcomputer system is 
designed as a completely assembled 
learning aid for hands-on experience, 
plus instruction in microcomputer 
fundamentals, assembly and machine 
language, and microcomputer 
interfacing. 

The board is self-contained with 1 K 
bytes of programmable memory 
(expandable on board to 2 K bytes) and 
4 K bytes read-only memory 
(expandable on board to 6 K bytes). The 
read-only memory contains the system 
monitor (UNIBUG) and a symbolic 
assembler. Mass memory storage can be 
accomplished with the audio cassette 
interface. Built into the TM990/189M is 
a 45 key alphanumeric keyboard and a 
10 digit, 7 segment display. The display 
has a 32 character buffer. It may be 



Single Read-Only Memory 
and I/O Timer 




This read-only memory and I/O 
(input/output) timer can be used with 
the S6802 microprocessor to form a 
complete S6800 microcomputer with 
only 2 integrated circuits. The new 
device will also work with the S6800, 
S6801, S6808, S6809 or the 6500 family 
microprocessors. 

Designated the S6846, the device 
combines 2 K bytes of read-only 
memory, an 8-bit bidirectional data port 
with 2 control lines for a parallel 
interface, a programmable interval timer 
and counter, and programmable 
registers for peripheral I/O data and 
control. The S6846 is the first part in the 
S6800 family to feature an automatic 
hardware power on reset capability. 

The mask programmable device is 
fully compatible with transistor- 
transistor logic as well as with other 
members of the S6800 family. It 
operates from a single +5 V DC power 
supply. Read-only memory code for the 
device can be developed on the AMI 
MDC-100 Microcomputer Development 
Center using 6800 assembly language, 
though specific control software for the 
S6846 must be user developed. 

Contained in a 40-pin dual-in-line 
package, the S6846 is priced at $7 in 
plastic and $8.95 in ceramic. For further 
information, contact American 
Microsystems Inc, 3800 Homestead Rd, 
Santa Clara CA 95051. 

Circle 593 on inquiry card. 



shifted right or left to view any 10 digits 
of the 32 character buffer. Provisions 
are on the board to add an external, 
standard EIA terminal or teletypewriter 
interface. 

Other features of the TM990/189M 
include a series of addressable light- 
emitting diodes (LEDs). Coupled with 
these visual indicators is a piezoelectric 
speaker for audio signals. 

The TM990/189M is priced at $299 
and the optional power supply 
(TM990/519) is $65. For further infor- 
mation, contact Texas Instruments Inc, 
POB 1443 M/S 653, Houston TX 77001. 
Circle 594 on inquiry card. 



October 1979 © BYTE Publications Inc 251 



What's New? 



MISCELLANEOUS 



Microcomputer With Large 
Characters Ideal for 
Instruction 




The EduCALC 189 GD is a 16-bit 
printed circuit board designed specifi- 
cally for instruction. The instructor has 
an onboard 45-key alphanumeric 
keyboard and gets input, output and 
status information from the light- 
emitting diode display. Large characters 
on the other side of the unit repeat this 
display to the audience. 

Assembly-language programming is 
featured with minicomputer instruction 
set; read-only memory resident software 
(including system monitor for program 
debug and symbolic assembler); single 
step execution; cassette interface; EIA 
and Teletype interface; 1 K byte pro- 
grammable memory and 4 K byte read- 
only memory (expandable); 16-bit pro- 
grammable I/O (input/output) con- 
troller and interrupt monitor; 2 MHz 
clock; also software and firmware com- 
patibility with the entire TI 9900 family 
of microprocessors. 

The price of the EduCALC 189 GD is 
$1074 which includes TM 990/189 board 
and power supply, a 570-page tutorial 
text, a 300-page user's guide, and a rigid 
carrying case. There is a one-year 
warranty on the neon display and inter- 
face and a 90-day warranty on the TM 
990/189. Contact Educational Calculator 
Devices Inc, POB 974, Dept 14B, 
Laguna Beach CA 92652. 

Circle 611 on inquiry card. 



Acoustically Coupled 
Modem 

CAT is an acoustic modem which is 
designed to transmit data over all 
telephone lines. It allows one computer 
or terminal to talk to another. Data ex- 
change can occur at any speed up to 30 
characters per second (300 bps). The 
device offers features that include Bell 
103 compatibility; answer, originate, 
and test modes with full and half 
duplex; and light-emitting diodes for 
displaying unit status. Standard on the 
modem are an acoustic self-test and a 
compact power supply that plugs direct- 
ly into wall sockets to reduce heat and 
voltage hazards. For further informa- 
tion, contact Hamilton Avnet Elec- 
tronics, 10950 Washington Blvd, POB 
2647, Culver City CA 90230. 
Circle 618 on inquiry card. 



8085 Microcomputer Card 

The SSM-85/2 is a general-purpose 
single-board applications control com- 
puter measuring 4.5 by 6.5 inches (11.43 
by 16.51 cm). The card features a 4-level 
programmable interrupt; 256 bytes of 
programmable memory; 1 K bytes of 
erasable read-only memory (expandable 
to 2 K bytes); I/O (input/output) con- 
sists of 22 parallel lines with an addi- 
tional 6-bit memory-mapped port; a 
serial EIA level I/O port; a program- 
mable 14-bit binary counter and timer 
which is controlled by the system 3 
MHz crystal and a software-readable 
switch. The processor has an instruction 
cycle time of 1.33 /as and is software 
compatible with the 8080A. 

The SSM-85/2 assembled circuit card 
is priced at $197. For further informa- 
tion, contact System Service, 3627 
Longview Valley Rd, Sherman Oaks CA 
91423. 

Circle 612 on inquiry card. 




Manual Aids TRS-80 Users 
in Utilizing Level II BASIC 
Read-Only Memory 

The Software Technical Manual has 
been written by the technicians at 
Houston Micro-Computer Technologies 
Inc to provide the assembly programmer 
with documentation of the TRS-80 Level 
II BASIC read-only memory entry 
points and provide working examples of 



their use. The manual is for the person 
that understands and programs in Z80 
assembly language and is interested in 
writing fast, computer-oriented pro- 
grams. It is organized in sections which 
emphasize different aspects of computa- 
tion. The Software Technical Manual 
sells for $49.95. The address of the com- 
pany is 5313 Bissonnet, Bellaire TX 
77401. 

Circle 613 on inquiry card. 




High-Quality S-100 
Cabinet 

Designated the Model 2150, this 
industrial-quality electronics cabinet is 
for hobbyists and system designers using 
the S-100 bus. The Model 2150 features 
a split construction design permitting 
rapid, easy access to all components by 
the removal of two screws. Heavy duty, 
22-gauge steel is used throughout. A 
louvered bottom panel and louvered 
sides plus a fan facilitate air flow for 
efficient thermal characteristics. Com- 



ponents are mounted on a separate, 
removable chassis enabling rapid 
troubleshooting. One or two 5-inch disk 
drives are mounted in electrically 
shielded enclosures protecting media 
from spurious noise. A fully shielded 
and terminated 8-slot backplane is 
totally compatible with the S-100 bus. 

The Model 2150 electronics cabinet is 
priced at $795. For further information, 
contact Advanced Computer Equipment 
Inc, 3 Republic Rd, N Billerica MA 
01862. 

Circle 619 on inquiry card. 



252 October 1979 © BYTE Publications Inc 



What's New? 



MISCELLANEOUS 



Video Timer and Con- 
troller Device from Texas 
Instruments 




This single device video timer and 
controller has been announced by Texas 
Instruments Inc, POB 1443 M/S 6404, 
Houston TX 77001. A silicon gate, 
N-channel metal-oxide semiconductor 
(MOS) device, the TMS9927, offered in 
a 40 pin dual-in-line package, generates 
video display timing signals for standard 
and nonstandard video monitors that 
incorporate both interlaced and non- 
interlaced formats. 



The TMS9927 may be used with 
either 8- or 16-bit processors, including 
the TMS9900 family as a memory map- 
ped I/O (input/output) device. It can 
also communicate with the communica- 
tions register unit (CRU) interface of the 
TMS9900 family via the TMS9901 pro- 
grammable systems interface. 

Five sections comprise the new video 
timer and controller: processor interface, 
cursor control, horizontal control, ver- 
tical control, and self-load. The video 
timer and controller provides 9 user pro- 
grammable control registers. Seven reg- 
isters control horizontal and vertical for- 
matting, and 2 control the cursor 
address. 

The architecture of the TMS9927 is 
intended to allow maximum design flex- 
ibility. Most raster scan videos may be 
controlled by the TMS9927 by appro- 
priately programming the control reg- 
isters. The TMS9927 is interchangeable 
with Standard Microsystem Corpora- 
tion's (SMC) CRT 5027. 

Priced in 100 piece quantities, the 
TMS9927 video timer and controller is 
$22.50 in plastic and $27 in ceramic. 
Circle 595 on inquiry card. 




Control System for TRS-80 

Able to sense up to 24 inputs and 
drive 16 medium power outputs, the 
SY- 16 is a plug compatible turnkey 
control system with all software and 
hardware furnished. The 16 output 
devices can be any 6 V or less on/off 
mechanism using less than V* A. Relay 
coils can be driven directly. By selecting 
a 6 V relay with appropriate contacts, 
AC signals and power can be switched, 



and PET Computers 

controlling most equipment originally 
designed for manual operation. 

Input devices can be transistor- 
transistor logic (TTL) gates, or any form 
of switch contacts, including thermo- 
stats, reed switches, microswitches, 
joysticks, keyswitches and numeric 
keypads. The SY-16 can sense open or 
closed conditions. Up to 8 switches can 
be wired for fast operation. A switch 



48 K Byte Dynamic 
Programmable Memory 
Board 






, Suftf 



*P*a 



This 48 K byte dynamic program- 
mable memory board featuring complete 
compatibility with Z80 based S-100 bus 
microcomputer systems has been intro- 
duced by Vector Graphics Inc, 31364 
Via Colinas, Westlake Village CA 
91361. The board incorporates the Z80 
refresh mode for problem free, 
transparent refresh, and consumes less 
than 4 W of total power. Superior 
reliability is ensured because of a low 
parts count and low operating 
temperature. It is also tested with over 
400 million error-free read and write 
cycles before being thermally cycled and 
aged. Fully assembled, the Vector 
Graphic 48 K byte dynamic program- 
mable memory board is priced at $695. 

Circle 596 on inquiry card. 



closure can be captured and held, or 
noisy contacts can be debounced. 

A software timing and control 
program (STAC) allows the user to 
specify and execute complex timing, 
sensing, and control sequences without 
having to program or write programs 
which call STAC as a subroutine. An 
interactive program is also furnished to 
help design sequences and experiment 
with them. 

The SY-16 comes completely 
assembled, tested and ready to plug into 
TRS-80s (model T) or PETs (Model P) 
with software and comprehensive 
instruction manual describing sequence 
design, I/O (input/output) device 
control, STAC operation, and example 
applications for $289. The instruction 
manual is available at $12 and 
refundable upon SY-16 purchase within 
60 days. For further information, 
contact Cooper Computing, POB 16082, 
Clayton MO 63105. 

Circle 597 on inquiry card. 



October 1979 © BYTE Publications Inc 253 



Wtisf % New? 



SOFTWARE 



Apple II Disassembler 







Appletext is a powerful, new, 2-pass 
disassembler for the Apple II microcom- 
puter. This programming tool disassem- 
bles any machine language program 
which resides in the Apple II. The dis- 
assembler creates a text file and assigns 
labels which enable the programmer to 
make them more useful. Initially, the 
label assignments contain the starting 
address of all subroutines. The 
disassembler will be valuable to any 
programmer who wants to rewrite, 
debug, modify, analyze, and understand 
the workings, functions and operation of 
inadequately documented programs for 
which there are no available source 
listings. 

The disassembler is available on cas- 
sette with instructions for $29.95. For 
further information, contact Micro- 
products, 2107 Artesia Blvd, Redondo 
Beach CA 90278. 

Circle 577 on inquiry card. 



Cross-Assembler for 6800s 

The 2-pass Macro Cross-Assembler 
from Hemenway Associates generates re- 
locatable and linkable code. It requires 
the LNKEDT68 which is described 
below. Resident on a 6800 system, 
XA6809 lets the user immediately pro- 
duce code for a 6809. It produces a 
listing, a sorted symbol table, a cross- 
reference list, and relocatable object 
code. This program features fast execu- 
tion, full macro facility, relocation, and 
linking. 

The LNKEDT68 system utility 
manipulates the relocatable file produced 
by the cross-assembler and Hemenway 
Associates' RA6800ML assembler and 



Apple II Tiny Business 
Software 

Tiny Business Inventory Management 
System, Accounts Receivable and 
Accounts Payable for the Apple II off- 
er a realistic approach to the 
capabilities of the Apple II in a Tiny 
Business environment. Each software 
package requires a minimum system, 
configuration of 48 K bytes and 1 disk 
drive and an optimum configuration of 
2 disk drives and floating point firm- 
ware. The Inventory Management 
System supports 820 separate inventory 
items and quantities to assist the user in 
evaluating stock sales. The Accounts 
Payable and Accounts Receivable soft- 
ware handle 150 accounts each. All soft- 
ware packages have password protection 
to allow the user security on sensitive 
portions. 

The Inventory Management System is 
priced at $100, while the Accounts Pay- 
able and Accounts Receivable software 
is $75 each. For further information, 
contact Custom Computing Systems Inc, 
204 2nd Ave N, Saskatoon, Saskat- 
chewan CANADA S7K 2B5. 

Circle 578 on inquiry card. 



All States Payroll System 

A fully user defined, all states payroll 
system has been announced by Payne, 
Jackson, and Associates (PJA), 447 E 
Fifth Ave, Anchorage AK 99501. 
Simultaneous multistate processing of up 
to 4 states is also possible. All standard 
reports with current, month, quarter, 
and year to date amounts, plus a limited 
report generator are included. The 
system supports 3 and in some cases 4 
levels of control to permit the maximum 
in flexibility within a given payroll. The 
standard controls are used for company- 
wide items, while the exception controls 
and override controls are used for 
specific employees. Small and simple 
payrolls are also easily handled. 

The system runs on an Alpha Micro 
and is part of the PJA Accounting 
System which is currently available for 
$500. 

Circle 579 on inquiry card. 



Super BASIC for 6800 
Computers Using PerCom 
5-Inch Floppy Disk 
Systems 




PerCom Data Company has 
announced Super BASIC for 6800 com- 
puters using PerCom's LFD-400 or 
LFD-1000 5-inch floppy disk systems. 
An extended disk BASIC, similar in 
dialect to Southwest Technical Products' 
(SwTPC) 8 K byte BASIC, Super BASIC 
supports 42 commands and 31 functions. 
The program requires 12 K bytes of 
memory. Super BASIC is compatible 
with programs written in SwTPC 8 K 
byte BASIC (versions 2.0, 2.2, and 2.3). 
Besides additional commands and func- 
tions, it includes refinements that reduce 
program run times by 35 to 40 percent. 
Other enhancements include direct ran- 
dom access to disk file data; optional 
use of the question mark in lieu of the 
Print command; 9 digit binary-coded 
decimal (BCD) 

arithmetic; named disk file and batch 
processing capability when Super BASIC 
is used with PerCom miniDOS; line and 
character position error reporting; and 
fast execution of function calls. 

Super BASIC is supplied on 5-inch 
disks and, together with a users manual, 
sells for $49.95. Upgrade kits for using 
Super BASIC with SwTPC or Smoke 
Signal Broadcasting Co disk systems are 
also available. For further information, 
contact PerCom Data Co, 318 Barnes, 
Garland TX 75042. 

Circle 580 on inquiry card. 



STRUBAL+ compiler as well, produc- 
ing runable binary files with the desired 
relocations and linkages performed. 
More sophisticated than a simple link- 
ing loader, LNKEDT68 is a 2-pass, disk- 
to-disk program. The user can build out- 
put files without regard for the amount 
of programmable memory available at 
load time. 



Versions are available for Percom, 
ICOM, SwTPC, Smoke Signal Broad- 
casting and Tano systems. The XA6809 
is priced at $149.95, and the LNKEDT68 
is $49.95. For further information, con- 
tact Hemenway Associates Inc, 101 Tre- 
mont St, Suite 208, Boston MA 02108. 

Circle 581 on inquiry card. 



254 October 1979 © BYTE Publications Inc 



HOBBY WORLD 

I CALL TOLL FREE: (800)-423-5387 

CA, HI, AK: (213) 886-9200 

Your one-slop mail order computer store! 



mm 



rCOMPUTALKERl 

SPEECH 
SYNTHESIZER 

The finest low cost, high quality 
electronic speech synthesizes Pro- 
grammable to any language or 
dialect. 
^ Cat No. 1916 For Apple II S490j 

51/ 4 " 

VERBATIM 
DISKETTES 



SSM AIO 

APPLE II SERIAL 
& PARALLEL 
INTERFACE 

Interface your Apple with 
printers, plotters, terminals, 
modems, etc. Features one RS232 
serial interface, two bi-directional 
8-bit parallel pork, on board firm- 
ware. With comprehensive users 
manual and application notes for 
interfacing with many popular 
printers and terminals. 
Cat No. 1918 kit $129 

Cat No. 1919 a&t $169 



$29 



Cat No. 1148 
box of 10 



APPLE TALKER 

Give your Apple the power of 
speech! Digitizes words and 
sets up a table so that these 
words can be called on under 
program control. Requires re- 
corder *+ 2 mikes. This and 
Apple Lis'ner can be used as 
subroutines. 
Cat No. 1691 H5.95 



APPLE LIS'NER 

Communicate with your Apple 
via speech! Use your cassette 
recorder and a mike. Responds 
to words it has learned under 
program control. 
Cat No. 1692 $19.95 



APPLE SOFTWARE 

buy any 3, take 10% off 



Cat No. Description 


Price 








1317 


Sargon Chess, 
16K 


19.95 


1695 


Tic-Tac-Talker/ 
Spectrum Analy- 


19.95 


1196 


Bridge Chal- 


14.95 




sis, 24K 






lenger, 16K 




1696 


Bomber, 16K 


9.95 


1592 


Bowling/Trilogy, 
20K 


7.95 


1697 


Rocket PiloW 
Saucer Invasion, 


12.95 


1587 


Colt Applesoft 


7.95 




16K 






II + 20K 




1699 


Star Wars/Space 


12.95 


1701 


Daily Biorhythm, 


7.95 




Maze, 16K 






16K 




1693 


Music Kaleido- 


9.95 


1656 


Galactic Block- 


9.95 




scope, 16K 






ade Runner, 16K 




1719 


Personal Finance 


9.95 


1658 


Sci-Fi Game 


7.95 




Package, 16K 






Sampler, 16K 




1697 


Apple 21 [Black- 


9.95 


1662 


Othello III, 16K 


7.95 




jack), 16K 





TRS 
80 



COMPUTALKER 

SPEECH 

SYNTHESIZER 

The finest low cost, high quality 
electronic speech synthesizer. Pro- 
grammable to any language or 
dialect. 
Cat No. 1917 

FortheTRS80 485.00 



I6KTRS-8O 
MEMORY S85 
ADD-ON * OD 

Installs in minutes! Everything 
you need to upgrade to 16K, 
32K, or 48K. Guaranteed to 
work in your machine. 
Cat No. 1156 

For TRS-80 keyboard unit 
Cat No. 1156 A 

Exp. Inter. Prior to 4/1/79 
Cat No. 1156-B 

Exp. Inter. After 4/1/79 



TRS-232 

SERIAL INTERFACE 

Software driver RS-232 output. 
Interface Diablo, Teletype, Tl 
Silent, etc., without expansion 
interface! CylfJ 

i Cat No. 1199 ^4t. 



MATCHLESS SYSTEMS 

TRS-80 

I MINIDISK DRIVEl 

$395 

2 for $775 

Faster accessing, increased data 
storage. Complete and ready to 
plug-in and go! Full 120 day 
MONEY BACK guarantee! 
Cat No. 1375 



TRS-80 DIN PLUGS 

2 for SI. SO 

Male, plugs into keybd unit & I 

accessories. 

Cat No. 1229 



TRS-80 SOFTWARE 

buy any 3, fake 10% off 



CatN( 


>. Description 


Price 








1341 


Fortran (Micro- 
soft) L2, 48K + 


$275.00 


1481 


Backgammon, 
L2, 16K 


10.95 




disk 




1048 


Machine Lan- 


23.95 


1725 


CP/M, L2, 16K 
♦ disk 


149.95 




guage Monitor, 
L1/L2 




1039 


Renumber 4K - 


14.95 


1042 


Tarot, L1/L2, 4K 


5.95 




48K 




1706 


Music Master, L2 


14.95 


1680 


Renumber, 16 - 
48K + disk 


19.95 




+ 16K (plays 
music) 




1549 


Newdos+ 


99.95 


1195 


Bridge Chal- 


14.95 


1685 


Electric Paint- 


14.95 




lenger, 12 + 16K 






brush 




1186 


Air Raid (real 


14.95 


1681 


Syscop (copies 
SYSTEM tapes 


9.95 




time target game) 
L1/L2 + 4K 




1332 


Level III Basic, 
L2 + 16K 


49.00 


1577 


Personal Finance 
Package, Li + 


9.95 


1338 


Electric Pencil, 


95.00 




4K, L2 + 16K 






cassette 




1182 


Microchess, 


19.95 


1199 


TRS-232 Serial 


49.00 




LI/12 + 4K 






Interface 




1046 


The Game of 


14.95 


1041 


Star Trek III, L2 
16K 


14.95 




Life, L1/L2 + 4K 





S-lOO 

TARBELL 



CatNc 


• .Description 


1756 


Cassette Inter- 




face kit 


1757 


as above, a&t 


1901 


Floppy Disk 




Interface kit 


1774 


as above, bare- 




board 


1758 


Disk Basic on 




CP/M disk 


1902 


Cassette BASIC 


1773 


32K Static Ram 




kit 



Price 
$120.00 



175.00 
190.00 



48.00 
620.00 



CENTRONICS 
PARALLEL & 
SERIAL 
MICROPRINTERS I 

A non impact desktop microprinter f 
perfectly suited for todays per- 
sonal computers, microprocessor 
development systems, diagnostic 
systems, CRT hard copy and more! 
40 column. 

Cat No. 1843* Parallel $445 
Cat No. 1844*Serial $515 



S-lOO 

EDGE 

CONNECTORS 

Buy any 3, take 
10%off 



Cat No. Description 
1376 Imsai type, 

soldertail 

Imsai type, wire 

wrap 

Altair type, 

soldertail 



1428 



Price 
$4.00 



SSM 

COMPUTER BOARDS 

buy any 3, take 10% off 



Cat No. 

1411 

1413 

1417 

1419 

1440 

1408 

1410 

1400 A 

1402 

1405 

1407 

1425 

1420 

1424 



Description 

104 kit 

I04bb 

VB1B kit 

VB1B bb 

PB1 kit 

SB1 kit 

5B1 bb 

MB6B kit 450ns 

MB6B bb 

MB7 kit 

MB7bb 

MB3 kit 

MB4 kit, 2 MHz 

MB4 bb 



Price 

$139.00 

26.00 

129.00 
26.00 

129.00 

150.00 
35.00 

139.00 
26.00 

325.00 
26.00 
54.00 
80.00 
26.00 



1433 
1435 
1436 
1429 
1431 
1427 
1428 

1403 
1442 

1414 
1416 



MB8A kit 

MB8A bb 

MB9 kit 

OBI kit 

OBI bb 

XB1 

Connector for 

X81 

CB1 kit 

Tl (Terminator) 

kit 

102 kit 

I02bb 



78.00 
26.00 
64.00 
45.00 
26.00 
10.00 
4.00 

119.00 
29.00 

48.00 
26.00 



PET 



SOUNDWARE 

Add music and sound effects to 
YOUR computer programs. Com- 
plete system with speaker/amplifier 
unit, volume control, earphone 
jack and plug in connectors. Com- 
plete Demo and Sound Composer 
programs included. 
Cat No. 1899 PET 29.95 



PET 



Cat No. 
J 1823 8k bytes, large key- 
board; numeric 
keypad and graph- 
ics on keys. 
16k bytes, large 
keyboard, numeric 
keypad and graph- 
ics on keys. 
32 bytes, large key- 
board, no graphics 
on keys. 

80 column dot ma- 
tractor feed 
printer 

Dual drive mini 
floppy system, 343k 
net user storage 



1824 



1825 



1826 



1827 



PET 
SOFTWARE 



buy ony 3. take 10% off 

Cat No. Description 
1682 Basic Assembler 

for the PET 

PET Graphics 

Othello, 8K 

Daily Biorhythm, 

8K 

Personal Finance 

Package 

Bridge Chal- 
lenger, 8K 

Microchess, 8K 

Qubic-4/Go- 

Moku, 8K 

Trek-X, 8K 



1713 
1661 
1700 

1718 

1665 

1664 
1568 

L1564 



Price 
$29.95 

14.95 

7.95 
7.95 

9.95 

14.95 

19.95 
7.95 

7.95J 



Send for 

FREE 
CATALOG 

Featuring: 

The best selection of com- 

fiuter accessories add-ons, 
actory fresh ICs, led's, 
semi's, software, PC aids, 
prototyping aids, books, 
test equipment, and more! 
Always updated! Dozens 
of new products every 
issue! 



Pay by check, COD, Visa, 
or Mastercharge. Order I 
by phone or mail. Mini- 
mum order $10. Please 
include phone number and 
magazine/issue you are 
ordering from. USA: Add 
$2 for shipping/handling 

P round; $3 for air. 
OREIGN: Add. 53 for 
surface, $6 for air. COD's 
$1 add'U. Guaranteed sat- 
isfaction for 120 days or 
your money back! Not re- 
sponsible for typographical 
errors. We reserve the | 
right to limit quantities. 



Dept. BIO 19511 Business Center Dr. Northridge, Ca. 91324 



Circle 170 on inquiry card. 



BYTE October 1979 255 



What's New? 



SOFTWARE 



Educational Software 

This educational software for the 
Radio Shack Level II TRS-80 and Com- 
modore PET is designed for educators 
utilizing computer-assisted instruction. 
Currently available software includes: 

• Introduction to Microcomputers — 6 
programs, 3 tapes plus teacher's 
guide; grades 1 through 8, at $49.95. 

• Basic Math Skill Games — 12 pro- 
grams, 6 tapes plus teacher's guide; 
grades 1 through 8, at $89.95. 

• Word Problems, 6 programs, 3 tapes 
plus teacher's guide; primary grades, 
at $54.95. 

• Spelling I and II— 12 programs, 6 
tapes, plus teacher's guide; primary 
grades, at $54.95. 

These complete supported programs 
make full use of the microcomputer's 
graphic capabilities and contain 
safeguards to minimize accidental pro- 
gram loss. All programs are loaded in 
individual cassette tapes and stored with 
support materials in a 3-ring notebook. 




For more information, contact The Soft- 
ware Factory, 515 Park St, Anoka MN 
55303. 

Circle 603 on inquiry card. 



■ * 








■ » 




PATH SYSTEMS., INC. 




fe PAYROLL PROGRAM CALCULA IT 


3N 


R|# 




FPA-11 


Other -5 




11 Hourly Bate 
IH Hours Worked 


3.7500000000000 


3.7500C000O00CO 

1 .500ooooooflQon 




III Wag e3 
If Internal Round-Up 

IB|; Answer Generated 


5.625OOP00000C0 
♦ .005 


5.6250000000000 
♦ .005 


5.630OOU000O0O0 


5.6299999999999 




Check Printed 


5.63 


5.62 


W^^ 











PDP-11 Compatible Floating Decimal Software 
Provides 14 Digit Accuracy 



The FPA-11 Floating Decimal 
Arithmetic Package is a DEC PDP- 
11/LSI-ll compatible software program 
that generates answers as true decimal 
representations and completely 
eliminates strings of 9s. Offering 14 digit 
accuracy, it associates a scaling factor 
with each number to keep track of the 
decimal point as each calculation is per- 
formed. For fast execution, all calcula- 
tions are conducted in binary form. 

With a range of 10 ±141 , the package 
is characterized by compact internal 
representation, and manipulated 
numbers are internally represented by 4 



words (8 bytes). Work space is defined 
local to an application, and several 
applications can use the package on a 
time-shared basis. A general purpose 
mode lets users bypass the decimal 
orientation when required. 

The FPA-11 Floating Decimal 
Arithmetic Package is priced at $75 on a 
floppy disk or cassette, and $135 for 
RK-05 compatible media. Other media 
can be specified. Contact Path Systems 
Inc, The Millyard Bldg, 333 N Turner 
St, Manchester NH 03102. 

Circle 606 on inquiry card. 



T-Ball Jotter Disk for 
TRS-80 

The T-Ball Jotter Disk contains soft- 
ware for use with 32 K byte TRS-80 disk 
and line printer systems. It contains a 
collection of business and professional 
programs which make many types of 
computations and prints out many 
forms used in the business and invest- 
ment fields such as amortization 
schedules and financial statements. The 
disk has its own master control program 
which enables rapid selection among 
operations. The T-Ball Jotter Disk is 
priced under $100. For more informa- 
tion, contact Contract Services 
Associates, 706 S Euclid, Anaheim CA 
92802. 

Circle 604 on inquiry card. 



Pascal for the TRS-80 

FMG Corp has announced a UCSD 
Pascal developmental package for Radio 
Shack's TRS-80. The FMG Pascal user's 
package is capable of running most 
business applications, such as word pro- 
cessing, payroll, accounting, and book- 
keeping. 

The system supports up to four floppy 
disk drives, line printer and RS-232 
serial interface. It also supports user- 
implemented peripherals. The FMG 
Pascal developmental package includes a 
compiler, Z80 assembler and screen 
editor. It is priced at $150. For further 
information, contact the company at 
Suite 14, 5280 Trail Lake Dr, Ft Worth 
TX 76133. 

Circle 605 on inquiry card. 



File Management System 

Called a Self-Indexing Query System, 
WHATSIT (Wow! How'd All That Stuff 
Get In There?) this file management 
system answers simple questions by 
referring to disk data that it stores and 
revises as instructed in short pidgin 
English sentences. Its entry-oriented 
indexing scheme is especially designed to 
combine maximum storage capacity with 
full cross-indexing. Applications of 
WHATSIT include desktop indexing of 
investment portfolios, music or hobby 
collections, customer lists, and 
household or professional files. Entries 
are automatically cross-indexed under 
any desired headings. Typical response 
time is 3 to 10 seconds. 

Models are available for the Apple II 
and North Star systems ($100) as well as 
for CP/M systems ($150). Supplied on a 
ready-to-run disk, WHATSIT comes 
with a 150-page manual containing step- 
by-step instructions and numerous 
examples. Contact Computer Headware, 
POB 14694, San Francisco CA 94114. 
Circle 607 on inquiry card. 



256 October 1979 © BYTE Publications Inc 



Circle 126 on inquiry card. 



TlioIMTA-lKANSlOOO 



A completely refurbished 
IBM Selectric Terminal with 
built-in ASCII Interface. 



Features: 



$1395 



300 Baud 

14.9 characters per second 

printout 

Reliable heavy duty Selectric 

mechanism 

RS-232C Interface 

Documentation included 

60 day warranty -parts and 

labor 

High quality Selectric printing 

Off-line use as typewriter 

Optional tractor feed available 

15 inch carriage width 



HOW TO ORDER 
DATA-TRANS 1000 

1. We accept Visa, Master 
Charge. Make cashiers checks or 
personal check payable to: 

DATA-TRANS 

2. All orders are shipped 
EO.B. San Jose, CA 

3. Deliveries are immediate 




For orders and information 

DATA-TRANS 

2154 (TToole St 

UnitE 

San Jose, CA 95131 

Phone: (408) 263-9246 



MICRO- 
PROCESSORS: 
FROM CHIPS TO 
SYSTEMS 

This book cover all as- 
pects of microp- 
rocessors, from the 
basic concepts to ad- 
vanced interfacing 
techniques, in a pro- 
gressive presenta- 
tion. It is independent 
from any manufac- 
turer, and presents 
uniform standard 
principles and design 
techniques, including 
the interconnect of a 
standard system, as 
well as specific com- 
ponents. It intro- 
duces the MPU, how 
it works internally, the 
system components 
[ROM. RAM. UART. 
PIO, others], the sys- 
tem interconnect, 
applications. pro- 
gramming, and the 
problems and tech- 
niques of system de- 
velopment. By R. 
Zaks. SYBEX. Ref. 
C201.$9.95 



MICRO- 
PROCESSOR 
INTERFACING 
TECHNIQUES 

Microprocessor in- 
terfacing is no longer 
an art. It is a set of 
techniques, and in 
some cases just a set 
of components. This 
comprehensive book 
introduces the basic 
interfacing concepts 
and techniques, then 
presents in detail the 
implementation de- 
tails, from hardware 
to software. It covers 
all the essential per- 
ipherals, from key- 
board to floppy disk, 
as well as the stan- 
dard buses IS100 to 
IEEE 4BB) and intro- 
duces the basic trou- 
bleshooting tech- 
niques. [2nd Ex- 
panded Edition). By 
Austin Lesea and R. 
Zaks. Ref. C207 
SYBEX. $11.95 



PROGRAMMING 
THE 6502 

PROGRAMMING 
THEZ80 

PROGRAMMING 
THE 8080* 
It covers all essential 
aspects of program- 
ming, as well as the 
advantages and dis- 
advantages of the 
6502 and should 
bring the reader to 
the point where he 
can start writing 
complete applications 
programs. For the 
reader who wishes 
more, a companion 
volume is available: 
The 6502 Applica- 
tions Book. By R. 
Zaks. 6502: Ref. 
C202; ZBO: Ref. 
C2B0; BOBO: Ref. 
C20B. SYBEX. Each 
$10.95 




44 BUS MOTHER 
BOARD 

Has provisions for ten 
44 pin t.156) connec- 
tors, spaced 3/4 of an 
inch apart. Pin 20 is 
connected to X. and 
22 is connected to Z 
for power and ground. 
All the other pins are 
connected in parallel. 
This board also has 
provisions for bypass 
capacitors. Board 
cost $15.00 Part No. 
102. Connectors 

$3.00 each Part No. 
44WP. 




AN INTRODUCTION 

TO PERSONAL AND 

BUSINESS 

COMPUTING 

No computer back- 
ground is required. 
The book is designed 
to educate the reader 
in all the aspects of a 
system, from the se- 
lection of the mic- 
rocomputer to the 
required peripherals. 
By Rodnay Zaks. Ref. 
C200. SYBEX $6.95 



TVT COOKBOOK 

Bk 1064 — by Don 
Lancaster. Describes 
the use of a standard 
television receiver as 
a microprocessor 
CRT terminal. Ex- 
plains and describes 
character genera- 
tion, cursor control 
and interface infor- 
mation in typical, easy 
-to- understand Lan 
cascaster style 
$9.95 



COMPUTER 

PROGRAMMING 

HANDBOOK 

A complete guide to 
computer programm- 
ing Si data process- 
ing. Includes many 
worked-out examples. 
By Peter Staak. TAB 
$9.95 



DIGITAL 
CASSETTE 

5 min. each side. Box 
of 10 $9.95. Part No. 
C-5. 




TO OfdSr ■ Mention P art no - description, and price. In USA shipping paid by us for orders accompanied by check or money order. 
' We accept C.O.D, orders in the U.S. only, or a VISA or Master Charge no., expiration date, signature, phone no., 
shipping charges will be added. CA residents add 6.5% for tax. Outside USA add 10% for air mail postage and han- 
dling. Payment must be in U. S. dollars. Dealer inquiries invited. 24 hour order line [4083 448-0800 



Send for FREE Catalog ... a big self-addressed envelope with 41* postage gets it fastest! 



ELECTRONIC SYSTEMS D ^ 1 B > p - °- Box 21638 ' Sanjose . CAUSA 95151 



Circle 125 on inquiry card. 



BYTE October 1979 257 



COMPUCRUISE 

Put a computer in 
your car, which gives 
you the most effec- 
tive and functional 
cruise control ever 
designed, plus com- 
plete trip computing, 
fuel management sys- 
tems, and a remark- 
able accurate quartz 
crystal time system. 
So simple a child can 
operate, the new 
CompuCruise com- 
bines latest computer 
technology with 
state-of-the-art re- 
liability in a package 
which will not likely be 
available on new cars 
for years to come • 
Cruise Control •Time, 
E.T., Lap Timer, Alarm 

• Time, Distance, Fuel 
to Arrival • Time, Dis- 
tance, Fuel to Empty • 
Time, Distance and 
Fuel on Trip • Current 
or Average MPG, 
GPH •Fuel Used, Dis- 
tance since Fillup • 
Current and Aver- 
age-Vehicle Speed • 
Inside, Outside or 
Coolant Temperature 

• Battery Voltage • 
English or Metric 
Display. $199.95 




FLOPPY DISK 
STORAGE BINDER 

This black vinyl 
three-ring binder 
comes with ten 
transparent plastic 
sleeves which ac- 
commodate either 
twenty, five-inch or 
ten. eight-inch floppy 
disks. The' plastic 
sleeves may be or- 
dered separately and 
added as needed. A 
contents file is in- 
cluded with each 
sleeve for easy iden- 
tification and organiz- 
ing. Binder & 10 hol- 
ders $14.95 Part No. 
BBOO; Extra holders 
95* each. Part No. 
BOO 




OPTO-ISOLATED 

PARALLEL INPUT 

BOARD FOR 

APPLE II 

There are B in- 
puts that can be dri- 
ven from TTL logic or 
any 5 volt source.The 
circuit board can be 
plugged into any of 
the B sockets of your 
Apple II. It has a 16 pin 
socket for standard 
dip ribbon cable con- 
nection. 

Board only $15.00. 
Part No. 120, with 
parts $69.95. Part 
Np. 12QA. 




TIDMA 

• Tape Interface Direct 
Memory Access • Re- 
cord and play programs 
without bootstrap load- 
er (no prom) has FSK 
encoder/decoder for 
direct connections to 
low cost recorder at 
1200 baud rate, and 
direct connections for 
inputs and outputs to 
a digital recorder at 
any baud rate • S-1 00 
bus compatible • Board 
only $35.00 Part No. 
112. with parts $110 
Part No. 112A 




SYSTEM 
MONITOR 

8080. 8085, or Z-80 
System monitor for use 
with the TIDMA board. 
There is no need for the 
front panel. Complete 
with documentation 
$12.95. 



16K EPROM 

Uses 2708 EPROMS, 
memory speed selec- 
tion provided, ad- 
dressable anywhere in 
65K of memory, can 
be shadowed in 4K in- 
crements. Board only 
$24.95 part no. 
7902, with parts less 
EPROMs $49.95 part 
no. 7902A. 




ASCII KEYBOARD 

TTL & DTL compatible • Full 67 key array 

• Full 12B character ASCII output • Positive 
logic with outputs resting low • Data Strobe 

• Five user-definable spare keys • Standard 
22 pin dual card edge connector • Requires 
+ 5VDC, 325 mA. Assembled & Tested. 
Cherry Pro Part No. P70-05AB. $135.00. 




ASCII KEYBOARD 

53 Keys popular ASR-33 format • Rugged 
G-10 P. C. Board • Tri-mode MOS encoding 
• Two-Key Rollover • MOS/DTL/TTL Compat- 
ible • Upper Case lockout • Data and Strobe 
inversion option • Three User Definable 
Keys • Low contact bounce • Selectable Par- 
ity • Custom Keycaps • George Risk Model 
753. Requires +5, -12 volts. $59.95 Kit. 



ASCII TO CORRESPONDENCE 
CODE CONVERTER 

This bidirectional board is a direct replace- 
ment for the board inside the Trendata 1000 
terminal. The on board connector provides 
RS-232 serial in and out. Sold only as an 
assembled and tested unit for $229.95. 
Part No. TA1000C 



DISK JACKET™ 

Made from heavy duty 
.0095 matte plastic 
with reinforced 

grommets. The mini- 
diskette version holds 
two 5-1/4 inch disk- 
ettes and will fit any 
standard three ring 
binder. The pockets to 
the left of the disk- 
ette can be used for 
listing the contents of 
the disk. Please order 
only in multitudes of 
ten. $9.95/10 Pack. 




INTERNATIONAL 

MICROPROCESSOR 

DICTIONARY 

English, French, Dan- 
ish, German, Italian, 
Hungarian, Norwe- 
gian, Polish, Spanish, 
Swedish. 10 lan- 
guages, 28 pp. 
SYBEX. Ref. JMD. 
$4.95 



VIDEO TERMINAL 

16 lines, 64 columns • 
Upper and lower case • 
5x7 dot matrix • 
RS-232 in -RS-232 
out with TTL parallel 
keyboard input • On 
board baud rate 
generator 75, 110, 
150, 300, 600, & 
1200 jumper selecta- 
ble » Memory 1024 
characters [7-21 L02) 
•Video processor chip 
SFF96364 by Necu- 
lonic • Control char- 
acters [CR, LF, ->, «-, 
*, 4, non destructive 
cursor, CS, home, CL» 
White characters on 
black background or 
vice-versa • With the 
addition of a keyboard, 
video monitor or TV 
set with TV interface 
[part no. 107A) and 
power supply this is a 
complete stand alone 
terminal • also S-100 
compatible • requires 
+16, & -16 VDC at 
100mA, and BVDCat 
1A. Part no. 1000A 
$199.95 kit. 




RS-232/20mA 
INTERFACE 

This board has two 
passive, opto-isola- 
ted circuits. One con- 
verts RS-232 to 
20mA, the other con- 
verts 20mA to RS- 
232. All connections 
go to a 10 pin edge 
connector. Requires 
+12 and -12 volts. 
Board only $9.95, 
part no. 7901, with 
parts $14.95 Part 
No. 7901A. 




COMPUCOLORII 

Model 3, 8K $13 95, 
Model 4, 16KS15 95, 
Models. 32K $18 95. 
Prices include color 
monitor, computer, 
and one disk drive. 




( 



PET COMPUTER 

With 32K & monitor - 
$1195. Dual Disk 
Drive -$1195. 




£ggggg£IH 



Qjpppkz 



APPLE II PLUS 

16K - $995, 32K - 
$1059, 4BK -$1123- 
Disk & cont. $589 

\ 




6502 
APPLICATIONS 

BOOK 
280 APPLICATIONS 

BOOK" 
This book will teach 
you how to connect a 
board to the outside 
world and implement 
practical applications 
for the 6502, (or 
Z80). Applications 
range from home con- 
trol Ca complete alarm 
system, including 
heat sensor), to in- 
dustrial applications. 
You will learn tech- 
niques ranging from 
simulated traffic con- 
trol to analog-digital 
conversion. All exper- 
iments can be realized 
with a minimum of ex- 
ternal tlow-cost] 
components. They are 
directly applicable to 
any 6502-based 
board such as SYM, 
KIM, AIM 65. This 
book also studies in 
detail input-output 
techniques and com- 
ponents, and is the 
logical continuation of 
C202 (or C280). By 
Rodney Zaks. 

SYBEX. 6502: Ref. 
D302; Z80: Ref 
D380. Each $12.95 



T.V. INTERFACE 

• Converts video to 
AM modulated RF, 
Channels 2 or 3. So 
powerful almost no 
tuning is required. On 
board regulated power 
supply makes this ex- 
tremely stable. Rated 
very highly in Doctor 
Dobbs' Journal. Recom- 
mended by Apple • 
Power required is 12 
volts AC C.T., or +5 
volts DC • Board only 
$7.60 part No. 107, 
with parts $1 3.50 Part 
No. 107A 




qisjBjqiojqiaiqi 



V'r';;.:.,;,!:i:^ii; 



PARALLEL TRIAC 

OUTPUT BOARD 

FOR APPLE II 



This board has 8 tnacs capable of 
switching 110 volt 6 amp loads C660 watts 
per channel) or a total of 5280 watts. Board 
only $15.00 Part No. 210, with parts 
$119.95 Part No. 210A. 



TO OrdSr ■ Mention P art no - description, and price. In USA shipping paid by us for orders accompanied by check or money order. 1 
' ' We accept C.O.D. orders in the U. S. only, or a VISA or Master Charge no., expiration date, signature, phone no., 
shipping charges will be added. CA residents add 6.5% for tax. Outside USA add 10% for air mail postage and han- 
dling. Payment must be in U. S. dollars. Dealer inquiries invited. 24 hour order line (4083 448-0800 



.Send for FREE Catalog ... a big self-addressed envelope with 41* postage gets it fastest! 



ELECTRONIC SYSTEMS De P l - B, P- 0. Box 21638, San Jose, CA USA 95151 



258 BYTE October 1979 



Circle 125 on inquiry card. 



TRS-80 ES 
SERIAL I/O 

• Can input into basic 

• Can use LLIST and 
LPRINT to output, or 
output continuously • 
RS-232 compatible • 
Can be used with or 
without the expansion 
bus • On board switch 
selectable baud rates 
of 110,150,300,600, 
1200, 2400, parity or 
no parity odd or even, 
5 to 8 data bits, and 1 
or 2 stop bits. O.T.R. 
line • Requires +5, 
-1 2 VOC* Board only 
21 9.95 Part No. B010, 
with parts $59.95 Part 
No. 801 OA, assembled 
$79.95 Part No. 8010 
C. No connectors pro- 
vided, see below. 




« 



EIA/RS-232 con- 

nactor Part No. 

DB25PS6.00.with 

9". 8 conductor 

cable $1 0.95 Part 

No. DB25P9. 

3' ribbon cable 
with attached con- 
nectors tofitTRS- 
00 and our serial 
board$19.95Part 
No. 3CAB4Q. 



RS-232/ TTL 
INTERFACE 

• Converts TTL to RS- 
232, andconverts RS- 
232 to TTL • Two sep- 
arate circuits • Re- 
quires -12 and +12 
volts • All connections 
go to a 10 pin gold 
plated edge connector 

• Board only $4.50 
Part No. 232, with 
parts $7.00 Part No. 
232A 10 Pin edge 
connector $3.00 Part 
No. 10P 






¥"fMft ■■■■■"' 
*,■■■--,. ;u.i*.*» 



r* 



MODEM 

• Type 103 • Full or 
half duplex • Works up 
to 300 baud • Origi- 
nate or Answer • No 
coils, only low cost 
components • TTL in- 
put and output-serial 

• Connect 8 ft speak- 
er and crystal mic. 
directly to board • 
Uses XR FSK demod- 
ulator • Requires +5 
volts • Board only 
$7.60 Part No. 109, 
with parts $27.50 Part 
No. 109 A 




DISKETTES 




Box of 10, 5" $29.95, 
8" $39.95. 
Plastic box, holds 10 
diskettes, 5" - $4.50, 
8" -$6.50. 



RS-232/TTY 
INTERFACE 

This board has two 
active circuits, one 
converts RS-232 to 
20mA, and the other 
converts 20mA to 
RS-232. Requires 
+12 and -12 volts. 
Board only $4.50 Part 
No. 600, with parts 
$7.00 Part No. 600A. 



part &o &cq 



S-100 BUS 
ACTIVE TERMINATOR 

Board only $14.95 Part No. 900, with parts 
$24.95 Part No. 900A 




apple ii-::- 

SERIAL I/O 
INTERFACE 



Baud rate is continuously adjustable from 
to 30,000 • Plugs into any peripheral 
connector • Lowcurrent drain. RS-232 input 
and output • On board switch selectable 5 to 
B data bits, 1 or 2 stop bits, and parity or no 
parity either odd or even •Jumper selectable 
address • SOFTWARE • Input and Output 
routine from monitor or BASIC to teletype or 
other serial printer • Program for using an 
Apple II for a video or an intelligent terminal. 
Also can output in correspondence code to 
interface with some selectrics. • Also 
watches OTR • Board only $15.00 Part No. 
2. with parts $42.00 Part No. 2A, assembled 
$62.00 Part No. 2C 



8K EPROM piiceon 

Saves programs on PROM permanently (until 
erased via U V light] up to BK bytes. Programs 
may be directly run from the program saver 
such as fixed routines or assemblers. • S- 
100 bus compatible • Room for BK bytes of 
EPROM non-volatile memory (2708's). • On- 
board PROM programming • Address 
relocation of each 4K of memory to any 4K 
boundary within 64K • Power on jump and 
reset jump option for "turnkey" systems and 
computers without a front panel • Program 
saver software available • Solder mask both 
sides • Full silkscreen for easy assembly. 
Program saver software in 1 2708 EPROM 
$25, Bare board $35 including custom coil, 
board with parts but no EPROMS $1 39, with 
4 EPROMS $179. with 8 EPROMS $219. 




WAMECO PRODUCTS 

WITH 

ELECTRONIC SYSTEMS PARTS 

FDC-1 FLOPPY CONTROLLER BOARD will 
drive shugart, pertek, remex 5" & 8" drives 
up to 8 drives, on board PROM with power 
boot up, will operate with CPM (not 
included], PCBD $42.95 

FPB-1 Front Panel. (Finally] IMSAI size hex 
displays. Byte or instruction single step. 
PCBD $42.95 

MEM-1A BKxB fully buffered. S-100, uses 
2102 type RAMS. 
PCBD $24.95, $1 68 Kit 

QW1B-12 MOTHER BOARD, 1 3 slot, termi- 
nated, S-100 board only $34.95 

$89.95 Kit 

CPU-1 8080A Processor board S-1 00 with 

8 level vector interrupt PCBD . . $25.95 

$89.95 Kit 

RTC-1 Realtime clock board. Two independ- 
ent interrupts. Software programmable. 
PCBD $25.95, $60.95 Kit 

EPM-1 1702A4K EPROM 

card PCBD $25.95 

$49.95 with parts less EPROMS 

EPM-2 2708/2716 16K/32K 

EPROM card PCBD $24.95 

$49.95 with parts less EPRDMS 

QMB-9 MOTHER BOARD. Short Version of 

QMB-12. 9 Slots PCBD $30.95 

$67.95 Kit 

MEM-2 16Kx8 Fully Buffered 211 4 Board 
PCBD $25.95, $269.95 Kit 



T.V. 
TYPEWRITER 

• Stand alone TVT 

• 32 char/line, 16 
lines, modifications for 
64 char /line included 

• Parallel ASCII (TTL] 
input • Video output 

• 1 K on board memory 

• Output for computer 
controlled curser\ • 
Auto scroll • Non- 
destructive curser • 
Curser inputs: up, down, 
left, right, home, EOL, 
EOS • Scroll up, down 

• Requires +5 volts 
at 1.5 amps, and -12 
volts at 30 mA • All 
7400, TTL chips • 
Char. gen. 2513 • 
Upper case only • 
Board only $39.00 
Part No. 106, with 
parts $145.00 Part 
No. 1 06A 




UART& 
BAUD RATE 
GENERATOR 

• Converts serial to 
parallel and parallel to 
serial • Low cost on 
board baud rate gener- 
ator • Baud rates: 
110, 150, 300, 600, 
1200, and 2400 • 
Low power drain +5 
volts and -12 volts 
required • TTL com- 
patible • All characters 
contain a start bit, 5 
to 8 data bits. 1 or 2 
stop bits, and either 
odd or even parity. • All 
connections go to a 44 
pin gold plated edge 
connector • Board only 
$12.00 Part No. 101, 
with parts $35.00 Part 
No. 101 A, 44 pin edge 
connector $4.00 Part 
No. 44P 




> .-.Hi-nii ;■<■ ■•' 



TAPE 
INTERFACE 

• Play and record Kan- 
sas City Standard tapes 

• Converts a low cost 
tape recorder to a 
digital recorder • Works 
up to 1200 baud •Dig- 
ital in and out are TTL- 
serial • Output of 
board connects to mic. 
in of recorder • Ear- 
phone of recorder con- 
nects toinput on board 

• No coils • Requires 
+5 volts, low power 
drain • Board only 
$7.60 Part No. 111. 
with parts $27.50 Part 
No. 111A 




HEX ENCODED 
KEYBOARD 

E.S. 
This HEX keyboard 
has 19 keys, 16 encod- 
ed with 3 user defin- 
able. The encoded TTL 
outputs, 8-4-2-1 and 
STROBE are debounced 
and available in true 
and complement form. 
Four onboard LEOs 
indicate the HEX code 
generated for each 
key depression. The 
board requires a single 
+5 volt supply. Board 
only $15.00 Part No. 
HEX-3, with parts 
$49.95 Part No. HEX- 
3A. 44 pin edge con- 
nector $4.00 Part No. 
44P. 




DC POWER SUPPLY 

• Board supplies a regulated +5 
volts at 3 amps., +1 2, -1 2, and -5 
volts at 1 amp. • Power required is 
B volts AC at 3 amps., and 24 volts 
AC C.T. at 1.5 amps. • Board only 
$1 2.50 Part No. 60B5, with parts 
excluding transformers $42.50 
Part No. 6085A 




' TA firrior ■ Mention part no. description, and price. In USA shipping paid by us for orders accompanied by check or money order. 
IV UIUCI . We accept C q D Dr ders in the U.S. only, or a VISA or Master Charge no., expiration date, signature, phone no., 
shipping charges will be added. CA residents add 6.5% for tax. Outside USA add 10% for air mail postage and han- 
dling. Payment must be in U. S. dollars. Dealer inquiries invited. 24 hour order line C408) 448-0800 



Send for FREE Catalog 



[ big self-addressed envelope with 41 * postage gets it tastes 



^ELECTRONIC SYSTEMS p - °- Box 21638 ' SanJose ' CAUSA 95151 



Circle 125 on inquiry card. 



BYTE October 1979 259 




#v^V 



THE FIRST TO OFFER PRIME PRODUCTS TO THE HOBBYIST 
AT FAIR PRICES NOW LOWERS PRICES EVEN FURTHER! 

1. PTOV©ri QtJclllty Factory tested products only, no re-tests 
or fallouts. Guaranteed money back. We stand behind ouroroducts. 

1979 CATALOG NOW AVAILABLE. 

Send $1.00 for your copy ot the most complete catalog of computer products. A must 
for the serious computer user. 



STATICW RAM BOARDS, 



_Wp u/ > 






S-100 32K (uses 21 14) 
ASSEMBLED Kit tf'/^ 

450ns. 599.00 450ns. 539.95 

250ns. 699-95 250ns. 599.95 

Bare Board 49.95 
Bare Board w/ail parts less mem, 99.95 



8-10016K (uses 21 14) KIT (exp. to 32K) 

ASSEMBLED 450ns. 279.00 

450ns. 325.00 250ns. 299.00 

250ns. 375.00 

Bare Board 49.95 

LOGOS I 6K 

ASSEMBLED 

450 ns. 169.95 KIT 450ns. 125.95 

250ns. 189.95 250ns. 149.95 

Bare PC Board w/Data $21 .95 

Now over 1 year successful field experience 

-Special Offer" Buy(4)8K 450ns. Kits $1 1 7.00 



250ns. 299.00 




FLOPPY DISK DRIVES 

1. VISTA V-80 MINIDISK 
FOR TRS-80 

• 23% More Storage 
Capacity- 40 Tracks 

•*• 40 track patch now avail. >**"" **v 

• Faster Drive - /- OJI —A 
Up to 8 Times Faster I »»»-O0 J 

2 Drive Cable Add $29:95 X^^ 
4 Drive Cable Add $3995 
2. VISTA V-200 MINI-FLOPPY SYSTEM 

• 204K Byte Capacity • w/CPM, BastCE" 
•*• Double Density Drive >^— **v 

• One Double Density ( *£SM>0 A 
Controller w/Case & p.S. \69».00y 

Add to your EXIDY, HORIZON, 
and other S-1 00 compu em. 

3. VISTA V-1 000 FLOPPY DISK SYSTEM 

• (2) Shugart 8" Floppy Disk s 

■A- Controller Card, Cable, /CT^J^ 
Case & P.S. fvtl /^ 

• CPM & Basic U E", \1 089.OW 
Instructions & Manual x -— ^ 

4. MPI BS1t5'/4". 40 tracks 279.00 

5. Shugart SA4O0-5VI", 35 tracks .... 295.00 

6. Siemens/GSI FDD1 00-8 8" 375.00 

7. Shugart 800/601R 8" 495.00 

6. PERSCI Model 277 Dual 1 195.00 

S^ANGCVSIEMENS5W^jnv^^90£0 

EXPANDORAM MEMORY KITS 

• Bank Selectable • Uses 41 15 or 41 16 

200 ns. 

• Write Protect * Power 8VDC, ±1 6VDC 

• Phantom • Lowest Cost/Bit 
Expando32Kit(4115) Expando64Kit(41 16) 

8K $158.00 16K $248.95 

16K $199.00 32K $369.00 

24K $299.00 48K $469.00 

32K $349.00 64K $565.00 



IMS STATIC RAM BOARDS ^ 

•k Memory Mapping • Low Power ** 
* Phantom * Assembled & tested 

Recommended by Alphamicrosystems 

250 ns. 450 ns. 

8K Static $209.00 $189.00 

16K Static $449.00 $399.00 

32K Static $799.00 $899.00 



ANADEX PRINTER 

Model DP-8000 compact, impact, parallel or 
serial. Sprocket feed. 80 cols, 
\ 84 fin'es/mln., bi-directional. 
New only $895.00 



VERBATIM ™ DISKETTES -^ 

• 5 1 A" Minidiskettes • _ tffc\£o 



Softsector, 1 Sector, 1 6 Sector 






$4.25 Each, 10/39.95 
* 8" Standard Floppy Disks + 
Soft Sector, Hard Sector 
$4.50 Each, 10/41.95 
'Add 4.95 for 10 Pack in Deluxe Disk Holder 



& 



k EXORCISE R COMPATIBLE 

9600 MPU Module w/6602 CPU $495.00 

9.60,1 16 Slot Mother Board 175.00 

9602 Card Cage(19"RetmaRack Mount) . . . 75.00 

9603 8 Slot Mother Board 100.00 

9604 Switchmode System PowerSupply .... 250.00 

9610 Utility Prototyping Board 36.00 

9616 Quad 8K Eprom Module •*• 

9620 1 6 Channel Parallel I/O Modute .... 295.00 
9622 Serial/Parallel I/O Combo — 

9626 8K Static RAM Module 295.00 

9627 18K Static 450ns 495.00 

9630 Card Extender 68.00 

9640 Multiple Programmable Timer 

(24Timera) 395.00 

9650 6 Channel Duplex Serial I/O 395.00 

96103 32/32 I/O. Module 275.00 

96702 32 Point Reed Relay Module 350.00 



9620-0 $45.00 9603-0 27.00 

9628-0 45.00 9600 55.00 

9650-0 45,00 96103 55.00 

9601-0 50.00 96702 55.00 

Afso AM} EVK System In Stock 



APPLE/EX1DY/EXPANDO 
TRS 80 1 6K- UPGRADE KIT 



*■ 1 6K with Jumpers a instructions 

for either Level I or Level II $74.95 

* 1 6K for Apple II Upgrade $74.95 

Special: TRS80 Schematic $ 4.95 

Expansion Interface Schematic .... $ 4.95 



TRS 80 TO S-1 00 

PET TO S-1 00 ADAPTER 

Allows Pet/TRS 80 to be interfaced to 
popular S-1 00 Bus. 

Pet to S-100 Kit $189.95 

Assembled $269.95 

TRS 80 to S-1 00 HUH 81 00 Kit.... $275.00 
Assembled $355.00 



KEYBOARD ASCII ENCODED 

One time purchase of 
NEW Surplus key- 
boards. From the Singer 
Corporation. The 
ikey board features 1 28 
^ASCH characters in a 63 
key format, MOS 
encoder circuitry "N n key 
rollover, lighted shift lock, control, escape and 
repeat functions. Ltd Qty 63 KEY $59.95 




UV "Eprom" Eraser 

~ Modal UVS-11E $69.95 

Holds 4 Eprom's at a time 

Backed by 45 years 

experience. 

Model S-52T. . . $268.00 

Professional Industrial Model 




TARBELL FLOPPY INTERFACE 

* Z8O/808O S 1 00 Compatible • Uses CPM 

Assembled for ShuGart SALE tl28.00 

Assembled Other Drives S269.95 

Kit S179.95 

Bare Board $36.95 (Doc. Add $10.00) 

Note: For CPM Add $70.00. Documentation Add S20.00 

Vista Double Densi1y5'/V Controller Assem $299.00 

SD Versa Floppy Kit $1 59.95 

SO Versa Floppy Assembled $1 89.95 

Tarbel Cassette I/O Kir.. $115.00 

Sale* 1771-01 Floppy Chip.. $27.95 



BYTE USER 8K EPROM BOARD 

* Power on Jump * Reset Jump 

Assembled & Tested $94.95 

Byteuser Kit $64.95 

Bare PC Board $21 .95 

Special Offer: Buy 4 kits only $59.95 each 

MR-8 8K w/1 K Ram $99.50 

MR-16 1 6K w/1 K Ram $99.50 

EPM-1 4K 1 702 $59.95 

EPM-2 2708 or 271 6 Eprom $69.95 



Z-80/Z-80A/8080 CPU BOARD 

• On board 2708 + 2708 included (450ns.) 

• Power on jump • completely socketed 

Assembled and tested S1 85.00 

Kit. S129.95 

Bare PC Board $ 34.95 

• For 4MHz Speed Add $1 5.00 

8080AKit $ 99.95 

8080A Assembled , $1 49,95 



S-100 MOTHERBOARD SPECIAL 

8 slot expandable w/9 conn. 

reg $69.95 NOW $52.95 



TARBELL FLOPPY CONTROLLER 

Card assembled and tested for use with Shugart 
Drives $ SALE PRICE only $229.00 




ACOUSTIC MODEM 

NOVATION CAT'" 

0-300 Baud 

Bell 103 

Answer, Originate $1 98.00 

ACOUSTIC COUPLER SPECIAL 

AJ MODEL A30 
SPECIAL PURCHASE 
OF SURPLUS UNITS 
AVAILABILITY LIMITED $29.95 



DATA BOOKS • COMPUTER BOOKS 

1979 tC Mas m 49.95 Intel MCS 80 Manual 7.95 

NSCTTLData 3.05 Intel MCS 40 Manual 4.95 

NSCLirwar 4.95 AMD B080A Manual 5.95 

KSCLMmt AppNotMll.3.95 AMO Schotlky Detabcofc . . 4.95 

NSCCMOS 395 AM MOS/LSlDala 3.95 

NSCMemory 3.95 Ql MOS/LSI Data .4.95 

Intel Qatabook 4 95 Herrt»AnaIog08»abook...4.95 

Intet MCS 85 ManuaL. . . .7.50 Tt UnearCootrol Date 3.95 

I BOOM »UU 



7.75 




Vol. II 

Vol III Some Real Support Devices w/Binder M-9Q 

lnlrotoMlcroaVoil.111 "20*0. 

SAtB • D4UTMIUM C04WVTBB BOOKS a BALB 

Understanding Computers 'fr tt *. 

SOSOMicrocomputor Experiment* T3M- 

Beginning BASIC *»*. 

Beginners Glossary & Guide Wfc 

Peanut Bulter & JoHy Outdo lo Computet* .TS*> 

fioao Machine Language Programming ...T3*. 

Home Computers Vol. I Hardware TTB* 

Home Computer* Vol. II Software TAW 



rship Simulato 



MICROPROCESSORS STATIC RAM HEADQUARTERS SOCKETS 



ZSOOO SCALL 

ZBO 14.M 

Z-BOA 18 95 

F-8 13850) 16 95 

2650 18 95 

CD (802 17.95 

80BOA 496 

8C80A-4MHz 19 95 

SALE 8085 1t.M 

8008-1 1*35 

2901 12.95 

2901A 19.95 

TMS 9900JL 49.95 

CP1600 39 95 

6502 11.50 

6502A 19.95 

1MB 100 ... 29.95 

6800 13.95 

6802 P .. 24.95 

8035 . . . 19.95 

8755 49-95 

8748 6995 

6809 5 CALL 

8086 ...SCALL 

SUPPORT DEVICES 

AM9S1 1 *r,ih Processor S195 00 

AM 9511-1 300 ns 245.00 

AM95I7 DMA Connolly 7195 

AM95 1 9 Universal Inlerrupl 24 95 

3681 (2B0PIO) 9.95 

36JJ1-4I4MHH 14.95 

3882 (2-80 CTCl 9.95 

3882-4 IflMHn id.95 

3883SIO 29.95 

3884 DMA 49.95 

8205/7 4S 138 Decoder 
8212 8txt I/O 
8214 Priority Inl 
8216r3usOr«er 
8224 Clock Gen 
8224-4 |4MHj| 
8226 Bus Dover . . 

8T26 Bus Driver 

8228 Sys Control . . 
8238 Sys Con! .. . 
8251 Proo I/O 
B2S3 Inl Timer 

8255 Prog. I/O 

8257 Prog DMA , 

8259 Prog. Int 

B275 CRT Controller 
8279 Prog. Keyboard 
6810-1 12B*8 RAM 

6820 PIA . . . 

6821 PIA . . 
682BPnoiilyim 
6831-1 512 » 8 Eprom 
6850 ACIA 
6852 Senal Adapter 
6845.'HD46505CRTO 
6860 Modem ....... 8.95 

6862 Modulator 11.95 

6871 A tOMHrOSC 25.95 

6875 8.25 

6880 Bud Driver . . ... 2 39 

MC684&B 1B.9S 

1821 SCD IK RAM 25.00 

1622 SCO 256. 4 HAM ., 16 95 
1824 CO 32 *B RAM ..... 9 95 

1B52 CD 8 bit I/O 1095 

1854 Uart 10.95 

1856 CO I/O 895 

1B5TC0I/O 8 95 

6520 PIA 7.50 

6522 Mull 9 25 

6530-002 1*50 

6530-003 15 50 

6530-004 15 50 

6530-005 1550 



250 
4.50 
2 50 
2 95 
9 75 
395 
239 
595 
625 
6.95 
19.50 
585 
17.95 
17.05 
4B.95 
16.95 
4.75 
5.95 
6.50 
8.95 
12.95 
5.95 
5.95 
39.95 



DYNAMIC RAMS 

416/4118 18K(16Pin) 9.95 

SetotB416s 74.03 

41168K(18Pn) 6.95 

4050 4K X HIS Pin) 425 

4O604K. 1(22 Pin) 4.95 

409B4KX I (18 Pin) 3.95 

2104 4K* 1 (16 Pin) 4.75 

4027 4Ki 1 (16 Pin) 4.95 

5261 1.95 1103 1.95 

5262 1.95 40OBL....4.95 

5270 4.95 8605 7.95 

5280 4.95 6604 4.95 

5290. ...1245 6002 1.50 



PROMS 

27D6 

2?08-6 

1702 A 

2732 

2716-5V 
2716-5V. 12V 
2758 5V 
S203AQ . . 
5204 AQ 



BAUD RATE GEN 

MC14411 ....... 1195 

4702 14 95 

W01941 , 995 

KEYBOARD ENCOOERS 

AY5-2376 1375 

AY5-3600 13 75 

HD0165 9.95 

74C922 9.95 

74C 23 9.95 

A/D CONVERTERS 



8700 B W Binary . . 

8701 10 txl Binary 

8703 B WITS 

9400 Volt to Freq Conv. 
87SQ 3-1/2 Diqil BCD . 



. 13.50 
.22.0C 
.13 50 

...7.25 
13.95 



1408L66bi|, 3.95 

1408L86bit 5.96 

DACOIA/D 5.95 



2112-1 
2101-1 

2114L-250ns. 
21l4L-300nS 



21L02 450ns 
2 IL 02 250«s 159 

2102 > 25 

2111 375 

295 
290 
1295 
895 
7.50 

4044/4041 300ns. 995 
4044/4041 «50na. 7 50 
EMM4200A 9 75 

EMM4402 
EMM4B04 
5101C-E 
upd410 142001 
AMD9140/4I 
AMD9130/3I 



1-24 25-99 
1.30 125 



3.55 
265 
255 



12, 
7 95 
1095 
1095 
1295 



7.95 


645 


675 


4.76 


875 


795 


675 


4.7fl 


675 


795 


725 


825 


11.50 


9 95 



FSC 460,46416k CCD Only $16 95 Eacn 



925 
5 25 

1025 



195 

P2l25/93425l45nsl 795 
6508 1K«1 CMOS 7 95 
6518 IK < 1 CMOS 7 95 
?4Sl8964b 1 lRam 3 95 
8155 l/Ow/Ram 21 95 
2147 LowPower4K Static 14 



7 35 7 25 

795 725 

7 95 7.25 

3 25 2 50 

95aa. 



8 Pin W/W 
14 P.r, W/VV 37 
16 Pm WW 38 
18 Pin W/W 60 
20P.nW/W 10 
*2P.nW/W 93 
24 P,n WW 85 
28 P.n W/W i 1 5 
40P>nW/W 1 49 



b Pin S/T 1 7 

14 P,n S/1 20 

1fj P.n ST 12 

leP.nbT II 

20 P.n S7 34 

22 P.n ST 35 

24 P,n S'T 4 I 

38 P.n S 1 49 

40 Pi« S 1 hi 



CHARGE COUPLED DEVICES 

16K CCD ■ Firs! l.me olleied Fanchild 460 CCD 
16K Memory (now you can eiperimenl with CCD 
lechnology al a reasonable price 1 7 page Applica- 
lion note supplied with each order Quanlily Umiled) 

$ 16.95 each [reg. 43.00) 



CRYSTALS 


Micrepro«aaaar 1 


Frequency 


Price 


10MH; 


5585 


1 8432 


495 


20MH? 


585 


201MHi 


295 


2097152MHI 


585 


2 4576MHI 


585 


3 5795.15MHz 


150 


4CMHi 


4 95 


4 1 94304MHr 


595 


49l520MHi 


595 


SOMHz 


4 95 


5 0688 


4 95 


5 7143MHz 


5 95 



6144 

6 5536 

lOOMHr 

130MHz 

1431816 

IBOMHi 

18 432MHz 

200MHz 

22 1 1 84MHz 

27 0MHz 



100KC t295 

DISPLAYS/OPTO/LED'S 

* 7SEQMEKT * CAIvC * CLOCK* * 

DL 704 <CC), DL 707 ICA .300" Red 99 

FND 357 (CO .357" Red 99 

FND 500/503 [CO 500" Red 99 

FND 507/510 (CA». 50TX Red 99 

FND 600/803 (CO B00"Red 1.75 

FND 807/8 10(CAI .800" Red 1.75 

XAN 3082 .500" Green 1.15 

HP5082-773I (CA) ,300" Red 99 

9 Digit Bobble Mini Cate. Display 99 

9 Digit Panaprex Display .400" 99 

9 Digit Fluorescent .300" 99 

M A1003 1 V Auto Clock Module 1 S.9S 

Bejel lor MA1003 w/Red Filter 4 95 

MAI002A LED 12 hr.&or* Module 10.95 

*HSX mS**JIVS*UtCOMODItPt4YS* 

HP 5082-7340 Red Hexldecimel 1595 

HPSO8Z-73O0 Red Nymeric M.95 

TIL 306 Numeric w/Loglc 8.95 

TIL 308 Number wr/LO0iC B.95 

TIL 309 NumterwrLoglc BBS 

T1L311 Hex8dacim"Bl 1 .95 

MAN 2A .320" Red Alone-Numeric 6.95 

MAN 10A.270' Red Alpha-Numeric 695 



TEXTOOL ZERO 
INSERTION FORCE 
SOCKETS 



CONNECTORS 

DB25PIRS232I 325 

DB25S Female. 3.75 

Hood 125 

Sal w/Hood. Sale S6 50 

22/44 W/W, S/T. KIM 2.95 

43/86 W/W. S/T. MOT 6.50 . 

50/100 S-IOO Connect or w/w ... 4,25 
SO 100 S-100 ConrwOors/t 3.25 



CTS DIPSWITCHES 

CTS20&4* 51 75 CTS206-8 51 95 

CTS20&-5 SI 75 CTS206-9 5195 

CTS206-6S175 CTS206-10 SI 95 
CTS206-? SI 75 



NAKEDPCBOARDSALE 

Z-80CPU (Ithaca) S34.95 

8080ACPU 34 95 

a K Static RAM (Logos) 2 1 95 

16K Static RAM (2 114) 29.95 

32K Sialic RAM (2114) 49.95 

Floppy I/O (Tarbeil) 39.95 

Casselte I/O fTarbell) 29.95 

BK. Eprom (270SI 21.65 

1702 Ept mBoard -30.0G 

2708/2716 Eprom (Ithaca). . . 34 95 
2708/27 1 6 Eprom (WMQ . . . 30 00 

Realtime Clock 34,95 

ACPProloBd.OMConn ). ..27.95 

Vector 8800 Proto 19.95 

Vector 8803 1 1 slot MB. . . 29 95 

ACP Extender yv/Conn 15 95 

Video Interlace (SSM) 27 95 

Parallel Interface (SSMl .... 27.95 
13 Slot Mother&oard (WMC) 32.95 
9 Stot MotherEtoard (WTX) 29.95 
SStot Mother (eKpandaWel . . . 3495 



WAVEFORM 
GENERATORS 

8038 Fimcncn Gen 3 95 

MC4024VGO 2 45 

LM566VCO '75 

Xrt;'206 Function General." 5 25 

FLOPPY DISK I/O 

1771-01 8"B Mimlloppy 2795 

uPd372 Nee Floppy .49.95 

1781 Dual Floppy 29.95 

1791 Dual Floppy 39.95 

TV INTERFACES 

Pixie-Verter 650 

TV. 1 Video Interi&ce 695 

Mierovetler 3500 

M3R Modulator 35.00 



995 

7.50 
. 3 95 
..90.00 
44.95 
29.95 
2995 
11.95 

9 95 
1295 

2 95 
..B.M 



IM5610 
BALBBBSaata 

62Sll0 612x8(TS) 18.95 

82S1233 x8 2.60 

82S120 256x4 3.50 

82S129 258 x 4 (T9> 3.50 

82S130&12x4(CC}..., 6.50 

NSC DM7578 32 x 8 2.9S 

CHARACTER QEN 

2513-001 |5V) Upper 9.50 

251300515V) Lower 1095 

25t3-ADM3(5V)Lower 1495 

MCM6S71 10.75 

MCM8571A 1075 

MCM6574 14.50 

MCM6575 14.50 

UARTS/USRTS 

R1602BI5V. 12V) 395 

AY51013I5V, 12V) 4.95 

AYS10l4A.rt612(5-14V) ... 8.95 
AY5101SA./IB83(5V) 695 

TMS 601 1 (5V. 12V) 5. 

IM6402 795 

IM640 ....... 895 

2350 USRT 9 95 

1871B Astros 24 95 

SALITH1473B 9.8S 



SPECIAL PURCHASE 
(while supply lasts) 

21 L02-4 (450 ns) 100 @ 99$ ea. 
21L02-2 (250 ns) 100 @ $1.15 ea. 
TMS4060 NL 4K Dynamic RAMS 
(pullouts) $1.95 ea. 

1488 Line Receiver 100 @ 750 ea. 

1 489 Line Driver 1 00 @ 750 ea. 

1 489 House Marked 1 00 @ 500 ea. 
1 496 L Demodulator 25 @ 750 ea. 



COMPUTf 


[R SPECIALS 




LIST SAUE 






Apple II Plus W/16K U95. 990. 


IPSI 1620 Diable RO 3295. 


2695. 


PET 2001-16N 995. 895. 


AnadexDPBOOO 995. 


895. 


ExidySorcererw/SK 895. 795. 


Centronics Micro P-1 59S. 


395. 


Compucolorllw/8K 1495. 1395. 


Centronics Micro S-1 595. 


525. 


Cromemco Sys III 5990. 4990. 


Soroc IO 120 . 995. 


850. 


HoriJon I w/t6K 1599. 1349. 


Teletype Model 43 1349. 


1150. 


TEIPI208W/32K 


HiPtot Plotter 1085. 


899. 


dual (loppy & CRT 


HiPloi Digitizer 795. 


735. 


(1 avail., 4995 2995 


Intertube II 895. 


784. 


Pascal Microengine 2995 2395 







* IWHe * OPTXHBOLATBM * 

LEDS Red. Yell w. Green .165 5/1 00 

MCT 2 Prtolo XS R HTC 250, 30V . . 99 

4N25PholoXSTRHFE250. OV 1.29 

4N33 Photo rtlngton 1.75 

FPT 1 108PholoXSTR RbI Lense . . . . SALB4/1 00 

MONTHLY IC SPECIALS 

LF1350BJFETAnlo<jMuHIBb« 8.95 

ICM7208 Seven Decade Counlef 17.96 

ICM7207 OtcMlalor Conlroilar 6.95 

ICM7045 PhSislon SlO/Wetch Timer 22.05 

ICL7107 3<* Dtoit A/D (LED) t4.05 

ICL8211 Vo«aoe FMerence 1.95 

LM390 Batiery OP. Audio Amp 3/1.00 

LM1850 Ground F«u«lC 3/1.00 

LMIBOOPhma Lock Loop FM Stereo 3/1.00 

LM1820 AM Redlo 3/1.00 

DS3625 Dual Mm Sense Amp 2.50 

1406L8 4/19.95 10147ECLR»m...a96 

1468/1489 2/1.99 LF358HB,Fet ..3/1.99 

22 Pin S/T Socket 10/1 .00 MCM1450S 895 

B223Prorn 2.95 74S8B 3/l.gg 

MK5014CsJ a 5 /]]9 9 74107N .6/1.99 

74141N 3/1 M »6452N 8/1.99 

8'T2«/9T2a 2JB W1M-14 10/1.99 

B5M90 9.95 6S5CN 4/199 

8281 50 5S6CN 3/1.99 



TV CHIPS/SOUND 

AV38500 1 6 Games B/W : ... $4.95 
AY38515 Color Converter. ... 2.95 
AY38803-1 Roadrac* Game... 6.95 

AY38605- 1 Warfare Game 9.50 

AY38606-1 Wlpeout Game. .... 9.50 
AY38807-1 Shooting Gallery. . . 6.95 
AY3891 Gimlni Crlckel Sound 

Generator 12.95 

SN78477 T] Sound Generator ... 3.95 
MM5320/21 TV Synch Gen. ... 9.95 

MMS369 Prescaler 3.95 

LM1S89RF Modulator 3.95 

MMS71O00 NSC Color TV 

Game 6.9 

MM57104 OockGeri. 3.75 

RF Modulator w/Audio 6.95 

All S*n>rnenls FCM or UPS. Orders 
under $l OOOO add 5«o handling a nd 
postage. Orders wer *100 00 add 
2.5^) handring & poataee. Maater- 
charge/ p o» A rAmercan Exore**/ 
COD accepted w/25 1 ^ deoosll.Cali- 
lomia Residents add B'VjIax. Foreion 
Orders add 8% handling. An parts 
prime laciory tested Busrenieed 
Add .35 cents tor Data. 
Retail pricing may vary Irom Mail 
Order Pricing. All pricing Subtect lo 



P. O. BOX 17329 Irvine, California 92713 Phone (714) 558-8813 



TWX: 910-595-1565 



Retail Store Open Mon. - Sat. * 
Located at 1310 "B" E. Edinger. 
Santa Ana, CA 92705 



260 BYTE October 1979 



Circle 4 on Inquiry card. 




COAUTCEB 



Box 1 7329, 1 mine, CA 9271 3 
(714)558-8813 



BACK TO SCHOOL 

COMPUTER 
SPECIALS 



mm #*/u/m»SALE $100.00 OFF 
. . . and it's COLOR 

"The Compucolor II" 

... a personal colorgraphics system tor the modern computer man . . . 

• Color Graphics 1 3" Color CRT 

• Proven 8080A CPU System 

• 16K Extended Disk Basic 

• Up to 1 1 7* Key Keyboard 

• Up to 32K* RAM 

• Minidisk Drive 51.2 K Bytes/Side ^^^1 

Model 3 w/8K, 72 Key Keyboard, RS232 . JAKE ..($1495.00 
Model 4 w/1 6K, 72 Key Keyboard, RS232 *J So on • •{ $1695.00 
Model 5 W/32K, 72 Key Keyboard, RS232 off . . . ($1995.00 

Options: 1 01 Key Keyboard Add $150.00 

117 Key Keyboard Add $225.00 

Formatted Diskettes 2/$1 9.95 

Programmed Diskettes $1 9.95 

Diskette Library Inc. Hangman, Othello, Math, Chess, Startrek, 
Blackjack, Cubic Tic TacToe, Finance Vol. I, Finance Vol. II, Bonds and 
Securities, Assembler, Text Editor, Personal Data Base. 




EXIDY SORCERER only $799.00 




$799 w/8K 
$1099 w/1 6K 
$1249w/32K 
$1449w/48K 

User progra mmable or use cartridaes. 
Combinesthe desirable features orthe 
PET. APPLE and TRS-80 into a com- 
plete expandable computer system. 

•• I/O expansion kit $1 49.00 

•• Vista V-200 add-on mini- 
floppy for Exidy. (requires exp. 
module) w/CPM $699.00 



•• New Word Processing Pac 

$99.00 

• INCLUDES: 
Keyboard & enclosure 
90 day Warranty 
MICROSOFT BASIC 
Video & Cassette Cable 
Complete Documentation 
•• S1 00 Expansion 

Module Add $299.00 

•• Cassette recorder 

Add $44.95 

•• Sanyo 9" Monitor 

Add $169.95 



KIM-1 
Now only 
$179.00 

• •Power Supply Add S59.95 

••Cassette Recorder . . . Add $44.95 
••Sanyo 9" Monitor. . . Add $1 69.95 
Add enclosure $29.95. 




COMMODORE 
"PET" 

Delivery from 

stock / ^, 

Advanced 8K £ ^S^> 

Model w *im ^^^^ 

only $775.0^"^ 



CBk 




SYM-1 IN STOCK 

Reg. $269.00 

Now 
$249.00 

• KIM-1 Compatible 

• 4K ROM Monitor 

• 1 KBytes 2114 RAM 

• 65K Memory Expansion 

• User EPROM 2716 

• • Power Supply Add $59.95 

•• Cassette Recorder Add $44.95 

• • Sanyo 9" Monitor Add $169.95 

School & group discounts available. 
Buy now and receive $100.00 worth 

of discount coupons: I.e., 

• SRM-1 1K Static RAM exp. 

reg. 42.00 disc. $32.00 

• PEX-1 I/O Port, reg. $60.00 . disc $50.00 

• SYM BAS-1 Basic ROM (Microsoft) 
reg. $159.00 disc. $109.00 

• KTM-2 CRT/TV Keyboard, 

reg. $349.00 disc. $319.00 

SYM Enclosure $39.95 



AIM 65 




$375.00 

ADVANCED INTERACTIVE 
MICROCOMPUTER 

• On Board 20 column alphanumeric 
printer 

• Alphanumeric 20 character display 

• Terminal style Keyboard 54 Keys 

• 6502 based CPU 

W/1KRAM $375.00* 

W/4KRAM $450.00* 

Assembler ROM . . . Add $85.00 
BASIC IN ROM ... Add $1 00.00 

Power Supply Add$99.95 

Enclosure Add $44.95 



RCA 
COSMAC VIP 




NEW LOW PRICE $249.00 

Assembled. Regular price $299.95 

w/Sanyo 9" Monitor $1 69.95 

VP-590 Color Board 69.95 

VP-595 Sound Board 49.95 

VP-570 4K Expansion Board 95.95 

VP-580 Expansion Keyboard 1 5.95 

VP-700 Tiny Basic ROM 49.95 

VP-71 VIP Game Manual 1 0.95 



8 

z 
o 

PC 

o 

U- 

UJ 

-1 

5 

I 

o 

z 

§ 
i 

0) 
0) 



low APPLE II PLUS $990.00 

APPLE'S new upgraded APPLE II w/1 6K is now in stock and 
available for the lowest price ever, only $990.00. You can add: 
•• M & R Modulator for $29.95 
** Sanyo tape recorder for $44.95 
•* 1 6K upgrade kit for only $74.95 ea. 
This is a limited of fer and we reserve the right to change without notice. 



NORTH STAR HORIZON *doubu wnwtv* 

Now in stock North Star Z-80- based high-performance computer. 



• 180KByies per Disk 

• Z-80 Processor 

• Motherboard 

• 2 Serial +1 Parallel Port Avail. 

• 16KRAM 

Horizon I Kit Reg. $1599.00 
Horizon II Kit Reg. $1 999.00 
North Star Double Density Disk Subsystem Kit 




PROCESSOR TECHNOLOGY SALE 

SOL-20 DEALERS & USERS INVITED! 



**** 



«*28s 



a* 



We purchased Processor Technology's entire inventory of 
spare parts, work in process, and finished goods. This 
material will be sold on a first come first served basis. 
Advanced will continue to support some SOL products on a 
limited basis so make sure you get a copy of our complete 
inventory listing and a place on our SOL mailing list. 



• New SOL-20 w/o Memory 

• SOL-20 Keyboards 

• 8KRA Memory Boards Assembled 

• N KRA Memory Boards up to 64K 



$1295.00 

$139.95 

$129.95 

$CALL 



Plus more endless PTI bargains send for details. 



WE TAKE B/A, VISA, AM. EXP. • ADD 2.5% HANDLING & POSTAGE • PRICES SUBJECT TO CHANGE W/O NOTICE 

Circle 4 on inquiry card. BYTE October 1979 



261 



Widen the ability of yourTRS-80 




The Vista V80:$395 



The Vista V80 Mini 
Disk System is the perfect 
way to widen the capabilities 
of yourTRS-80* Micro- 
computer. Quickly and 
inexpensively. Our $395 
price tag is about $1 00 less 
than the Radio Shack 
equivalent. Our delivery time 
is immediate (24 hour turn- 
around from our Santa Ana, 
Ca. factory). And our system is 
fully interchangeable. That's 
just the start. 

ltwillgiveyou23% 
more storage capacity by 
increasing useable storage 
from 55,000 to 65,000 bytes 
per drive with our new 
software patch. 

It can work 8 times 
faster than the TRS-80 Mini- 
Disk system, because track- 
to-track access is 5ms versus 
40ms for the TRS-80. You 
can realize this added speed 

*TRS-80 <&Tandy Corp. 
262 BYTE October 1979 



once the new double disk 
expansion interface is 
available without expensive 
modification of the existing 
unit. 

It has a better 
warranty than any comparable 
unit warranty available - a full 
1 20 days on all parts and 
service. When you consider 
how much more goes into the 
Vista V80, that shows a lot of 
faith in our product. 

A full 3 amp power 
supply means you have 2Vi 
times the power necessary to 
operate the V80, and full 
ventilation insures that there 
will be no problems due to 
overheating. 

The Vista V80 Mini 
Disk System requires Level II 
Basic with 16K RAM 
Expansion interface (it 
operates from the Radio 
Shack interface system. It 



comes complete with a 
dependable MPI Minifloppy 
disk drive, power supply, 
regulator board and vented 
case. It's shipped to you 
ready to run - simply take it 
out of the box and plug it in. 
You're in business. From the 
company that means 
business-Vista Computer 
Company. 




The Vista Computer Company. 
Manufacturers of Quality 
Computer Systems 
and Software. 

714/751-9201 

1 320 East St. Andrews Place 

Suite I, Santa Ana, Ca. 92705 



Circle 378 on inquiry card. 




NEW 32K EPROM/RAM MEMORY CARD 



SS-50 
BUS 



5V 
only 



DSD P/R-32K $27.00 

2716 EPRDMS & TMS 4016 2K * B Static RAM. 
4 Independent BK memory blocks. Size 9" x 5ft". 

DSD 2114-16K , $27.00 

16K Static RAM memory card using the 2114 or TMS 4045 

IK x 4 Static RAMS. Size 9" x 5ft". 

2 Independent BK memory blocks. 5V only. 

NEW DSD U P 8255 IC & M) $14.00 

Universal parallel interface card for Both the SWTP 30 pin IfD 
BUS (M) & the DSD 27 pin BUS (0. Utilizes INTEL'S B255 
PROGRAMMABLE 1J0 chip. Wire wrap area for full UTILIZATION 
of the 8255. Card siza 5ft" x 5" (M). 5fc" x 4ft" (C). 
ALL cards are bare board with edge connectors & Data. 

% DIGITAL SERVICE & DESIGN 
P.O.BOX 741 M/C& 

NEWARK, OHIO 43055 VISA 

Ohio residents add 4.5% sales tax. 



Circle 102 on inquiry card. 



Metnorex 
Floppy Discs 

Lowest prices. WE WILL NOT 
BE UNDERSOLD!! Buy any 

quantity 1-1000. Visa, Mastercharge 
accepted Call free (800)235-4137 
for prices and information. All 
orders sent postage paid. 



PACIFIC 
EXCHANGES 

100 Foothill Blvd. 
San Luis Obispo, CA 
93401. (In Cal. call 
(805) 543-1037.) 




Circle 294 on inquiry card. 



tinyFORTH 



ttnyFORTH is the TRS-80 cassette oriented 
version of the dictionary based computer 
language called FORTH. 
tinyFORTH Includes these features: 
*• Dictionary-oriented structured high-level 
language • Buiit-in assembler and text 
editor ..* Enhanced graphics .,- Cassette 
tape input and output %<> Interpreter for quick 
program development ,«* Compiler for fast 
execution ** tinyFORTH is faster, more 
compact, and more powerful than 
BASIC • tinyFORTH and FORTH programs are 
interchangeable v Easy to use. 
tinyFORTH cassette for 16K TRS-80 and full 

documentation $29.95 

Documentation Only $9.95 

All orders are fully guaranteed. Add $1.50 for 
postage and handling. Order with check, 
money order, COD, Visa, or Mastercharge. 
Specify TRS-80 level when ordering. 

The Software Farm 

Box 2304 Dept.A2 Reston, VA 22090 



SURPLUS ELECTRONICS 



ASCII 



rsg»^ 



ASCII 



® 
IBMSELECTRIC 

BASED I/O TERMINAL 

WITH ASCII CONVERSION 

INSTALLED $645.00 

• Tape Drives • Cable 

• Cassette Drives • Wire 

• Power-Supplies 12V15A, 12V25A, 
5V35A Others, • Displays 

• Cabinets • XFMRS • Heat 
Sinks • Printers • Components 
Many other items 

Write for free catalog 
WORLDWIDE ELECT. INC. 
130 NORTHEASTERN BLVD. 
NASHUA, N.H. 03060 
Phone orders accepted using VISA 
or MC. Toll Free 1-800-258-1036 
In N.H. 603-889-7661 



Circle 391 on inquiry card. 



FLOPPY DISK 
REPAIR 

# PerSci and Shugart 

# Quick turnaround 

# Factory trained on 
PerSci 

»X»!.-«— Ki-»Xi d worn* * 1 u awn* * jr it mmm* * jt i> 

COMPUTER SERVICE CENTER 

7501 Sunset Blvd 

Hollywood CA 90046 

213-851-2226 



Circle 68 on inquiry card. 



O.S.I. 

RS-232 KIT FOR 
OP'S & C2-4P'S 

* EASY TO FOLLOW STEP 
BY STEP INSTRUCTIONS 

* ALL PARTS INCLUDED 

* ONLY $35 COMPLETE 

* FULL GUARANTEE 

FARAGHER& 
ASSOCIATES 

7635 BLUEMOUND 

MILWAUKEE, WI 53213 

(414) 258-2588 



GLARE FILTER 

HIGH CONTRAST 

SHARP RESOLUTION 

MICRO-POROUS OPTICAL FILTER 

FOR HOME COMPUTER CRT'S 



With Filler 



No Filler 











WS5 ■■* 




TRSBO 


19.95 


PET 


19.95 


ADM3A 


19.95 


Soroc 10 120 


19.95 


Hazehine 




Southwest Tech. 


19.95 


1400-1500 


19.95 


■ Micro-Term 




Pefkin Elmer 


19.95 


ActV 


19.95 



Easily Installed • Instructions Included 

For information on other models 

dial (41 5 J 456-8909 

SUN-FLEX COMPANY, INC. 

3020 Kerner Blvd. • San Rafael, CA 94901 
Check/money order Visa/Maslercharge 



Circle 343 90 inquiry card. 




6800 DEVELOPMENT PAC I 

•CONTROL MODULE-single board 

computer 
• 16K RAM MODULE-16K 8-bit bytes 
•RS232 INTERFACE-switchable rates 
•CASSETTE INTERFACE-300/2400 

baud 
•FANTOM-II monitor/debug ROM 
•EDITOR/ASSEMBLER-on cassette 
•CARD RACK, BACK PLANE, POWER 

SUPPLY 
•$895 



B 



VNNTKC 



Corp. 



Phone: 317-742-8428 

1801 South St.. Lafayette, IN 47904 



Circle 389 on inquiry card. 




6809 



"ttti 



hi 



6809 
MONOBOARD COMPUTERS 

EXORCISERS* / MICROMODULE* BUS 

MIKUL 6809-1 

3 PIAS. 1 K RAM, 4/8 K EPROMS 

MIKUL 6809-2 

2 PIAS, 2 ACIAS, 2 K RAM (BATTERY 

BACKED) 4/8 EPROMS 

MIKUL 6809-3 

1 PTA (6840), 2 PIAS, 1 ACIA, 2 K RAM 

(BATTERY BACKED), 4/8 K EPROMS 

T9 BUG MONITOR 

* Trademark of Motorola 

TL INDUSTRIES, INC. 

NORTHWOOD, OHIO 

419-666-8144 



Circle 333 on inquiry card. 



Circle 138 on inquiry card. 



Circle 374 on inquiry card. 



TO ORDER CALL TOLL FREE 800-223-7318 



«*« PET BUSINESS SYSTEM 



PET 2001 -16/32K 

The PET is now a truly sophisticated Business System with the 
announcement of the Floppy Disk and Printer. This is an Ideal 
business system for most professional and specialized fields: 
medicine, law. dental, research, engineering, toolmaking. 
printing, education, energy conservation, etc. . . . 
The PET Business System as a management tool, delivers 
information to all levels of Business, previously attainable only 
with equipment many times more expensive. The PET 
Business System is one of the most cost efficient business 
tools today. Here are just a few of the cost-saving uses in the 
corporation, professional office or small business: stock 
control, purchasing, forecasting, manufacturing costing, 
customer records, mailing lists, etc. , . . 



Features Include: 

• 16 or 32K bytes RAM user memory 

• 14K ROM operating system including a machine 
language monitcr f 

• Full-sized Business Keyboard fl 

• Upper/Lower case and 64 graphics characters / 

• 9-inch CRT 

• 8K ROM expansion sockets 

• File management in operating system 



16K- $995, 
32K - $1295 





DUAL DRIVE FLOPPY DISK 2040 



The Dual Drive Floppy is the latest in Disk technology with 
extremely large storage capability and excellent file 
management. As the Commodore disk is an "Intelligent" 
peripheral, it uses none of the RAM (user) memoiy of the PET, 
The Floppy Disk operating system used with the PET computer 
enables a program to read or write data in the background 
while simultaneously transferring data over the IEEE to the 
PET. The Floppy Disk is a reliable low cost unit and is 
convenient for high speed data transfer. 
Due to the latest technological advances incorporated in this 



disk, a total of 360K bytes are available in the two standard 574- 
inch disks, without the problems of double tracking or double ' 
density. This is achieved by the use of two microprocessors 
and fifteen memory IC's built into the disk unit. 

Features Include: 

• 360K bytes storage • 4K encoder and decoder in ROM 

• 6504 microprocessor-controlled • 4K RAM 

• 8K operating system in ROM • Uses single or double sided floppies 



MODEL 2022 



TRACTOR FEED PRINTER 2022 

The Tractor Feed Printer isahighspecification printer thatcan 
print onto paper (multiple copies) all the PET characters - 
letters (upper and lowercase), numbers and graphics available 
in the PET. The tractor feed capability ha3 the advantage of 
accepting mailing labels, using standard preprinted forms 
(customized), check printing for salaries, payables, etc. 
- The PET is programmable, allowing the printer to format print 

Model 2023 (Friction Feed) - $849 



for: width, decimal position, leading and trailing zero's, left 
margin justified, lines per page, etc. It accepts 8y 2 -inch paper 
giving up to four copies. 

Features Include: 

• 150 cps • 6504 microprocessor-controlled • y 2 K RAM buffer 

• Bottom and reartractor feed • 4K operating system in ROM 

CABLE FROM PET TO DISK OR PRINTER - $39 
CABLE FROM PRINTER TO DISK - $49 



$995 (Next day delivery available.) 

FULL SYSTEM NOW IN STOCK FOR IMMEDIATE DELIVERY! 



SUPER WORD PROCESSING SYSTEM 

t^23Q*5 PfHTinlptp- System Includes: • Anderson Jacobson 841 Selectric Pri 

^ WW UVIIipiCIC • 16K PET wilh Full Sized Keyboard -Interface 

With SOftWcirP "Tape Drive Unit • Super Word Processing. Software 



The Super Word Proc 
Assembly Language 1 II 



i is wrilten in 6502 
etousethePETcompu 



the system has automatic text 
the need for carriage returns. 



the page. Up and down screen 



t HYPHEN) for splittings 




BUSINESS SOFTWARE FOR 
PET BUSINESS SYSTEM 



• Super Word Processing Package 
(Disk $9,9.95, Tape' $24.95) 

• Real Estate $ 65 

• Statistics 

• Banking & Finance 

• Mail List Management S125 

• Data Base System $125 

• KRAM - Keyed (index sequential) random access 
method. Written in 6502 machine code. Gives PET 
disk true random access $75 



• Small Business Package 
(A/R, A/P, G/L) 

• General Ledger $195 

• Cash Receipts & 
Disbursements — •>■ $125 

• Inventory Control $100 

• Payroll w/costacct'g.. $100 




N.Y. residents add 8% sales tax • Same day 
shipment on prepaid and credit card orders 
i • Add $5 shipping for computers, $3 for 
boards, $1 each cassette tape. 



WS^V Min Credit Card Order $75 
Open Mon-Fri 10-6 Sat 10-4 




PET MUSIC BOX 

from SOUNDWARE 

Add music and sound effects 
to your programs. Compose, 
play, and hear music on your PET. 
Completely self-contained 
Free programs $2g gg 



NEW!lro m 

Eventide 
AUDIO 
SPECTRUM 
ANALYZER 

• Mounts inside the PET 

• Third-Octave 
audio spective analysis 

• Complete with software 
and documentation 

• Replaces equipment costing 
thousands of dollars 




$595 




MARK SENSE CARD 
READER $750 



• Automatic turn-on and card feed| 

• Ideal for marking test scores 

• Accepts any length card 

• Perfect for schools & business j 



TO ORDER CALL TOLL FREE 800-223-7318 (46th s 

ThA fVllV/IDI ITPP PAOTODV 485 Lexington Avenue 750 Third Avenue New York. N.Y. 10017 
I I ISZ VsVSIVirU I tn rMV/ I V/n I (212) 687-5001 (212) PET-2OOI Foreign order desk -Telex 640055 



264 BYTE October 1979 



TO ORDER CALL TOLL FREE 800-223-7318 




> 16-bit microprocessor 

• 16K RAM 

» 13" color monitor 
(24 lines of 32 chrs.) 

» 26K ROM operating system 
(includes 14K BASIC) 

» Sound - 3 tones, 5 octaves 

» 16 colors: 192 x 256 res. 

• Large Tl library of ROM 
programs available. 



APPLE II PLUS ONLY$1 1 95 



A complete self-contained computer system with APPLESOFT floating point 
BASIC in ROM, full ASC 1 1 keyboard in a light weight molded carrying case. 

Features Include: 

• auto-start ROM • Hi-Res graphics and 15 color video output. 

• Expandable to 48K. 

Programmer's Aid 50 

Speechlab 229 

Lightpen 250 

Communication Card . ., 225 

Modem 200 

EPROM Programmer 100 

NEW D. C. Hayes MICROMODEM II 

• Combines the capabilities of a communications card and acoustic coupler. 

• Plugs directly into Apple slot and modular telephone jack. co*7Q 

• Auto dial/receiver* FCC approved Only $o79 

NEW Mountain Hardware SUPERTALKER 

• Digitized speech recording and playback. • Must be heard to be believed! 

• Foreign language teaching pack available. • Software compatible. 

only $279 



Disk $595 

Add-on Disk 495 

Pascal Card 495 

Business Software 625 

Monitor 149 

Printer Card 180 



SUPRBR/MN 



TM 



INTE3TEC 

DATA 

SYSTEMS 

ONLY 

$2995 




More than an intelligent terminal, the SuperBrain outperforms many other 
systems costing three to five times as much. Endowed with a hefty amount of 
available software (BASIC, FORTRAN, COBOL), the SuperBrain is ready to 
take on your toughest assignment. You name it! General > edger, Accounts 
Receivable, Payroll. Inventory or Word Processing. . .the SuperBrain handles 
all of them with ease. 

Features Include: 

• two dual-density minifloppies with 320K bytes of disk storage 

• 64K of RAM to handle even the most sophisticated programs 

• a CP/M Disk Operating System with a high-powered text editor, 
assembler and debugger. 



only 
FINALLY k— 1$1150 

TCYAC \*i BKW is»includes 13" 

| lAAO \***^" "^^^ Color Monitor!] 

INSTRUMENTSTI-99/4 
Home Computer 

Many Peripherals. Coming soon! 



$1495 Complete! 
16K Model add $200 
32K Model add $500 



3\ 



on 



iv $795 



• 14K ROM Operating system 

• 8K RAM Memory 

• 9" Video Monitor 

• Built in Keyboard 

• Digitaliy controlled tape 



PET' 



COMPUCOLOR M Disk-Based Model 3 
Advanced hardware and software technology 
gives you: 

• 13" Color Display 

• Advanced Color. Graphics 

• 51K Disk Built-in __ 

• 16K ROM Operating System 

• 8K RAM User Memory 

• 4K RAM Refresh 

• 8080A Microcomputer 

• RS-232 I/O 



^SPECIAL SPECIAL 

$200 FREE Software with ^^l 
purchase of 8K PET >* | 



'Bm&l 




Over 1000 software 
tapes, books, disks 
on display. 
Come in and brouse.W 



* 



4 



' Data General 

10 Megabyte 
System $17,040 



DATA GENERAL 
micro NOVA 

The ultimate in small 
Business Computers 
when matched with 
COMPUTER FACTORY'S 
minicomputer. Software: 
Accounts Receivable/Payable, 
Inventory Control/ Order Entry, 
Genreal Ledger, Payroll Systems. . . . 
from $12,140 for 64K computer 
with cabinet, printer terminal, video terminal, 
dual disk and mutli-user operating system! 



M mm 
Xacco 

* Inuontr 



NEW! 

CENTRONICS 704 

« 180 cps Bi-Dtrectional 

• Upper/Lower Case 

• 9 x 9 Matrix 

• Tractor Feed 

• Up to 15" 
• Paper Width 

• RS-252 Seria 
Interface 



SOUNDWARE 

MUSIC BOX 



only $29.95 




CENTRONICS 753 



' New Word Processing Dot Matrix Printer 
' 130-150 cps • Proportional Spacing 
' Tractor Feed • N x 9 Matrix 

Call for Special prices 



Music and Sound Effects for PET. TRS-80. 
& Compucolor II Add music and sound effects to 
your programs. Compose, play, and hear music 
on your computer. Completely self-contained. 
Free programs. 



This fantastic program disk allows the statistician, 
Moving mathematician, trader in stocks, money or 

Average commodities, the ability to maintain 30 database 
Plot seriesof up to300 valuesand plot3differentmoving 

Program averages of a series at the same time, in 3 different 
FOR colors. Files can be updated, deleted, changed, 

APPLE extended, etc. 

A sure value disk at only $40! 

Word Processing For Apple on disk. ..$50 




COBOL, PILOT, FORTRAN, etc. Add rr 



SORCERER 

SPECIAL 
12" Video Monitor 
- for SORCERER 
($299 value) 

ONLY 

125 with 8K unit 
95 with 16K unit 
65 with 32K unit 



ANDERSON JAC0BS0N 




841 1/0 Terminal 
Ideal lor wort] proce 



JACOBSCIN 



;mg and small 



„NOW 



IN 



•ASCII Code 

• IBcpsPn 

• High Quality Seletlive Printing 

• Use Keyboard lor PET 

• Reliable heavy duly Mechanism 

• Completely Refurbished by A J 

• Service in IbMaior Crtrw 

Plus $35 Freight-In Charge 



STOCKIJ 

Parallel 

$1095 
$1195 



RADIO SHACK • PET • SORCERER • 
APPLE • COMPUCOLOR • ETC. 



PRINTERS • PRINTERS • PRINTERS 



The COMPUTER FACTORY'S extensive CENTRONICS 779 ....$ 945 

inventory and wide selection of computer TRENDCOM 100 375 

printers assures you of finding the printer TRENDCOM 200 595 

best suited tor your needs and INTEGRAL DATA 795 

specifications The following printers work PAPER TIGER 440 S995 

well with nil known personal computers COMPRINT. 560 



FREE 



$35 of Software with purchase 
of any computer on this page. 




Min Credit Card 
Order $75 



VISA 9 



Open 
Mon.-Fri. 
10-6 



N Y residents add 8 u o sales lax • Same day Oaf 1 0-4 
shipment on prepaid and credit card otders ^" l * ' U*t 
• Add S5 shipping for computers. S3 for 
hoatcls. S1 each cassette tape. 



NEW 
CENTRONICS~*730 

50 CPS - MICROPROCESSOR 
CONTROLLED! 

Tractor & Friction Feed • Uses 
Single Sheets, Roll, Fanfoid • Upper| 
& Lower Case • Light Weight 

Parallel $995 
Serial $1045 



&% 



0*^ 



TO ORDER CALL TOLL FREE 800-223-7318 J^m 

f\R/IDI ITCD CA#^Xr\DV 485 Lexington Avenue 750 Third Avenue New York. NY. 10017 
V/IVIr U I DPI iMV/ I \JT\ I (212) 687-5001 (212) PET-2001 Foreign order desk - Telex 640055 , 



BYTE October 1979 265 





• 






(•APPLE ) 




APPLE II or 






APPLE II PLUS $1019.95 




• 


DC HAYES MODEMS 339.95 




• 


FLOPPY DISK W/CONT. 529.95 




• 


APPLE SOFT CARD 159.95 




• 


PASCAL CARD 459.95 




• 


ALF MUSIC 
SYNTHESIZER 249.95 




• 


10 MEGA-BYTE DISK DRIVE 
(for APPLE) 4695.00 

UCATAN 
COMPUTER STORE 

across from Ramada Inn 

PO Box 1000 

Destin, Florida 32541 

(904) 837-2022 or (904) 243-8565 









Circle 309 on inquiry card. 



LIFETIME GUARANTEED 
QUARTZ CRYSTALS 



1.000 


5.00.0 




11.1550 


1.8432 


5.0 S 688 




12.440 


2.000 


5.185 




14.3182 


2.09.71 


5.2428 




15.000 


2.4576 


5.7143 




17.2422 


2.500 


6.000 




18.000 


3.000 


6.144 




18.432 


3.2768 


6.5536 




20.000 


3.579 


6.7584 




22.1184 


4.000 


8.000 




27.000 


4.1 943 


8.1818 




32.000 


4.9152 


10.000 




36.000 


ALL ABOVE MIX 1 


-9 


4.50 




M IX 1 0+ 


3.95 



ADD 5% SHIPPING 
CAL RES. - ADD 6% SALES TAX 

FREE OSCILLATOR SCHEMATICS 
WITH ANY ORDER 



QUALITY COMPUTER PARTS 

P.O. BOX 743/CHATSWORTH, CA. 91311 



Circle 323 on inquiry card. 



AURORA, IL AREA 

FARNSWORTH 
COMPUTER CENTER 

1891 N. Far ns worth Ave. 

Aurora, IL 60505 

(at the E-W Tollway) 

(312) 851-3888 

•Apple •Cromemco 
•Texas Instrument 

Now Featuring — 

IDS-440 Printer 
w/Graphics Software for Apple 

Check our prices on Heath 

Pet, Atari, Imsai, Sorcerer 

WEEKDAYS 1 2 to 8; SAT. 1 to 5 

Sales — Service — Classes 



FIELD ENGINEERS 

Never sell yourself short! 
If you fix computers and their 
peripherals, and it is time for a job 
change, let 

FIELD SERVICE 

SEARCH 

locate the best opportunities for 
you. Employer pays fees. Call 
collect (312) 398-5535. 
Address: 

FIELD SERVICE 
SEARCH 

925 E. Rand Road 

Arlington Heights, IL 60004 

Private Employment Agency 



Circle 136 on inquiry card. 



$231 Paper-Tape Reader 
Has One Moving Part 




TTL interface, reads standard tape at 150 
cps, asynchronous. Bi-directional, the 
unit stops on characters and automatically 
detects taut tape. Power requirements are 
+ 5V at 200 mA and 24V at 600 mA. Stand 
alone version with parallel or serial RS232 
outputs, fanfold box and spooler also 
available. Price $231 (100 units). 

Addmaster Corporation 

416 Junipero Serra Drive 
San Gabriel CA 91776 



Circle 10 on inquiry card. 



Cio SHORT 

CASSETTES 



Al 


Qty. Price 




1 $1.00 
10 $0.75 




mtmivrrrc va m hi-.i i.imh.i»«.c«i xw | 




1 
\ ffl 


50 $0.65 



Circle 135 on inquiry card. 



Premium tape and cassettes acclaimed 
by thousands of repeat order microcom- 
puter users. Price includes labels, cas- 
sette box and shipping in U.S.A. VISA 
and M/C orders accepted. California 
residents add sales tax. Phone (408) 
735-8832. 



MICROSETTE CO. 
777 Palomar Avenue 
Sunnyvale, CA 94086 



Circle 227 on Inquiry card. 



SURPLUS EQUIPMENT 

• MINI TERMINAL $320 

• Full duplex. 20 ma. 

• 16 character A/N display. 

- Addressable indicators (4> and tones (2). 

• Keyswitch field, 9 position. 

• Power supplies (±12V, +5V. +2 50V). 

• I.D. card sensor. 

• Forced air cooling. 

• Above with UPC label reader option. $499. 

• KEYBOARD/DISPLAY TERMINAL $149 

• 9" composite video input monitor. 

• 1 2 volt power supply. 

• Keyboard IAIN, control and function fields), 
encoding electronics, 20 ma. 

• 16 CHARACTER A/N DISPLAY $149 

• UPC LABEL READER SYSTEM $249 

• 9" MONITOR $94 

SPECIAL SYSTEMS. INC. 

8045 Newell Street 

Silver Spring, Md. 20910 

(301) 587-3607 



Circle 341 on inquiry card, 



8048 
Family 

A one board microcomputer utilizing the 
8035 geared toward stand alone applica- 
tions with: 

• one 8-bit input port 

• one 8-bit output port 

• one 8-bit bidirectional port 

• fully programmable hand shake lines 
on each port 

• crystal based timer 

• 64 bytes RAM, expandable to 1k 
bytes 

• provisions for program memory to 4k 
bytes 

• single supply capability [+5V] 

• low cost [64.95 - singles] 

Money order, Check, or C.O.D. 
Send orders to: 

Adroit Electronics, Inc. 

5 East Long Street 

Suite 1012 

Columbus, Ohio 43215 

614-221-3060 



Circle 5 on inquiry card. 



TEXAS INSTRUMENT COMP 






TI 99-4 lUMPUTTK 


* V9i. 




TI 810 BASIC PRINTER 


♦ 1*^90. 




TI B20 HASIC PRINIER 


♦ 1 ?«? . 




TI S0FTUARE 


♦ SAVE 




CENTRONICS PRINTERS 






779-2 TRAC. F D 


♦ 949. 




779-1 F R I C . F D 


♦ B90. 




730-1 NEU PRNTft 


♦ 799. 




730-3 


♦ 849. 




MICRO PI t390. MICRO S1 


♦ 475. 




COMMODORE BUSINESS MACHINES 






PET 2001-8K 


♦ A75. 




PET 200 1 - 1 6N, D 


♦ 859. 




PET 2001-32N.K 


♦1090. 




PET 2040 DUAL FLOPPY 


♦ 1090 




PET 2022 TRAC.FD PRINTER 


1849. 




PET 2023 FRIC.FU PRINTER 


«749. 




NORTH STAR COMPUTERS 






BIG %% SAVINGS 






INTERTEC SUPERHRAIN 






THE HONOR GRADUATE COMPUTER 


♦ 2990 




DISPLAY TERMINALS 






INTERTUBE II 


*775 




HAZELTINE 1400 


♦ 690. 




1 41 


♦ 785 




1500 


*950. 




1510 


♦ 1 149. 




MULTI-BUSINESS COMPUTER 5YS 


TEMS 




26 MARLBOROUGH STREET 






^JJ» PORTLAND, CONN. 0A4B0 


riftrai 




(203) 342-2747 


w 





Circle 277 on inquiry card. 



-page- 

Wire Wrap Tools 










BATTERY HOBBY TOOL* 

• Auto Indexing 

• Anti-Overwrapping 

• Modified Wrap 



BW2628 Tool $19.85 

BT30 #30 Bit 2.95 

BT2628 #26 Bit 7.95 

BC1 Batteries & Charger. . 11.00 
'Requires 2 "C" Niced Batteries 



BATTERY INDUSTRIAL TOOL* 

• Accepts Industrial Bits and Sleeves 
(Gardner Denver or equiv.) 

• Industrial Motor for Production Wire- 
wrapping 

• Backforce Avail. (Recommended for #30). 

BW928 Tool 49.95 

BW928BF Backforce Model .... 52.95 

Bit & Sleeve Specify #22 -#30 29.50 

BC1 Batteries & Charger. . 11.00 



ELECTRIC INDUSTRIAL TOOL 

• Accepts Industrial Bits and Sleeves 
(Gardner Denver or equiv.) 

• Industrial Motor for Production Wire- 
wrapping 

• Backforce Avail. (Recommended for #30). 



EW8 

EW28F 

Bit & Sleeve 



Tool 85.00 

Backforce Model 92.90 

#22 or #30 29.50 



RN HIGH RELIABILITY 
eliminates trouble. "Side- 
wipe" contacts make 100% 
greater surface contact 
with the wide, flat sides of 
your IC leads for positive 
electrical connection. 





IC Sockets 



WIRE WRAP 
SOCKETS 




1-9 


10-24 


25-99 


100-249 250-1 K 


8 Pin 


40 


.36 


.34 


.31 


.27 


3-level Gold 


14 Pin 




.39 


.37 


.34 


.32 


Closed Entry Design 


16 Pin 
18 Pin 


70 


.42 
.60 


.40 
.55 


.36 
.50 


.34 
.45 


All Prices Include Gold 


20 Pin 


.90 


.80 


.75 


.65 


.62 




22 Pin 


.95 


.85 


.80 


.70 


.65 


2-level Sockets 


24 Pin 


.95 


.85 


.80 


.70 


.65 


Also Available 


25 Pin j 


St J .25 


1.15 


1.00 


.95 


.90 




28 Pin 


1.25 


1.15 


1.00 


.95 


.90 




40 Pin 


1.65 


1.45 


1.35 


1.20 


1.10 



SOLDER TAIL 

Low Profile Tin 




1-9 


10-24 


25-99 100-249 250- 1K 


8 Pin 


.21 


.18 


.16 


.15 .14 




14 Pin 





.19 


.17 


.15 .13 


Closed Entry Design 


16 Pin 


— 


.21 


.19 


.17 .15 




18 Pin 


.30 


.28 


.27 


.26 .25 




20 Pin 


.35 


.34 


.33 


.32 .31 




22 Pin 


.36 


.34 


.30 


.27 .26 




24 Pin 


.38 


.36 


.32 


.29 .28 




28 Pin 


.45 


.44 


.43 


.40 .39 


L 


40 Pin 


.63 


.62 


.61 


.58 .57 



OK PRODUCTS 

WD 30 50 ft. Wire Dispenser, Red, White, Blue or Yellow $3.75 

WD-30-TRI TBI Color Dispenser S^O 

R-30-TRI Refill for TRI Color 3.75 

INS 1416 14 & 16 pin Insertion Tool 3.25 

MOS 40 40 pin Insertion Tool 7.50 

BX-1 IC Extractor Tool 1.49 

H-PCB-1 Hobby PC Board 4.99 

WSU 30 Hand Wrap/Unwrap/Strip Tool 6.25 

WSU 30M Same as WSU 30 with Modified Wrap 7.50 



page 



ORDERING INFORMATION 

• Orders under $25, add $2 handling 

• Blue Label or First Class, add $1 (up to 3 lbs.) 

• CODs, VISA & MC orders will be charged shipping 

• Most orders shipped next day. 



Circle 298 on inquiry card. 



1 35 E. Chestnut Street 5A, Monrovia, California 91016 Phone (213) 357-5005 

BYTE October 1979 267 



AVAILABLE AT SELECTED LOCAL DISTRIBUTORS 






CWB 



7400 TTL 



SN7400N 
SN7401N 
SN7402N 
SN7403N 
SN7404N 
SN740SN 
SN7406N 
SN7407N 
SN7408N 
SN7409N 
SN7410N 
SN7411N 
SN7412N 
SN7413N 
5M7414N 
SN7416N 
SN7417N 
SN7420N 
SN742^N, 
SN7422N 
SN7423N 
SN742SN 
SN7426N 
SN7427W 
SN7429N 
SN7430N 
SN7432N 
SN7437N 
SN743BN 
SN7439N 
SN7440N 
SN7441N 
SN7442N 
SN7443N 
SN7444N 
SN744SN 
SN7446N 
SN7447N 
SN7448N 
SN7450N 
SN7451N 
SN74S3N 
SN7454N 
SN74S9A 
SN7460N 



C04000 
C04001 
CD4002 
CD4006 
CD4007 
CD4009 
CD4010 
CD4011 
CD4012 
CD4013 
CD4014 
CD4015 
CD4016 
CD4017 
CD4018 
C04019 
CD4020 
CD4021 
CD4022 
CD4023 
CD4024 
CD4025 
CD4026 
CD4027 



74C00 
74C02 
74C04 
74C08 
74C10 
74C14 
74C20 
74C30 
74C42 
74C48 
74C73 
74C74 



1.00 



78MG 
LM106H 
LM300H 

LM301CN/H 
LM302H 
LM304H 
LM305H 
LM307CN/W .35 
LM308CN/H 1.00 
LM3D9H 1.10 

LM309K 1.25 

LM3I0CN 1.15 
LM3I1N/H .90 
LM312H 1.95 

LM317K 6.50 

LM318CN/H 1.50 
LM319N 1.30 

LM320K-5 1 .35 
LM320K-5.2 1.35 
LM320K 12 1.35 
LM320K-15 1.35 
LM320K-18 1.35 
LM320K-24 1 .35 
LM320T-5 125 
LM320T-5 2 1.25 
LM320T-8 1 .25 
LM320T-12 1,25 
LM320T-15 1.25 
LM320M8 1.25 
LM320T-24 1.25 
LM323K-5 
LM324N 
LM339N 
LM340K-5 
LM340K-6 
LM340K-8 
LM340K-12 
LM340K-15 



5.95 



135 



74LS00 
74LS01 
74LS02 
74LS03 
741S04 
74LS05 
74LS08 
74LS09 
74LS10 
74LS1I 
74LS13 
74LS14 
74LS15 
74LS20 
74LS21 
74LS22 
74LS26 
74LS27 
74LS28 
74LS30 
74LS32 
74LS37 
74LS40 
74LS42 



.29 



Sr#7470N 
SN7472N 
SN7473N 
SN7474N 
SN7475N 
SN7476N 
SN7479N 
SN7480N 
SN7482N 
SN7483N 
SN7485N 
SN7486N 
SN7489N 
SN7490N 
SN7491N 
SN7492N 
SN7493N 
SN7494N 
SN7495N 
SN7496N 
SN7497N 
SN74100N 
SN74107N 
SN74109N 
SN74116N 
SN74121N 
SN74122N 
SN74123N 
SN74125N 
SN74126N 
SN74132N 
SN74136N 
SN74141N 
SN74142N 
SN74143N 
SN74144N 
SN74145N 
SN74147N 
SN74148N 
SN74150M 
SN74151N 
SN74152N 
SN74J53N 
SN74154N 
SN74155N 
SN74J56N 
SN74157N 



^B 



C/MOS 



CO4028 
CD4029 
CD4030 
CD4035 
CD4040 
CD.J041 
CD4042 
CD4043 
CD4044 
CD4046 
CD4047 
CD4048 
CD4049 
CD4050 
CD4051 
CD4053 
CD4056 
CD4059 
C04060 
CD4066 
CD4068 
CD4069 



2.50 
1.35 



74C00 



74C85 
74C90 
74C93 
74C95 
74C107 
74C151 
74tl54 
74C157 
74Ct60 
74C161 



3 00 
2.15 
2.49 
2.49 



LINEAR 

LM340K-1B 1.35 

LM340K-24 1.35 

LM340T-5 1.25 

LM340T-6 1.25 

LM340T-8 1.25 

LM340M2 1.25 

LM340T-15 1.25 

LM340T-18 1.25 

LM340T-24 1.25 
LM358N 



LM370N 

LM373N 

LM377N 

LM380N 

LM380CN 

LM38IN 

LM382N 

NE501N 

NE510A 

NE529A 

NE531H/V 

NE536T 

NF.540L 

NE544N 

NE550N 

NE555V 

NE556N 

NE560B 

NE561B 

NE562B 

NE565N/H 

NE566CN 

NES67V/H 

NE570N 

LM703CN/H 

LM709N/H 



1.95 



4.95 
3.95 
6.00 



.99 
5.00 
5.00 
5 00 
1.25 
1.75 

.99 
4.95 



74LS00TTL 

74LS47 89 

74LS51 .29 

74LS54 .29 

74LS55 .29 

74LS73 .45 

74LS74 .45 

74LS75 .59 

74LS76 .45 

74LS78 .49 

74LSB3 .89 

74LS85 1.25 

74LS86 .45 

74LS90 .59 

74LS92 .75 

74LS93 .75 

74LS95 99 

74LS96 1.15 

74LS107 .45 

74LS109 .45 

74LS112 .45 

74LS123 1.25 

74LS125 89 

74LS132 .99 

74LS136 .49 



SN74160N 
SN74161N 
SN74162N 
SN74163N 
SN74164N 
SN74165N 
SN74166N 
SN74167N 
SN74170N 
SN74172N 
SN74173N 
SN74174N 
SN74175N 
SN74176N 
SN74177N 
SN74179N 
SN74180N 
SN74181N 
SN74182N 
SN74184N 
SN74185N 
SN74186N 
SN74188N 
SN74190N 
SN74191N 
SN74192N 
SN74193N 
SN74194N 
SN74195N 
SN74196N 
SN74197N 
SN74198N 
SN74199N 
SN74S200 
SN74251N 
SN74279N 
SN74283N 
SN74284N 
SN74285N 
SN74365N 
SN74366N 
SN74367N 
SN74368N 
SN74390N 
SN74393N 



CO4070 

CD'4071 

C04072 

C04076 

CD4081 

C04082 

CD4093 

C04098 

MC14409 

MC14410 

MC14411 

MC14419 

MC14433 

MC14506 

MC14507 

MC14562 

MC14583 

C04508 

CD4510 

C04511 

CD45J5 

C04518 

C04520 . 

C04566 



74C163 
74C164 
74C173 
74C192 
74C193 
74C195 
74C922 
74C923 
74C925 
74C926 
80C95 
80C97 



1.50 



LM710N .79 

LM711N .39 

LM723N/H .55 

LM733N 1.00 

LM739N 1.19 

LM741CN/H .35 

LM741-14N .39 

LM747N/H .79 

LM748N/H .39 

LM1310N 2.95 

LM1458CN/H .59 

MC1488N 1.39 

MC1489N 1.39 

IM1496N 95 

LM1556V 1.75 

MC1741SCP 3.00 

LM2111N 1.95 

LM2901N 2.95 

LM3053N 1.50 

LM3065N 1 .49 
LM3900N<3401) .49 

LM3905N .89 

LM3909N 1.25 
MC5558V 



LM75450N 

75451CN 

75452CN 

75453CN 

75454CN 

75491CN 

75492CN 

75493N 

75494CN 

RC4136 

RC4151 

RC4194 

RC4J95 



4.95 
.49 



74LS138 
74LS139 
74LS151 
74LS155 
74LS157 
74LS160 
74LS161 
74LS162 
74LS163 
74LS164 
74LS175 
74LS181 
74LS190 
74LS191 
74LS192 
74LS193 
74LS194 
74LS195 
74LS253 
74LS257 
74LS258 
74LS260 
74LS279 
74LS367 
74LS368 
74LS670 



J^ 



EXCITING NEW 

JE600 HEXADECIMAL 
ENCODER KIT 

FEATURES: 

• Full 8 bit latched output (or micro- 
processor use 

• 3 User Oeline keys with one being bi- 
stable operation 

• Debounce circuit provided tor all 19 
keys 

• LED readout to verily entries 

• Easy interlacing with standaid 16 pin 
iCcDnneciot 

• Only +5VDC required lor operations 
FULL 8 BIT LATCHED OUTPUT— 19 KEYBOARD 

The JE600 Encoder Keyboard provides two separate hexadecimal 
digits produced Iram sequential key entries lo allow direct prog- 
ramming lor 8 bn microprocessor) or 8 bit memory ciicuts. Tbw 
(3) additional keysar e provided tor use i operations with on e having 
a bistable output available. The outputs are latched and monitored 
with LED readouts. Also included is a key entry strobe. 

JE600 $59.95 

Hexadecimal Keypad only $14.95 




KITS Di " i,al 

Thermometer Kit 




• Duel sensors— switching control for in- 
door/outdoor or dual monitoring 

•Continuous LED ,8" ht. display 
■Range: -40°F to 199°F / -40°C to lOC'C 
•Accuracy: ±l°nominBl 
•Set for Fahrenheit or Celsius reading 
■Sim. walnut case - AC wall adapter incl. 

• Size: 3.1/4"Hx6-5/8"WxV3/f , D 



JE300 $39.95 



DISCRETE LEDS 



.200" dla. 
XC556R red 
XC556G green 
XC556Y yellow 
XC556C clear 
.200" dla. 
red 
green 
yellow 
.170" dla. 

red 4 

.085' dla. 

red 6 

INFRA-RED LED 

1/4-x1/4"x1/16"llat 

5/S1 



XC22R 
XC22G 
XC22Y 

MV10B 

MV50 



5/S1 
4/S1 
4/S1 
4/$1 

5/S1 
4/S1 

4/$1 



XC209R 
XC2096 
XC209Y 

XC526R 
XC526G 
XC526Y 
XC526C 

XC111R ' 

XC111G 
XC111Y 
XC111C 



,125"dia. 

red 

green 

yellow 
1B5- dls. 

red 

green 

yellow 

clear 



red 
green 
yellow 
clear 



5/S1 
4/S1 
4/S1 

5/S1 
4/S1 
4/$1 
4/51 

5/S1 

4/S1 
4/S1 
4/$1 



DISPLAY LE0S 



TIMEX T1001 | 
LIQUID CRYSTAL DISPLAY 
CLASS II 

FIELO EFFECT 



'ri g zzz 

88:86 



4 DIGIT - .5" CHARACTERS 
THREE ENUNC1ATORS 
2.00" X 1.20" PACKAGE 
INCLUDES CONNECTOR 

T1001 Trarumissive $7.95 

T1001A Reflective 8.25 



1YPE 

MAN1 
MAN 2 
MAN 3 
MAN 4 
MAN7G 
MAN 7Y 
MAN 72 
MAN 74 
MAN 82 
MAN 84 
MAN 3620 
MAN 3630 
MAN 3640 
MAN 4610 
MAN 4640 
MAN 4710 
MAN 4730 
MAN 4740 
MAN 4810 
MAN 4840 
MAN 6610 
MAN 6630 
MAN 6640 
MAN 6650 
MAN 6660 
MAN 6680 
MAN 6710 



POLARITY I 

Common Anode-red 
5 x 7 Do! Matrix-red 
Common Cathode-red 
Common Cathode-red 
Common Anode-green 
Common Anode-yellow 
Common Anode-red 
CommonCathorJe-red 
Common Anode-yellow 
Common Cathode-yellow 
Common Anode-orange 
Common Anode-orange * 1 
Common Cathode-orange 
Common Anode-orange 
Common Cathode-orange 
Common Anode-red 
Common Anode-red ± 1 
Common Cathode-red 
Common Anode-yellow 
Common Calhode-yellow 
CommonAnode orange-0 . 
Common Anode-orange ± 1 
Common Calhode-orange-D.D. . 
Common Cathode orange ± 1 . 
Common Anode-orange 
Common Cathode-orange 
Common Anodered-D D 



PRICE 
2.95 
4.95 



TYPE 

MAN 6730 

MAN 6740 

MAN 6750 

MAN 6760 

MAN 6780 

DL701 

DL704 

OL707 

DL728 

DL741 

DL746 

OL747 

DL749 

DL750 

DL33B 

FND70 

FN0358 

FND359 

FN0503 

FND507 

5082-7730 

HDSP-3400 

HDSP-3403 

5082-7300 

5082-7302 

5082-7304 

5082-7340 



POIARITY 

Common Anode-red ± 1 
Common Cathode-red-O.D. 
Common Cathode-red ± 1 
Common Anode-red 
Common Cathode-red 
Common Anode-red ± 1 
Common Cathode-red 
Common Anode-red 
Common Cathode-red 
Common Anode-red 
Common Anode-red ± 1 
Common Anode-red 
Common Cathode-red ± 1 
Common Cathode-red 
Common Cathode-red 
Common Cathode 
Common Cathode ± 1 
Common Cathode 
Common Cathode(FNO500) 
Common Anode (FND510) 
Common Anode-red 
Common Anode-red 
Common Cathode red 
4 x 7 sgl. Digit-RHDP 
4 k 7 Srjl. Digit-LHDP 
Dverrange character (±1) 
4 x 7 Sgl. D git-Hexadecimal 



2.10 
2.10 
19.95 
19.95 
15.00 
22.50 



RCA LINEAR 



CA3D13T 

CA2023T 

CA3035T 

CA3039T I 

CA3046N 

CA3059N 

CA3O60N 

CA3080T 

CA3081N 



.15 CA3082N 

56 CA3083N 

.48 CA3066N 

35 CA3089N 

.30 CA3130T 

.25 CA3140T 

1.25 CA3160T 

.65 CA3401N 

!00 CA3600N 



3 53 



CALCULATOR 
CHIPS/DRIVERS 

MM5725 $2 95 

MM5738 2.95 

DM8S64 2.00 

DM8865 1.00 

OMBBB7 .75 

DM8889 75 
9374 7 seg. 
C.A. LED 



150 



CLOCK CHIPS 

MM5309 $4.95 

MM5311 4.95 

MM5312 4.95 

MM5314 4.95 

MM5316 6.95 

MM5318 9.95 

MM5369 2.95 

MM5387/1998A 4.95 

MM5S41 9.95 



MOTOROLA 



$4.95 



MC140SL7 

MC140SU 

MC1439L 2.95 

MC3022P 295 

MC3061P 3.50 

MC4016(74416) 

MC4024P 3.95 

MC4O40P 

MC4044P 4.50 



SptnLP 
14 pin LP 
16 pin LP 
18 pin LP 
20 pin LP 

14 pin ST 
16 pin ST 
ISpinST 
24plnST 

8 pinSG 
14 pin SG 
16 pin SG 
18 pin SG 

8 Pin WW 
10 Pin WW 
14 pin WW 
16 pin WW 
18 pin WW 



IC SOLDERTAIL — LOW PROFILE (TIN) SOCKETS 

25-49 50-100 1-24 

22 pin LP $ .37 

24 pin LP .38 

28pinLP .45 

36pinLP .60 

3° SOLDERTAIL STA NDARD (T IN) «P inl -P 63 

28 pin ST S .W 
36 pin ST 1 39 
40 pinST 1.59 

SDLOERTAIL STANDARD (GOLD) 

24 pin SG S -70 



25-49 50-100 



25 



.27 
.32 



WIRE WRAP SOCKETS 
(GOLD) LEVEL #3 



28 pin SG 1-10 

36plnSG 165 

40pinSG 175 

22 pin WW % .95 

24 pin WW 1.05 

28 pin WW 1