0% found this document useful (0 votes)
58 views148 pages

Creative Computing (Better Scan) 1977-11

SWTPC offers a complete computer system including a 4K 6800 computer, dual minifloppy drives, and a terminal/monitor at competitive prices. The document details various components and peripherals available for purchase, including memory boards and printers. Additionally, it highlights the Cromemco Z-2D computer system, emphasizing its software support and professional-grade performance.

Uploaded by

NickOl
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views148 pages

Creative Computing (Better Scan) 1977-11

SWTPC offers a complete computer system including a 4K 6800 computer, dual minifloppy drives, and a terminal/monitor at competitive prices. The document details various components and peripherals available for purchase, including memory boards and printers. Additionally, it highlights the Cromemco Z-2D computer system, emphasizing its software support and professional-grade performance.

Uploaded by

NickOl
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 148

anno·unces

kit unde·p- ·.0: ••• ::;.

Now SWTPC offers complete best-buy computer system with $995


duai minifloppy, $500 video terminal/ monitor, $395 4K computer.

$395 4K 6800 Computer


The SWTPC 6800 comes complete with
4K memory, serial interface, power supply,
$995 MF-68 Dual Minifloppy chassis, famous Motorola MIKBUG®
You need dual drives to get full benefits mini-operating system in read-only
from a minifloppy. So we waited to offer a memory (ROM), and the most complete
floppy until we could give you a dependa- documentation with any computer kit. Our
ble dual system at the right price. growing software library includes 4K and
The MF-68 is a complete top-quality 8K BASIC (cassettes $4.95 and $9.95;
minifloppy for your SWTPC Computer. The paper tape $10.00 and $20.00). Extra
. kit has controller, chassis, cover, power $500 Terminal/Monitor memory, $10014K or $250/8K .
supply, cables, assembly instructions, two The Ci-64 terminal kit offers these Other SWTPC peripherals include
highly reliable Shugart drives, and a premium features: 64-character lines,
$250 PR-40 Alphanumeric Line Printer
diskette with the Floppy Disk Operating upper/lower case letters, switchable con- (40 characters/line, 5 x 7 dot matrix,
System (FOOS) and disk BASIC. (A floppy trol character printing, word highlighting, 75 line/minute speed, compatible with
is no better than its operating system, and full cursor control; 110"1200 Baud serial our 6800 computer and MITS/IMSAI);
the MF-68 has one of the best available.) interface, and many others. Separately
$79.50 AC-30 Cassette Interface System
An optional $850 MF-6X kit expands the the CT-64 is $325, the 12 MHz CT-VM
(writes/ reads Kansas City standard tapes,
system to four drives. monitor $175.
controls two recorders, usable with other
computers); and other peripherals now
Enclosed is: __ $250 for the PR-40 Line Printer and to come.

b II II rd
__ $1,990 for the full system shown above __ $7950 for AC-~3b Cassette Inferface
(MF-68 Minifloppy, CT-64 Terminal with __ Additional 4K memory boards at $100
CT-VM Monitor). __ Additional 8K memory boards at $250 Southwest Technical
__ $995 for the Dual Minifloppy __ Or BAC # Exp.Oate _ __ •••
•• _ •••••••.
- ••••
_•• Products Corp.
__ $325 for the CT-64 Terminal _. _ Or MC # Exp.Oate _ 219 W Rhapsody, San Antonio, Texas 78216
__ $175 for the CT-VM Monitor Name Address _ london: Southwest Tecnnical Products Co., Ltd.
__ $395 for the 4K !l800 Computer City State Zip __ Tokyo: Southwest Technical Products Corp./Japan
You can now have the industry's
finest microcomputer
with that all-important
disk drive

YOU CAN GET THAT


ALL~IMPORT ANT SOFTWARE, The professional-
TOO grade microcomputer
for professionals
Loading your programs and files
will take you only a few seconds with
the new Cromemco Z-2D computer.
You can load fast because the
Z-2D comes equipped with a 5"
floppy disk drive and controller. Each
diskette will store up to 92 kilobytes.
Diskettes will also store your pro-
grams inexpensively-much more so
than with ROMs. And ever so much
more conveniently than with cas-
settes or paper tape.
The Z-2D itself is our fast, rugged, ADVANCED CONTROLLER CARD Shown with optional
professional-grade Z-2 computer The newZ-2D is a professional bench cabinet
, equipped with disk drive and con- system that gives you professional
, troller. You can get the Z-2D with performance.
either single or dual drives (dual In the Z-2D you get our well-
We're able to put all of this in-
shown in photo). known 4-MHz CPU card, the proven
cluding a UART for the CRT interface
Z-2 chassis with 21-slot motherboard
CROMEMCO HAS THE and 30-amp power supply that can on just one card because we've taken
SOFTWARE handle 21 cards and dual floppy the forward step of using LSI con-
You can rely on this: Cromemco troller circuitry.
drives with ease.
is committed to supplying quality Then there's our new disk con- STORE/FACTORY
software support. troller card with special features: Contact your computer store or,
For example, here's what's now • Capability to handle up to 4 Cromemco factory now about the
available for our Z-2D users: disk drives Z-2D. It's a real workhorse that you
CROMEMCO FORTRAN IV COM- • A disk bootstrap Monitor in a can put to professional or OEM use
PILER: a well-developed and power- 1K 2708 PROM now.
ful FORTRAN that's ideal for scien- • An RS-232 serial interface for Kit: Z-2D with 1 disk drive
tific use. Produces optimized, relo- interfacing your CRT terminal (Model Z2D-K) " , , . , . , . , . , .. $1495.
eatable Z-80 object code. or teletype Assembled: Z-2D fully assembled
CROMEMCO 16K DISK BASIC: a • LSI disk controller circuitry and tested (Model Z2D-W) .... $2095.
powerful pre-compiling interpreter Additional disk drive
with 14-digit precision and powerful (Model Z2D-FDD) '" $495.
Z-2 USERS:
I/O handling capabilities. Particularly
Your Z-2 was designed with the future SOFTWARE
suited to business applications. in mind. It can be easily retrofitted (On standard IBM-format
CROMEMCO Z-80 ASSEMBLER: a with everything needed to convert to soft-sectored mini diskettes)
macro-assembler that produces relo- a Z-2D. Only $935 kit; or $1135 for 16K BASIC (Model FDB-5) , , . $95
eatable object code. Uses standard assembled retrofit package. FORTRAN IV (Model FDF-5) $95
Z-80 mnemonics. Z-80 Assembler (Model FDA-5) , $95

[3 cromemeo
incorporated
Specialists in computers and peripherals
2400 CHARLESTON RD., MOUNTAIN VIEW, CA 94043 • (415) 964-7400
The end of Kit-Kits.
The end of bad solderioints, heat damaged
components and sick IC's.lntroducing the
Semikit.ltem 1,a 16KRA Memory Board, $369.
Let's face it. Loading and the primary causes of damage (poor time is 400 nsec. Each 4,096 word
soldering PC-Boards is not much fun solder joints, excess solder and bad block is independently addressable
for the kit builder. Even more IC's) are virtually eliminated. You for maximum system flexibility.
important, it's the place where most get a board of highest professional Power is typic 'Illy 5 watts, the
of the trouble gets introduced. The quality. And we get the business! same as most single 4K memory
real fun and education comes in modules. Back-up power connection
The 16KRA Memory Board's
running and testing boards. is built-in.
at your dealer now.
Now the Semi kit with fully Your Processor Technology Other Semi's are coming
tested lC's. dealer has the first Semikit, a your way.
At the price of a kit, Processor 16KRA Memory Board, in stock and The 16KRA Memory is
Technology Corporation introduces ready to go right now. You can Processor's first step in adding more
the Semikit. It's a fully stuffed, take it home tonight for $369 as a fun, capability and reliability to
assembled and wave soldered PC Semikit or for $399 fully assembled, your computer system at lower cost.
Board loaded with IC's that have tested and burned-in. Other modules are on the way to
gone through Q.C. and final check- You'll have a 16,384 byte memory your dealer now. Come on
out (a first in the industry). with a better price performance down today.
We leave you the fun of testing ratio than anything on the market Or you may contact us directly.
with our fully documented set of today. Now you can afford to add Please address Processor'
instructions. We do the production quality, high density memory to your Technology Corporation, Box C,
tasks of loading, wave soldering and system for remarkably little. And 7100 Johnson Industrial Drive,
inspecting the boards. You do the you can add enough to solve com- Pleasanton, California 94566.
more interesting and time plex computing problems right in Phone (415) 829-2600.
consuming chore of testing and the main frame.
burning-in the boards. The memory features invisible
The result is one sweet deal for refresh. There's no waiting while the
both of us. You get a board where CPU is running. Worst case access ProcessorTechnology
reviews & resources
18
••• 34
Compleat Computer
Smart Electronic Games
Catalogue
Ahl
Nine microcomputer-based toys.
36 Comp IV ..........................•..... Gray
Profile of a smart electronic game.

articles 40 S-100-Compatible Computer Kits


Four full pages, plus "Why I did it."
Purser

46 TDL Xitan North


28 Programming Techniques Lees Profile of the! Alpha 1 and Alpha 2.
File structures (Part 1).
48 Evaluation of Three 8080 8K BASICs North
52 Shoestring Timeshare Haas MITS, IMSAI, BASIC ETC; new benchmark
With an Altair 8800. program.
55 Gamboling in Atlantic City. . . . . . . . . . . . . . .. Ahl
Featuring interviews with five top authorities.
62 Computer History Trivia Quiz Pasahow
Can you answer all 30 questions correctly?
things to do - games
66 Something is Missing Finseth
All about recursion and some other goodies. 32 Reader Challenge
Design an LP-record file-storage system?
Ahl
.
74 CA!: Multiple-Problem Types ..... McLaughlin
Incorporafing a sliding grade-level. 38 Computer Rage
A multi-level computer-oriented
, Salsibury
board game.
90 IFIP Congress 77 Glick
The exhibits were as interesting as the sessions. 54 How Late Can You Sleep in the Morning? . Ahl
Probabilities and expected values.
96 Human or Machine Noll
Do you prefer Mondrian or computer art? 78 The 8-Hour Wonder Dwyer
Part three of a tutorial series on BASIC.
103 Final Exams , Eisenberg
Let the computer write them. 86 Thinking Strategies
Contradictions can lead to the truth.
Piele & Wood

107 Topics in Logic Lees


Formal grammars and languages. 92 Questionnaire: The Future of Computing
Help us explore the future of this field.
Johnson

109 Puzzles and Problems

fiction & foolishness 130 Short Computer Programs Ahl

134 Inorganic Chemistry Program Peer


Helping out in chem lab.
64 Marsport (Part 3) Sonntag
136 MASTERMIND II Computer Game North
110 Out of the Mouths of Babes Wirth

116 Computer Control Vitale 140 OTHELLO Computer Game. . . . . . . . . . .. Wright

120 Nords Sunstone

departments
The Cover 4 Notices
The cover is an original drawing by Paul Stinson, a noted
science-fiction artist, whose works have been displayed at
6 Editorial

many galleries. This versatile artist also created the highly


original March-April cover for us.
10 Input/Output

124 Reviews

Nov-Dec 1977 Volume 3, Number 6 Consecutive Issue No. 18 Foreign Subscriptions:


Great Britain. 1-year £ 6.25, 2-year £ 11.90, 3-year £ 16.90. Orders to Creative
Creative Computing magazine is publishedbi-monthly by Creative Computing, P.O. Computing, 60 Porchester Road', Southampton S02 7JD, EngJand.
Box 789-M, Morristown, Nj 07960. (Editorial office: 51 Dumont Place, Morristown, NJ Europe, 1-year subscription. Austria Sch 180, Belgium BF 4000, Denmark Kr65,
07960. Phone: (201) 540-0445.) Finland Mr40, France Fr50, Germany DM25, GreeceDr360, Holland Df127, Italy L8500,
Norway Kr55, Portugal Esc320, Spain Ptas700. Sweden Kr45, Switzerland SF 25.
Domestic Subscriptions: t-year $8, 2-year $15, a-year $21. Sutiscription orders, Orders to Pan Atlantic Computer Systems GmbH, Frankfurter Strasse 78, OS1
change of address, P.O. Form 3579 to Creative Computing, P.O. Box 789-M, Darmstadt, German Fed Rep.
Morristown, NJ 07960. Call 800-631-8112 toll-free to order a subscription (to be Other Countries 1-year $12, 2-year $23, 3-year $33 (surface postage, U.S. dollars).
charged only to a bank card): Orders to Creative Computing, P.O. Box 789-M, Morristown, NJ 07960.

Copyright© 1977 by Creative Computing. All rights reserved. Reproduction Second class postage paid at Morristown, New Jersey and at additional rnailinq
prohibited. Printed in USA. offices.
Publisher
David H. Ahl

Editor-in-Chief
Stephen B. Gray

Managing
Burchenal
Editor
Green

Associate Editor
Steve North
••• ••
Software & Reviews Editor
John lees

Higher Education Editors


Merl Miller
A. Kent Morton ACM Special-Interest Personal & Small
Technology Editors Group for Business Computer Expo
Thomas R. Kibler
Alan Salisbury Personal Computing To "provide the small-computer industry
with an annual forum and meeting place to
Careers Editor Having established the need for a pace the progress of this fast-growing and
Eleanor Corr
technical organization in the area of important segment of the data-processing
Humor Editor personal computing, SIGPC has been industry," the Personal & Small Business
Jack Ludwig chartered and will concern itself with the Computer Expo will be held on January 13-
design and application of computer 15,1978, at the Washington Hilton Hotel in
Art Director systems for personal uses. This includes WaShington, DC.
Elyse J.Fox personal computer systems for home, This exposition for the personal and
clerical, small-business management, and . small business computer industry will be
Marketing Manager recreational uses. It also includes the open to the trade, small-business
linda Harrison technology of such systems in software managers, hobbyists, and all other small-
Business Manager and hardware, and emphasizes techniques computer users in government, education
Mary M. Williams appropriate to the integration of such tools and industry.
as graphics, speech, data management, E.F. Felsburq, Executive Director,
Retail Marketing Rep. and music systems. Felsburg Associates, Inc., P.O. Box 624,
linda EckerstrOni Dues include a subscription to the 9430 Lanham-Severn Road, Seabrook, MD
newsletter, and are $5 for ACM Members or 20801. (301) 459-1590.
Book Service associate members or student members;
Eric Sellin $13 for non-ACM member of SIGPC (open
Mark Kuschke
only to individuals whose "major
Customer Service professional allegiance is in a field other
than information processing"). A subscrip-
Jeanne Tick
tion to the newsletter only is $12.
Black Box Wanted
SubscriptionS ACM, 1133 Ave. of the Americas, New Creative Computing will pay $25.00 for
Nancy Herbst York, NY 10036, Attn: SIG/SIC. the best simulation of the game of Black Box
Carol Cassata received by March 1, 1978. Must be in a
"standard" dialect of BASIC for play on a
Advertising Sales hard-copy terminal. An alternative version
for a VDM, TV Dazzler or other display
Western States, Texas device would be nice too. Clean listing and
Jules E. Thompson Second West Coast sample run on white paper, please. Wrap
Hearst Building, Suite 1111
5 Third Street
Computer Faire paper tape, if included, in plastic wrap orfoil
to prevent oil seepage. Please don't write us
San Francisco, CA 94103
The second West Coast Computer Faire for the rules to Black Box; it's available from
(415) 362-8361
retailers of adult games.
is scheduled for March 3-5, 1978, in the
. Bert Charlton brand-new San Jose Convention Center in
2560 Via Tejon San Jose, California, which, as its
Palos Verdes Estates, CA 90274 promoters tell us, is at the southern end of
(213) 378-8361
the San Francisco Peninsula, and is in the
Mid"Atlantic, Northeast middle of "Silicon Valley" - center of the
Charles Lynch semiconductor industry. "Y@Y""iGim.),tiWCi' Notice to
Projections are that 10,000 to 15,000
36 Sohier Street
Cohasset, MA 02025 people will attend, that there will be 150 to Program Writers
(617) 383-6136 190. exhibitors, and 50 to 100 speakers. We are unable to accept typ.e.d
One of the rules at the First Computer programs for pabticatlon because we
Elsewhere Falre was that manufacturers should not haVe no way of Imowing if they ar~
Burchenal Green present talks concerning their products. . correct. .
(914) 739-1144 or
The promotors have since concluded that When we receive a computer-
(201) 540-0445
this was an error, "a disservice to both the output LiSTing, we assume the
attendees and the manufacturers." Thus accompanying RUN was generated
manufacturers are now being encouraged from the LIST, which provides proof
to prepare tutorials concerning their that ~he program has been debugged.
products, "comprehensive and educational Sorry to make probclems for readers
MEMBER in nature," but not heavy sales pitches. wlzlo have no printer or tape punch,
but we just don't have the time to
Deadline for papers is January 2, 1978.
~~~@~
COMMITTEE OF SMALL MACAZINE
Jim Warren, The Computer Faire, P.O. check out typed pregrams by making
tapes of them.
EDITORS AND.PUBLISHERS Box 1579, Palo AltO, CA·94302. (415) 851-
7664.

4 CREATIVE COMPUTING
System 8813

The Computer for the Professional


Whether you are a manager, scientist, educator, lawyer, Reliable hardware and sophisticated software make
accountant or medical professional, the System 8813 will this system a useful tool. Several software packages are
make you more productive in your profession. It cankeep included with the machine: an advanced disk operating
track of your receivables, project future sales, evaluate system supporting a powerful BASIC language inter-
investment opportunities, or collect data in the laboratory. preter, easy to use text editor, assembler and other system
Use the System 8813 to develop reports, analyze and store utilities. Prices for complete systems start at $3250.
lists and schedules, or to teach others about computers. See it at your local computer store or contact us at
It is easily used by novices and experts alike. 460 Ward Dr., Santa Barbara, CA 93111, (805) 967-0468.

Po~Morphic
Systems
sl, •• ~11it()~ial .• •
Reflections At The End Of Our Third" Year

From time to time I get questions from people at solder boards together forever, or to learn about various
conventions, and from readers through the mail, as well as communications protocols, or to build a fancy woodgrain
from my own staff, as to what the philosophy of Creative cabinet for their finished machine, but it is to use it for
Computing is. Where are we going? What's the magazine some application. Be that personal, or educational, orfor
trying to be? And as we enter our fourth year, I suppose it's home-management, or building management, or for small
an approporate time "for the publisher to sit back and business. The point is that the readers of Creative
speculate a little bit on where this thing is going, this Computing, we believe, are interested in applications.
monster I created about four years ago, that in some ways Now, there are two levels to the applications. Some
has gotten completely out of hand. applications are original and unique enough to a par-
Our direction over the first three years has obviously ticular reader that he or she is the only person that can or
changed .' This is probably most apparent when you will produce it. For these readers, we feel that our
consider two major groups of readers, educators and obligation is to provide programming techniques to make
home-computer users. Some educators have complained writing their application easier and more efficient.
that we have given up the education market and we have Techniques like sort routines, large-number processing,
become hobbyist-oriented. To this I would say, nicely but recursion, shuffling routines, and data-based manage-
bluntly, that (1) you educators are rather narrow-minded if ment schemes. Also for the reader who is writing his own
you thinkthat the types of things Creative Computing is application, we present materials on different computer
running are not appropriate for education just because languages. Perhaps one application could be better
they happen to focus increasingly on microcomputers and implemented in APL, or Fortran, or perhaps the version of
on manufacturers who don't have the vast dealer networks BASIC that is available to the reader is not compatible with
or army of salesmen to be calling on schools. The that particular application because it doesn't have the
educational value of a computer may be far greater if the proper string-handling or file-handling capability. Conse-
student is dealing with an accessible, hands-on micro than quently, we feel that another one of our jobs is to take a
if he's dealing with a computer that can't be touched by look at different types of BASICcof\1pilers and their
anyone but a "qualified field-service technician." strengths and weaknesses. Ditto other high-level
And (2) I would ask the skeptical educator: aren't you languages.
happy to have other people reading a thoughtful and In addition, for the reader who is writing his own
pedagogically sound magazine? Maybe Creative doesn't application, we feel that it's worthwhile to present articles
look like a typical educational magazine anymore because like "Computational Unsolvability," or "Catastrophe
we're not running the dry scholarly articles that "should" Theory." The first discussed certain types of problems
"appear in an educational magazine. However, we are which are not amenable to computational solution. The
running ideas that have a sound basis but we're presenting second looked at some completely unexpected types of
them in easy-to-understand terms. This is rarely found in curves that provide a framework for analyzing discon-
educational magazines which somehow feel that to put tinuous events in fields such as biology, sociology or even
thi ngs in four-syllable words makes them more acceptable the stock market.
to faculty members who probably don't have more For another group of readers who are not so much
understanding of these fancy words than the student, and interested in writing their own unique application, but
certainly aren't any more interested or inclined to read rather in using finished applications or perhaps com-
them. bining several to do something of use, we present a certain
Actually we have very, very few educators who are number of complete programs. So far, most of these have
criticizing Creative Computing and I hail the foresight of been in the area of games, puzzle solving, and various
the majority of our educational readers. other recreational applications. In the future, we expect
But that doesn't get atthe question of where we're going these applications to broaden out into more serious areas
and what our philosophical basis is. We have many diverse such as text editing, word processing, building manage-
groups of readers: educational computer users, hobbyist ment, household management, and business functions.
users, time-sharing users, users of minis or micros, and Of course, we'll continue to present games and
big-system users. I guess the one common denominator in recreational applications since these have proved ex~
all of those descriptions is the word user. The assumption tremely popular in the past and, by my best estimate, at
that we make at Creative Computing is that our readers are least 70% of the home users are using their computers
interesting in using their computer power. They are not almost exclusively for games and leisure.
tinkerers. They are not electronic nuts. Oh sure, they may Along with applications, I think it's equally important for
well tinker around to get their system working. They may one to consider what is really worthwhile doinq with a
well be immersed into electronics, but the main object of computer. There are lots of thinqs that can be done, but
their purchasing a. computer in the first place is not to what is really worth doing? Now there is no hard-and-fast,

6 " CREATIVE COMPUTING


Complete Bugbook® library.
Now only $43.95* including the new BRS-1 on the 555 Timer.
In a world crawling with bugs, it's Because the place is crawling
good to have the Bugbooks by with bugs.
your side. Good to have just five r2[l11fl® E&L INSTRUMENTS, INC.
books dedicated solely to teach- L=:J 61 First Street,Derby,ci. 06418
(203)735-8774 Dept. CC
ing you digital electronics . .. AuthorizedStockingRepresentatives
from ground zero on up. From LosAngeles,Calif. (213) 328-9770
fundamental logic and memory SanFrancisco,Calif. (415)961-2828
experiments to interfacing with Woodbridge,Conn.(203)397-1461
. , Denver,Colorado(303) 744-2501
microprocessors. The Buqbooks Orlando,Florida(305)351-1841
are E&L Instruments' pioneering Chicago,Illinois (312)956-8090
KansasCity, Kansas(913)649-8952
approach to mastering, today's NewYork,N.Y,(201)467-8585
pulse-quick world of micro-elec- Syracuse,N.Y,(315)699-2651
. W' h h h Dayton,Ohio (513)222-0011
tronics. It an approac t at's Philadelphia,Pa.(215) 723-8733
simple and straightforward. Clear. Dallas;Texas(214)328-5484
Complete. Well-illustrated. And as Fairfax,Virginia(703)273-1803
Seattle,Washington(206)938-4166
fresh as tomorrow's circuit de- Canada
sign. In, all, some 1500 pages. Edmonton,Alberta(403)455-4122
They're the Bugbooks. Don't ven- Winnipeg,Manitoba(204) 774-6286or 772-9295
Vancouver,British Columbia(604)687-2621
ture a step farther into the world ·Suggestedresaleprice U.S,A.
of digital electronics without them. OEMand educationaldiscountsavailable.
See us at MIDCONI77Booth Nos.325-327
advertising, hoping that you get it, and then when you do,

al ... s~ it()Pial ... s~it()p hiring the editorial people to beef up the quality of the
magazine. One reader termed us the Scientific American
of the personal computing field. That's a very complimen-
tary, but I think very apt, description of Creative Com-
puting ..
cut-and-dried answer to that question. Every person is Where do we go from here? Well, certainly more
going to have to decide.on his or her own part what is applications in a broader set of areas, more programming
worth doing with his (or her) computer. However, from techniques, more speculation on what should be done
time to time, we will present articles and even fiction and with computing power, more reviews, and, oh sure, some
poetry which will speculate on future computer more fiction and foolishness too; because along with all of
applications and where they might lead. Of course, we the pedagogically sound serious material, there is a streak
would hope that any fiction or poetry that we would put in of foolishness in all of us. Or if not in all of us, there at least
the magazine would be interesting and entertaining in its is in me, and as long as I'm the publisher, you're going to
own right, but if we choose our material carefully, maybe continue to get some cartoons and triviality along with the
we can also provide a message in this type of material. serious stuff.
Since we feel that our readers have a user orientation, But we'll be evolving too. We'll be evolving in response
one other mission that we feel is appropriate is to present to technological advances and also in response to
accurate reviews of books and other materials aimed at a changing desires of our readership. The only waywe know
user. As a result, we arethe only publication going into the about these changing' desires is from your cards and
hobbyist market that has any kind of serious book-review letters, so keep them coming. Oh, we also know from
section. If you read these reviews, you'll realize that many 'subscription cancellations .anc I'd just as soon you not
of them go far beyond reviewing the specific book in keep them coming. Actually, we have an exceptionally
question, but present ideas, commentary, and thoughts of high renewal rate compared to the magazine industry at
the reviewer. Our reviews, in other words, are con- large, which pleases me greatly. However',' we're not
siderably closer in character to those appearing in the perfect. I recognize that and I'm happy for any comments
New York Times Book Review than to the A CM Computing that will bring us a little bit closer to what you, the readers,
Reviews. want to see in Creative Computing.
I think it's interesting to note that our overlap in It goes without saying that articles along the lines
readership with other magazines is heaviest with Scientific mentioned above, or dealing with new things that you
American by a rather wide margin and then, secondly, with think would be suitable for Creative Computing, are
Byte magazine. What this indicates to me is that we have a always welcome. We pay for articles; you'll never get rich
very well-educated reader and one with a rather broad set and you won't be able to retire on the money. On the other
of interests. Of course, they are interested in the hardware; hand, it will probably compensate you for the time of
many of them who are not in an environment with ready- sitting down and typing out your ideas in a coherent
made computers and terminals at their disposal are trying. fashion to share with other readers. But one way or
to construct their own systems and consequently have the another, as an author or as a commentator or as a critic, let
need of a hardware-oriented magazine such as Byte. us hear from you.
However, I thi n k they real ize that eventually their system is Over the last three years, our subscription solicitation
going to get up and running, or perhaps they hope it·is, and letters have frequently invited people to join the Creative
at that point, then they're going to need an applications- Computing family. I still think of the entire readership of
oriented magazine like Creative Computing. Creative Computing in that light, in their many and varied
Some months ago, we had a major debate among our roles, as being part of one large family, one large family of
staff members and advertising reps whether or not intelligent, wise computer users. I hope you do too. •
Creative Computing should become a monthly magazine. David H. Ahl
There were good arguments on both sides. However, what
it finally boiled down to was the fact that we were making a
small amount of money and we had to choose how to
invest that money most wisely. If we had become a
month Iy magazi ne, we wou Id have had to put considerably
more resources into soliciting advertising, since very few
magazines can survive on subscription revenue alone. In
other words, all of our excess capital for at least the next
nine to twelve months would have had to go into catering
to, and soliciting, advertising. Alternatively, we could put
the same money into improving the editorial quality and
hiring additional people on the editorial side of the
magazine. This is what I elected to do. Creative Com-
puting now has a larger editorial staff of full-time writers
and editors than any other educational or hobbyist
computer magazine, bar none. For the foreseeable future, '
therefore, my intent is to improve upon the editorial side of
Creative Computing. My intent is for it to be of the absolute
highest quality. That is not to say there will not be
occasional typos, or errors in program listings or other
gliches. However, we have elected to make Creative
Computing a leader as a result of its editorial quality rather
than its advertising content. My belief is that, eventually
advertisers will discover that Creative Computing readers
uxe the magazine for its editorial quality and therefore will
advertise with us and one will follow the other. On the
other hand, its a risky business going out and soliciting

8 CREATIVE COMPUTING
SANT~nd SCELSI \1./
tHAVE A UNIQUE GIFT IDEA *-
FOR EVERYONE ON YOUR LIST!
':::'Seelbi
ORDER NOW! SAVE! BEFORE
1978 PRICES GO UP!·

Understanding MicroComputers and


~mall Computer Systems. A profusel ~a~nhufact~,rers' literature. Makes you feel
IlIust~a~ed,easy-reading "must" bOO: ome around compute A
explalnlnq fundamental concepts behind as the standard for the neop~~e ccepted

::l'''~G"" ,",w'' '"


oper~tlon ?f microcomputers. Sim Ie
extra to ~'"
un erstand computer magazines and
must own this 300-page no-non' you
eas -readlnq text. Inc!udes ",,'f;.~~,
~~~J:ryo o~key microcomputer oriented
:::::- ~_~:._:: . :r:e:r:no:w:.~save! $9.95 each ppd.

pose r.oulines for multiple


Scelbl's Software Gourmet precrsion operation. Pro-
~ulde.s a~d Cookbooks 'or gramming time delays for
8080 or 6800' lets you cook real time. And lots more
up mouthwatering programs f!oatl~g point arithmetic ~ou-
Dele.ctable"how to" facts i~- tines. Order your copies tod
eluding '8080' or '6800' i~- Bo~ app~tite! Specify: '8080~y·
stru clion sets. How to man- or 6800 . $9.95 each ppd.
lpulate stacks. Flow charts
Source listings. General pu'r-

•• •• • •"
New York City; TIME SHARING on navy by Kevin Frye of
Old Orchard Beach, ME and also by William Amon of
Harrisburg, PA. SPECiAL CHARACTER on gold by Robert
Pallack ofW. Palm Beach, FL, and for kids only MICRO BUG
on yellow by Jane Foust of Marina, CA.
I have always enjoyed getting mail, so suggestions continue to
be welcome. Anybody whose idea gets printed gets a free shirt
with their phrase, on it. In case of duplications the first two
people with the same basic (oops again» idea will receive free
shirts, but I've got to stop somewhere.
Readers can find my shirts at a growing number of computer
retailers, or may order directly from me, at $6 each plus .60
postage and be sure to include chest size.
Thanks again for the write-up and for helping me share thefun
with your readers.
Martha Herman
114 West 17 St.
New York, NY 10011

w~S~~c;ialil~ Shorter and Faster ELIZA


ig [J()m~.,t~~
L~tt~~s Dear Editor:
Steve North's version of ELIZA programmed in MITS
BASIC (July / August 1977) is up and running in our ALTAIR.
It seems to be interesting to everyone who sees it. One important,
change though will allow ELIZA to run with nearly 2K bytes less
memory: Delete line 90 which allocated array space for strings.
These are never used since in MITS BASIC each non-
In Time for Christmas dimensioned string variable and each member of a string array
Dear Editor: can each contain up to 255 characters.
The July-August issue of Creative Computing contained both For use on MITS version 4.0 EXTENDED BASIC, ELIZA
your elegant statistical readership survey and a story about my will run faster if the following two changes are made:
computer T-shirts, in which I called for suggestions for new 1. DEFINT A-Z to define all non-string variables as integer
phrases to print on them. I've never received so many delightful and
letters! I thought you might be interested in some unstatistical 2. Replacing lines 3 I 5-350 with a line incorporating INSTR
data on the responses I got. Your 91 % reader interest in humor is the string search function
confirmed. Here are some samples: BUBBLE LOGIC, 330 T = INSTR(I$,K$): IF T THEN S=K: F$=K$:
THINKERTOY, GARBAGE IN - GOSPEL OUT, TODAY GO TO 365.
IS A COMPUTER SIMULATION, OPERATOR ERORR, Alan R. Miller
TEMPORARILY CRASHED, LOGIC SAVES, and Dept. of Metallurgical & Materials Eng.
MEMORY OVERLOAD. A man from Chicago wrote that he'd New Mexico Tech
give an arm for a shirt that says PLEASE DON'T SQUEEZE Socorro, NM 8780 I
THE SOFTWARE, and that he'd give an arm and a leg for one
for his wife. My bank doesn't deal in that particular currency
(except for the occasional pound of flesh). One fellow said he
needed more shirts because his Bionic Toad was lonely ... I STAR TREK ona 360?
await each day's mail eagerly to see what interesting new input it Dear Editor:
will bring. Since we were bitten by the Startrek "bug" at the Anaheim
At least 50% of the ideas I receive are rather sexually NCC(where we first subscribed to Creative Computing), it has
suggestive such as: BYTE MY BAUD, FLOPPY DISCS, been our goal to get Startrek to run on our computer, (360/30
DISCREET COMPONENTS, and BAUDY BODY. I haven't with DOS/ BT AM).
chosen to print any of the raunchier suggestions, not out of Well, would you believe Startrek in rpgII? Online?? In 20K???
prudishness (as those who know me well can confirm), but for (well, 4 programs of 20K)
purely (oops) practical reasons. They are the hardest to sell Our problem is this: we would like very much to have a
because many people are uncomfortable wearing them. For BASIC interpreter or compiler that we could run on our
example, last year I wore my DATA INSUFFICIENT shirt to computer so that we could use BASIC programs direct, instead
the NCC in New York. I didn't think it was suggestive, but after of rewriting into another language. We need a source listing that
the 10th time someone said "Your data doesn't look insufficient we can convert into a 360 language. ,
to me, baby," I decided to discontinue printing it. We all enjoy Creative Computing, but would like to see more
The shirts I have decided to print in time for Christmas of the complex simulation games.
ordering are: SWAPPED OUT on light green sent in by Dan Daniel H. Jones
Goodman of Somerville, NJ; DO NOT STAPLE SPINDLE Director of Information Services
FOLD OR MUTILATE on tan (naturally) suggested by Al Bardon Inc.
Brunelle of Woonsocket, RI and also by Ron Walter of Chelsea, 5405 Jandy Place
MI. UPWARD COMPATIBLE on red by Marcelle Gaig of Los Angeles CA 90066

10 CREATIVE COMPUTING
5. I don't know if you want to use the DEC as the main
computer, or the micro as the main computer. The advantage of
using the core in the DEC for handlers is that it will still be there
•• when the lights come back on.
6. If you buy peripherals for the S-l 00 bus on the micro, they
will come with their handlers available.
7, You will find that the 20K of PDP-8 core gets used up by
programs faster than Z-80 core in the micro ~ this suggests that
you use the micro as the main computer.
Inventor of the Computer' John T. Blake, P.E.
P.O. Box 538
Dear Editor: Yucca Valley, CA 92284
In your July-August issue, you reprinted excerpts from a May
1974 presentation by Dr. Carl Hammer (page 56). I believe you
should correct an erroneous statement made at the opening of
that paper. Interfacing an IBM 2311 to an 8080?
In the second paragraph, Dr. Hammer gives credit to Drs.
Eckert and Mauchly for the invention of the digital electronic
computer. If I may quote the words of Federal District Court Dear Editor:
Judge Earl R. Larson in his decision: "Eckert and Mauchly did Has anyone interfaced an 8080 to an IBM 2311 disk drive? I
not themselves first invent the automatic electronic digital have two of them but am personally software-oriented and can't
computer, but instead derived that subject matter from one Dr. find anyone locally to help me out. Any kind of assistance (even
John Vincent Atanasoff." if it's to tell me it can't be done) would be appreciated.
The story of the Atanasoff invention of the electronic digital Bob Stek
computer and of his communication of that idea to Dr. 19 Mayfield Rd.
Mauchly, can be found in the February 1974 issue of Regina, Saskatchewan
Datamation. The article in Datamation makes it clear, by Canada S4V OB7
quoting from Mauchly's correspondence, that indeed the idea
was originated by Dr. Atanasoff. It is not a small point, and I
believe you have a responsibility to set the record straight.
Michael W. Ham
Director, General Systems
Programming for the Handicapped
The American College Testing Program Dear Editor:
. P.O. Box 168 Enclosed you will find a check and mailing addresses for six
Iowa City, 10 52240 subscriptions to Creative Computing, These subscriptions are
graduation gifts to students of the first graduating class in
computer programming for the physically handicapped at
Lakeshore.
The course is the third to begin in the nation and the first to be
Help for a PDP-8 associated with a university (of Alabama in Birmingham). It is a
System practical, vocationally-oriented course concentrating in
COBOL programming with experience in IBM's TSO, JCL,
[Ed. Note: Richard Brown's letter in the July-Aug issue asked Utilities, and the BASIC programming language.
for help on a PDP-8 system, including how to choose the right We thought you might be interested in the existence of the
modems that would allow a Teletype to be moved around; how course (and the reason for the SUbscriptions). We feel that
to hook up the modems; decide whether to interface floppy disk computer programming is an especially appropriate occupation
to the system; decide whether to interface inexpensive for the physically handicapped. as well as an .interesting
peripherals; and write handlers for peripherals. John Blake sent avocation, We believe your magazine will help maintain their
us a copy of his letter to Mr. Brown.] interest.
C. Joseph Williams
Dear Mr. Brown; Lakeshore Rehabilitation Facility
Your letter to Creative Computing asks for a solution which 3800 Ridgeway Drive
does not exist. The problem does not compute, Birmingham, AL 35209
1. Moving Teletypes? They don't like it and usually require a
visit from the man from the Teletype Corp. to put them back
into condition'. You will need one at the computer to use as the Anyone for Computer Bridge?
console. Find some permanent places for the other three.
2. From this distance I can not tell if your "two-digit"
telephone system is an overgrown intercom (with one side of the Dear Editor:
'line grounded), or a small telephone system (with the lines Has the new generation of home size computers reached the
balanced to ground. If the former, no modem available will level where the game of Bridge can be programmed?
work. If the latter, the modems will be about $250 each, and you I am interested in a level of sophistication where a team of
need six. For this amount of money you can buy a persons plays against another pair represented by the computer.
microprocesser, and use it to solve the rest of your problems. As in a "live" game, a period of bidding should precede the play
3, Both the Teletypes and the serial 110 devices are available of the hands.
with an RS 232 interface, or a 20-mA loop interface ..The 232 And what about the possibility of one person playing with the
interface has a maximum distance set by the cable capacitance: computer as a partner while at the same time the computer
25 feet for normal cable, and up to about 100 feet for special represents an opposing team? Such a program would be
cable, The 20-mA loop interface will work over several miles of particularly useful for teaching and for upgrading one's bridge
fence wire. You therefore use the 232 interface for the Teletype skills.
used as system console, and the 20-mA interface for the remote Victor Kay
ones. There is probably enough spare wire in the existing 3650 Los Feliz Blvd.
telephone system to allow the hard wiring except for the run into Los Angeles, CA 90027
the computer room. If you want to connect to "(or any phone
system)" you are going to need a specialist, and a local one at
that. Pub. note: Victor wanted us to run a contest for the best bridge-
4. Interface the micro to the PDP-8 using a DEe-built serial, playing programs. However, after our experience with contests
and, the micro serial. This should be an·RS-232 and should be two years ago, we're not anxious to run any more. Nevertheless if
able to run at 19,200 baud which will make it practically you have a good bridge-playing program, please submit it to us
transparent for both computers. for possible publication. .

12 CREATIVE COMPUTING
ITS NOT! A Computer is a Campbell Tustin New York
2626 Union Ave. EI Camino Plaza Levittown
product of sophistication and Diablo Valley Ventura 2721 Hempstead Turnpike
demands a Specialty Retail En- 2989 f\.i. Main St. 2409 Main St. Rochester
vironment. Fresno
3139 E. McKinley Ave.
Westm i nster
14300 Beach Blvd.
264 Park Ave.
North Carolina
Byte Shop is the leader in Hayward Colorado
Raleigh
computer store retail and to us, 1122 "B" Street Arapahoe County 1213 Hillsborough St.
Lawndale 3464 S. Acoma St.
your purchase and its future ex- 16508 Hawthorne Blvd. Boulder
Ohio
Columbus
pansion is important. Long Beach 2040 30th St.
2432 Chester Ln.
5433 E. Stearns St. Denver
Computerwore'P" from the Marina del Rey Cherry Creek Shopping Ctr. Rocky River
19524 Center Ridge Rd.
Byte Shop is designed to 4658 Admiralty Way Florida
Oregon
Mountain View
change with time and is not a 1063 W. EI Camino Real
Cocoa Beach
Beaverton
1325 N. Atlantic Ave., Suite 4
department store disposable. Palo Alto Ft. Lauderdale
3482 SW Cedar Hills Blvd.
2233 EI Camino Real Portland
Visit a Byte Shop to explore 1044 E. Oakland Park
2033 SW 4th
Pasadena Miami
the unexplored. 496 W. Lake Ave. 7825 Bird Road Pennsylvania
Placentia Illinois Bryn Mawr
Arizona 123 E. Yorba linda 1045 W. Lancaster Ave.
La Grange
Phoenix-East Sacramento 5 South La Grange South Carolina
813 N. Scottsdale R. 6041 Greenback Lane Columbia
lndiana
Phoenix-West San Diego 2018 Green St.
8250 Vickers-II Indianapolis-North
12654 N. 28th Drive 5947 E. 82nd St. Utah
Tucson San Fernando Valley
K.ansas Salt Lake City
2612 E. Broadway 18424 Ventura Blvd.
Mission 261 S. State St.
California San Francisco
5815 Johnson Dr. Washington
321 Pacific Ave.
Berkeley Minnesota Bellevue
1514 University Ave. Santa Barbara
Eagan 14701 NE 20th Ave.
4 West Mission
Burbank 1434 Yankee Doodle Rd.
1812 W. Burbank Blvd. Stockton
7910 N. Eldorado St. Montana

@
Thousand Oaks Billings
2707 Thousand Oaks Blvd. 1201 Grande Ave.

~
E BYTE SHDP.
Stop in for your "Button of the Month" from participating dealers, the affordable computer store
the new HEATHKIT®low-cost
personal computing systems
The new VALUE-STANDARD in personal computer available today - brought! to
computing systems! Heathkit computers you by Heath Company and Digital Equip-
give you the power and performance to ment Corporation, the world leader in
go wherever your imagination and pro- minicomputer systems. Powerful features
gramming prowess take you. They're de- include DEC's 16-bit LSI-l1 CPU, 4096 x
signed to get you up and running fast, 16 read/write MOS memory expandable
interface with I/O devices easily and to 20K (32K potential), priority interrupt,
quickly, accept additional memory and DMA operation and more. PDP-11systems
I/O devices, store and retrieve data with software for fast and efficient operation
speed and accuracy, respond to your re- is included!
quests with lightning speed. They offer
complete mass storage capabilities, power NEW H9 Video Terminal. A full ASCII ter-
and reliability for any programming appli- minal featuring a bright 12" CRT, long and
cation, and they're priced low enough to short-form display, full 80-character lines,
give you real VALUE for your computer all standard serial interfacing, plus a fully
dollar! We've told you they're the ones wired and tested control board. Has au-
you've been waiting for - here's why! toscrolling, full-page or line-erase modes,
These Heathkit computer products are a transmit page function and a plot mode
"total system" designs with powerful sys- for simple curves and graphs.
tem software already included in the pur-
chase price. They're the ones you need NEW H10 Paper Tape Reader/Punch.
to get up and running fast. And they're Complete mass storage peripheral uses
backed by superior documentation in- low-cost paper tape. Features solid-state
cluding easy-to-follow step-by-step as- reader with stepper motor drive, totally
sembly and operations manuals, and independent punch and reader and a copy
service support from the Heath Com- mode for fast, easy tape duplication.
pany, the world's largest and most experi- Reads up to 50 characters per second,
enced manufacturer of electronic kits. punches up to 10 characters per second.
NEW H8 e-su Digital Computer. This 8-
bit computer based on the famous 8080A Other Heathkit computer products in-
microprocessor features a Heathkit ex- clude a cassette recorder/player and tape
clusive "intelligent" front panel with octal for mass storage, LA36 DEC Writer II key-
data entry and control, 9-digit readout, a board printer terminal, serial and parallel
built-in bootstrap for one-button program interfaces, software, memory expansion
loading, and a heavy-duty power supply and I/O cards, and a complete library of
with power enough for plenty of memory the latest computer books. The Heath
and interface expansion capability. It's User's Group (HUG) provides a newslet-
easier and faster to use than other per- ter, software library and lots more to help
sonal .computers and it's priced low you get the greatest potential from your
enough for any budget. Heathkit computer products. We've got
everything you need to make Heath your
NEW H11 16-bit Digital Computer. The personal computing headquarters, send
most sophisticated and versatile personal for your FREEcatalog today!
8-Bit
Computer

$375 Kit

Also Available: the famous )...A36


DEC Writer II Keyboard Printer Ter- '
minal only $1495 (Assembled)!

till
16-Bit
Computer

$1295 Kit

Video
Terminal

$530 Kit
til~
Paper Tape
Reader/Punch

$350 Kit

HEATH I

fflEE!
• Heath Company, Dept. 355-350
~
:¢flumrn'wl'W Benton Harbor, Michigan 49022
Please send me my FREE Heathkit Catalog.
I am not on your mailing list.

Name _

HEATHKIT CATALOG Address _


Read all about our exciting com-
puter systems and nearly 400 other . City Stale _
fun-to-build, money-saving elec-
tronic products in kit form. CP-126 Zip,_~ _
Prices are mail-order FOB, Benton Harbor, Michigan.
Prices and specifications subject to change without notice. I
Heath Company, Dept. 355·350 Benton Harbor, Mi 49022 •• •••••••••••••••••••••••••••••••••••• 1•• 1•• 1•••••
like in Norbert Wiener's anti-aircraft guns), pattern recognition,
feature selection, simulation of multivariate random processes,
and ultimately, management of my appointments and agenda
diary, with the whole show remaining easily portable like a
tricorder in STARTREK. Some programs recently completed
in shirt-pocket format are Nonlinear Regression, Factor
Analysis, Multivariate Analysis of Variance, Exam Grading
with, Item Analysis, Questionnaire Tabulation, Dynamic
Programming, and Master Mind, although not all of these
exhibit dazzling performance and range with current equip-
A Second Look at Calculators ment.
Dear Editor, I will barely take the advice of waiting till the new models
Like E. R. Tufte in Creative Computing (May-June 1977,p. appear in the discount stores, and I think the manufacturers are
34), I have 5 calculators in the house, 2 of which J consider quite justified to plan for "More Power in Your Shirt Pocket or
lemons (though all of them work as advertised), and I have also Skirt Pocket."
encountered the feeling of guilt over my cumulative investment R. Belling
(which besides might have bought me a "luxurious" microcom- 398 Ogden Ave.
puter system, for over $1270). While his observations on Jersey City, NJ 07307
electronic obsolescence are a fair warning to uncreative
computing fans or fellow travelers, most of your space could
have been used more constructively, to suggest rather the
following: Sloppy Disks
I. Printing is not worth it, because one can recall registers or
repeat calculations as often as one wants, and one can program Dear Editor:
"split displays" of several numbers in one display window, or Our company is a manufacturing and' sales outlet for a new
sequential displays of whole arrays, if desired with identifying generation of micro and mini computers. We have a franchise
subscripts flashed briefly before each output. What would you aim for a hobby computer store with a strong emphasis on the
do with all the printout, if it is not labeled, and not on a page you small business m:arket.
carrfile or publish, anyway? (Buying a non-programmable with During "Ma Bell's" yellow-page campaign, our company
a printer built in is a particularly self-defeating combination, as produced two ads showing the internal structure of a business
standards in electronics change fast, and printer mechanics are retail and a hobby retail division. As these two ads were given
stagnant and expensive.) the same address for billing, the printers combined the ads and
2. A good up-to-date card-programmable calculator is not came up with the enclosed yellow page ad. As you can see, our
likely to be "purchased with good intentions, and used once or company is now the proud (?) producers of the only SLOPPY
twice," by anyone interested in creative computing. And I have DISKS in America for the next year that are double density
seen players of ready-made games of skill return to Moon formated. .
Landing or Battle Ships more than twice even on a less
convenient key-programmable. WORLD OF COMPUTERS
3. Calculators are not limited to engineers and business NEW GENERATION OF BUSINESS MINI COMPUTERS
people, as one can see in the HP Users Library, which picked up - BASIC SYSTEM - MULTI TASKED SYSTEMS. EXPANDABLE TOO!!
about 5000 well-documented and distinct programs from
owners of just one calculator model, in Jyears. Only about 8%
were business, and about 34% engineering oriented. (Incidental-
ly, as a note on software-sharing sociology, the world's most
famous minicomputer" the PDP-8, scored less than 1000 con- .
,,,t.
544 K MEMORY - MULTIPLE CRTS & PRINTERS

~~\\\iO, 552-8082
tributed programs in the DEeUS Library, in 6 years.)
The problem of "compulsive investor's guilt" was solved for ft~'U.
\iV'" - DOUBLE DENSITY - SLOPPY DISKS
25/50/80/200/300 MILLION BYTES
me in 2 ways. First, since 1974 my family and I have written up ON HARD DISKS PACKS
21 programs we thought noteworthy, and got them all accepted
in the internationally accessible HP-65 Users Library, and we . WORD PROCESSING APPLICATIONS ARE AVAILABLE
have quite a few more in the (now congested) pipeline to the HP- en (fAIt 577-0632
67 Users Library. Secondly my wife, a biologist, did all 5849 DORCHESTER RD. CHARLESTON, S.C.
computing for publication of her master's thesis, and for
preparation of her custom-written programs, and enjoying We figured that such an engineering feat as SLOPPY DISKS
absolute convenience and flexibility of access at her desk, near- would be of interest to your public, Anyone interested in our
perfect efficiency, and not the slightest distraction from design structure will be sent an information package.
hardware reliability problems. Douglass C. Boseman
Paradoxically, I don't continue to use any of the "big" President
programs that were so exciting to write and shake down. ComputerCo, Inc.
Professor Tufte's comparison with Dr. Samuel Johnson's dog 5849 Dorchester Rd.
walking on its hind legs seems stunningly perceptive in this Charleston Hts., SC 29405
connection. However, is it really unnatural to use a handy toy to
model computational processes on a small scale, for more

intimate familiarization? Or to break the tedium of reading a
mathematical or technical textbook by breezing through
examples which the editor may have found too laborious to
check for accuracy? And is it not a stimulating mirror for ohe's
mathematical fitness and quantitative applications ingenuity,
independent of academic conventions, if one has occasion to see
what turns up, besides games, in a calculator users library? In
addition to the more spectacular ,competitive computing
sportsmanship, which is typically elicited by programmable
calculators, the keen observer will get a moderate traffic of little
cases in daily life, which we still have to learn to recognize as
instances of programmable computation; e.g., converting data
to percentages which manifestly add up to exactly 100.
Although I got burned twice already, in a way, I frankly look
forward to discrete little machines with more capabilities, to get
hands-on experience with more challenging mathematical
procedures like prediction filtering (applicable in Battle Ships

16 CREATIVE COMPUTING
P~U]BLE~S[]LUEA SYSTE~S,~~L.
.Manufacturers of QuanTronics Computer Products

Space Age Memory ...

. . .at Down to Earth Prices


MM8 Static RAM MM16 EPROM
• Available in 250nS and 450nS versions • Utilizing up to 16 2708 EPROMS
• S-100 Bus Computer Systems • S-100 Bus Computer Systems
• Memory capacity of 8K-bytes x 8 bits maximum • Memory capacity of 8K or 16K bytes by DIP Switch
• Addressing selectable by DIP Switch • 8K boundary addressing by DIP Switch
• Wait cycles selectable by DIP Switch • 0 to 4 wait cycles by DIP Switch
• Memory protect from 1f4 K to 8K by DIP Switch • Data output, address input lines fully buffered
• Data output, address input lines fully buffered • Hi-grade glass-epoxy with plated-thru holes
• Provision for SOL "Phantom" line • Epoxy solder masked

Find Out For Yourself - See Your Local Dealer Today!

D ••• •

PA~BLEf:1S[JLUm ··S'r'STEf:1S, ~I}/~.


Manufacturers of QuanTronics Computer Products
B[J4[] lJEEAII}/[J RUED SlJnE m CRI}/[][JR PRFH'i. CRD '3l3[]4
LDr:1PLEAT
LDr:1PLJTER RESOURCES

LATALDliLJE
AND
TOOLS

We welcome entries from readers for the creative and problem-solving aspects of
"Compleat Computer Catalogue" on any
item related, even distantly, to computers.
programming in BASIC.
The EC-lIOO is keyed to the Heath
MAGAZINES,
Please include the name of the item, a brief
evaluative description, price, and complete
computer systems; however, because of
the universal machine-independent nature
JOURNALS
source data. If it is an item you obtained of the BASIC language, this course can be
over one year ago, please check with the an ideal supplement to any other com-
source to make sure it is still available at the puter systems using BASIC. Mail-order, COMPUTER CHESS
quoted price. $29.95.
Heath Company, Dept. 350-450, Ben- NEWSLETTER
Send contributions to "The Compleat
Computer Catalogue," Creative Com- ton Harbor, MI 49022. The first issue of the Computer Chess
puting, P.O. Box 789-M, Morristown, NJ Newsletter is an 8-page offset publication
that includes information about chess
07960. THE FIRST BOOK programs for microcomputers, a letter
.OF KIM from Bobby Fischer commenting on the
BOOKS AND This collection of dozens of programs-
some useful, some recreational, all tested
Chess Challenger computer, an article on a
"move tree," and a list of computer-chess

BOOKLETS and documented - runs on the basic


Commodore KIM-I system. Also included
books. Editor Doug Penrod says the next
issue will be 16 pages long. Price is 75q;.
is a Beginner's Guide and other infor- Computer Chess Newsletter, 1445 La
mation useful to current and prospective Cima Rd., Santa Barbara, CA 93101.
KIM owners. $9.
ORB, P.O. Box 311, Argonne, IL60439.

BIBLIOGRAPHY ON
COMPUTER IMPACT VENDOR
An annotated bibliography on Com-
puter Impact on Society is available on LITERATURE
microfiche from the Virginia Institute of
Marine Science. The bibliography con-
tains more than 2,000· entries of books,
articles and other items. Most items are DASHER TERMINALS
annotated. The listing is alphabetical by BROCHURE
author; however, the entire system is An 8-page brochure describing the
stored in a hierarchical storage and Dasher printer and display terminals is
retrieval system at the University of available from Data General Corporation,
COMPUTER BASIC SELF- Wisconsin and special-purpose subsets of Communications Services Department.
INSTRUCTION COURSE the collection may be obtained. The The brochure describes the 60 and 30-cps
Heath Company has introduced its EC- complete set is $2.30 for individuals in the keyboard send/ receive and receive-only
1100 self-instruction course in BASIC United States, and $3.30 for others. DASHER printers with numeric keypads,
language programming techniques. The Gerald L. Engel, Dept. of Computing I 28-character upper and lower-case ASCII
course, according to it company and Statistics, Virginia Institute of Marine character sets, and adjustable paper-feed
spokesman, takes an approach which has Science, Gloucester Point, V A 23062. tractors. The brochure also describes the
been designed to teach even those with Dasher displays featuring detached key-
-little or no computer experience the skills DESIGNING WITH boards, 1920-character displays that tilt
necessary to intelligently converse, create and swivel for operator convenience, and
and program in the BASIC computer
MICROPROCESSORS
II user-defined function keys for high
language. This tutorial deals with the principles and transaction throughput. Dasher printers.
Programmed-instruction texts com- practises of microcomputer design, and displays come standard with EIA
bined with practical demonstration covering such topics as chip architecture, RS232~C or 20-mA current-loop interfaces
programs and practice problems are microprocessor selection criteria, software for compatibility with all Nova and Eclipse
employed in the EC-lIOO course to teach aids, development systems, microprocessor computers. Dasher terminals are also
BASIC language formats, commands, applications, networks, busing strategies, Teletype compatible -for local or remote
statements and procedures. In addition, and distributed intelligence. To IEEE communications with other computers and
the course goes one step beyond conven- members, $7.50; nomembers, $10. operating systems.
tional courses and texts, and gives the IEEE Computer Society, 5855 Naples Data General, Route 9, Westboro, MA
student a practical introduction to the Plaza, Suite 301, Long Beach, CA 90803. 01581.

18 CREATIVE COMPUTING
MICROCOMPUTERS & are a low-cost PROM programmer and the basic AJ 1500 system is 32K bytes of
COMPONENTS two hexadecimal keypads for use with the core memory, two 630K double-density
popular MMD-I Mini-Micro Designer, diskette drives and a 45-cps daisy-wheel
Cybertronics is one of a small number the 8080A-based microprocessor trairung Ij 0 console printer. Optionally, the AJ
of companies offering both component and hardware development system. 1500 system may be expanded to include
parts for the design-your-own computer, E & L Instruments, Inc., 61 First St., 64 Kbytes of core memory, four diskette
and standard computer kits. In com- Derby, CT 06418. (203) 735-8774. drives, and four lO-megebyte cartridge
ponents, Cybertonics sells ICs from AND disk drives. AJ also offers an optional
gates to microprocessor chips, plus choice of console printers; select either a
crystals, diodes, capacitors, switches, wire, 60 or 120-cps dot matrix 110 printer or a
etc. Design and troubleshooting
include breadboards
aids
and probes. Main- COMPUTERS full-screen CRT. A 300-Ipm printer is also
available.
frames and peripherals include the IMSAI AJ 1500 system offers standard client
8080, iCOM floppy disk, CP 10 video accounting software designed for CPA
terminal, Centronics printers, etc. A 480- and public accountants. Designated CPA
page catalog describes these and many Ill, software programs include general
more products in detail, fot $1.50, ledger, budget accounting, payroll (non-
Cvbertronics Inc., 312 Production Ct., check writing), and loan amortization. To
Louisville, KY 40299. (502) 499-1551. these may be added optional packages
such as accounts receivable, accounts
payable, and payroll (check writing) as
well as a text editor for word processing,
CATALOG OF BREAD- About $22,500 including CPA III
software.
BOARDING AND TEST Robert .Reed, Computer Systems Div.,
EQUIPMENT Anderson Jacobson, Inc., 521 Charcot
Ave., San Jose, CA. (408) 263-8520, Ext.
Continental Specialties' latest hobbyist 372.
catalog offers bread board and test POLY 88 SYSTEM SIXTEEN-
equipment for the hobbyist and the A ready-to-run system, the POLY 88
professional. Includes are breadboard System Sixteen lets you solve those home
sockets, pre-assembled breadboards, logic
monitors and probes, function and pulse
financing problems, perform a statistical MURPHY'S LAWS!
analysis, or enjoy a host of challenging Incomparable "scientific" wit. Colorfully
generators, Rj C bridge, test clips, and games. The 16K system features a high- lithographedon 8" x 1(Y' heavy Parchtext
components. . speed video display and an alphanumeric for framing.A great businessor personal
Continental Specialties Corp., 44 keyboard. Cassette tapes are used for gift! Only $3 (4/$10). Four Comers
Kendall St., P.O. Box 1942, New Haven, permanent program storage. Program- Press, Dept. CCA, Hanover, Mass.
CT 06509. (203) 624-3103. ming is made simply by the BASIC 02339.
software package. PLOT and TIME are
two of the unique features which rely on
our video graphics and real-rime-clock.
E & L CATALOG Other features include VERIFY so that
A 24-page catalog of circuit design and you know that your tape is good before you
educational aids from breadboards and load another. Scientific functions, format-
textbooks to a microcomputer develop- ting options, and string capabilities are also
ment station is now available from E &'L included. In addition to the programs
Instruments. The "Complete Bugworks" written by the user, the POL Y'88 program
catalog illustrates and describes more than library makes a growing number of
155 products for the designer, researcher, applications available to the POLY 88
hobbyist and student. Specifications, owner. Assembled, $2250; Kits start at
prices and ordering information are in- $735.
cluded. I
The contents include solderless sockets,
PolyMorphic Systems, 460 Ward Drive,
Santa Barbara, CA 93 I I I. (805) 967-236 I.
breadboards anld accessories for "plug-in" Electronic Components
wiring as well as the Innovator senes of
plug-in functiol~ al modules called "out- BELT BUCKLE
boards." These modules' speed up bread- UNIQUE - COLORFUL
boarding and experimental setups and - IDEAL GIFT
make learning leasier and more, fun, T~e
selection of 56 ?utboards, assembled or in You finish buckle front panel using kit
kit form, includes the most frequently materials & complete directions (no
used circuit functions. Designer "bread- soldering). Each panel kit is different
boxes" combIne the advantages of since assembled from recycled circuit
solderless wiring with the convenience of boards & components. With the direc-
self-contained ,Ipower supplies, controls tions ... make other creations using your
and displays. Some are for home and components. Panels are easily inserted
classroom study use; others aid in the into & removed from buckle.
specialized brbdboarding of opamp,
digital-logic ana microprocessor circuitry. Basic buckle frame is also adaptable to
Designers are dlso available assembled as 12 different arts & crafts. Pamphlet of
well as in kit form. tips included.
E & L hardware is ably supported by a
Solid brass,brushed finish buckle, 2-1/2"
select list of coolrdinated educational texts,
manuals and teference books. Subjects
AJ SMALL-BIZ SYSTEM long x 1-3/4" high for 1-5/8" belts.
range from elementary electronics to Anderson Jacobson, Inc. (AJ) a data Buckle $5.25, Components Kit $3.50 +
computer des~gn and programming. communications company, introduces its 95d shipping (First Class) per order.
Among the 16 texts are the latest editions latest product, the AJ 1500 Small Business
of the famous Bugbooks, combined texts System, featuring multiprogramming Mail check or money order to GRO-LEE
and lab manuals. capability that can accommodate up to DESIGNS, 520 Los Altos Ave_, Los
New from E & L instruments this year eight terminals interactively. Included in Altos, CA 94022.

NOV/DEe 1977 19
for erasing PROMs, is supplied. The text, nor is there any need for hyphenation,
Model 882 is mounted on a base with its Computer Power &, Light, 12321 Veri-
own switching-regulated power supply. A tura Blvd., Studio City, CA 91604. (2\3)
"black-box" enclosure allows the unit to be 760-0405.:
adapted to many industrial and hobby
applications. Assembled, $895.
Martin Research, 3336 Commercial
Ave., Northbrook, IL 60062. (312) 498-
5060.

LOWER ALTAIR PRICES


Manufacturing efficiencies now being
carried out by Pertec Computer Corp., the
LOW-COSTDEC COMPUTER new owner of MITS, are expected to cause
such savings that, in anticipation, Pertec is HORIZON COMPUTER WITH
FOR STUDENT USE "planning to pass on price reductions of
Digital Equipment Corp. announced a about 20 percent on a variety of com- INTEGRATED'DISK
low-cost instructional computer system ponents in a personal computer system." The new North Star Horizon computer
designed to extend computer access to The 8800B kit, which was $875, is now uses a full-speed (4-Mhz) Z-8Q
large numbers of students at the secondary $750; the 8800B assembled with 18 board microprocessor and includes 16K bytes of
level. The MSB-II (Mark Sense Batch-II) slots, is down from $1250 to $1070. And memory, a disk controller with one or tWQ
is a compact batch-processing system that similar price reductions are in effect for Shugart minifloppy disk drives, and full
supports both BASIC and FORTRAN IV turnkey versions of the 8800B, and for the extended disk BASIC. A serial If 0 port is
programminglanguages and uses student- 680B. The stated programs that will be included for connection to any standard
prepared mark sense cards as its primary installed to "immediately improve the baud-rate terminal. Options for the
Input medium. cost -to-retail-sales-price-rela tio nship" in- Horizon computer include additional disk
The PDP-llf04-based system, with clude "better financial controls, new drives, hardware floating-point arithmetic
32K bytes of semiconductor memory and manufacturing techniques, improved board, 24-line by 80-character upper and
a dual floppy-disk unit for program and material handling and inventory lower case video display controller (VDC)
data storage, is housed in a short (4 ft. processes. " board, and 16K memory board with parity
high) cabinet. Inputf output devices in- MITS, Inc., 2450 Alamo S.E., Albu- check. The Horizon computer uses the S-
clude a 180-cps line printer, LA 36 querque, NM 87106. (505) 243-7821. 100 bus. '
DECwriter II console terminal, and a new The single-drive Horizon-I sells Jor
mark-sense card 'reader, the CMS-II K. $1599 in kit form and $1899 assembled.
With a subset of the RT -II operating The dual-drive Horizon-2 sells for $1999 in
system and the BASIC language, the kit form and $2349 assembled.
MSB-ll system is priced at $21,460. North Star Computers, Inc., 2465
Digital Equipment Corp., Maynard, Fourth St., Berkeley, CA 94710. (415) 549-
MA 01754. 0858.

ORGAN IZATIONS
NASAGA
WORD-PROCESSING The basic goal of the North American
Simulation and Gaming Association
SYSTEM (NASAGA) is to advance an optimal,
Computer Power & Light, Inc. an- responsible application of the technique of
nounces what is said to be the first simulation and gaming. The objectives of
commercial-quality, microcomputer- the Association are: to facilitate com-
based word-processing system for under munications among persons interested in
$6,000, complete. Based on the field- the field of simulation and gaming; to
proven COMPAL-80 computer and Xerox promote the training of specialists in the
zaO-BASED Corp.'s Diablo 1620 daisywheel printer, it field of simulation and gaming; to
contains features "found only on systems facilitate communication between these
MICROCOMPUTER costing $20,000 or more." Among these specialists and policy-makers, students,
Martin Research, has a Z80-based are: complete text editing on a large CR T; and other concerned persons; and to
system, the MIKE 8, the newest entry in the insertion or deletion of text, and the ability promote the development of better techni-
firm's Modular Micro series of compact to move blocks of text anywhere; variable- ques in the field of simulation and gaming.
(5Y2-by-7-incli.) microcomputer boards. speed scrolling of entire text on the CRT, Annual membership in NASAGA
The Model 882 system comes with 4K of forwards and backwards; ability to search begins July I each year. Anyone becoming
RAM, a I K monitor program in a PROM, for all occurrences of a specific word or a member for 1977-78 at a cost of $12 will
the CPU board, and a "console board" group of words and replacement with receive: a membership directory; a special
which has a calculator-type keyboard and alternative word or words; storage and NASAGA members rate at the 1977
six LED digits. The rrionitor allows the retrieval of finished text on low-cost NASAGA conference; a membership
user to enter and execute programs via the Phillips audio cassettes at the rate of 240 card; a one-year subscription to
console, and offers advanced debug cps; a variety of printing options, in- Simulation/ Gaming; and an opportunity
features, including RAM test, single- cluding variable line length, 1-5 spaces to contribute to expanding the use of
stepping, and ·setting traps. between lines, variable character spacing, gaming and simulation.
The system includes a PROM presettable page headings, page number- NASAGA % COMEX - Davidson
programmer, so the user can permanently ing, and right and left-margin justification Conference Center, University of
store his programs in a blank 2708 PROM using the Diablo's character-spacing rou- Southern California - University Park,
(which is included). An ultra-violet lamp, tines - no extra blanks are inserted in your Los Angeles, CA 90007. (213) 741-6569,

20 CREATIVE COMPUTING
ASSEMBLED SYSTEMS
With Disk Capability
AT KIT· PRICES!
ISN'T YOUR TIME WORTH $58.00?
Then why spend needless time and energy when we will deliver assembled and
fully tested systems, like this one.
Ideal for the BUSINESS OFFICE or the CLASSROOM
North Star HORIZON

North Star Horizon Single Drive System includes the Z-80 CPU at 2 or 4 MHz,
motherboard, 16K of memory at 4 MHz and power supply. Software includes Disk
Operating System and Disk BASIC. Horizon 1 kit is $1599. Dual Drive Horizon is
also available at $1999. ,
We add monitor and keyboard.
Compare our assembled prices and save
hours of soldering, testing and trouble
shooting
Component
North Star HORIZON 1 SYSTEM SOFTWARE
Parallel Input/Output GIVES YOU TRUE DISK
PROM FILE CAP ABILITY
Video Board (64 by 16)" You get the Horizon 1 complete
9" Video Monitor with North Star Disk BASIC. A
ASCII Keyboard and Enclosure complete business package on disk-
ette is available for $295, and
Your cost for separate kits would
includes:
$2238.00.
• General Ledger
Your assembled price • Accounts Receivable
from Sunshine Com- • Accounts Payable
•. Move up to a Hazeltine 1500 • Payroll
CRT Terminal for an additional
puter Company is
• Inventory
$595.00. $2Z96.00. • Amortization
Dual Drive $395.00 • Mailing List
Assembled systems sold with 9O-daywritten warranty. Come in and see our Horizon in operation.

Sunshine Computer Company


20710 South Leapwood Ave. - Carson, California 90746- (213) 327-2118
SA VE, RUN, LOAD, PURGE (delete),
PACK, CATALOG, RENAME, IN-
ITIALIZE and PATCH. The MF-68 is
offered in kit form only. It includes
controller, chassis, cover, power supply,
interconnecting cables, assembly instruc-
tions, two assembled Shugart minifloppy
drives, and a diskette with the FDOS
operating system and disk BASIC. The
MF-6X expansion kit includes power
supply, chassis, cover, and two assembled FLOPPY FAMILY WITH
minifloppy drives. Prices of $995 for the
51f4-INCH FORMAT
MF-68 and $850 for the MF-6X includes
prepaid postage. A family of fully integrated floppy-disk
Southwest Technical Products Corp., systems from Micropolis Corporation is
219 W. Rhapsody, San Antonio, TX claimed to be the first to package the
78216. performance and storage capacity of8-inch
disks in a 5V4-inch format, at the same price
SPACE-SAVING TERMINAL as comparably-sized units. Designed to
A small alphanumeric display terminal make the 5V4-inch format viable in cost and
designed as an alternative to a CRT is now performance for OEM's and home com-
available from Computerwise, Inc. The puter hobbyists alike, the MetaFloppy
Transactor I Data Terminal consists of a family of four systems offers the additional
single-line, 32-character gas-discharge advantages of plug-in microprocessor
display with a 5 x 7 dot matrix, and a 53- compatibility and a complete BASIC
key Teletype-style keyboard. It can be software package. They are available in
attached to almost any computer, with an single and dual drives with capacities
RS-232 or 20-mA current-loop interface. ranging from 143 to 630 kilobytes.
Switches allow the user to select the The smallest MetaFloppy system, the
operating mode including; 110-9600 baud 1043-Mod I, is a single-drive using a 35- .
rate, full or half duplex, even/ odd/ no track disk with a capacity of 143 kilobytes
parity, five to eight data bits, and one or - as compared to 70K bytes for other 5Y4-
two stop bits. inch units - at $945 in quantity one, which
Lightweight and small, the Transactor is includes power supply, controller, inter-
housed in an aluminum case that measures face cable, and BASIC software.
6 in. high x 15 in. wide x II in. deep. A The Model 1043-Mod II system uses a
stylized molded case is available. The 77-track disk with a 315-kilobyte capacity
standard Transactor I in quantity is DOUBLE-DENSITY and a price of $1095, including power
$595.00. supply, controller, interface cable, and
Computerwise, Inc., 4006 East 137th
MICROFLOPPY DISK DRIVE BASIC software.
Terrace, Grandview, MO 64030. (816)765- The first flexible disk drive for 5-1/4" Two compact dual units round out the
3330. diskettes to offer double-density recording family. The Model 1053-Mod I stores 286
of 250,000 bytes on each side of a diskette, kilobytes at $1545 while the Model 1053-
was introduced this year. Mod II packs 630K bytes and a $1795
The drive, designated the Pertec Model price. Both include power supply, con-
PERIPHERALS FD200 Microfloppy,
functionally
is mechanically and
interchangeable with the
troller, cable, extended disk BASIC and
power supply.
diskette drive introduced earlier by Micropolis Corp., 9017 Reseda Blvd.,
Shugart Associates but permits writing on Northridge, CA 91324.
40 tracks versus a 35-track limit for the
Shugart SA400 unit, in addition to the
double-density feature. The Pertec FD200
also allows recording on both sides of a
diskette, whereas other units are limited to
one side, according to Pertec ..
Both the signal interface connector and
the DC power connector are compatible
with the Shugart equipment, and mount-
ing holes and outline dimensions are the
DUAL MINIFLOPPY KIT . same. Up to four FD200 drives can be
"daisy-chained" on a single 34-line ribbon
UNDER $1,000 . cable. The new Microfloppy drive also
The first dual minifloppy kit said to be employs an IBM-compatible read/write
under. $1,000 has been announced by head with "tunnel erase." Head life is LOW-COST X-Y PLOTTERS
Southwest Technical Products Corp. The estimated at 20,000 hours. A special design Sylvanhills Lab announces 8080-based
$995 MF-68 minifloppy disk system is feature prevents the head from disengaging software to control their series of plotters.
designed for use with the SWTPC 6800 'from the positioning cam mechanism. The This enables the microcomputer to act as
computer system. It includes all hardware FD200 incorporates a molded plastic the controller for the plotter and requires
and software needed to provide a complete faceplate and door. Light-emitting diodes about 2K of memory. The software format
high-quality dual-disk operating system. on the faceplate indicate the drive that has is such that it may be used in conjunction
The system can be expanded to its four- been selected. with application routines available from
drive limit with an $850 MF-6X expansion Formatted capacity is 102,400 bytes per Micro-Visions Inc., 4926 Travis, Houston,
kit. side. The data transfer rate of the diskette TX 77002. Plotters are shipped completely
The extensive software provided with drive is 125,000 bits per second; average assembled and tested, but require the
the MF-68 includes both disk BASIC and a access time is 463 milliseconds. Recording purchaser to mount them on his drawing
floppy-disk operating system (FDOS). density at the inside track is 2581 bits-per- surface and interconnect between the
Operating-system commands make disk inch. $405. control PC boards and his computer.
operation, including copying all or any PCC; Pertec, 21111 Erwin Street, Requires an 8-bit parallel I/O port and 5
part of one diskette onto another, simple Woodland Hills, CA 91367. (213) 999- and 24-volt power sources.
and easy. Commands include CREATE, 2020. Applications include architectural,

22 CREATIVE COMPUTING
mechanical, and schematic drawing; PC
board artwork; positioning of small ob-
jects; computer generated art; games; and
many others. Sizes available are II x 17
($750), 17 x 22 ($895) and 22 x 34 ($1200).
Sylvanhills Lab. Inc., #1. Sylvanway,
Box 239, Strafford, MO 65757, (417) 736-
2664.

HIGH-SPEED
MICROPRINTER
Centronics Data Computer Corp. has a
high-speed, low-cost, compact
microprinter. Aimed at the home, hobby,
and microprocessor markets, the 240-cps
M icro-I is offered as a complete unit
including case, power supply, 96-character
ASCII generator' and interface, paper-roll
holder, low-paper detector, bell, and multi-
line asynchronous input buffer.
The microprinter produces copy on
aluminum coated paper by discharging an
electric arc to penetrate the coating, which
is less than one micron thick. Toners and
ribbons are not required. The printed
characters, unlike those resulting from
thermal printing, are impervious to light,
temperature, and humidity. In addition,
the finished printed page may be reproduc-
ed on any office copying machine.
The microprinter electronics allows the
machine to produce copy at a rate of 180
lines per minute on 4 1.\ inch roll paper and
provides the user software selection of 20,
40, or 80 columns. $595. .
Centronics Data Computer Corp.,
Hudson, NH 03051. (603) 883-01 I I.

MISC.
HARDWARE

power-up. DIP-switches located at the top


of the board are for handling jump address 3000-HOLE
and enable, board address, memory PROTOTYPING BOARD
protect, and 0, I, or 2 wait states. RAMs
Electronic Product Associates an-
and PROMs may be mixed in any 256-byte
nounces a new general-purpose prototyp-
increments. $79.95 without memory.
ing board for use in the Micro-68
Cybercom/Solid State Music, 2102A
microprocessor systems. The 8" x 14.8"
Walsh Ave., Santa Clara, CA 95050. (408)
(20.32 em x 37.59 ern) GP-2 board is
246-2707.
CYBERCOM 4K STATIC exorcisor-bus compatible and has com-
plete bus buffering already established on-
PROM/RAM BOARD board with 8833 driver/receivers. The G P-
The new MB9 4K static PROM/RAM 2 board contains Vcc and ground busing,
board, from the Cybercom division of 3000 holes worth of blank DIP patterns for
Solid State Music, features addressing at thirty-five 24, 40 or 42-pin DIP packages,
any 4K block segment with fully buffered or 107 14 or 16-pin DIP packages. $170.
'address and data lines. The jump-on-reset Patti Neumann, Vice President, Elec-
circuitry allows execution at any I K tronic Product Associates, Inc., 1157 Vega
boundary or may be modified to jump on St., San Diego, CA 92110.

NOV/DEe 1977 23
Once set, the Clock/ Calendar does not
require re-initialization. If power is shut
down, a battery backup system is provided.
The 40-Function Scientific Calculator
provides the microprocessor with a
hardware solution to floating-point,
trigonometric and algebraic problems as
well as the basic math functions. Savings in
memory can be realized and made
available for other tasks while the
hardware performs intricate computations
or general mathematics via the calculator
array. 16-BIT EPROM
Compu/Tirne is available in three
configurations: (I). both time/ date and MEMORY BOARD
VIDI;O MODULATORS calculator capabilities, model CTlOO, kit The RMR V-8K is an 8K word by 16-bit
Convert a commercial TV into a $199; (2) time/ date only (coincidence EPROM memory board designed for use
monitor. Normal TV reception, when counters are included). Model T102, kit with DEC's LSI-II microcomputer. It
desired, is un-affected. Vamp, Inc. offers $165; (3) calculator capability only. Model offers the highest density EPROM
the computer hobbyist or video enthusiast CIOI, kit $149. . memory currently available for this pop-
a choice of three kits. Each kit comes with Compu/ Time, P.O. Box 417, Hun- ular microcomputer. The memory board
complete assembly and installation in- tington Beach, CA 92648. (714) 638-2094. occupies one dual-height module slot in the
structions. All of the kits will work with LSI-II backplane. Packaging density is
either Black & White or Color television achieved by using the easily programmed
sets, and all are perfectly safe when and UV -erasable 2708, 8192-bit (I K by 8)
installed as directed. - memory IC, Addressing is jumper-
TR VM ($20.95) kit is for transformer- selectable for any two 4K banks in the 0 -
isolated sets only. A buffered non-inverted 28K address space. Bus handshake logic is
video signal (some transformered sets handled in 1K segments allowing for 1 to
require inverted video, therefore, you all 8K to be enabled in reply to a memory-
should use HCVM) is fed to your set's send request. $285, without EPROMS.
video amp, thus bypassing the tuner and I RDA, Inc., 50 12 Plac~, Beltsville, MD
F Sections. Very high resolution is possible 20705. (301) 937-2215.
in this manner.
HCVM ($24.95) is a universal kit. It will
work on any set (especially "hot chassis"
types), It provides both inverted and non-
inverted video, and a good isolation
between your video source and your TV
set's power supply. ,
RFVM ($9.95) is a video-only CASSETTE/TERMINAL
modulator which is operated on +5 Vdc at
I mA and over a frequency range which INTERFACE FOR SW 6800
allows you to choose channels 2 through 6. PerCom Data Company announced
The RF output of the modulator connects what is said to be the first high-speed, self-
to your set's antenna terminals. clocking cassette/ terminal interface for the
Vamp, Inc., P.O. Box 29315, Los Southwest Technical Products 6800
Angeles, CA 90029. microcomputer.
Designated the CIS-30+, the dual-
function unit interfaces cassette data at a
user-selectable 30, 60, or 1-20 bytes per
MUSIC BOARDS
second, and provides RS-232 interfacing at The 10-5-9 and 10-5-10 Quad Chromatic
300, 600, or 1200 baud. Pitch-Generator boards are designed as a
Cassette data is KC-standard/ biphase low-cost start in computer-controlled
encoded for dependable, self-clocking data music generation. The single-board Pitch
exchange. The self-clocking feature vir- Generator produces one to four tones
tually eliminates tape-speed variation simultaneously; two boards can be used to
errors, and permits the use of inexpensive produce eight simultaneous tones in stereo.
audio recorders without loss of data Each of the four tones are separately
reliability. controlled and can produce any of96 tones
The ClS-30+ users manual and optional which form an 8-octave range. This covers
test cassette include PerCom cassette the entire standard piano range, plus 8
CLOCK/CALENDAR AND operating software; however, the 6800- higher pitches. Special connections allow
resident Mikbug is the only software later expansion with accessory boards to
SCIENTIFIC CALCULATOR needed except for loading at 120 bytes per control various sound parameters. Using
ON ONE PC BOARD second. The CIS-30+ also plays un- the optional on-board crystal oscillator or
This S-100 bus compatible PC board modified SWTPC cassette software. a 2-MHz source (external or pin 49 on the
marketed by COMPU/TIME of Hun- Cassette record and playback circuits are S-100 bus) all pitches are within 0.1 % of the
tington Beach, CA provides two in- independent permitting operations such as A=440 Hz standard. The 10-5-9 is S-100
dependently separate functions one a single cross-filing, and optional program control compatible, and the 10-5-10 is compatible
PC board. The Digital Clock/ Calendar of recorders is available. This is ac- with parallel output ports. Kit prices for
function has a crystal-controlled time base complished without the use of a 6800 CT- .both versions range from $111 to $159
for providing date or time output in real CA cursor control board. (depending on the number of simultaneous
time for purposes such as time and date The CIS-30+ data terminal interface is tones), the assembled price is $185.
stamping of output listings, memory full duplex, and provides for data exchange Oscillator is an additional $16. Available
dumps, or CRT Display. Two setable between the 6800 and the user's terminal or for product evaluation: data sheet (free),
coincidence counters are incorporated to TVT at 300,600, or 1200 baud. Kit, $69,95; demonstration record ($1), and owner's
provide elapsed time capabilities for alarm assembled; $89.95. manual ($3 plus $1 postage).
or timing applications. Time, date, and PerCom Data Company, 4021 Windsor, ALF Products Inc.; 128 South Taft;
.counters are set or changed by ,software. Garland, TX 75042 (214) 276-1968. Denver, CO 80228. (303) 234-0871.

CREATIVE COMPUTING
24
Essential FULL ASCII UPPER/LOWER CASE Computers We Stock
Accoutrements COMPUTER .KEYBOARDS
IMSAI 699.
Used Guaranteed Working
TEXASINST SOL20 1095.
Lo Profile Sockets CromencoZ2 595.
Apply II (16K) 1698.
Compucolor 2750.
Pin 1 10 100' Poly 88 735.
8 .30 2.50 20.00 Xitan I 769.
14 .25 2.00 18.00 Vector Graphics 619.
16 .27 2.20 20.00 Alpha Micro System 1495.
18 .40 3.20 27.00
20 80 6.00 40.00
22 50 4.0Q 30.00
24 50 4.00 30.00
28 50 4.00 30.00
Single Supply + 5v @ 800 ma Memorv Modules We Stock
40 50 4.00 30.00
Schematics Included
'Write for 1K /Jppricing Basic Keyboard $45.00
SSM MB7 2.o.ons16K 525
Add: $5.00 for Upper CaseAlpha
Industrial /J Systems 8K 229
$10.00 for Numeric Keypad
Common DB Series SPACEBYTE16K Static 599
$5.00 Misc. Function Switch SSM MB7 450ns 8K 199
Connector
$40.00 lVIetalCasew/bottom
1 10 100'
CCI $45.00 Metal with Walnut Ends
$1.5.0 Connector
Vector Graphics 250n5 8K 269

DB 9P 1.1.0 1.00 .80 $2.00 for 10 Extra Switch~s


DB 9S 1.50 1.40 1.15
.oB15P . 1.50 1.40 1.15
1.75 DIP Switches
.oB15S
DB25P
2.25
2.25
2.00
2.00 1.80
COMPUTER COMPONENTS
.oB25S 3.25 3.10 2.75 5848 Sepulveda Blvd., Van Nuys, CA 91411 (213) 786-7411 1 10 10.0
DC37P 2.95 2.75 2.5.0 4 1.85 1.65 1:45
4705 Artesia Blvd., Lawndale, CA 90260 (213) 370-4842
DC37S 4.90 4.50 4.00 q 1.85 1.65 1.45
D.o50P 3.90 3.50 3.25 B of A and MC Welcome 6 1.85 1.65 1.45
DO50S 6.50 6.00 5.40 Terms: Min order $10.00 7 2.00 1.aO 1.60
add $2.00 P and H if order $25.00 8 2.20 1.90 1.7.0
We stock a complete line Post Paid US if U.P.S. plus over $25.00 9 2.3Q 2.1Q 1.75
of 7400, 74LS, 4000 CMOS All orders U.S. Currency .10 2.40 2.20 1.80

and requires a minimum of 4K bytes of tions.9 system commands. and many other
SOFTWARE ROM and 2K bytes of RAM user space
(allows about 60 average NIBL state-
special operators and characters. EM PL
can be run either in the ASCII or APL
ments). As an option, NIBL will presently character set. The range is ± 32767, and
MATHPACK support an additional 26K bytes of user double-byte integer arithmetic is used.
memory. Two versions of NIBL are EM PL is $10. including a Tarbell cassette
Through the interactive use of a time- available, for the earlier model and for and User's Mariual.
sharing computer system, Mathpack is a SCiMP II. Erik Mueller. Britton house, Roosevelt.
new approach to' the old problem of Phil Roybal, National Semiconductor NJ OS555. (609) 44S-2605.
teaching the basics of obtaining the cor- Corp., 2900 Semiconductor Dr., Santa
rect answers to arithmetic and algebra Clara, CA 95051. (408) 737-5743.
problems. Mathpack consists of 121 sets
of three computer programs, written in APPLICATION SOFTWARE
BASIC. Each set provides: (1) drill and PRE-RECORDED SOFTWARE BY MAIL ORDER
practice, providing random sample prob- Compu-Quote announces its Computer Custom microprogramming. BASIC
lems, and no two students receive the Cassettes, a line of pre-recorded software and FORTRAN programs. Lists of ready
same set; (2) program for checking an- available on high-quality, low-noise programs, in a variety of application
j I
swers, with correct answers provided; Philips audio cassettes, Four different areas. .
(3) testing. cassettes are now available: 4K BASIC Compumax Associates, Suite 310, 505
Piedmont Call-A-Computer, Inc., ($10), 8K BASIC ($15). VIDEO Hamilton Ave., Palo Alto, CA 9430 I.
Education Dept., P.O. Box 10234, CHECKERS ($10, plays under MITS 8K (415) 321-fSSI. .
Raleigh, NC 27605. BASIC, requires Polylvlorphic board and
16K memory). and GAMES ($15. plays
under MITS 8K BASIC, eight games
HIGH·LEVEL LANGUAGE including
BLACKJACK,
SEA WAR,
BAGELS, etc.).
WUM PUS, MISCELLANEOUS
~ .
FOR SC/MP
All are recorded in Tarbell format, for
An easy-to-use microcomputer SOSOsystems.
language, similar to BASIC, has been de- Compu-Quote, 6914 Bergquist Ave., PERSONAL COMPUTER
veloped by National Semiconductor Canoga Park, CA 91307. (213) 34S-3662). NETWORK
Corp. for its SC/MP microprocessor The PCNET (Personal Computer
system. Called NIBL (pronounced "riib- NETwork) Committee has been func-
ble") for National Industrial Basic EMPL/SOSO INTERPRETER tioning in the Palo Alto area since the April
Language, it has been placed, without EMPL, a micro APL for the Z-SOjSOSO. Computer Faire. The committee's goal is
charge, in the public domain to insure is now available. The interpreter itself the creation of regional (followed by
wide dissemination. It is available in resides in 5.5K bytes, but a minimum ofSK national) personal computer networks for
paper-tape form through COMPUTE, is recommended. EMPL has numeric and the computer-to-computer transfer of
the user-group newsletter. character vectors. user-defined monadic messages and files. A set of network
NIBL is an adaptation of Tiny BASIC, and dyadic functions. 22 primitive func- protocols (sets of conventions defining all

NOV/DEe 1977 25
levels of intercomputer communication) is rewarded with a "whiz-bang," highly visual
almost completely designed. These action-packaged display on the order of STAR TREK BLOOPERS
protocols should be operable in 8K bytes of modern stadium scoreboards. AND OUTTAKES
machine code, and are designed to be DataMan can be adjusted to a
implemented in string BASIC. youngster's achievement level so that Star Trek blooper pictures and outtakes
The committee believes this· should be learning experiences can be increased as (Spock sucking a Tootsie Pop, etc). Also
attractive to personal computer users. the student gains confidence and skill. general pies, Send SASE for free catalog:
Participation will be voluntary; you can This TI mathematics learning tool can be Eric Essman, 1344 Terry, Clovis, CA
decide to participate (or not) on any given set for practice in any of four functions- 93612.
day of network operation. Network func- addition, subtraction, multiplication or
tioning will be relatively insensitive to the division. Among learning activities are:
absence of an appreciable fraction of Answer Checker, Problem Storage. Math
member computers. Tables. Missing Numbers. Wipe-Out.
Current thinking indicates the following
tentative equipment required for participa-
Number Guesser. and Force Out. $24.95,
suggested retail.
CALCULATORS
tion in the network: A personal computer Texas Instruments l nc., Inquiry
with 12-16K of RAM and string BASIC; Answering Service, P.O. Box 53 (Attn:
an originate/answer modern capable of DataMan), LubbockTX 79408.
300 bps.
For further information write or call:
Dave Caulkins, 415-328"2411 (work),415- FIRST WEST COAST
948-5753 (home), 437 Mundel Way, Los COMPUTER FAIRE
Altos, CA 94022. CONFERENCE PROCEEDINGS
If you missed the First West Coast
Computer Faire, held in San Francisco this
COMPUTER STORE SURVEY last April, here are all the papers presented
An opinion survey of the nation's com- at thatshow, also of interest to those who
puter stores is available from Image attended the show but who couldn't get to
Resource. The survey, which involved both hear all the papers of interest, of which DATACLIP
questionnaires and telephone interviews, there were many. These 352 pages give you A new carry-along calculator about the
covers over 450 computer stores and shows 90 papers, the banquet speeches, and a size of a six-inch ruler has been introduced
how the stores rate the top 37 personal three-page list of all of the more than 170 by Texas Instruments. Called the
computer manufacturers on 17 perfor- exhibitors. $12.00, plus 0.68 for shipping, DataClip, it has five functions, a bright
mance parameters such as delivery, plus 6% sales tax for Californians. eight-digit liquid crystal display, and
packaging, warranty, pricing and reliabili- Computer Faire, Box 1579, Palo Alto, operates up to 1000 hours on a set of
ty. The report also covers business CA 94302. (415) 851-7664. batteries.
problems, trends, and market It is a little longer than a ballpoint and
characteristics observed by the store about an inch wide. The four basic
managers. The survey will be published LIST OF S-100 BOARDS functions are complemented by a memory
annually; the current survey is $495 to At irregular intervals, Robert Elliott that can be added to or subtracted from.
manufacturers, $295 to others. Purser publishes a free list of almost all the Memory recall and clear memory can also
Image Resource, 717 Lakefield Road, S-IOO boards available anywhere. Send a be executed. The DataClip comes complete
Suite B, Westlake Village, CA 91361. (805) self-addressed' envelope with a 1311:stamp, with batteries and attractive carrying case.
495-6277. or with two international reply coupons, to Suggested retail price is $34.95.
P.O. Box 466, EI Dorado, C A 95623. Texas Instruments Inc., Inquiry
Answering Service, P. O. Box 53 (Attn:
DataClip), Lubbock, TX 79408.

STAR TREK

STUDENT LEARNING AID


Data Man, introduced by Texas In- STAR TREK INFORMATION CALCULATING CLOCK
struments, is a new calculator-based lear- For a dollar, you get an amazing amount A new mini "calculating clock," the
ning aid to help youngsters seven years old of information about almost anything to Casio, MQ-I, is a little larger than a
and up sharpen their math skills. Designed do with Star Trek, in the 15 double-sided cigarette lighter. In addition to being a
along the lines of the highly successful TI pages of the "Yellow Pages of Star Trek," four-function (add, subtract, multiply and
"Little Professor" introduced a year ago, it containing a listing of future conventions, divide) calculator, the MQ-I is also a
carries a higher degree of sophistication, three pages of books, a couple hundred timepiece. It shows the time in hours,
more' functions and extra features to clubs in 46 states and seven foreign minutes and seconds. It has a calendar
provide youngsters considerable learning countries, sale items offered offerings by feature that displays the year, month, date
breadth and depth. Packaged in an individual fans, dealers, professionals, and and day of the week. A stopwatch feature
imaginative design, DataMan offers many manufacturers, and a couple of hundred records time up to 23 hours, 59 minutes',
learning activities and intriguing math' fanzines. $1.00. . 59.9 seconds. It shows each 1/10 of a
strategy games. A special "beat-the-clock" Star Trek Welcornrnittee, Allyson Whit- second. $59.95
timing feature adds to the fun and field, P.O. Box 206, New Rochelle, NY Casio, Inc., 15 Gardner Road, Fairfield,
challenge of numbers. Correct answers are 10804. N.J. 07006. (201) 575-7400. •

26 CREATIVE COMPUTING
-W-e're the
., ORDER F'ORM
QTY.
KIT ASSEMBLED

o o
memory AE SKS

AE

AE
ts
t 702A
KPS

PRGM
o
o
o
o
house Name:

Address:
BROCHURE
~
0'
_

Associated Electronics Company


1885 W. Commonwealth, Unit G We accept: Checks. Money Orders. C.O,D .• Credit Cards
Fullerton, CA 92633 Master Charge # _

(714) 879 - 7541 879 - 7707 BankAmericard #

AE 8 KS (SK STATIC RAM)

• 8192 bytes of static memory.


• Access time: 500 nanoseconds.
• Memory chips are Signetics 21 L02's.
• Memory allocation is in 8K increments to any location (switch selectable).
• Memory protection (full 8K) selectable with a switch.
• Fully socketed and buffered.
• Solder mask and character screen for ease of assembly.

Kit $189.00 Assembled $289.00

AE 16 KPS (16K PSEUDO-STATIC RAM)

• Runs with all popular processors including Polymorphics, Sol, Chromemco, ZPU, and others.
• Runs with Micropolis, North Star, Tarbell and other mass storage systems.
• Full speed memory chips (500 nanoseconds) with no wait states.
• All memory management functions on board. No software management required.
• Low power consumption .... 2.5 to 5 watts maximurn l l!
• Headers allow allocating memory in 4K blocks to ANY LOCATION within the 65K
8080 orZ80 memory space. Allocation must be on 4K boundaries.
• Phantom, memory protect-unprotect, and other functions jumper selectable.
• This memory card is as DMA compatible as any other pseudo-static memory on the market.
The DMA controller MUST HONOR ALL PROCESSOR SIGNALS!!! ASK DYNABYTE
which DMA controllers they run with ... then ask us!!!!
• Fully socketed and buffered.

Kit $349.00 Assembled $449.00

AE 1702A PRGM (MANUAL 1702 PROGRAMMER)

Our new EPROM programmer has a vast array of improvements


over the original design ... with NO INCREASE IN PR ICE!!!
THE ORIGINAL DESIGN has sold to John F. Kennedy Space Flight Center, »
Jet Propulsion Labs, Los Alamos Scientific Lab, Stanford Linear Acceleration
Center, IBM, XEROX, 3M, and many others. The new design incorporates
on-board 3 state' buffers and two 16 pin headers for direct processor interface.

The new design also incorporates a new keyboard for increased reliability
and improved function selection.

Write for additional details.

Kit $189.00 Assembled $299.00


.~~~~~~.~~~~~
~
~
. ~
~

i Programming Techniques: i.
~

.
~ ~

I File Structures I (Part 1)


.
~.~~~
~

...•~~~.~
•. .... •..... .. ..• ~~~ ~~~
John Lees

~~ ~
~
~
~

The primary use of general-purpose computers is data able to keep the file in order, when you add or delete
processing, and most of data processing is file handling. records. To do that, you'd write a program to take all the
To make effective use of your computer, sooner or later additions or deletions, sort them and keep them in
you'll have to deal with files. So here's an introduction to . memory. Then your program would read from one tape,
the wide world of file.structures, writing records out to the other tape until it reaches the
To begin with., a few definitions: A file is an organized point for an add or delete. It would do the add or delete
collection of related information. (A collection of files can ariel then keep on reading/writing until the entire file had
be called a data base.) A file consists of records, all of been processed.
which usually have the same basic structure. Each record You may have noticed that a lot of space is being
can, in turn, be subdivided into fields,or elements. wasted in our sample file. There is only a small number of
A file can exist in memory, on paper tape, cassette, different publishers, yet that information is repeated in
magnetic tape, disk, or any other type of storage. Storage every record, Very wasteful! To save space, we could
can be considered in two categories, that allowing only create two files, one file consisting of a modification of
sequential access (all kinds of tape and some primitive the records we already have, with the publisher 'informa-
disk systems); and that allowing random access tion replaced with a code: .
(semiconductor or core memory and most disk systems).
Some tape systems purport to have random access, but
random access on tape can only be achieved with
considerable access time and space overhead.
and another file containing the publisher information:
Sequential File
The simplest and most common file structure is I P·CODE I PUBLISHER I ADDRESS I
physical sequential. Records are arranged in some order,
one after another in the file, and are physically accessed
These two files could be us.ed in this way. Put the
in that order. Tape files are by their very nature physically
sequential. Publisherfile first on the tape, followed by the Library file.
As the first step in using the Library file, read the
Let's consider an example of a sequential file. Say you
Publisher file into the memory since it is relatively small.
want tokeep a catalog of all the books in your library, or
Now, as records are read from the Library file, the
all your record albums, musical scores, paintings, or any
publisher code can be matched up with one in the
similar item. A record in such a file might look like this:
Publisher file and the information in the. record in the
, Publisher file used to print the book listing. This look-up
will be fast since it is done in memory. The small amount
of extra processing time used is well justified by the
The file would consist of one such record for each book savings in file space. This same principle can be applied
in your library. Probably the order in which you would whenever a fietd contains often-repeated information. Of
choose to keep such a file stored would be alphabetical course the information must be longer than the code
by the author field (which would be the key field for the used to replace it. It wouldn't pay to do this with the date
file), but of course you could store it in any order you field, for instance.
wish. The order you decide to use is important though,
since you don't want to have to sort the file each time you
Tight Space
use it.
Once you set up your library file, you'll want proqrarns If you're real hard-up for space, the leading "1" need
to add books or delete books and possibly to allow you to not actually be stored in the date field. Similarly, don't
modify a record, although you could get by with deleting, store a "$" or even the decimal point in the price field.
then adding, to modify. You'll want the capability to print, Have the proqrarn add them when it adds the publisher
say, all titles by one author, or by one publisher, or all information to the book listing being printed. You can
hardbound books, or all books published in 1974. save even more bytes by storing the price and date in
binary.and converting. But qon't get carried away if you
don't need to save the space.
Two Transports
All well and good, but what if you have collections,
If you're using tape, you'll need two transports to be such as science-fiction anthologies, and want to be able

28 CREATIVE COMPUTING
to find authors and-titles of stories in the collections? You certain categories begin in 'the master file. This could be
could do about the same thing we did with publisher in terms of record number, memory address, disk sector,
information. Add a code to the author field: or (shudder) tape block. Now if you want to find Heinlein,
the program looks in the index file and goes right to the
beginning of the H's. This is of limited use on tape, since
you still have to move all that tape past the read head
slowly enough to count blocks.
This new code could mean if 0 then the book is not a
With our example, you could also have an index to help
collection, else the code would match up with a set of
find the groups of short-story records and even the
records in a short-story file which would give the
records for the collections themselves. So your program
contents of that collection.
could go right to the record or group of records. A
But that isn't really what you want. That scheme will let
diagram for such a file system might look like this:
you list the contents of a collection, but is of no help in
finding out if you have in your library a short story that
only appears in a collection. What to do? You could, Alphabetical Index
instead of having a separate short-story file, include
these records in the main file. Avoiding redundant
information, you would now have a file consisting of I A I LOCATION I
three different-types of records:

I TYPE 0 I AUTHOR I TIT~E I P-CODE I BINDING I PAGES I PRICE I DATE I •

I TYPE 1 I B-CODE I AUTHOR I TITLE I P-C'ODE I BINDING I IzI LOCATION I

I TYPE 2 I B-CODE I AUTHOR I TITLE I Short Story / Collections Index

A type 0 record would be a normal book. A type 1 I B-COOE I LOCATIONS OF SHORT STORY RECORDS I LOCATION OF COLLECTION RECORD I
record would be a collection and such a record would
contain an additional field witha book code, which would •
match a book code in type 2 records containing the •
authors and titles of the short stories in the collection. To •
make this file easily usable with a sequential storage LOCATIONS OF SHORT STORY RECORDS LOCATION OF COLLECTION RECORII
medium, you'd probably want to group all the records
together by types (almost, in effect, giving three files), in
alphabetical order by author within type. Library Master File
Now if you want to see if K is in your library, the
program would look for a record of any type with K in the
author field. If therecordts) found with K are of type 2,
then the program would also look for a type 1 record with
matching b-code and tell you what collection the story by I TYPE 1 I B-COOE I AUTHOR I TITLE I P-CODE I BINDING I PAGES I PRICE I DATE I
K appears in. If you think that this kind of thing could take
a very long time on a cassette, you're perfectly correct.
But what's your hurry? I TYPE 2 I B-COOE I AUTHOR I TITLE I
Publisher File
Faster, Faster
Well, maybe you're writing this system for the school
library and you have a legitimate reason for wanting the
P-CODE I PUBLISHER I ADDRESS I
search for a book to take less than half an hour. Hopefully
you can get a disk or two, because you've exceeded the Once you've figured out that conglomeration, you'll see
capabilities of a sequential-file structure. The rest of the that it saves a lot of work, at the expense of a little storage
structures we're going to discuss require random-access space. Using the indexes may speed things up, but a lot
devices. of sequential processing is still required, and the records
. The drawbacks to the plain old sequential file are within. groups must still be kept in alphabetical order,
obvious. If you're on Heinlein, you know that Vonnegut is thus requiring a lot of insert overhead. (Deletes are
somewhere further on and that you've passed Ellison. simple. Just adopt the convention that a type 3 record
Vonnegut you'll eventually come to, but Ellison can only isn't there and so mark "deleted" records, every once in a
be reached by going back to the beginning and starting while collecting the garbage and squishing things
over again. An unhandy state of affairs if speed is of any together.) Also, there area couple of little bugs in that file
importance at all. system and a very high maintenance cost associated with
updating all those index records if any of the Master file
records are moved, as they will be each time an insert is
Index
performed.
So, enter the next bright idea in file structures, the It is possible to get away entirely from any reliance on
index. Although the combination of indexes and sequen- sequential ordering, at the expense of a little more
tial files will not, as IBM once tried to convince the world, storage and a little more processing time. But processing
solve all problems, it does help a little. Imagine a time is cheap and maintaining a sequential file is a
dictionary with no way of telling where each letter begins nightmare when you don't have much memory. So let's
and you'll quickly appreciate the utility of an index. The move on into the realm of list structures, linked lists,
idea is the same with a file. You have the master file and rings, trees, hierarchical files and such things. You ain't
an index file which contains the information on where seen nothing yet! •

rsov/oec 1977 29
COMPU/TIME offers THE PROM SETTER
CDMPU/TIME
CT tOO
A
Real Darn Clever W7400NTTL4ffiffi#
SN7400N .16 SN7459A .25
WRITE and READ
EPROM
1702A and 2708
Enhancement to users of SN7401N .16 SN7460N .22 SN74154N 1.00 • Plugs Directly into your ALTAIRIiMSAI Computer
IMSAI/AL TAl R Microprocessors SN7402N
SN7403N
.21
.16
SN7470N
SN7472N
.45
.39
SN74155N
SN74156N
.99
.99
• Includes Main Module Board and External EPROM
SN7404N .18 SN7473N .37 SN74157N .99 Socket Unit
SN7405N .24 SN7474N .32 SN74160N 1.25 • The EPROM Socket Unit is connected to the Com-
SN740!lN .20 SN7475Nt. .56 SN74161N 99
Sl00 BUS COMPATIBLE SN7407N .29 SN7476N' .32 SN74163N .99 puter through a 25 Pin Connector

TIME & CALENDAR SN7408N


SN7409N
.25
.25
SN7479N'
SN7480N
5.00
.50
SN74164N
SN74165N
1.10
1.10
• Programming is accomplished by the Computer
SN7410N .18 SN7482N .98 SN74166N 1.25 • Just Rear! in the Program to be Written on the
COMPU/TIME CT100 $199 Kit $245 Assembled SN7411N .30 SN7483N .70 SN74167N 5.50 EPROM into your Processor and let the Computer
SN7412N .33 SN7485N .89 SN74170N 2.10
COMPU only C101 $149 Kit $189 Assembled SN7413N -.45 SN7486N .39 SN74172N 8.95 do the rest.
TIME only Tl02 $165 Kit $205 Assembled 'SN7414N .70 SN7488N 3.50 SN74173N 1.50
• Use Socket Unit to Read EPROM's Contents into
SN7416N .35 SN7489N 2.49 SN74174N 1.25
COMPU/TIME PC Board "",Iy $80 SN7417N 35 SN7490N .45 SN74175N .99 your Computer
SN7420N .21 SN7491N .75 SN74176N .90
SN7421N .33 SN7492N .49 S.N74177N .90 • Snltware included

TU-~
SN7422N .49 SN7493N .49 SN74180N .99 • No External Power Supplies, Your Computer does
SN7423N .37 SN7494N .79 SN74181N 2.49
it all
SN7425N .29 SN7495N .79 SN74182N .95
SN7426N .29 SN7496N .89 SN74184N 1.95 • Programs and Rends Both 1702A and 2708 EPROMS
SN7427N .37 SN7497N 4.00 SN74185N 2.20
You will want to know about the TU-~ Video to Televisior SN7429N
SN7430N
.42
.26
SN74100N
SN74107N
1.00
.39
SN741.
SN74187N
15.00
6.00
• Doubles CIS an Eight Bit Parallel 1/0
included Less t hnn 90 dovs
Interface Kit. SN7432N
SN7437N
.31
27
SN74121N'
SN74122N
,39
39
SN74188N
SN74190N
3.95
1.19
• Manual

No need to buy a separate Video Monitor if you already SN7438N .27 SN74123N .50 SN74191N 1.25 INTRODUCTRY OFFER
SN7439N 25 SN74125N .60 SN74192N .89
THE PROM SETTER
own a TV set. Just connect the TU-~ between your system SN7440N .15 SN74126N .60 SN74193N .89
SN7441N .89 SN74132N 1.09 SN74194N 1.25 Ki t $210 ASSEMBLED $375
SN7442N .59 SN74136N .95 SN74195N .75
video output and the TV set antenna terminals-that's all SN7443N .75 SN74141N 1.15 SN74196N 1.25 PROM SETTER I
SN7444N .75 SN741.42N 4.00 SN74197N .75
there is to it-to convert your TV set to a Video Monitor, anc SN7445N .75 SN74143N 4.50 SN74198N 1.75
above unit with 2716 adapter
Kit$260 Assembled $425
at a-much lower cost! PRICE $8.95 SN7446N
SN7447N
.81
.69
SN74144N
SN74145N
4.50
1.15
SN74199N
SN74200N
1.75
5.59
SN7448N .79 SN74t47N 2.35 SN74279N 90
SN7450N 2~ SN74t48N 2.00 SN74251N 1.79
SN7451N
SN7453N
SN7454N
27
.27
20
SN74150N
SN74151N
SN74153N
1.00
.79
.89
SN74284N
SN74285N
SN74367N
6.00
6.00
.75
WIRE WRAP CENTER
MANY OTHERS AVAILA8LE ON REaUEST HOBBY-WRAP TOOL-BW-630
111~l
FRQNTVIEW - FSCaooo
-N-WRAP

bare wire
WIRE WRAP TOOL
Slits and opens insulation exposing
. CD4000
CD4001
20% Discountfor 100 Combined74OO's

.25
25
CMOS
CD4030 .65
74C04N
74Cl0N
75
65
• Battery Operated (Size C)
• Weighs ONLY 11 Ounces
• Wraps 30 AWG Wire onto
SPECIAL • No pre-cutting or pre-stripping. CD4002 .25 C04M5 1.85 74C20N 65 Standard OIP Sockets (.025 inch) I
$4.95 EA. C04006 2.50 CD4040 2.45 74C30N .65
• Comes complete with two - 100 ft spools CD4007 .25 CD4042 1.90 74C42N 2.15 Complete with built-in bit and sleeve
#28 AWG wire' C04009 .59 CD4044 1.50 74C73N 1.50
C04010 59 CD4046 2.51 74C74 1.15
Model Pl80 $24.50 C04011 25 CD4047 2.75 74C90N 3.00
CD4012 25 CD4049 79 74C95N 2.00
CD4013 .47 CD40SO .79 74Cl07N 1.25
C04016 56 CD4051 2.95 74C151 2.90
CD4017 1.35 CD4053 2.95 74CI54 4.00
C04019 55 CD4060 3.25 74C157 2.15
Microcomputerl CD4020 1.49 CD4066 1.75 74Cl60 3.25
'Processor plugboard, use with C04022 1.25 CD4069 .45 74C161 3.25
CD4023 .25 C04071 45 74C163 3.00
: S-100 bus complete with heat sink & CD4024. 1.50 C04081 .45 74C164 3.25
"hardware 5.3 x 10 x 1116" CD4025 25 CD4511 2.50 74C173 2.60
C04026 $3.95 CD4518 2.50 74C193 2.75
CD4027 .69 MC14566 3.00 74C195 2.75
$19.95 C04028 1.65 74COON 39 MC4044 4.50
C04029 2.90 74C02N 55 MC14016 56 WIRE WRAP TOOL WSU·30
. LM300R .80 lM1351N 1.65 WRAP. STRIP. UNWRAP-$5.95
lM301H
lM301CN
.35
.35
LINEAR
78MG 1.75
LM1414N
LM1458C
1.75
.65
RIMOIItD VTIJ£O UlT£I1l111111111tNT S'ISI'EM
lM302H
LM304H
.75
1.00
lM370N
LM373N
1.15
3.25
lM1496N
lM1556V
.95
1.85
WIRE WRAP WIRE - 30 AWG
• Freeze Action • Speed Option lM305H .95 LM377N 4.00 lM2111N 1.95 \ 50ft. $1.95 1000ft.,$15.00
L.M30ZCN .35 LM380N 1.39 lM2901N 2.95 SPECIFY COLOR - White - Yellow - Red - Green - Blue - Black
• Automatic time and scorekeeping LM308H 1.00 lM380CN 1.05 LM3065N .69
• Battery-free AC operation lM308CN 1.00 lM381N 1.79' LM3900N 55
• Dual controls with 8-way action lM309H 1.10 LM382N 1.79 lM3905N 60 WIRE OISPENSER - WO·30
$3_45 ea.
LM309K .99 NES01K 8.00 LM3909 1.25
• Built-in Pro Hockey and Tennis games 50 ft. roll 30 AWG KYNAR wire wrap wire
lM310CN 1.15 NE510A 6.00 LM5556N 1.85
• Easy hook-up on any BIW or Color TV lM311H .90 NE531H 3.00 MC5558IJ 1.00 Cuts wire to desired length
• factory warranty lM311N .90 NE536T 6.00 lM7525N .90 Strips 1" of insulation Specify - Blue-Yellow-White-Red
lM318CN 1.50 NE540L 6.00 LM7535N 1.25

F - additional cartridges -$17.95 ea. ~m=:~~~rl(::;~~;~rs) LM319N


lM320K-5
1.30
1.35
NE550N
NE555V
.79
.39
8038B
LM75450
4.95
.49
- Tic-Tac-Toe/Shooting Gallery 0815 - Spacewar (2 players) 0819 - Drag strip (lor 2 players) LM320K-5.2 1.35 NE560B 5.00 75451CN .39 LIQUID CRYSTAL DIGITAL
L.M320K-12 1.35 75452CN .39
Quaora-doodle/Doodlel
- Desertfox/ShootinLGallery
0818 - Magic Numbers
(computer~o~ic)
0820 - Maze(2 ptayers)
..Q~22 - Baseball(2 .IJla~)
lM320K-15 1.35
NE561B
NE562B
5.00
5.00 75453CN .39 CLOCK·CALENDAR
lM320T-5 1.75 NE565H 1.25 75454CN .39
lM320T-5.2 1.75 NE565N 1.75 75491CN .79

•.••
lM320T-8 1.75 NES66CN 1.25 75492CN .89
lM320T-12 1.75 NE567H 1.95 75494CN .89

,."' '.""'~ lM320T-15

lM320T-24
lM323K-5
1.75
LM32OT-18 1.75
1.75
9.95
NE561V
lM703CN
LM709H
LM709N
1.50
.45
.29
.29
RCA UHEAR
CAJOt3
CAJ023
CAJ035
2.15
2.56
2.48
LM324N 1.80 LM710N .79 CA3039 1.35
LM339N 1.70 lM711N .39 CA3046 1.30
LM340K-5 1.95 lM723H .55 CA3059 3.25
L.M340K-6 1.95 LM723H .55 CA3060 3.25
'
lM340K-8 1.95 LM733N 1.00 CAJ080 .85
LM340K-12 1.95 LM739N 1.00 CAJ081 2.00
lM340K-15 .1.95 lM741CH .35 CA3082 2.00
lM340K-18 1.95 lM741CN .35 CAJ083 1.60
LM340K-24 1.95 lM741-14N .39 CAJ086 .85
20 DUAL 10 PIN GOL!) $ .50 LM340T-5 1.75 LM747H .79 CA3089 3.75
30 DUAL 15 PIN GOLD .75 lM340T-6 1.75 LM747N .79 CAJ091 10.20
44 DUAL 22 PIN GOLD' !.95 LM340T-8 1.75 LM748H .39 CA3102 2.95
44 DUAL 22 PIN GOLD 2.50 lM340T-12 1.75 LM748N .39 CAJ123 2.15
80 DUAL 40 PIN GOLD 4.95 LM340T-15 1.75 lM1303N .90 CAJ130 1.39
LM340T-18 1.75 LMl304N 1.19 C/I,3140 1.25 Home, Office
86 DUAL 43 PIN GOLD(6800) 5.00
100 DUAL 50 PIN GOLD( I MSAII ALTAI R) 4.25 lM340T-24 1.75 LM1305N 1.40 CAJ600 1.75 (2x2'hx'h)
LM350N 1.00 lMl307N .85 RC4194 5.95
100 DUAL 50 PIN GOLD( IMSAI/ALTAIR) 4.95 lM351CN .65 LM1310N 2.95 RC4195 3.25 for seconds release for date.
100 DUAL 50 PIN GOlD(NO EARS-IMSAI 3.50 anywhere with either ~M double-
TIN (.1" SPACING) 1.95
100 DUAL 50 PIN 3.25 74lSoo
74lS02
74lS03
~ 74LSOO TTlJ:l~i~
29 74lS74 49 74lS153
1.55
1.89
or VELCRO, included.
AVAILABLE:
ALTAIR/lMSAI CARD GUIDES '.25; EACH 74LS04 35 74lS75 69 74lS157 1.55
35 74lS76 49 74lS162
portable model runs on self-contained
74lS05 2.25
74LS08 29 74lS83 1.75 74lS163 2.25 for better than a year.
74lS10 . 29 74lS85 2.49 74lS164 195 runs on 12 Volt system and is back-
49 741.5175 1.%

'.::EI
74lS13 69 74lS86
74LS14 1.75 74lS90 1.25 74lS181 3.69
74lS20
74lS26
29
39
74lS92
74lS93
1.25
1.25
74LS190
74lS191
2.85
2.85 $3:3.95 ea.
74LS27 39 74lS95 1.95 74lS192 2.85
Computer Products 74lS28
74lS30
39
29
74lS96
74lS107
1.89
59
74LS193
74lS194
2.85
1.89
...... $2.00
74lS32 .39 74L5109 59 74lS195 1.89
5351 WEST 144th STREET 74lS40 39 74lS112 59 74lS257 1.75
74lS51 29 74lS132 1.25 74lS260 S5
LAWNDALE, CALIFORNIA 90260 74lS55 29 74lS136 .59 74lS279 79
74LS73 49 74lS138 189 74lS670 '395
(2131679-3313
CLOCK CHIPS
MM5309 6 Digit, BCDOutputs. Reset PIN. $9.95
RETAIL STORE HOURS M-F 9-7 SAT. 9-5 MM:;Jll 6 Digit. BCOOutputs, 12 or 24 Hour 4.9!i
MM5312 4 Digit, BCDOutputs, 1 PPS Output 4.95
~?314 6 Oigit. 12 or 24 Hour, so or 60 Hz 4.95
Discounts available at OEM quantities. Add $1.25 \!M5316 4 Digit, Alarm, 1 PPS Output 6,95
MM5318 Video CloCkChip. For Use With (MM5841 - $9.95) 9.95
for shipping. California residents add 6% sales tax. CT7001 6 Digit. calendar, Alarm, 12 or 24 Hour 5.115
$17.95
CATALOG FREEWITH $10.00 ORDER
MICROCOMPUTER 8K STATIC RAM BOARD
ASSEMBLED & TESTED
MICROPROCESSOR's PROM'S 8D8DASUPPORT OEVICES
F-8
Z-80
Z-80A
19.95
25.00
35.00
1702A
2704
2708
5.00
15.00
20.00
8212
8214
8216
3.95
9.95
4.50
250n5. $199.95
2716 38.00
CDP1802CD
AM2901
6502
24.95'
22.95
12.95
3601
5203AO
4.50
4.00
8224
8228
8238
4.95
8.75
8.00
350n5. $189.95
5204AO 6.00
6800
8008-1
19.95
8.75 6834
6834-1
16.95
14.95
8251
8253
12.00
28.00 450n5. $169.95
***
8080A 15.95 8255 12.00
TMS-9900TL 89.95 82S238 4.00 8257 25.00
82S1298 4.25 WILL WORK WITH NO FRONT PANEL
8259 25.00
82238 2.70 FULL DOCUMENTATION
6800 SUPPORT

**
FULLY BUFFERED
6810P 4.95
8.00 STATIC RAMS 1-24 25-99 100 SIOO DESIGN
6820P
21L02 (4501 1.50 1.40 1.25 ADEOUATELY BYPASSED
6828P
6834P
6850P
11.25
16.95
9.95
21 L02
21 Lll
1101A
(2501 1.95
4.25
1.49
1.89
4.10
1.29
1.50
3.95
1.10
* LOW POWER SCHOTIKY SUPPORT ICS
6852P 11.95

I
6860P
6862P
6880P
14.95
17.95
2.70
2101·1
2102
2102-1
2.95
1.25
1.50
2.75
1.15
1.30
2.60
1.00
1.15
KIT
,
l8D SUPPORT OEVICES
2111-1
2112-1
2114
4.00
3.00
17.95
3.50
2.80
16.95
3.25
2.69
16.50
250n5. $169.95
3881 12.95
3882 12.95
31LOI
3107
4200A
4804/2114
2.50
3.95
12.95
17.95
2.35
3.70
12.50·
2.00
3.25
11.95
350n5. $139.95
F-8 SUPPORT DEVICES
3851
3853
14.95
14.95
5101C·E
74C89
11.95
3.25
16.95
11.25
3.05
16.50
10.25
2.85
450n5. $129.95
74S201 4.50 4.30 4.25
7489 2.25 2.10 1.90· ,
DYNAMIC RAMS
1103
2104
1.50
4.50
8599
91028PC
1.88
1.65
1.75
1.45
1.60
1.30
IMSAI/ALTAIR 5-100 COMPATIBLE

2107A 3.75 KEYBOARD CHIPS KIM

JADEZ80 KIT
21078 4.50 AY5-2376 '13.95 . KIM-l 245.00
21078-4 4.00 AY5-3600 13.95 6502 12.95
TMS4050 4.50 6520 9.00
TMS4060 4.50 UART'S 6522 9.25
4096 4.50 6530-002 15.95
4116 42.00 AY5·1013A 5.50
AY5-1014A 8.95 6530-003 15.95
MM5270 5.00
TR-1602A 5.50 6530-004 15.95
MM5280 6.00
TMS-6011 6.95 6530-005 15.95
MCM6605 6.00
IM-6402 10.80 -with PROVISIONS for
1M--6403 10.80 USRT
CHARACTER
S-235O 10.95 ONBOARD 2708 and POWER ON JUMP
GENERATORS FLOPPY DISC CONTROLLER WD16718 29.95

$135.00 EA.
2513 UP 6.75 17718 55.95
2513 DOWN 6.75 17718-01 59.95 WAVEFORM GENERATOR
2513 UP (5vl 9.95 8038 4.00
(2MHZ)
2513 DOWN(5vl 10.95 SHIFT REGISTERS STATIC MC4024 2.50
MCM6571 10.80 1.75
MCM6571A
MCM6572
MCM6574
MCM6575
10.80
10.80
14.75
14.75
25188
2533V
TMS3002
TMS3112
3.95
2.00
1.00
3.95
566
$149.95 EA. (4MHZ)
MM5058 2.00

MISC. OTHER COMPONENTS BARE BOARD, $35.00


NH0025CN
NH0026CN
1.70
2.50
P-3408A
P-4201
5.00
4.95
TV
N8T20 3.50 MM-5320 7.50
N8T26
74367
2.45
.90
MM-5369
DM·8130
1.90
2.90
Game Chip 8-100
IMSAI/ALTAIR COMPATIBLE
TMS1955NL
DM8098 .90 DM8131 2.75
1488
1489
1.95
1.95
DM-8831
DM-8833
2.50
2.50
Now Only
D-3207A
C-3404
2.00
3.95
DM-8835
SN74LS367
SN74LS368
2.50
.90
.90
$10.915 JADE 8080A KIT
- WITH EIGHT LEVEL VECTOR INTERRUPT
PerSci DISK AND CONTROLLER
Use the PerSci Disk and Controller now with the
Info 2000 Adapter for the S-100 Bus. $110.00 KIT
INFO 2000 "SPECIAL"
(includes Model.277 Dual Drive, Model 1070 BARE BOARD $35.00'
Controller, Case with power supply and fan,
and cable) $2,150
Model 277 Dual Diskette Drive $1,130 .:.-~. -::EI
Computer Products
Model 1070 Controller $740
5351 WEST 144th STREET
Slimline case with power supply and fan $280 LAWNDALE, CALIFORNIA 90260
Adapter for the S-100 Bus (Kit) $120 V (213) 679·3313

RETAIL STORE HOURS M-F 9-7 SAT. 9-5


JADE PARALLEL/SERIAL JADE Discounts available at OEM quantities. Add $1.25
INTERFACE KIT VIDEO INTERFACE KIT for shipping. California residents add 6% sales tax.

$124.95 KIT $89.95 KIT CATALOG FREE WITH $10_00 ORDER


Reader Challenge ...

Design An Lp· Record


File-Storage System

Readers of Creative Computing are invited to design


and implement a pragmatic, workable data-base system
to meet the design specifications given below. The
writeup must completely describe hardware (preferably
off-the-shelf), systems software (operati ng system,
language compiler or interpreter, etc.), and applications
software (including complete listings and sample runs). compositions and the record or album can probably be
classified a collection and the additional compositions
The best design received by March 1, 1978 will be
published in the May/Jun 1978 Creative Computing and block might say, for example, "Berlioz: 5 other overtures,"
will receive a $50 bonus in addition to payment fbr the Preceding the label and number should be an indica-
article at our regular rate. tion of the number of records if it is a multiple record set;
for' example 2-Angel 3573. This is consistent with
Summary: The problem is to design a computer system Schwann:
(hardware, software, etc.) to 'store and retrieve informa- Classical subcategories are: ballet, opera or operetta,
tion in support of a typical home record library. The piano concerto, violin concerto, other concerto, sonata
system must be able to easily do the following: (1) allow
or rondo, organ, solo 'piano, solo other instrument,
updating as new records are purchased; (2) permit chamber (quintet, quartet, trio, etc.), choral, symphony or
retrieval of listings defined by primary category; such as sinfonia, orchestral, misc. other.
all classical; by secondary category, such as all Bach, or
Shows and movies subcategories are: soundtrack,
all Columbia, or all piano concerto; or by any combina-
original cast, orchestral version, other, Band, spoken,
tion of up to three variables, such as all Shostakovich
mise, subcategories are: band, spoken, demonstration,
symphonies on Melodiya.
test, sound effects, mise, .
Problem Statement: The LP record library is assumed to The Schwann catalog should give a good idea of the
have the following characteristics at present. . required length of each field. As a rough guide to the
Number
classical ones,
of Primary Secondary
Records Category Categories Examples
Category Field Length
600 Classical Composer J.S.Bach Composer 24
Composition Cantata #131 Title 60
Subcategory Choral
Subcategory 2 (abbreviated)
Label and Number MHS 760
Label and Number 20 (using abbreviations)
Add'l Compositions Bach: Cantata 149
Reddy, Helen
Add'i compositions 180 (seldom will all
150 Popular Artist
Title Music, Music this be required)
Label and Number Cap ST-11547
Another way of providing for "add'i compositions" is tq
30 Folk Artist Theodorakis, Mikis
reference a pointer wh ich automatically retrieves the
Title Hello Greece!
information from the other heading and prints it out. In
Label and Number Minerva 22030
50 Shows, Movies Title Where Eag les Dare
other words, the example of MHS 760 above which lists
Su bcategory Soundtrack Bach: Cantata 149 as "add'i compositions" would have a
Label and Number MGM 2315 036 pointer value, say 182, which would go to Composer/-
20 Children's Title Snow White Title #182 which, of course, is J,S, Bach Cantata 149.
Artist Soundtrack
Other Ccnslderatlons: Non-standard hardware and
l.abel and Number Disney 1201
systems software should be avoided if at all possible,
20 Band. Spoken, Misc. Title Sounds of Auto Racing
Sound Effects
Hard copy is desirable but not required,
Subcategory
Label and Number Fleetwood FLD-l-S It is desirable to make the system as general as
possible. Thus it could be used for storage and retrieval
Information in the computer should, as much as of information on a book library, stamp collection, coin
possible, be kept compatible with the "Schwann record couection, comic-book collection, antique auto parts,
catalogs. In the classical category, additional com- photo-negative file, recipe file, or any other similar
positions" should allow for up to 6 additional co~- collection.
positions by the same or other composers. More than SIX Be creative but avoid overkill! - DHA •

32 CREATIVE COMPUTING
435/278 767/513
MICROPROCES· PROGRAMMING
SOR APPLlCA· LANGUAGES
TIONS MANUAL His'tory and
Fundamentals
by Motorola, ,
Inc. by J. E.
Sammett
Pub. price, $28.50
Pub. prlce, $21.00
Club price, $19.95
Club price, $17.50

767/092
767/815
DATA PROCESs..
GAMES &
ING DOCUMEN·
PROGRAMS
TATION MathematiCS for
Standards, Modeling
Procedures and
Applications· by R. R.
Singelton
by W. L. Harper & W. Tyndall
Pub. prlc, $22.95 Pub. price, $13.00
Club price, $17.50 Club price, $10.75

768/528 767/661
DATA PROCESS· INTERACTIVE
ING SYSTEMS COMPUTER
ANALYSIS GRAPHICS
AND DESIGN by B. S. Walker,
by R. J. Condon G. R. Grund &
E. A. Drawneck
Pub. price, $13.50
Club price, $11.25 Pub. price, $14.50
Club price, $i2.30

768/455
768/714
ASSEMBLY LEVEL APPLYING DATA
PROGRAMMING STRUCTURES
FOR SMALL
by T. G. Lewis
COMPUTERS & M. Z. Srriith
by W. Weller Pub. price, $16.50
Pub. price, $14.95 Club price, $12.25
Club price, $12.50

168/075
766/770
AUTOMATIC
MINICOMPUTER DATA PROCESS·
SYSTEMS ING HANDBOOK
Structure,
Implementation by The Diebold
and Applications Group, Inc.
by C. Weitzman Pub. price, $29.50
Pub. price, $19.50 Club price, $21.00
Club price, $14.50 769/419
MODERN GUIDE 769/656
769/29X 767/009 .768/03X 768/749 TO DIGITAL HANDBOOK OF
THE INFORMA· DIGITAL SIGNAL MICROPRO· MICROPROCESSI LOGIC: PROCES· CIRcUIT
TlON SYSTEMS PROCESSING GRAMMABtE MICROPROGRAM· SORS. MEMORIES ANAlIt'SIS
HANDBOOK byA. v. COMPUTER MING HANDBOOK & INTERFACES LANGUAGES AND
by F. W. Oppenheim ARCHITECTURES by B. Ward by United TEeHNIQUES
McFarlan & R. W. Schafer Technical by R. Jensen
by A. B. Pub. price, $9.95 Publications,
& R. L. Nolan Pub. price, $22.95 Salisbury & L. McNamee
Club price, $8.45 Inc.
Pub. price, $30.00 Club price, $17.95 Pub. price, $13.50 Pub. price, $34.15
Pub. price, $9.95
Club price, $22.50 Club price, $11.40 Club price, $28.50
Club price, $8.45

save time and money r-- MAIL I IS COUPON TODAY ---,


, COMPUTER PROFES~IONALS/BoOk Club I
by [oininp McGraw-Hill's new ,P.O. Box 582 Princeton Road, Hightstown, New Jersey 08520 I
Please enroll me as a member and send me the three books indicated. I am to receive the
COMPUTER PROFESSIONALS' , two bonus books at the introductory price of $2.95 plus my first selection. plus lax. I
, postage. and handling. If not completely satisfied. I may return the books within 10 days ,
and request that my membership be cancelled. If I keep the books. I agree to take a
BOOK CLUB , minimum of three additional books during the next two years at special Club prices ,
, (guaranteed 15% discount. etten more). I will receive the Club Bulletin 12 times a year. If I ,
want to examine the featured selection. I need take no action. It will be shipped automati- I
cally. If. however. I want an alternate selection-or no book at all-I simply notify the Club
T HIS new professional
needs by providing
publisher prices. If you're
club is designed
practical
missing
to meet your day-to-d-:
books in your field on a regular
out on important technical
on-the-job
basis at below
literature-if
, by returning the convenient card always enclosed. I will always havea minimum of 10 days
' notwhich
in
I
I
to return the card and you will credit my account fully. including postage. if thjs is
the case. Membership in the club is continuous but cancellable by me at any time aner
today's high cost of reading curbs the growth of your library-here's the solution , the tour-book purchase requirement has been filled. This order subject to acceptance by I
' McGraw-Hili.
to your problem. Orders from outside the continental U.S. must be prepaid. Corppany.
The Computer Professionals' Book Club was organized for you, to provide an I business. or institutional tax exemption status is not applicable to purchases made through
economical reading program that cannot fail to be of value. Administered by I. individual Club memberships. All prices subject to change without notice. Offer good for
new members only.
the McGraw-Hili Book Company, all books are chosen by qualified editors and
consultants. Their understanding of the standards and values of the literature in I, Write Code # of 1st Write Code # of 2nd Write Code # of 1SI
your field guarantees the appropriateness of the selections. bonus book seleClion here bonus book selection here book selection here
How the Club operates: Every month you receive free of charge The Computer
II II I L--I__ --'
Professionals'
featured
members'
Book Club Bulletin.
book of the month
This announces
as well as alternate
and describes
selections available
prices. If you want to examine the Club's feature of the month, you do
the Club's
at special I Name _

nothing.
all-you
If you prefer one of the alternate
notify the Club by returning
As a Club Member,
your first selection)
selections-or

you agree only to the purchase


over a two-year period. Considering
if you want no book at
the card enclosed with each Bulletin.
of four books (including
the many books published
,
I Address
, City State Zip
_

_
annually, there will surely be at least four you would want to own anyway. By r EXTRA SAVINGS: Remit in full with your order, plus any local and state tax,
joining the club, you save both money and the trouble of searching for the best
books. L~~~~~~~~~~~~~~~~~~:~~~J
As anyone who has visited a depart-

Smart ment store or read a mail-order


catalog recently knows, recreation
and . leisure-time options are rapidly

Electranir-At:::IVl expanding. One little corner of this


market, perhaps the fastest-growi'ng .
Single segment, incorporates
state electronics
solid-
into video games,
stand-alone games, and calculator

Garnes variants. In the past Creative has taken


some brief looks at video games
("Playing Pong to Win," May/Jun 75;
"Odyssey Video Games,"· Nov/Dec
76). Over the next several issues we'll
be taking an in-depth look into the
mysteries of a .number of the new
stand-alone games (see the article on
Comp IV elsewhere in this issue) .:
For those of you interested in what's
commercially available for gift-giving
this holiday season, here is a roundup
(undoubtedly incomplete) of some of
the new smart electronlc games. The
games are widely discounted, but not
nearly to the extent of hand-held
calculators .: Also, we found some
stores selling them athlqher-than-hst
prices! A word of warning: quality
control may not be up to snuff - one
of the games we obtained quit in the
first 5 minutes. But most worked OK
and were generally lots of fun!- DHA

Mattei Auto Race Mattei Missile Attack


Sliding control steers car (bright It's you against the computer as you
light blip)' to avoid hitting computer- defend your city! The computer
controlled oncoming cars (dimmer launches missiles aimed to destroy
light blips). At end of lap, car will begin your city, and you launch anti-missile
new lap. Gear-shift controls speed. missiles to intercept and destroy the
Simulated engine sounds become incoming barrage. The more you
louder as speed increases. Elapsed destroy, and the higher in the sky you
time shown. On collision, beep sounds do so, the more points you get. If you
and your car is pushed back a space or miscalculate and an attacking missile
two. Complete the 4 laps in 99 seconds makes a direct hit on your. city, the
or less, you win and a pulsating beep computer plays a mini rendition of
is emitted. If you fail to do so, clock' "Taps"!
stops at 99; constant beep is heard. Blue-grey plastic case, 1x3x5 in.
Beige plastic case 1x3x5 in. Uses one Uses one 9-volt battery. Retail range.
9-volt battery. Retail range, $20 to $25. $20 to $25.

Mattei Football
You control running back (bright
light blip) through the computer-
controlled defensive tacklers (dimmer
light blips). If running back hits a
tackler, a simulated whistle sounds. ST
(status) key shows new down, yard
line and no. of yards for first down. SC
(score) key reveals both teams' scores
and time remaining. On scoring, you
hear the "victory charge." K (kick) key
is used for punting and field goals.
Game time is 10 min. Pro 1/Pro 2
switch allows you to choose average
or expert opposition.
Beige plastic case, 1x3x5 in. Uses
one 9-volt battery. Retail range, $30 to
$35.

34 CREATIVE COMPUTING
Fidelity Electronics Chess Challenger Milton Bradley Electronic Battleship
The board is defined by. numbers Two players, acting as fle'et com- Unisonic Vegas 21
along the X-axis and letters on the Y- Casino blackjack with full Las Vegas
manders, determine the best locations
axis. Moves are entered on the for each of their ships in this game of rules. Your initial stake can be up to
calculator-like keyboard by defining electronic hide-and-seek on the high $50 million; before each hand you
the current location of a piece and seas. The continuous sound of sonar designate your wager. Your winnings
where you want to move it to. You may adds realism to the mission, as you set and losses are posted after each hand.
castle or capture en passant, although your console controls to fire on You can make insurance bets, split
the computer isn't programmed to use sectors of the board where the op- pairs, double down. Automatic deck
the latter move. Within seconds of ponent's ships may be hidden. Press shuffle after 41st card is dealt Doubles
your move, the computer analyzes the Fire button, and you hear the as a standard calculator.
possible counter-moves and responds whoosh of a torpedo heading for its Desk-top version woodgrain and
with its best choice. It can be beaten target; hits are indicated by a flash of gray plastic, 7x9x4 in, Large LED.
by an average player from 25% to 75% light on the scope and the sound of a readout Uses 3 C-cells. Retail range,
of the time. realistic explosion. When you've sunk $39 to $59.
Experts who want to play a more your opponent's entire' fleet, Elec- Hand-held version chrome and
difficult game can send their unit, tronic Battleship sounds a continuous black plastic, 1x3x5 in. Uses 3 AA
along with $75, to the manufacturer for whoop of victory. batteries. Retail range, $30 to $50.
upgrading with a more complex ROM, Plastic board and display, 21x10%x9
which increases the difficulty level, in. Uses four 9-volt batteries. Retail
has three levels of play. A newer range, $30 to $50.
model, which has three levels of play
and is essentially the same as an
upgraded basic model, but with some
cosmetic changes, is $275.
Walnut wood housing, 12x8x1 in:
Operates on line current Retail range,
$160 to $200.

APF Mathemagician
A teaching calculator and device for
game-playing all in one. Simple or
complex 1- or 2-digit problems can be
performed. Four-function calculator
does multiplication, division, addition
Parker Brothers Code Name: Sector and subtraction. In addition, six games
The human players (1 to 4) are can be played - Gooey Gumdrop,
destroyer commanders, moving their The Number Machine, Walk-the-
Milton Bradley Comp IV ships among 4800 grids on a nautical Plank, Football, Lunar Lander and
Using the calculator pad, you try to chart The microprocessor stores, Countin' On, each with its own plastic
guess a secret 3-digit number (like computes, and displays speed, direc- overlay. All games can be played by
Bagels), 4-digit one (Mastermind) or tion, and location of each ship. It also one or two people. In "Lunar Lander,"
5-digit one. Comp IV tells you how moves the sub, keeping its location you take over the controls of a lunar
many digits are correct and how many secret but giving information that can landing module at an altitude of 300 ft.
are in the correct position. Clever be used to track and attack it But be above the moon's turtace. Try and
deduction will allow you to get the careful - that sub .can torpedo land the module safely! Switch to
number in the fewest possible destroyers! There are eleven control "Gooey Gumdrop" and try to find the
guesses. Comp IV prods you with buttons. Comes complete with 8 secret location of the gumdrop bomb
flashing lights if you delay too long. replica subs for scoring, facsimile before it explodes. In "Walk the Plank,"
Use a different number each round, or Navy parallel rule, tracking crayons, you try to guess the machine's secret
the same one if two or more play-ers wiper, and sharpener. Not a' simple number in three tries. If you lose, you
are competing against each other. game! Age 12 and up. walk the plank!
Plastic console, 7Y2x4x4 in. Uses Plastic board and display, 19x13112x4 Black and gray plastic case, 8112xc
one 9-volt battery. Retail range, $20 to in. Uses one 9-volt battery. Retail 5x1 '12 in. Uses one 9-volt battery.
$40. range, $30 to $45. $39.95. •

, NOV/DE;:C 1977 35
Profile oio Smart Electronic Game ...
Guess the random number generated by
this new game, which gives hints.

COMP IV Stephen B. Gray

"I am programmed to beat you," and ROM memory, I/O circuitry, and a
says the ad, and continues, in smaller clock. The particular one used in
print, "You are mortal. I am the Comp IV contains 1,024 8-bit words of
product of millions of dollars of ROM memory for the random-number
research. You will attempt to deduce generator and the game-plaJ:,~...,;;;~
the numbers I have hidden in my algorithm, plus 64 4-bit RAM words tG
computer memory. I will reveal only' hold the numbers entered from th
which of your digits are correct and keyboard.
how many are in the right order. As Basic Operation
your excitement mounts, you will get After turning on Comp IV, you can
(ugh!) emotional. I will not. You are check out the circuits by pressing the
mortal. I am Comp IV, the new keys in the sequence 7-E-1-2-3-4-E
electron ic challenge game with 32,000 (the 12 keys are labelled 0 through 9,
number combinations, from Milton plus R for Reset and E for Enter). If the
Bradley." ,.
unit is working correctly, the five ligh·
in the left vertical row (Number) ill
flash along with the four bottom lie t
in the right vertical row (Seque
The top right LED is the Rea
dicator.

E'xtra Features
C0mp IV has two features designed
to, keep yO!Jfrom dawdling. The R light
" Is , serves as a timer to help you
ee/ track of your game." After about
"••••
_I:~B!c"l~r;t'seconds,
it will flash slowly, arid
fter another 30 seconds, will begin to
flash faster, and stay that ~ay. Also,
responses are displayed for only about

36 CREATIVE COMPUTING

/
unless you don't mind being called a held." You enter a Single digit as many . Creative Computing) was originally
slowpoke or. an idiot or worse. times as there are digits in the game. If "simply a commercial adaptation (us-
you're playing a three-digit game, and ing colors rather than numbers) of the
Group Play want to find out for s-ure if there's a 7 in game Bulls and Cows." Two people
According to the Comp IV manual, the secret number, enter 777, and if 7 play against each other, using a plastic
the game can be played by a group in was included, you'll get a 3 light in game board and plastic pegs of
two ways. In Rotation Play, each number, and a 1 light in sequence. various colors·. Each player tries to
player makes an entry, announces it to Press all the other numbers three guess the color and position of his
the group, and uses a sheet of the times, and you'll find the other two. opponent's pegs concealed in a
entry pad to keep track of the game's Now, all you have to do is figure out the "hidden code" portion of the game
progress. "For large groups of ex- sequence. board. Creative provides a com-
perienced players, the five-digit game The game is so fascinating that puterized version.
is often best." The first person to you'll soon decide to get an AC MASTER BAGELS (Jan-Feb 1977
guess the number that Comp IV holds adapter, rather than use up a lot of 9- Creative Computing) combines
is the winner. volt batteries. Bagels, Bulls and Cows, Mastermind,
In Repeat Play; advantage is taken The random-number generator and several other games "into a
of a circuit that allows Comp IV to hold provides a completely new number general deductive logic game." If the
a number for repeated games, so that each time; there is no stored set of player wishes to play Bagels, he sets
each player gets a chance for a numbers in the IC. The number of the initial parameters to N,3,9; if
complete game on that number. Each possible five-digit combinations of ten Mastermind is his choice, the setting is
player guesses the correct number in digits, with no repeated digits, is NA,6. "But the real fun is trying new
secret, then presses E instead of R. 10x9x8x7x6, or 30,240. The possible combinations."
This will keep the same number in combination of four digits is 10x9x8x7, History
Comp IV, instead of generating a new or 5,040. The first Milton Bradley game came
one. The player solving the secret Comparison with Computer Games out in 1860, and is still available: "The
number in the least number of steps is Game of Life," involving growing up,
In the BAGELS game (101 BASIC
the winner. (A counter to indicate how Computer Games) essentially the same college, a career, etc. (No relation to
many times the E key is pressed would information is provided by the host the game of Life invented in 1970 by
be a big help, by showing exactly how computer, which indicates with words Cambridge mathematician John Con-
many steps were required to find the . instead of lights the same information way, and popularized by Martin Gard-
secret number, but this would also (PIca: one digit is correct, but in the ner in Scientific American. The whole
increase the price of the game.) wrong place; FERMI: one digit is in the game is ruled by three very simple
Observations correct place; BAGLES: no digit is genetic laws that define the survival,
Obviously, Comp IV has to generate correct). death and birth of the cells at each
a five-digit number each time, because BULCOW (101 BASIC Computer generation) .
it doesn't know if you're going to play Games) is a somewhat advanced The 1960's opened the big era of
a three-, four-, or five-digit game. So it version of BAGELS, known as Bulls plastic games, featuring hundreds of
may come up with 45283, but if you're and Cows (more popular in England injection-molded items. In 1977, the
playing a three-digit game, you'll win than in the U.S.). "A BULL is scored Milton Bradley Company introduced
with 452. for each correct digit in the correct their first electronic game, Comp IV.
The three-digit game is quite simple. position and COW for each correct The price, depending on when and
It can be played without looking at the digit but out of position." where you buy the game, is roughly
sequence lights, although such a MASTERMIND (Mar-Apr 1976 between $20 and $40. •
game takes a little longer without the
hints provided by these lights. After a
three-digit game, some pessimists
may think Comp IV is a child's toy. Let
them try a four-digit game, and
especially a five-digit game. They may
well require a game pad, which can
shorten the game for those who find
they just can't keep all the "sure" and
"out" numbers in their heads. Even
with a game pad, there will no doubt
be people who simply give up in
frustration. .
There is a way to cheat. The
manufacturer probably provided this
"easy way out" to keep some
frustrated player from taking a sledge
hammer to his (or somebody else's)
Comp IV, or even to keep him from
banging his head against the wall. You
can build up quite an anger against an
11-ounce box of plastic and metal, if it
refuses to divulge its secret number
despite all your banging on the keys,
and will only blink its little lights.
The manufacturer doesn't call it
cheating, but instead politely refers to
it as "one strategy that can be used to
discover whether certain digits are

NOV/DEe 1977 37
One of the newest additions to the
Creative Computing' catalog of
products is a board game called
"Computer Rage," produced in
'cooperation with Edumatics Corpora-
tion. It differs markedly from other
computer games published by
Creative Computing in that it is strictly
a board game and does not require
any access to a computer or terminal
to play the game. For this reason, it
has appeal to the total Creative
Computing audience from the novice
hobbyist, to the educator, to the
computer professional.

Entertainment
Taken at its most elementary level,
Computer Rage can be viewed as
another entertaining board game, one
that simply has a computer theme
behind it. The rules of the game are
relatively simple. Absolutely no com-
puter knowledge is required to play
the game for enjoyment. It is ap-
propriate for the whole family in-
cluding both younger children and
older adults. While the game professes
to be for "Age 10 to Adult," six-year-
olds have mastered its fundamentals
quickly. It certainly can stand on its
own alongside the multitude of board
games now found in every toy or
department store.

The multi-talented creator reveals why the world's first


computer board game intrigues both professors and children.

A Multi-Level
Computer-
Oriented
Board Game
Alan B. Salisbury

Author demonstrating Computer Rage at PC'?? in


Atlantic City.

38 CREATIVE COMPUTING
"ComputerRagen ••Y
A
001
O~OOOOD CJ •••
- •o Dill
- Dill
DO 1t3 •••
D ~U·
D uO 00
( ..•....•..>= IDI IDf •
Education
00000 0 D" Do
Beyond the entertainment level, mined by the roll of a single binary die. ~OO~O Dc -- (
Computer Rage provides a significant
educational tool for use either in an
The primary impact of the alternative
paths is the number of subsequent 0.' 0.'
OOOOO~~DO
DO
~DOD
Difl DO ~D
informal learning environment or in
the classroom. Essentially the game is
a simulation of a multi-programming
PROCESS symbols to be travelled
through, with the shortest path being
most desirable in terms of throughput.
.D .D IIlD··· DO D~ DO
lD~ID!< ••••..
o 0
- )
• IIJDDOO
=- ==
or time-sharing
providing
computer
an opportunity
system
to learn
A discussion of the power of decision
points in a computer program in
•••
••• ill
t-DIIlO~O
- • DDD Olfl
about many fundamental 'concepts of altering the subsequent program steps ••• f2 !~, . DODOO
modern computers. A supplement to encountered can be based on the use
the rules, included with the game, of DECISION symbols in the Com- Board layout for Computer Rage, taken from the
puter Rage game. rules on the bottom of the game box (the game
explains many of these concepts and board itself is in full color).
how the game relates to the real world. One of the dangers in a real multi-
Computer Rage is played by from programming computer system is
two to four players. Each player has interference between programs. This actions of the computer. INTERRUPT
three PROGRAMs initially located in is illustrated by the Computer Rage actions in the Computer Rage game
the INPUT area. The objective of the rule permitting only one PROGRAM to are about evenly distributed between
game is for each player to. move his occupy a symbol at anyone time, with "good" and "bad" results. Examples
three programs from INPUT through the exception of the CHECKPOINT include "Efficient Program" cards
the processing area, finally arriving at symbols (and the OUTPUT QUEUE) which advance a PROGRAM,
OUTPUT. It is a "throughput" com- distributed over the board. A "Program Error" cards which return a
petition, in that the first player to PROGRAM landing on an occupied PROGRAM back to the last
complete the processing and output of symbol must return to the last CHECKPOINT, and even a small
his three programs is the winner. CHECKPOINT (or back to INPUT if no number of catastrophic failure cards
One of the first teaching points of CHECKPOINTs lie behind the (system "crashes") which can return
the game derives from the fact that program). This also can be related to all programs in process to the last
binary dice '(containing only 1's and the competition for resources. CHECKPOINT. Some INTERRUPT
O's) are used. This provides the Throughout the processing area are cards can be saved for a "Free Choice
opportunity to discuss the internal use randomly distributed a number of Decision" in lieu of die roll, or an
of binary numbers within a computer, PROCESS symbols with an overlayed "Interrupt Override." Virtually all of the
and the conversion between binary communications symbol indicating INTERRUPT actions can be used for
and decimal. Three color-coded dice the occurrence of an INTERRUPT. A discussions to make a number of
are utilized with colors corresponding player whose program lands on an teaching points.
to 4-2-1 weights. A player rolls the INTERRUPT symbol draws a card Two output CHANNELs lead to the
dice, converts the binary number to from the INTERRUPT deck and OUTPUT area and have the same
decimal, and then studies his possible follows the directions on the card. This restrictions as the input CHANNELs.
moves. The printed rules include a provides a vivid demonstration of the An OUTPUT QUEUE (similar in func-
conversion chart, but even the use of interrupts to temporarily sus- tion to a CHECKPOINT) provides a
youngest players quickly learn to read pend processing and alter the normal waiting area for programs waiting to
the dice directly. (In fact it is the older
adults who have the only .difficultles
heret)
To move out of the INPUT area into
the processing area, a PROGRAM
must first pass through a CHANNEL.
The concept of a channel as a restric-
tive resource is illustrated here by the
rule that only one PROGRAM may
occupy or pass through a CHANNEL
at any time. Two input CHANNELs are
available, so with four players each
having three programs, a true
resource contention is possible.
Once a PROGRAM has cleared a
CHANNEL, it begins its processing
journey to OUTPUT. Positions on the
board within the processing area
include PROCESS symbols, DECI-
SION symbols and CHECKPOINTs'
interconnected in flowchart fashion.
DECISION points alter the flow
through the processing area. Each
DECISION symbol has two alternative
output directions, marked "1" and "0",
with the selected path normally deter- Three Creative Computing employees take time off from work to play Computer Rage.

NOV/DEC 1977 39
Why I
gain access to a CHANNEL. An added
restriction is made that a player must
roll a number that will exactly allow his
program to terminate on one of his
unoccupied OUTPUT symbols, or else
his PROGRAM must wait in the The compiler of the 5-100

Did It
CHANNEL or OUTPUT QUEUE. (Thi:
restriction can be eliminated, i Computer Kit
desired, to reduce the impact of tht
OUTPUT QUEUE on the outcome 0 Reference List explains ....
the game).
Some of the functions of an
operating system can also be il-
lustrated through the play of Com-
puter Rage. The orderly rotation of
turns between players can be viewed
In 1967, I picked up a free copy of the
as a form of "round robin" scheduling.
PDP-8 manual and have been hooked
Allocation of "processing time" is
on computers ever since.
actually done by the roll of the binary
Having studied civil engineering,
dice which randomly produce
numbers between 0 and 7.(A roll of 0
enology, and accounting, I went on to Robert Elliott Purser
become a computer systems analyst, a
effectively causes a loss of turn, but
mail-order entrepreneur on home
life is like that! A suggested change to
knitting, a weekend manager of a
the rules would make a roll of 0
computer store, and when times get
produce an automatic INTERRUPT,
rough-a janitor. Bradley). Maybe with a little prodding,
applicable to the roller's program
Recently I left my programming job these game giants will realize that a $5
furthest advanced, but not rn OUT-
with the state government to do cassette is cheaper than a $30 game, as
PUT.) Once the dice have been rolled,
"something useful for a change." Now I well as more fun.
the player participates in the schedul-
am working on all the projects I Then my final project, if no one else
ing process by deciding which of his
dreamed up in the last three years but has done it, is to develop a computer
three PROGRAMs he will move. This
never had the time to do. Besides keep- program by which people set type on
adds some degree of skill to the play of
ing up the S-100 Computer Kit Re- their own home computers. A person
the game, since some strategies can
ference List (next issue Jan. 78), I am could key in typesetting instructions
be more successful than others. The
starting another reference list. This one on a Sol-20 (it has upper and lower
INTERRUPT process can also be
will catalog all software available on case), send the cassette to a photo-
related to the operating-system func-
cassettes for Sol-20, PET, Radio typesetting plant, and receive back by
tions with some cards providing
Shack, and Apple II. People have asked mail the text, ready for paste-up.
"Scheduling Change" actions,
my why I compile these lists and all I Right now, for my S-100 Reference
resulting in either lost or extra turns.
can tell them is, "It needs to be done List I use a Xerox 800 word-processing
More Enter,tainment and no one else has done it." unit with a Qume proportional spacing
For those who are already Since I am one of the nation's leading print wheel. By using a word-
knowledgeable of all the concepts experts on programming designs for processing unit I am able to cut cost
embodied in the Computer Rage home knitting looms, one of the pro- and time to one-tenth that of typeset-
game, it can be played at what might jects I am now working on is designing ting. If I were able to typeset on my own
be termed the "sophisticated enter- knits with hobby computers. In computer, the cost would drop even
tainment" level. Play by a wide variety cooperation with a nationwide further.
of computer professionals has con- knitting-loom, magazine, I am creating I am looking for sponsors for my
firmed that there is a sufficient number garment patterns on my computer and projects. When my savings are
of parallels between the game and the having them tested by knitters all depleted, I will be looking for employ-
real world to make both equally across the country. My computer is an ment. I want to be involved in the more
frustrating - hence one reason for the Altair 8800A, with 8K Seals, Morrow interesting areas of computing, such as
"Rage" in the name of the game. The Intelligent Cassette, PolyMorphics developing application programs for
inside jokes generated during the play video with keyboard, Southwest home computers or ADAM. (ADAM is
by computer freaks are legion. Technical printer, and most important- the large micro computer system from
Computer Rage offers something ly, Li-Chen Wang's Palo Alto Tiny Logical Machine Corp. The ADAM
for' almost everyone, whether it be BASIC. Once the programs work they language is to COBOL as BASIC is to
entertainment, education or both. As a will be converted to the Sol-20, PET, Fortran.)
pure board game it has the advantage and Radio Shack. Knitters will be able Or perhaps I will start a mass-market
of not requiring access to an actual to create garment patterns from their software company. If PET or Radio
computer. It is probably only a matter own measurements and from the Shack computers reach their expected
of time, however, until computer weight of their own yarn. (Can't you sales of 10,000 units a month, a mass-
implementations begin to appear for just see Granny in a rocking chair next marketing software company can sell a
those who have computers. (This to the fireplace, knitting patterns dis- lot of $5 cassettes, since every com-
would certainly. be an interesting played on her computer?) puter owner will probably buy at least
project, and Creative Computing At the same time I am writing three program cassettes for his com-
would welcome listings of BASIC programs to emulate the computer-on- puter. At the same time, substantial
COMPUTER RAGE programs.) In the cardboard games (such as Code royalties will be paid to freelance
meantime, the whole family or class Name: Sector from Parker Brothers, programmers. The possibilities are
can get involved with the new Com- and Electronic Battleship from Milton ENDLESS!
puter Rage board game, and not have
to worry about energy consumption or
power failures! _

40 CREATIVE COMPUTING
s - 100 READ/WRITE MEMORY BOARD

Advanced Microcomputer Products Logos BK RAM


Advonced Microcomputer Products SOIC SK RAM
Advanced Microcomputer Products 32K RAM
Artec 32K Memory Boord (8K, 250 nS)
Artec 32K Memory Boord (32K, 250 n5)
Associated Electronics 16K Pseudo-Static
219.9S
207.95
1,150.00
290.00
1,055.00
349.95
Base-2 8KS-A ' 98.00
Base-2 8KS-B (450 nS) 123.00
Base-2 8KS-Z 143.00

}}u~ Compatible BISI CCD Boord (64K) 190.00


Crestline Micro Systems (SK,.low power, assembled) 179.00
Cromemco 4KZ (4K 4MHz) (Bank selectable) \ 195.00
Cromemco 16KZ (16K 250 nS access and cycle) 495.00
Cybercom MB6A Blue Boord (8K static) 250.00
Cybercom MB7 (16K low power static) 525.00
Data Sync 16K (assembled) 298.00'

Computer
Duston BK Memory Boord (bore) 29.00
Dctronics 4KLST (4K low power static) 139.00
Dutronics SKLST (SK low power static) 285.00
E.E. & P.S. 8K (8K static) . 295.00
E.E. & P .5. 16K (16K dynamic) 599.00
E.E. & P.S. 32K (32K dynamic) 895.00

Kits Electronic

Electronic
Control Technology 8KM (8K 215 nS)
Electronic Control Techooloqy
Electronic Control Technology
Control Technology
16K RAM (16K static)
16K RAM (with only 4K)
16K RAM (with only 8K)
Electr onlc Control Technology 16K RAM (with only 12K)
295.00
555.00
169.00
295.00
425.00
Extensys RM64-32 (32K) . 895.00
The 5-100 Bus lists computer kits whi~h plug directly
Extensys RM64-48 (48K) 1,195.00
t n t o the 5-100 bus. Only kit prices are listed unless
Extensys RM64-64 (64K) 1,495.00
the board is only available assem~led:' All products Franklin Electric SK Static RAM 225.00
and prices are based bn manufact4reri' ahd deal~rs' Godbout Econoram (4K static) 99.95
advertisements, catalogs, etc. I try to be accurate Godbout Econoram II (8K) 163.84
but I sometimes ma k e mistakes. Please l'e t me know if
IMSAI RAM 4A-4 (4K without sockets)
I do. ., 139.00
IM5AI RAM 4A-4 (4K with sockets) 159.00
IMSAI 65K (dynamic) . 2,599.00
Manufacturers: Please send me your catalogs. ~ow else IMSAI 32K (dynamic) 749.00
will I know about your S-lOQ products? IMSAI 16K (dynamic) 449.00
Kent-Moore 4K (assembled) 107.00
This reference list is free and may be reproduced. Microdesign MR8 (EPROM/RAM 124.95
Micromotion JUMP START (4K static) 14S.00
Midwes"t Scientific Instruments PROM/RAM Boord 95.00
Mikro-D MD-2046-4 (4K static) 205.00
Mikro-D MD-2046-8 (8K static) 345.00
Mikro-D MD-2046-1 z
(12K static) 485.00
Mikr<>-D MD-2046-16 (16K static) 625.00
MiniMicroMart C-80-4k-100 (4K blank board) 39.95
COMPUTFR SYSTEMS MiniMicrbMart C-80-4K-200 (4K blank board pius) 49.95
MiniMlcroMart C-80-4K-300S (4K 2102) 79.95
Byte Shop Byt-8 349.00 MiniMicroMart C-80-4K-300LP (4K 91L02A) 99.95
Computer Power & Light COMPAL-80 (assembled) 2,300.00 MiniMicroMart C80-4~-350LR (4K 91L02C) 129.95
Cromemco Z-I (assembled) 2,495.00 MiniMicroMart C80-161<-:ioq (lW EMM4200) 479.95
Cromemco Z-2K 595.00 MIT5 88-4MC5 (4K static) 167.00
Electronic Control Technology EeT-IOO-SOBO 320.00 MIT~ il8,-16MCS (16K static) 765.00
Electronic Control T echnology Eel"':" I DO-laD 420.00 MITS 88-S4K (4K dynamic) 155.00
Equinox 100 . . 699.00 Morrow Intelligent Cassette (512 static) 96.00
Forethought Products KIMSl,connector and KIM (6502) 370.00 Mountain Hardware PR·OROM (256) 164.00
IM5AI 8080 Computer (chassis, power, & CPU) 699.00 Omni (16K static) " 459.00
IM5AI PK~-I 4,444.00 Omni with paging option (16K stcttc) 468.00
IMSAI.PKG-2 9,013.00 Prime Radix 40K (dynamic) 1,490.00
MIT5 Altair 8800B 875.00 Prime Rodix 4BK (dynamic) 1,580.00
Morro'oll!,sMicr9 Stuff Sigma 100 250.00 Prime Radix 56K (dynamic) 1,670.00
PolyMorphic Systems POL Y-gg.Svstem 0 525.00 Prime Radix 64K (dynamic >. 1,750.00
PolyMorphic Systems ~OL Y-BB System 2 735.00 Processor Technology 4KRA (4K static with sockets) 154.00
PolyMorphic Systems POL Y-BB System 6 1,575.00 Processor Technology BKRA (SK static with sockets) 295.00
PolyMorphic Disk System (I disk) 3;250.00 Processor Technology ! 6KRA (16K static assembled) 529.00
Processor Technology SOL-PC Single Boord 475.00 PolyMorphic Systems MEM-8K (8K static) 300.00
Processor Technology SOL-lOT ermlncl Computer . 795.00 R.H.S. Marketing DYNABYTE 16K (dynamic, assembled) - 485.00
Processor Technology sOL-20 Terminal Computer 995.00 J-K Electronics DYNA-RAM 16 (16K) 339.00
Processor Technology System I '. 1,649.00 S. D•.Sales Company 4K (4K static) 89.95
Processor Technology System II 1,883.00 Seals Electronics BKSC-S (8K static) 269.00
Processor Technology System III 4,237.00 Seals Electronics 8KSC-Z (8K 250 nS) 295.00
Quay AI Z-SO CPU, 510, PIO, ROM, Programmer Board 450.00 Seals Electronics 8KsCLM (less memory chips) 124.00
Technical Design Labs XITAN Alpha I 769.00 Seals Electronics 16KSC-16 (16K static) 579.00
T ecbnlccl Design Labs XIT AN Alpha 2 1,369.00 Solid State Music MB-4 (4K 91 L02A) 129.95
vector Graphics Vector I 699.00 Solid State Music MB-4 (8K 91L02A) 209.00
Vector Graphics vector I without PROM/RAM 519.00 Solid State Music MB-4 Ibocrd only) 30.00
Vector Graphics vector I without CPU 499.00 Solid State Music MB-~ (board only) 35.00
Vector Graphics Vector I without CPU, PROM/RAM 349:00 Solid State Music MB-6 (BK 9 IL02APC static) 265.00
Western Data Systems DATA HANDLER (uses MOS 6502) 179.95 Sqlid State Music MB-7 (16K static) 525.00
Western Data Systems PAT A HANDLER (bcrebones} 79.95 Technical Design Lobs Z8K (4K 215 n5) 169.00
Technical Design Lobs Z8K (8K 215 nS) 295.00
Technical Desig, Lobs ZI2K (12K 215 nS) 435.00
Technical Desigr Lobs Z 16K (16K 215 n5) 574.00
Technical Design Labs Z Meni tor Boord wi th 2K RAM 295.00
SE<;:ONO OR REPLACEMENT CPU BOARD Vandenberg 16K RAM (dynamic) 299.00
249.00 Vector Graphics 8K RAM " 265.00
Affordable Computer Products AZPL! (uses Z-80)
Alpha Micro Systems AM-IOO (16 bit)
C~R5 6502· . .
1,495.00
?
Vector Grophlt Reset and Go PROM/RAM
Xybek PRA":)~ER (256 bytes & 1702 PROMs) I~;:gg
Cf-omernco ZPU (uses Z-SO/4 microprocessor) 295.00
IMS,AI MPU-A (requires oddlfioocl boards) 190.00
MR5 AM6800 CK (uses 6800 MPU) 110.00 PROM PROGRAMMER BOARD
MR5 AM·~800 (without the 6800 MPU chip) 78.00
MRS AM6800 PC Boord . 30.00 Cromemco BYTES AVER lor 2704 & 2708 145.00
R.H.5. Marketing Pig~y-8ack Z80-S0 (assembled) 159.95 Mountain Hardware PROROM (AMI 6834) 164:00
SO Sales Z-80 CPU· . 149.00 Quay AI Z-SO with 270B Programmer 450.00
T ecbniccl Deslqn Lobs Z-SO (uses Z-BO) 269.00 Szerl ip Enterprises The Prom Setter (l102A and 270S) 165.00
Xebek PRAMMER lor 1,02 (with 1702 & RAM) 209.00

PLUG IN SOFTWARE BOARD

Computer Kits Power-Start 165.00


Cromernco lSO MonItor Board with PROM Progrommer 220.00
Godbout 8080 Sof twcre Boord 189.95
Microdesign MR8 with MM2K 224.45
Micronics Bet terBvq Trap (assembled) ISO.OO
Midwe~t Scientific Instruments PROM/RAM Monitor 245.00
Mountain Hardware PROROM 164.00
Nationa! Multiplex Corp No. i 510 with monitor 140.00
Processor Technology ALS-8 (assembled) 425.00
Processor Technology ALS-S with SIM-I 520.00
Processor Technology ALS-8 with TXT -I 520.00
Technical Deslqo Lobs Z System Monitor Boord 295.00
Vector Graphics Reset and Go (2 Il02A) 129.00
41 ~or Graphics Reset and_G_O_(3_~7_o_2_A.,.) ~ 1_5_9_.0/0
PROM BOARD

Cree Comp M 100/16 (16K, 2116) 485.00


Crea Comp M 100/16 (with parity) 560.00
Creo Comp M 100/32 (32K, 21 16) 885.00
Cree Comp M 100/32 (with parity) 990.00
Cromemco BYTESAVER (SK) 145.00
Cromerncc 16KPR-K (16K, Bonk selectable) 145.00
DigiCornm Byteuser (uses 270S) 65.00
Digiteck PROM CARD (2K assembled without PROMS) 56.95
Electronic Control Technology 2K ROM/2K RAM 120.00
Gadxwt Econororn (2K) 135.00
Godbout Econorom (4K) 179.95
Godbout Econorom (SK) 269.95
IBEX 16K PROM Boord 85.00
IMSAI PROM 4-4 (4K PROM) 399.00
IMSAI PROM 4-512 (1/2K PROM) 165.00
Microdesign MRS (for 270S) 99.50
Midwest Scientific Instruments PROM/RAM Boord 95.00
MiniMicroMart CSO-1702-1 (all except PROMS) 49.95
MiniMicroMart C~0-2708-2 (011 except PROMS) 49.95
MiniMicroMart CB0-256 (boot strop board, fuse link) 34.95
MITS PMC (2K ) 85.00
Processor T echno·logy 2KRO 65.00
Seals Electronics 4KROM '119.00
Solid Stote Music MB'3 2K (S 1702As) 105.00
Solid State Music MB-3 4K (16 1702As) 145.00
Solid State Music MB-3 (without PROMs) 65.00
Solid State Music MB-8 (270S) 85.00 AUDIO CASSETTE INTERFACE BOARD
Vector Graphic Reset and Go PROM/RAM 89.00
Xybek PRAMMER for 1702 (with a 1702 & RAM) 189.00 Affordable Computer Products Triple Stondcrd 135.00
DAJEN Cossette Interface _ 120.00
DAJEN Universal Cossette Interface (Relay Control) 135.00
MEMORY CONTROL BOARD IMSAI MIO (tape interf.ace, parallel, & serial) 195.00
MiniTerm Associates MERLIN with ccsset+e interface 298.00
IMSAI IMM ROM Control Kit 299.00 MITS 88-ACR 145.00
IMSAI IMM EROM Control Kit 499.00 National, Multiplex Carp No. 2 SIO with ROM 140.00
Morrow Intelligent Cossette interface 96.00
Morrow Intelligent Cassette Interface (3 drives>. 102.00
PerCom Dato CI-812 89.95
Processor Technology CUTS 67.00
RO-CHE with Tarbell (two ports) 215.00
RO-CHE with Torbell (four ports) 245.00
Tarbell 120.00

TAPE DRIVE INTERFACE BOARDS

MECA ALPAA-I System 400.00


Micro Design Model 100 (assembled) 600.00
Micro Design Model 200 (assembled) 875.00
MicrologiC M712 DG PhiDeck 69.95
National M.C. 2 SIO (R) I ROM 169.95
Nationol M.C. 2 510 (R) 2 ROM 189.95
PARAllEL INTERFACE BOARD Notional M.C. 2 SIO (R) with 3M3 OM drive) 369.90
Ncticncl M.C. 2 SIO(R) with 3M3 (mini 3M drive) 339.90
Advanced Microcomputer Products (3P+S cornpctible} 125.00
Cromemco D+7AIO (one port with seven onolog ports) 145.00 FLOPPY DISK INTERF.ACE BOARD
Cromemco TU-ART (2 parts) . 195.00
IMSAI PIO 4-1 (one part without cables) 93.00 Alpha Micro Systems AM-200 Controller 695.00
IMSAI PIO 4-1 & PIOM (two parts without cables} 115.00 Alpha Micro Systems AM-20 I Controller 695.00
IMSAI PIO 4-1 & P!OM (three ports without cables) 137.00 CHP Floppy Disk Controller 300.00
IMSAI PIO 4-4 (four ports without cables) 156.00 Computer Hobbyist Products Controller 300.00
IMSAI PIO 6-3 (three parts ond bus without cables} 139.00 Computer Hobbyist ProdiJcts (single drive) 850.00
IMSAI P.IO 6-6 (six ports and bus without cables) 109.00 DigiComni 8040 Floppy Disk Controller 265.00
IMSAI MOl (two ports & seriol & tape interface) 195.00 Digital Systems IBM compatible 1,595.00
Micrologic M71Hone port) 69.95 Digital. Systems dual IBM compatible 2,170.00
MiniMicroMart C80-P I/O (two ports) 49.95 iCOM Microfloppy' Model FD24! I (assembled) 1,095.00
MiniMicroMart CSQ.-P I/O with ccbles C80-P 1/0-540 57.45 IMSAI FIF 599.00
MITS 88-4P10 (one por-t) 105.00 IMSAI FDC2-1 & FIF 1,694.00
MITS 88-4PI0+PP (two Ports) 148.00 I/,iSAI FDC2-2 & FIF 2,7S9.00
MITS S8-4PI0+2PP (three parts) 191.00 INFO 2000 Adopter (without RAM) 1,20.00
MITS 88-4PI0+3PP (four ports) 234.00 INF,o 2000 Adapter (with 4K RAM) 160.00
Morrow Intelteqent Cossette with one port i02.00 INFO 2000 Adopter + Per Sci 1070 Controller 860.00
PolyMorphic VTl/32 (one input port with video) 185.00 Micromotion Universal Disc Controller 229:00
PolyMorphic VTI/64 (one input port with video) 210.00 Micromotion MACRO DISC System, Moqel 164K 900.00
Processor Technology 3P+S (with sockets) 149.00 Micromotion MACRO DISC System, Model 256K 1,100.00
Solid-State Music 1/0-1 (one port) , 42.00 Micropolis 1053.Mod II (630K) 1,795.00
Solid Stote Music 1/0-1 (PC boord only) 25.00 Micropolis 1043 Mod II (315K) 1,095.00
Solid State Music 1/0-2 (two ports) 47.50 Micropolis 1053 Mod I (286K) 1,545.00
Solid Stote Music 1/0-2 (~C boord only) 25.09 Micropolis 1043 Mod I (143K) 945.00
Technical Design Labs Z Monitor Boord (one port) 295.00 MITS 88-DCDD (controfler. & disk) 1,425.00
WIZARD PSI,OB (3P.S compatible) 125.00 MITS 88-DiSK' 1,215.00
North Star Computers MICRO-DISK 699.00
SERIAL INTERFACE BOARD PerCom Data Co. 695.00
Peripheral Vision lnterfoce and floppy 750.00
Advanced Microcomputer Products (3P+S compatible) 125.00 Peripheral Vision iFF-KC interface 245.00
Crornemco TU-ART (2 ports) 195.00 Per-tee RD241 I, ' 1,095.00 .
IMSAI 510 2-1 (one port , without cables) 125.00 Processor Applications FOe-IO 16K Controller 395.00
IMSAI SIO 2-2 (two ports, without cables) 156.00 Processor Technology Hellos (dual) I,S95.00
IMSAI S 10 (serial, parallel, & tope interface) 195.00 Realistic Controls Z/ /25 . 1,095.00
Morrow lntellegent Cossette wit~ one port 108.00 Synetlc' Desiqqs interface and floppys 2,690.00
MiniMicroMart C80-SI/0-300 (TTL) 44.95 Tarbell BoreBoord Interface 40.00
MITS 88-2510 (one port) 150.00 Tarbell Interface' 190.00
MITS S8-2SI0+SP (two ports) 188.00
MITS 8S SlOB 124.00 HARD DISK INTERFACE BOARD
Notional Multiplex Corp No.2 510 with ROM 140.00
Processor Technology 3P+S (with sockets) 149.00 IM5AI DISK-SO 12,500.00
Solid State Music 1/0-2 (two ports) 47.50 IMSAI DISK-SO 14,700.00
Solid State Music 1/0-2 (PC bocrd only) 25:00 IMSAI DISK-200 24,500.00
Technical Design Lobs Z Monitor Boord (two ports) 295.00 ItjlSAI Interface (assembled) 3,900.00
WIZARD PSIOB (3P~S compatible} 125.00

ANALOG INTERFACE BOARD

Cromemco D+ 7AIO (7 analog inputs & 7 outputs) 145.00


Micro Dato ADC/DAC 250.00
MITS 88-ADC (assembled only) 524.00
MITS 88-Mux (assembled only) 319.00
MITS AD/DA (assembled) 235.00
PolyMorphic Systems ADA/ I (I onclcq output) 145.00
Pol~Morphic Systems A:,DA/2 (2 onolog outputs) 1'95.00

MODEM BOARD

International Data Systems SS-MODEM 199.00


Hayes SO-I03A (assembled) 279.95
Hoyes So-I03A (board only) 49.95
42
VIDEO INTERFACE BOARD - BLACK & WHITE

Computer Kits INTELLITERM (cborocters) 395.00


Computer Graphics GDT-I (graphics ond light pen) 185.00
Environmental Interface II (monitor) 245.00
Environmental lnterfoce III (oscilloscope) 495.00
Kent-Moore alpha (assembled) 107.00
Kent-Moore graphi,c (assembled) 137.00
Micro GRAPHICS "THE DEALER" (grophics ond chcrcctersl 249.00
MiniMicroMort CBO-VBA 149.95
MiniTerm Associates MERLIN (without memory) 269.00
MiniTerm Associates MERLIN (with memory) 303.95
MiniTerrn Associates MERLIN Super Dense Graphics 308.00
Polymorphics VTI/64 (graphics ond cbcrccters) 210.00
Processor Technology VDM-I (characters) 199.00
Solid State Music 64xl6 (graphics oDd characters) 179.95

VIDEO INTERFACE BOARD - COLOR

Crcmemcc TV DAZZLER (grophics) 21·5.00

TV CAMERA INTERF ACE BOARD

Cromemco 88-CCC-K 195·00 PROTOTYPE BOARD


Cromemco 88-CCC-K with Camera Kit 88-ACC-K 390.00
Environmental Interface 1 295.00 Advanced Microcomputer Products Universal Proto 39.95
Environmental Interface with camero 595.00 Artee GP-I 00 20.00
Cromemco WWB-2K 3S.OO
Electronic Control Technology PB-I 22.00
E.E. & P.S. Wire Wrop 39.00
E&L Instruments Breadboarding/Interfacing Station 241.50
Electronic Control Technology PB-I 28.00
Galaxy Systems PB-I 30.00
Homestead Technology HTC-88P (QT sockets) 1)8.00
Homestead Technology HTC-88PF (foil pattern) 38.00
IMSAI GP-88 39.00
HARDWARE MUL TIPL YIDIVIDE BOARD 699.00
IMSAI BBC-5 & P106-6 Intellegent Breadboard System
IMSAI BBC-3 & P106-3 Intellegent Breodboard System 464.00
GNAT 8006 Module (5 u-see. process time) 225.00
275.00 MiniMicroMart C-8~WW (wire wrap type) 19.95
GNAT 8006 Module (2.5 u-see. process time)
359.00 MiniMicroMart C-80-DIP (for point to point) 18.95
North Star Computers (floating point)
MiniMicroMart C-80-BUs-WW (wire wrap) 21.95
MiniMicroMart C-8~BUS-WW,..125 (with components) 27.45
CALCULA TOR INTERFACE BOARD 20.95
MiniMicroMart C-80-DiP-BUS (for point to point)
MiniMicroMort C-80-DIP-BUS-125 (with components) 26.45
COMPU/TIME CT 100 195.00
MITS 88-PPCB 45.00
COMPU/TIME C 101 149.00
MITS 88-WWB 20.00
MiniMicroMort C80-5CI-300 99.9S
PolyMorphics Poly 1/0 . 5S.00
Processor Technology WWB 40.00
SPEECH SYNTHESIZER BOARD 25.00
Sargent's Dist. Co.
Seals Electronics WWC 37.50
Ai Cybernetic Systems Model 1000 325.00
Tarbell Electronics 28.00
Computalker Speech Synthesizer CT - t 395.00
Vector 8800V 19.95
Logistics Synthesizer (multipurpose) 525.00
Vector 8800-A 29.95
Vector 88oo-B 89.00
5PEECH RECOGNitiON BOARP

245.00 EXTENDED BOARD


Heuristic Speechlab
Phonics SR/8 (cssernbled) 550.00
Advanced Micr~omputer Products Extender 34.95
Artec EXT-loo 12.00
JOYSTICK INTERFACE KITS 35.00
Cromemco EXC-2
E.E. & P.5. Extender WIC 30.00
Cromemco Joystick Kit &. D+7AI/O 210.00
Galaxy Systems EX-I 25.00
Cromemco Duol Joystick Kits & D+7AI/O 275.00
IMSAI EXT 39.00
MiniMicroMart C-80-EXC 24.95
Mullen (with logic probe) 35.00
INTERUPT BOARD Processor Technology EXB 35.00
Seals Electronics EXT 29.60
Cromemco TU-ART 195.00 Solid State Music (less connectors) 8.00
El Poso Computer Group (board only) 20.00 Solid State Music (w/w connector) 12.50
IMSAI PIC-8 (with internal clock) 125.00 Suntronics EXT-I 9.9S
MITS 88-VI/RTC 138.00 Vector 3690-12 (assembled) 25.00

REAL-TIME CLOCK ADAPTER BOARD

Comptek CL2400 98.00 MiniMicroMort C80-BA (for MOD 8/C-MOD 80 boords} 19.95
COMPU!TIME CT 100 195.00 Forethought Products KIMSI (for KIM) 125.00
COMPU/TIME T 102 165.00
International Data Systems sMP-88 96.00 CARD CAGE ANDIOR MOTHERBOARD
Lincoln Semiconductor Clock and Display Driver 95.00
Advanced Microcomputer Products 8 slot MB w/connectors 79.95
AC POWER CONTROL Byte, Inc. Byt-8 229.00
Computer Data Systems Versatile CRT (assembled) 699.95
Comptek PC3216 Control Logic Interface 189.00 Electronic Control Technology Eel -100 100.00
Comptek PC3216 & pe3202 Power Control Unit 228.50 Electronic Control Technology MB-20 60.00
Comptek PC3216 & 16 PC3202 16 Chonnel 5ystem 821.00 Go_ut Motherboord (10 slot) 95.00
Comptek PC3232 Control Logic Interface 299.00 Gocbout Motherboard (18 slot) 118.00
E.E. & P.S. IISV 1/0 249.00 Integrand Research Corp. 800 200;00
Mullen Relcy/Opto Isolator Control Board 117.00 Integrand Research Corp. 800A 275.00
MiniMicro Mart Expander (4 slots) 10.95
BATTERY BACK-UP BOARD MiniMicroMort Expender (9 s101s) 17.9S
Morrow MotherBoard 76.00
Seals Electronics BBUC (J 2 amper hours) 55.00 Objective Design Crate Book (pIons only) 19.95
E.E, & P.S. . 55.00 .PolyMorphic P88 Chassis 235.00
TEl Model MCS-I 12 316.00
MUSIC 5YNTHESIZER BOARD T &H Engineering Low Cost Buss 149.00
Vector 18 Slot Motherboard 49.00
ALF. Quad Cromatic Pitch Generator (I channel) 111.00
ALF Quod Crornct!c Pitch Generator (2 channels) 127.00 TERMINATION BOARD
ALF Quod Cromatic Pitch Generators (3 channels) 143.00
ALF Quod Cr~matic Pitch Generator (4 channels) 159.00 Godbout 25.00
Cvbercom 581 Synthesizer Kit 250.60
Galaxy Systems MG-I 299.00
Logistics Synthesizer (multipurpose) 525.00
SRS Polyphonic Synthesizer SRS-320 (ossembled) 175.00
SR5 Polyphonic Synthesizer SRS-32 I for the SRS-320 175.00

PRINTER INTERF ACE BOARD

Peripheral Vision RRT -KC Printer Kit 495.00

FREQUENCY COUNTER BOARD

Internotional Data Systems 88-UFC 149.00

IBM SELECTRIC INTERFACE BOARD

Micromotion TYPEAWAY 225.00

43
Processor Technology
6200-L Hollis Street
Affordable Computer Products
Emeryville, CA 94608
Byte Shop 112 Data Sync (415) 652-8080
3400 EI Camino Real 201 W. Mill
Santo Clara, CA 95051 Santa Maria, CA 93454
Quay Corporation
(408) 249-4221 (805) 963-8678
P.O. Box 386
Freehold, NJ 07728
Advanced Microcomputer Products DigiComrn (201) 681-8,700
P.O. Box 17329 6205 Rose Court
Irvine, CA 92713 Roseville, CA 95678
(714) 558-8813 Realistic Controls Corporation
3530 Warrensville Center Rood
Digital Systems
Cleveland, Ohio 44122
Ai Cybernetic Systems 1154 Dunsmuir Place
(216)751-3158
P.O. Box 4691 livermore, CA
University Park, NM 88003 (415) 413-4078
R.H.S. Marketing
Digiteck 2233 EI Camano Real
ALF Products, Inc.
P.O. Box 6838 Polo Alto, CA 94306
128 S. Toft
Grosse Point, Michigan 48236 (415) 321-6639
Lakewood, CO 80228

Alpha Micro Systems Duston, Forrest RO-CHE Systems


17875 N. SkyPork North 885 Aster Avenue 7101 Mammoth Avenue
Irvine, CA 92714 Palatine, IL 60067 Van Nuys, CA 91405
(714) 957-1404
Dutronics S. D. Sales
Altair (see MIT,S) P.O. Box 9160 P.O. Box 28810
Stockton, CA· 94608 Do! los, T )!XOS 75228
Artec Electronics, Inc.
60S Old Country Rood E & l Instruments, Inc. Sargent's Dist. Co.
San Carlos, CA 94070 61 First Street 4209 Knoxvi lie
(415) 592-2740 Derby, Conn. 06418 lakewood, CA 90713
(203) 735-8774
Associated Electronics Scientific Research Instruments
12444 lambert Circle E.E. & P.S. P.O. Drawer C
Gorden Grove, CA 92641 Electronic Eng. & Production Service Morey, NJ 13403
(714) 539-0735 Route 112
Louisville, Tennessee Seals Electronics
Midwest Scientific Instruments
Base-2, Inc. (615) 98'1-9640 Box 11651
220 West Cedar
D.O. Box 9941 Knoxville, TN 37919
Olathe, Kansas 66061
Morino ~el Rey, CA 90291 Electronic Control Technology (615) 693-8655
P.O. Box 6
MIKRA-D, Inc.
BISI Union City, I,J 07083 Integrand Research Corp. Smoke Signal Broadcasting
P.O. Box 403
J.R. Broom 8474 Avenue 296 P.O. Box 2017
Hollister, Mass. 01746
Vancouver, B.C. EI Paso Computer Group Visalia, CA 93277 Hollywood, CA 90028
(617)881-3111
9716 Saigon Drive (209) 733-9288
Byte Shop EI Paso, TX 79925 Solid State Music
Mini Micro Mort
1450 Koll Circle, 11105 International Data Systems, Inc. MI KOS
1618 James Street
Son Jose, CA 95112 Environmental Interfaces 400 North Washington Street, 419 Portofino Drive
Syracuse, NY 13203
3207 Meo,dawbroak Blvd. Suite 200 Son Carlos, CA 94070
(315) 422-4467
eGRS Microtech, Inc. Cleveland, Ohio 44118 Falls Church, VA 22046 (408) 246-2707
Unkn<?wn ~ (216) 371-8482 (703) 536-7373 MiniT erm Associates
Stillman Research Systems (SRS)
Box 268
ct-fP, Inc. Equinox Division Kent-Moore Instrument Co. P.O. Box 14036
Bedford, Mass. 01730
P.O. Box 18113 Parasitic Engineering P.O. Box 5Q7 Phoenix, AZ 85063
Son Jose, CA 95158 P.O. Box 6314 Industrial Avenue MITS (Altair)
Albany, CA 94706 Pioneer, Ohio 43554 Suntronics Company
2450 Alamo S.E.
Comptek (800) 64&-531 I (419) 737 -2352 360 Merrimack Street
Albuquerque, NM 87106
P.O. Box 516 lawrence, MA 01843
(50S) 243-7821
La Canodo, CA 91011 Extensys Corp. Lewis and Associates (617) 688-075 I
(213) 790-7957 592 Weddell Drive, 5-3 68 Post Street, Suite 506 Morrow's Micro-Stuff
Sunnyvale, CA 94086 San Francisco, CA 94104 Synetic Designs Company
Box 6194
Compotclker Consultants (408) 734-1525 (415) 391-1498 P.O. Box 2627
Albany, CA 94706
P.O. Box 1951 Pomona, CA 91766
S<10ta Monica, CA 90406 Forethought Products Lincoln Semiconductor (714) 629-1974
MRS
P.O. Box 386-A P.O. Box 68 P.O. Box 1220
Computer Data Systems Coburg, Oregon 97401 Milpitas, CA 95035 Szerlip Enterprises
Hawthorne, CA 90250
English Village, Atrom 1 (408) 734-8020 1414 W. 259th Street
Newark, DE 197! I Franklin Electric Co. Mullen Computer Boards Harbor City, CA 90710
733 Lakefield Road Logistics Box 6214
Computer Kits Inc. Westlake Village, CA 91361 Box 9970 Hayw~rd, CA. 94545 TEl Inc.
1044 University Avenue (80S) 497-7755 Morino Del Roy, CA 90291 7231 Fondren Road
Berkeley, CA 94710 Mountain Hardware Houston, Texas 77036
(415) 845-5300 Galaxy Systems North Star Computers Box 1133 (713) 774-9526
P.O. Box 2475 2465 Fourth Street Ben Lomond, CA 95005
Computer Graphics Associates Woodland Hills, CA 91364 Berkeley, CA 94710 (408) 336-2495 T & H Engineering
56 Sicker Road (213) 888-7233 P.O. Box 352
Latham, NY 12110 MECA Notional Multiplex Corp. Cardiff, CA 92007
GNA T Computers 7344 Wamego Trail 3474 Rand Avenue, Box 288 (714) 753-8568
Computer Hobbyist Products, Inc. 8869 Balboa, Unit C Yucca Valley, CA 92284 South Plainfield, NJ 07080
P.O.Box 18113 San Diego, CA 12123 (714) 365-7686 Torbell Electronics
San Jose, CA 95158 Objective Deslqn, Inc. 20620 South Leapwood Avenue
(408) 629-9108 Godbout Electronics P.O. Box 20325 Suite P
Box 2355 Micro Data
Tallahassee, FL 32304 Carson, California 90746
3199 Trinity Place (213) 538-4251
COMPU/TIME Oakland Airport, CA 9f+614
San Jose, CA 95124
P.O. Box 417 Omni Systems, Inc.
Huntington Beach, CA 92648 Hayes P.O. Box 7536 Univ. Station
Microdesign Technical Design lobs Inc.
U 14) 638-2094 P.O. Box 9884 Provo, Utah 84602
8187 Havasu Circle 342 Columbus Avenue
Atlanta, GA 30319
Bueno Pork, CA 90621 Trenton, NJ 08629
Computer Power & light (404) 231-0574 PerCom Dote Company
(714) 523-8080 (609) 921-0321
11.321 Ventura Blvd. 4021 Windsor
Studio City, CA 91604 Heuris tjc , Inc. Garland, TX i5042 Vandenberg Data Products
Micro Designs, Inc.
(213) 760-0405 900 N. San Antonio Rood (214) 276-1968 P.O. Box 2507
499 Embarcadero
Suite C-I Oakland, CA 94606 Santa Moria, CA 93454
Cree Comp System, Inc. Los Altos, CA 94022 (415) 465- 1861 Peripheral Vision (805) 937-7951
Suite 30.5 P.O. Box 6267
4175 Veterans Highways" Homestead Technologies Corp. MicroGRAPHICS Denver, Colorado 80206 Vector Electronics Company, Inc.
Ronkonkoma, NY I 1779 891 Briarcliff Rood N.E. P.O. Box 2189, Station A (303) 733-1678 12460 Gladstone Avenue
(516) 585-1606 Suite B-II Champaign, IL 61820 Sylmar, CA 91342
Atlanta, GA 30306 Phonics, Inc. (213) 365-9661
Crestline Micro Systems Micrologic P.O. Box 62275
P.O. Box 3313 iCOM Division Sunnyvale, CA 94086 Vector Graphic Inc.
P.O. Box 55484
Riverside, cA 92519 6741 Variel Avenue Indianapolis, IN 46220 (408) 735-7622 717 lakefield Rood, Suite F
Ccnoqo Park, C/~ 91303 Westlake Village, CA 91361
Cromemco (213) 148-: 391 Polymorphic Systems (805) 497-0733
Micromotion
2432 Charleston Road 524 Union Street 737 S. Kellogg
Mountain View, CA 94043 IBEX San F ronclsco, CA 94133 Goleta, CA 94608 Western Data Systems
(415) 964-7400 1010 Morse Avenue, 115 (415) 398-0289 (80S) 967-2351 3650 Charles Street, No. Z
,'Sunnyvale, CA 94086 Santo Clara, CA 95050
Cybercom 739-3770 Micronics, Inc. Prime Radix Inc.
2102A Walsh Avenue P.O. Box 3514 P.O. Box 11245 WIZARD Engineering
Santa Claro, CA 95050 I M 5 Associates, Inc. Greenville, NC 27834 Denver, Colorado 802 i ! 8205 Ronson Rood, Suite C
(408) 246-2707 14860 Wicks 8lvd. (919) 752-7813 (303) 433-5630 San Diego, CA 92 i II
<;nn Lpnnrlro. CA 9!J577
DAJEr, (I, I S) 483-2093 Processor Applications, Ltd.
Micropolis Corp. Xybek
David C. Jeoki-rs 9017 Reseda Blvd. 2801 East Volley View Avenue P.O. Box 4925
7214 Sprlnqleof Covr t !NFO 2000 West Covina, CA 91792 Stanford, CA 94305
Northridge, CA 91324
Citrus Heights, CA 95610 =.o. Box 310 (213) 349-2328 (213) 965-8865 (408) 296-8188
\916) 723-i050 Culver City, CA 90230

ROBER:r ELL! OTT PURSER POST Box 466, EL DORADO, CA 95623


'------_.
THE
PERSONAL
&
SMALL· BUSINESS
COMPUTER
EXPO
WASHINGTON HILTON,WASH.,D.C.
JANUARY 13-15,1978
~---EXH'B'TORS-FORBe
BOOTH SPACE
Part Of It!
Call Or Write Felsburg Associate's, Inc.
P.O. Box 624-9430 Lanham-Severn Rd o Seabrook. Md. 20801'(301)459-1590
Register Early-Save $ And Avoid Lines
r----------------------------------------------------,
Personal & Small Business Computer Expo' admission at the door will be ~,).OOper day. Advance
registration is ~2.00 per day. Admission includes both exhibits and seminars.
Please send me _advance registration tickets for three days, January 1'), 14. & 15. TOtal cost is
~6.00 per person. .
Please send me _advance registration tickets for two days, January _and January _ Total
cost is $4.00 per person.
Please send me _ advance registration tlcketts) for one day. January _. Cost is ~2.00 per
person.
Please make checks payable to Felsburg Associates. Inc.. and moll to P.O. Box 624. Seabrook.
Maryland. 20801. Tickets will be moiled to you.
Name _

Address~~--------------------------------------~---------------------
City, State & Zip' .
Amount Enclosed S_Hotel Reservations Required _
L Check here if you would like club rates.and information sent _ . II.

NOV/DEe 1977 45
_______ A Creative Computing Equipment Profile .... _

---TDL Xitan---
____________ Steve North _

Dozens of microcomputers are ming, then the Z-80 is a clear choice thing as a cassette standard, although
'presently on the market. Many of these over the 8080. If you don't care what's Tarbell probably comes closest. The
are well-designed hunks of hardware, inside your machine, you should 5MB cassette interface must be used
but all too often that's where the appreciate that this kind of design with a medium-quality (over $50?)
manufacturer leaves off with his sup- philosophy shows up in other places cassette unit.
port of the system. You're left with a you will notice.
nice-looking box and no software to Z16 Memory Board
fill it with. But TDL's Xitan Systems System Monitor Board The Xitan Alpha 2 also includes a
come with an impressive array of Another central element of the Xitan Z16 memory board. The Alpha 1
software which makes it a product of is called the System Monitor Board. doesn't, but is otherwise the same
special interest to those who want to The 5MB is half a computer (almost) computer. This board holds 16K of
spend time writing and using software on one board. It holds 2K of ROM dynamic RAM and has an invisible
and not modifying and playing games programmed with a hex monitor called refresh feature so the refresh pro-
with hardware. ZAPPLE, and 2K of RAM for cedure that dynamic RAMS re-
A Xitan is an S-100 bus computer, scratch pad and extensions to ZAP- quire won't interfere with other ac-
built around TDL's ZPU board, which PLE. Having a monitor on ROM tivities of the system. 16K of memory
is a CPU board based on the Zilog Z- eliminates the need for a front panel should be adequate for many people,
80 microprocessor. The Z-80 is and the drudgery of toggling in a so a TDL Xitan Alpha 2 is a complete
recognized as the most powerful bootstrap every time the computer is system, ready to connect to a terminal,
microprocessor available today and is turned on. When the Xitan is turned with a CPU, memory, 1/0 for terminals
software-compatible with the Intel on, the processor immediately starts and a cassette, and a monitor on ROM.
8080, so it has a large body of support executing ZAPPLE and you're off! The The Xitan comes with a pre-
software. (It is not entirely accurate to System Monitor Board also has two assembled power. supply which
say that the Z-80 is completely serial 1/0 ports (one for a Teletype, should be adequate for the eight-slot
software compatible with the 8080, one for a CRT) and a parallel port card cage. The Xitan uses the S-100
since MITS BASIC won't run on the Z- (which might be used with a keyboard bus which means that you can plug all
80, but just about everything else will. or optical papertape reader). In add i- kinds of interesting boards made by
The reason for the problem is that the tion the 5MB has a cassette interface other manufacturers into your Xitan
Z-80 overlaps two flags and assumes that uses TDL's phase-encoded (but not too many of them). Eight slots
that a bit means one thing when a asynchronous 1200-baud standard. doesn't seem like a lot, though it is
logical operation is done; another While this unfortunately means that difficult to say what the optimum
when an arithmetic operation is done. we have yet another cassette standard number actually is. Twenty-two (in the
MITS BASIC does something tricky to contend with, the interface is almost IMSAI) seems almost like overkill,
with the flags. A patch can be written free (since it was implemented with whereas five (Processor Technology
to get around this if necessary.) The Z- just 3 ICs). Besides, there is no such Sol-20) or eight certainly isn't too
80 has a number of improvements over many. And the Xitan is down to six
the 8080 instruction set, including: slots after you add the ZPU and 5MB.
relative jumps; a test of any bit in any The Xitan is in a smaller cabinet than
register or memory location; I/O to or many other systems which makes it
from any register; block moves, easier to move around. Also, only
searches, and 1/0; an indirect register, having eight slots cuts down on the
and some instructions they "forgot" cost of the power supply and the case.
when they made the 8080 (such as A RESET switch (which brings you
LDED, similar to LHLD, to load the 0 back to ZAPPLE) and a power-on
and E registers direct). The Z-80 has a indicator LED are mounted on the front
duplicate set of registers, called the of the cabinet. The onloff switch is on
"prime" registers, which are used to the back of the cabinet (to el iminate the
speed interrupt handling, as well as possibility of accidentally switching off
expanded interrupt features. The Z-80 the system.)
is faster than the 8080 even running at
the same clock speed. The ZPU board
has two clocks on it, either of which ZAPPLE Monitor
may be used. One is a crystal- We previously mentioned a monitor
controlled 2-MHz clock; the other may called ZAPPLE which is programmed
be adjusted to any rate from below 1 into the ROM on the System Monitor
Hz to above 4 MHz. The ZPU, like the Board. ZAPPLE includes various
rest of TDL's boards, may be used in useful monitor-type functions. Com-
any S-100 bus system (such as an mands are entered by typing a single
IMSAI or Altair). If you plan to do TDL's.Xitan Alpha 2 has three boards: ZPU, 5MB, character (such as G for GO, or F for
much assembly-language program- and Z16 memory FILL) and hexadecimal notation is

46 CREATIVE COMPUTING
used. ZAPPLE has 23 commands for memory, you can't use them, so for program, and more. The mnemonics
loading, dumping, and filling memory personal computer applications you used are patterned on 8080
from the keyboard; reading and would be a lot better off with a Z16 mnemonics where there is a
punching hex and. binary files; memory board and .TDL's software resemblance, but otherwise conform
searching for byte strings in memory, too, if you can afford it). to Zilog's mnemonics. The assembler
executing user programs, testing can generate relocatable object code
memory, etc. The three commands not which can then be read in at any
8K BASIC
used by ZAPPLE (I, 0, and K) may be 'TDL's 8K BASIC is similar to MITS memory location using a command in
used to execute yourown user-written ZAPPLE.
8K BASIC, but has its own refinements
commands (I and 0 obviously suggest and comes free with the Alpha 2. It has
some type of 1/0 operation). ZAPPLE In Development
features found in most powerful
also makes user programs 1/0- TDL has some other hardware and
microcomputer BASICs: exponentia-
independent by handling all 1/0. To software products currently in
tion, character strings, a complete
input or output data (a byte at a time) development stages or being readied
function library, logical functions
the user's program merely calls the for release. Among these: a FORTRAN
(AND, OR, NOT), user-defined func-
appropriate routine in ZAPPLE. Four IV compiler which should be available
tions, program SAVE and LOAD, and
logical devices are handled by ZAP- complete error messages (not two- by the time you read this; ZTEL, a text-
PLE: the console, reader, punch, and editing language; and a Data Base
letter abbreviations). TDL 8K BASIC
list device. These may be assigned to also has RENUMBER, program execu- Management System. The Video Dis-
various actual devices such as a play Board is a video RAM device that
tion tracing, IF THEN ELSE, a
Teletype, CRT, high-speed papertape displays 80 columns and 24 lines, and
SWITCH command to control assign-
reader/punch. cassette, lineprinter, or which doesn't use any of the
ment of the console device, and EDIT,
user-written 1/0 routine. ZAPPLE processor's addressing space. It is
which MITS 8K doesn't have. TDL also
permits you to change 1/0 devices programmed through 1/0 ports, and
offers a 12K BASIC separately, with
with the "A" command. For example, characters. are placed on the screen as
even more handy features: PRINT
AC=C assigns the CRT as the con- USING, double-precision math rou- fast as they can be written by the
sole. So a program that does its 1/0 tines including transcendental func- computer, so the block-output instruc-
through ZAPPLE wouldn't actually be tions, multiple-line user-defined func- tion the Z-80 has may be used. The
concerned with whether output was tions, and even a SPEAK command for Video Display Board will also have
being printed on a Teletype or graphics symbols, video inversion,
use with a Computalker! As a matter of
fact, it's hard to think of anything 12K
BASIC doesn't have except for MAT
functions, which no microcomputer
BASIC has. The only negative com-
ment I have about TDL BASIC is that
control-X, which is commonly used for
a line-delete symbol, is used in TDL
BASIC to return to ZAPPLE. I'm sure
that once you get used to using TDL
BASIC it really doesn't matter that
much, but it is inconvenient at first.
The ZPU card features the Z-80 microprocessor The 8MB system monitor board uses the Zapple
from Zilog. Text Editor monitor in 2K of ROM.
The ZAPPLE Text Editor may be
lineprinter, or whether data was being used to edit programs or just general and blink. Some more memory boards
read from a papertape or a cassette. A text. Commands are entered as Single are on the way, as well as a hardware
DIP-switch on the 5MB is used to tell letters with numeric arguments and multiplyldivide board.
ZAPPLE what 1/0 configuration to use may be strung together to form
. at system start-up. What if you don't command strings. Operations are Conclusion
have a terminal? Maybe you want to done relative to a pointer in the text Is the Xitan for you? The microcom-
use a keyboard and VRAM (memory- (for instance, print the next ten lines). puter market has diversified since the
mapped video display) with the Xitan. The editor permits creation/inser- Altair came out. A single product is no
In that case, you'd just set the DIP- tion/replacementldeletion of text and longer aimed at all microcomputer
switch for the BATCH mode. All other useful operations. The ZAPPLE buyers. If you want to get into
console input is read from the reader Text Output Processor is used, ap- microcomputing as cheaply as
device (which can be selected to be propriately enough, to control output possibly, there are better routes to
the cassette) and all output goes to the of text on a hard-copy device. TOP take. The Xitan is not really for the
list device (which is non-existent at the controls pagination, titling, justifica- same person who would buy a PET
moment). Since VRAM devices need tion, centering, tab settings, inden- 2001 or maybe an APPLE II or a Sol-
to be driven with a user-written 1/0 tations, etc. 20. FORTRAN IV and the Data Base
routine, you'd merely load a cassette Management software really aren't
which contains: a command to read a Macro-Assembler aimed at the personal-computer user
file from the cassette, a file with a Finally, Xitan Alpha 2 Systems also at all, which is indicative of the
VRAM driver routine on it and a include TDL's Z-80 relocating macro- direction TDL is taking with the Xitan
command to assign the console to assembler. This is a two-pass (namely, towards greater sophistica-
user-written routtne. In short, ZAPPLE assembler with lots of pseudo-ops and tion and somewhat higher prices). But
is a rather powerful monitor by the capability to support user-written don't get the wrong idea. If you add up
microcomputer standards. macros. The pseudo-ops are used to the prices for an IMSAI 8080 with 16K
The Xitan Alpha 2 also includes control paging of the assembly listing, of memory, interfacing for a terminal
some other powerful. software. Alpha 1 linkage between subprograms, macro and a cassette, you'll see that the Xitan
systems don't include these packages expansions, global areas, titles, con- is competitively priced and offers a lot
(but if you don't have additional ditional assembly, data assembled in a more in the software department. _

NOV/DEC 1977 47
AN EVALUATION OF
THREE 8080 8K BASICS

Steve North
In choosinq a BASIC interpreter or other sophisticated
and possibly expensive piece of software for your
personal computer, what factor shou Id be kept foremost in
mind? A great deal.of attention is sometimes paid to timing
comparisons. While the speed of an interpreter can be Features:
important in some case's, most personal-computer Commands: CLEAR (clears variables; with an argument,
applications tend to be I/O-bound, which makes the sets amount of string space), CLOAD (loads or
internal speed of an interpreter of less significance. Just checks file on cassette, may also be used as a
because one interpreter in 25% faster than another doesn't program statement or command to load arrays from
make it better. However, a well-written interpreter is the cassette), CONT (continue after a STOP or
probably faster than a poorly-written one. The time (or control-C), CSAVE (saves a program file or array on
speed) that's really important in this evaluation is yours, cassette), LIST, NEW, NULL (sets number of null
not the computer's. If it takes you five hours more to code a characters printed after a CR/LF), RUN.
particular program in one language than in another, thirty Statements: DATA, DEF, DIM, END, FOR, GOTO,
seconds hardly make a difference. What most people want GOSUB, IF... GOTO, IF...THEN, INPUT, LET, NEXT,
is a language that permits them to do what they want with a ON ... GOSUB, ON ... GOTO, OUT (outputs a byte to
maximum of flexibility and a minimum of effort (of course, an 1/0 port), POKE (stores a byte in an absolute
this is only true if you program to do things and memory location), PRINT, READ, REM, RESTORE,
not program just to program). Factors such as memory RETURN, STOP, WAIT (wait for a specific value at
size and availability of assembly-language source code an 1/0 port).
will diminish in importance as memory gets cheaper and Variables: Variable names may be 'any number of
people who don't care about assembly language start characters in length, but only the first two characters
buying computers. Reliability will become even more are significant. Thus, MITS 8K BASIC doesn't know
important since the average person finds bugs and the difference' between the variables DOG and
crashes even more annoying than the computer fanatic DOUGHNUT, because they both begin with DO.
does. Range is ±2.9387E-38 to ±1.70141E38. ,
This issue we're bringing you an evaluation of three Functions: t,
+,-,*,1, ABS, ASC (returns ASCII value of
8080 8K BASICs-MITS 8K BASIC, IMSAI8K BASIC, and character string), ATN, CHR$ (converts from ASCII
BASIC ETC. In the next issue we'll try to get to some 6800 to character string), COS, EXP, FRE (number offree
and maybe Z-80 software, in addition to more 8080 bytes in the system), INP (inputs a byte from an 1/0
software products (including a micro-APL, a BASIC-like port), INT, LEFT$ (takes left part of ,a character
pseudocompiler, a FORTRAN compiler, and a very string), LEN, LOG, MID$ (middle part of a character
extended BASIC). string), OCT$ (converts a decimal number to a
character string of octal digits), RND, POS (position
of the print head), RIGHT$ (right part of a character
string), SGN, SIN, SPACE$ (creates a string of
spaces), SQR, STR$ (converts a number to a string
MITS 8K BASIC 4.0 of digits), TAB, TAN, USR, VAL (converts string of
Author: Microsoft. digits to a number).
Size: 6.2K with all functions retained. User-defined Functions: Yes, with any. number of
Price and Availability: $250, on papertape or MITS arguments (such as DEF FNA(X, Y, Z)=X+Y*Z).
cassette. $75 for owners of MITS systems. MITS, Inc., 2450 String functions are also permitted (DEF FNZ$ (X$)
Alamo S.E., Albuquerque, N.M. 87106 =X$+"HELLO").
Reliability: No problems noted. Arrays: Yes, with any number of dimensions.
Documentation: The user's documentation for all the Machine-Language subroutine interfacing: Yes, with the
MITS BASIC (4K, 8K, and Extended) are lumped together USR function. USR has one argument which the
in one manual, torcinq the user to separate all the machine-language subroutine picks up by calling
information pertaining to a particular interpreter from the subroutine whose address is stored in locations
useless information on other BASICs. The instructions are 4 and ·5. The address called by USR is set up by
above average and include examples. The source code is POKE-ing memory locations 111 and 112 with the
not available. desired address. A value can be passed back to
Speed: Our original benchmark took 20 minutes to reach BASIC by placinq it in two CPU registers and then
34 and 52 minutes to reach 56. SIDES3 took 43 seconds. calling another subroutine in BASIC.

48 CREATIVE COMPUTING
Cherecter Strings: MITS 8K SASIC has very complete program without clearing variables first).
character-string-handling features. Strings may be Statements: CALL, CHANGE (convert from string to array
handled as scalars (X$="HELLO") or as arrays orviceversa), DATA, DEF, DIM, END, FOR, GOSUB,
(X$(1,2)="HELLO), etc.) Strings may contain up to GOTO, IF ... THEN, IF ... GOSUB, IF., .GOTO, IN-
256 characters. The plus symbol(+) is used for PUT, INPUT LINE (used to input a character string
concatenation. with embedded quotes or commas). NEXT,
Formatted Print: None ON .. ,GOS~B, ON ... GOTO, OUT (outputs-a byte to
Editing Functions: None. an I/O port), POKE (stores a byte in an absolute
External Files: Only to the extent of being able to save and memory location), PRINT,RANDOMIZE (used to
load arrays. from the cassette with a program true pseudorandom numbers), 'READ, REM,
statement.. ' RESTORE, STOP.
Error Messages: 18, specified by a two-character error Variables: A-Z, AO-Z9. Range is ±2. 71 05E-20 to
code, ±.5.7646E18.
Extra Stuff: Control-O is used to control the printing of Functions: + , -, * ,/,t, ABS, ASCII (returns the ASCII value
output on the terminal., "?" is equivalent to of a character string), ATN, CHR$ (converts from
PR!NT. Control-Q and Control-S are used to tem- ASCII to a character string), COS, EXP, INP (inputs a
porarily freeze and then continue execution of a byte froman I/O port), INSTR (used to determine the
program or listing. The logical functions AND, OR, position of one character string within another), INT,
and NOT are available. MITS BASIC has a initializa- LEFT$ (takes left part of a character string), LEN, LN
tion dialog that permits some functions to be (natural log), LOG (log base ten), MID$ (middle part
dropped to release more memory for programs. of a character string), NUM$ (converts a string of
Depending on the sense-switch setting at initializa- digits into a number), PEEK (returns the value of an
tion time, f'AITS BASIC configures itself for anyone absolute memory location), PI (3.1415.9), POS
of a variety of i'v1ITS I/O boards. (returns the position of the print head), RIGHT$
User Comment: MITS {3K BASIC was the first widely (right part of a character string), RND (without an
available microcomputer BASIC and it has remained an argument works like normal RND; with an arqument,
outstanding product, a standard with which to compare returns a value between one and the argument),
other BASICs. Unfortunately, its high price discourages SGN, SIN, SPACE$ (creates a string filled with
its use by low-bUdget computer hobbyists. But if you can spaces), SQR, STRING$ (same as CHR$, but creates
afford it, this is the way to go. multiple-character strings), TAB, TAN, VAL (con-
verts a number to astrinq of digits).
User-defined functions: Yes, only one argument is
IMSAI 8K BAS~C 1.4 allowed.
Author: IMSAI Arrays: Arrays may be named, A-Z and have one or two
Price and Availability: $100 for a papertape or Tarbell dimensions.
cassette. IMSAI Manufacturing Corp., 14860 Wicks Blvd., Machine-language subroutine interfacing: Yes, but there
San Leandro, California 94517. is no direct way to pass values between BASIC and
Size: 8.SK the subroutine (except by PEEK and POKE).
Documentation: The instructions are merely a list of 8K Character Strings: Strings may contain up to 256
characters, but string arrays are not permitted. The
BASIC's statements and functions with a little explana-
plus symbol (+) is used for string concatenation.
tion, and somerandom comments on using 8K BASIC. Note that the manual reports that there is a bug
Quite often the tnstructtons are insufficient; for instance, which causes the interpreter to bomb if strings
the CHANGE verb is explained by "C~ANGE strinq to greater than 238 characters are used. IMSAI 8K
array, or CHANGE array to string." Since the DEC BASICc BASIC has a complete set of string-handling func-
Plus manual is listed as a reference, one is probably tions: .
expected to obtain a copy to gElt a better idea of how to use Formatted Print: None,
IMSAI 8K BASIC. The manual includes 113 pages of well- Editing Functions: None.
commented source code for 8K BASIC in assembly External Files: None.
language. Error Messages: 10, indicated by a two-character err-or
Reliability: IMSAI 8K BASIC flunks the notorious 10 code. Overflow and underflow errors are non-fatal
GOSUB 10 test by recursing itself to death! It seems that (execution of the program continues after a
IMSAI 8K BASIC never checks to see if it runs out of message is printed).
memory for the BASIC program, variables, or if the stack Extra Stuff: i'?" and "!" may be substituted for PRINT and
eats its way down through the BASIC program. In fact, it REM. Print, statements may USElsingle or double
doesn't even have anout-of-memory error rnessaqel quotes for delimiting literal strings. Control-O is used
There are a few other problems-according to the manual, to control the printing of output. The NEW and XEQ
strings over 238 characters can "destroy the interpreter," commands provide-a rudtrnentarytacility for chain-
and active FOR/NEXT loops may not be restarted. The ing programs together.
tloatinq-point math routines also need some help (did you IMSAI also has a expanded version of 8K BASIC 1.4,
know that 2+200 is -1.3~771 E-17? Computers never lie!) called 9K BASIC 1.4. This version of BASIC includes
Speed: AHLDIG: 89 minutes to reach 34,160 minutes to CSAVE and CLOAD (cassette save and load of BASIC
reach 56.SIQES3':'103 seconds. program) for the Tarbell cassette interface on an IMSAI
Features: MIO board, an EDIT commandtot the form EDIT (line
. Commands: CON, (continues execution after a STOP or number) (delimiter) (old text) (delimiter) (new text)), and a
'control-C), FRE (prints number of free bytes in BAUD command used to change the terminal baud rate on
system), KEY (used to return to normal mode after a an MIO board. .
TAPE command), LIST, NEW (an optional form of User Comment: The apparent intent in writing IMSAI 8K
this command deletes the program but not BASIC was to make it as close to DEC BASIC -r- Plus as
Variables), RUN, SAVE (punches papertape of possible. In fact, 12K BASIC was supposed to be
program), TAPE (loads papertape of p-rogram completely compatible with BASIC-Plus. But alas, along
Without echoing on the terminal), XEQ (runs the way, IMSAI 8K BASIC got derailed. There are still

NOV/DEe 1977 49
some serious problems that need to be ferretted out before Character Strings: Yes, but they are merely alternate
IMSAI 8K BASIC can compare with the quality of IMSAI's representations of real variables, not distinct. Thus
hardware products. But we do like the idea, and hope that AO and AO$, and B9(1,2) and B9$(1,2) actually
IMSAI will finally clean up this interpreter. Incidentally, represent the same data. This eliminates the need for
PEEK, POKE, CALL, INP, and OUT are not BASIC-Plus string-handling functions. The plus symbol (+) is
syntax=-rnore like MITS BASIC. Obviously, what's great used to concatenate strings. There is a provision for
for some computers may need some alteration for micros. taking substrings in BASIC ETC. Obviously, not
One other comment: we' remember reading in IMSAI ads standard BASIC.
that 4K, 8K, and 12K BASIC would be free to all registered Formatted Print: The ZONE command can be used to set
IMSAlowners. Now the price is $100. In its present form, the number of positions in the numeric PRINT zone.
MITS 8K BASIC at $250 seems like a better buy. BASIC ETC also has a non-standard form of PRINT-
USING with integer, real, exponential, ane ASCII
specifications.
PASIC ETC~ . Editing, Functions: None.
Authors: John Whipple and Dick Arnold. External Files: None.
Size: 9K Error Messagf3s: 27, specified by a three-digit number (100
Price and Availability: On papertape, Kansas City or to 126).
Suding cassette for $25. Binary Systems, Inc., 6345 Extra Stuff: None.
Central Expressway, Richardson, 75,080. User Comment: BASIC ETC is cheap and it does work, but
Documentation: The 30-page instruction manual includes we don't care for some of its non-standard syntax. For
examples and is generally satisfactory. Details on instance, there is no THEN in an IF statement! To write an
custornization are included. The source code is not IF... THEN, you use the colon (rnultlple-statemertt
available. separator) in place of THEN, as in IF X=1: PRINT "HI",
Re,liability: BASIC ETC flunked the 10 GOSUS 10 and the which probably saved SOmeone three or four bytes in
10 RETURN tests. It also inserted its own line in our writing BASIC ETC.,But the really annoyihg thing is that
benchmark program when a variable overflowed. In none BASIC ETC distinguishes between integer and real data
of these cases did the interpreter actually blow up, but it types, and you're not allowed to say for yourself if you
did damage the BASIC program: . want X5 to be an integer or a real number. True, integer
Speed: AHLDIG: In real mode, 39 minutes to reach 34, and math in BASIC ETC in significantly faster than real math,
1QO minutes to' reach 56 (the end of the test). In integer but this isn't standard BASIC. Mixing of inteqer-data types
mode, about 24 minutes to reach 34. SIDES3 could not be with real-data types is not permitted (so PRINT 2'X5
run, because there are no trig functions. . bombs, because BASIC ETC decides that the expression
Features: . must be an integer since 2 is an integer). Further, there is
Commands: LIST, LOAD (loads program and variables no actual INT function in BASIC ETC. To get the integer
(optional) from cassette), NEW, NULL, (sets number part of a real variable you can always resort to
of null characters printed after a CR/LF), RUN, SAVE X5~FL T(INT(X5)), which only works for certain values of
(save program and Variables (optional) on cassette). X5. We could go on, but you get the idea. BASIC ETC is
Statements: DATA, DIM, END, FOR, GOSUB (with an not, in some areas, anything like any other BASIC we've'
optional list of expressions passed to the 'sub- used. BASIC ETC is the most inexpensive tloatinq-point
routine), GOTO, IF, INPUT, LET, MEMW (stores' a BASIC we've tested so far. •
byte in an absolute memory location), NEXT, OUT
(outputs a byte to an 1/0 port), PRINT, PRMT (sets
prompt character used in the INPUT statement),
READ, REM, RESTORE, RETURN, SO (sets number
of significant digits, 6-72, used internally), STOP,
S$SPC (sets amount of string space), VAR (used by
a subroutine to pick up arguments passed to it by the
calling program), ZONE (sets width of numeric print
zone). .
v eriebtes: A-Z are integer variables (0 to ± 32767). AO-Z9
are real variables (1 E-62 to 9.99 ... E62).
Functions: +,-, ',/, ABS, FL T (converts from integerto real),
. FRE (returns the number of free bytes in the system),
New Benchmark
IN (inputs.trorn an 1/0 port), INT (converts from real
to integer), LEN, MEMR (returns the value of an
absolute memory location), RND, SOR, USR,'VAL
Program Geoffrey Chase
(converts a string of digits to a number).
User-defined functions: Yes, but not stardard BASIC. We're introducing a new benchmark program, SIDES3,
User-defined functions are numbered FNO throuqh written by Geoffrey Chase. (He also sent us a nifty
FN7 and may have one argument that's represented Heapsort benchmark which we didn't have time to use
in the function definition by a pound sign (#). For yet). SIDES3Wili be used primarily to test the speed of a
instance, DEF FNZ(X) =27*X in normal BASIC is language's 'function library, on the assumption that if the
written as FN2=27*# in BASIC ETC. Stranqel trig functions are fast, then the rest of the function library
Arrays: Multidimensional arrays are supported. However, also is, since programmers are usually consistently tricky
only real arrays are permitted and they must have or conventional. Geoft reports the following results:
real variable names. Thus, DIM 0(10) is illegal but EDU-20 BASIC,
DIM 07(N) is OK. The subscripts must be integer . one-user configuration 197 seconds
mode expressions. OS/8 FORTRAN IV 8.8 seconds
Machine-language subroutine interfacing: Provided by FORTRAN-2 with EAE. hardware .27 seconds
the USR function. Arguments are passed both ways U/W FOCAL Version R
with two CPU registers. . . . (carrying to-place accuracy) 32 seconds

50 CREATIVE COMPUTING
SIDES3 3/30177 EDUCOHP BASIC V2.0
•..........
• Only
~ .... ~

100
110
112
REH.
!
INPUT A$
Pr-oar-em
PAS 3/77
to solve 5.S.S.
for,
(siven
benchmarldns
3 sides at a triamHe)
; Computer Enterprises ;
115 FOR 1=1 TO 100 I benchmar", -- otherwise very stupid I
120 RESTORE

• Has All 3: •
• •
125 READ A,B,C
130 IF C)=A THEN 170
140 T=C
150 C=A
160 A=T , SWAP 'EM
170
180
190
IF C)=B
T=C
CoB
THEN 210
: Ixll. Lowest Prices ;
200
210
B=T
REH. USE LAW OF COSINES
• Ix12.
.. Reliability •
I
I
220 U=C*C - A*A - B*B
" U = COS(ANGLE 'C') O"'P. to side 'c'

[Xl 3. Speediest
230 U=U/(-2*A*B)
240
250
260
IF U=O THEN 300
U=SDR (I-U*U)
U=ATN (u)
IU
I Beware of 90 DEGR.
! U = TAN (ANGLE 'C')
, U = ANGLE of'posite to
(Pl/2)

side "c "



270
280
290
IF U)=O THEN 310
U=UtPJ
GOTO 310
! correct the ouad r-errt,
I Shipping I
300 U=P1/2 , this 'BASIC' keeps a permanent 'PI'
310 Al=U
320 R;=SINW)/C , sin/opp. side: constant for triangle
• North Star Horizon Computer SystelJl ••
330 REM. Now look at side 'a' and opp. angle 'A' • The Complete Z80A System· .
340 U=A*R " U=SIN(A)
350 GOSUB 530 • *Z80ACPU at 4 MHZ •
360 A2=U
370 U=B*R * 16K200nsRAM •

380
390
GOIiUB 530
A3=U
* SerialI/O * lor 2 . I
395 NEX·t I ! end of benchmark • micro disk drives
400
410
PRINT
PRINT ·SIDE A =";A,' ·,"SIDE B =";8," ',"SIDE C =";C • * DOS and BASIC Credit Cash.
420 PRINT Card Discountl
430 PRINT "ANGLE A" ,A2; "RADIANS',
440 U=A2
• Price . Price
450 GOSUB 600
460.PRINT
470 U=A3
"ANGLE B" ,A3; "RADIANS',
I ~orizon 1 (1 drive) kit $1497 $1439 I.
480
490
GOSUB 600
PRINT 'ANGLE C',A1;"RADIANS",
• Horizon 1 (2 drives) kit $1871$1799 I
500 U=A1
510 GOSU9 600 I THE standard of Video •
520 GOTO 700
530 IF U=1 THEN 570 ! Beware of 90 DEGfL (PI/2) I Display Terminals-
540 U=U/SGR(1-U*U)
550 U=ATN(u)
! U becomes tangent
• Lear Siegler ~DM,3A Kit $ 770 $ 740 I
560 GOTO 580
570 U=PI/2 • SPECIAL TOTAL SYSTEM •
580 RETURN
590! ------
! to des r-ee s
• combinatien •
600 U=U*lBO/~I
610 D==INT<U)
620 LJ=U-D
630 LJ=U*60
I. ~~~~o$:~ ~~R:~_3A I
640 M=INT(U) ! minutes kits $2214 $2129 ••
650 U=U-M
660 U=U*60
670 5=INT(Ut.5) ! seconds
IHorizon 2 and ADM-3A
• . kits $2589 $2489.
680 PRINT O;"desr.";M;"Ir.in,";S;·sec."
690 RETURN
695 DATA 120,
700 END
207.846, 120
1--------------------1
I SEND FOR YOUR FREE COpy •

SIDES3·

SIDE

ANGLE
ANGLE
A

A
Ie
3/30/77

120
EDUCONP BASIC·V2.0

.5236
,5236
RADIANS 30
RADIANS 30
SIDE [r

de s r-,
de s r-,
= 120

0
0
min.
mIn,
0
0
sec.
sec.
SIDE C = 207.846
. ----------~--- .
• OF CO:r.,:PUTER ENTERPRISES
I

I
DISCOUNT CATALOG
Polymorphic VTI/64 kit
IMSAI 8080 with 22 slots kit
• IMSAI Factory Assembled 16K RAM
IMSAI Factory Assembled 32K RAM
. IMSAI Video Interface VIO-B kit
IMSAI Video Interface VIO-C kit'
$186
$614
$464
1748
234
. 278
$179
$590 •
$446
$719 •
$225
$267 •
I
I

ANGLE C 2.09439 RADIANS 119 de s r , S9 min. 60 sec. • Seals 250ns 8K RAM kit . 250 $240
rDL ZPU kit $262 $$29452•
'4K Expansion for TDL Z16K $ 99 .
READY

AROUND 6.6 SECONDS ••••••• <UNTIL PRINTIN'G BEGAN) •...


U

SEMI 4200 Chips
• rDL 8K BASIC Plj.per 7ape s
$ 13
47
$ 12
$ 45
I
7DL 12K BASIC .Paper 7ape s 89 $ 86 •
• 7DL Macro 4I,ssembler Paper 7ape $ 47 $ 45

• Shipping charges: $10 per CPU pn larger units; $1.50 I


per kif. $2.00 min. per order.
I Delivery is stock to 30 days on most items. Shipment is •
Program Notes • immediate for payment by cashier's check, money or- •
Why swap A,B,C? • der or charge card. Allow 3 weeks for personal checks. '
to clear. N,Y. State residents add approp, sales tax, •
(a) This is inherited from a test program that did a run-
• Availability, prices and specs may change without
time INPUT. (Kill 112 through 125, write "120 INPUT
notice, •
A,B,C." Also kill 395 and 695, natch.) •
(b) The arc cos (effective) is sensitive to quadrant, If C is • Write or Call I
the largest side, the opposing angle is the only possible
obtuse angle and gets trapped rather neatly. Otherwise
•• ••
••
one would have to move cautiously with the (effective) arc
sin - the value returned might need replacement by 180
value, or not. This gets rather nasty.
(c) ! have versions of the A. K. Head recursive arcsin and
arc cos for BASIC, Slow, but they can be useful. No need
0


•• Fayettevil.le, N.Y. 13066 •
to worry about (2h-1 )-90 ! . •0
• P.O. Box 71 •

• Phone (315) 637-6208 Today! .I•


NOV/DEC 1977 51 ••••••••••••••••
Shoestring
Many schools are caught in a budget to our system is his assembler-editor-
crunch and there is fierce competition 8080 simulator for the HP that makes it
for' scarce' funds. Hard decisions usually Timeshare possible to assemble extensive programs
place computer facilities near the bottom in INTEL 8080 machine language using
of the priority list, and so there may be the INTEL mnemonic instruction set. His
little incentive to begin computer ori- R.D. HAAS "loader" program is equally important
ented curricula. Multiple user systems as it dumps the assembled programs
may be prohibitively expensive for indi- directly from the HP into ALTAIR
vidual schools or Ismail districts. Even memory where it can be immediately
if they can tie in to regional or state run. We then proceeded to write the
consortiums or into university-based com- necessary' bootstraps and other functional
puter centers, the cost is high. Rural or off-line. We ordered a' second TVT to be operating programs for our system.
isolated schools may find that communi- used in the manner described but quickly In August 1976, Levinski iaccom-
cation lines or toll fees, in the long run, realized that this system too was inade- plished what we believe is a major break-
exceed the cost of terminals and user quate for a large class. The increased through in micro-software. He modified
fees. Students and teachers at Clairemont down-time of the T.!., the difficulty in a commercially available 5K BASIC
High School in San Diego, California scheduling the dump periods, and the into a time-share version that we now
have developed a relatively inexpensive, inconvenience of the PURGE and SAVE run regularly on 4 terminals (it can
flexible and expandable multi-user sys- command for each program after each accommodate up to 16). Since September,
tem based on an INTEL 8080 micro- terminal switch operation, along with a few unusually able students have applied
processor. the accompanying danger of accidentally Levinski's techniques to modify a much
Clairemont High. School has for several destroying or mutilating another student's more powerful extended BASIC to use in
years had a single terminal (Texas program, prompted us to find another our expanded system. It is our goal to
Instrument 700) hard wired to a cen- solution. have eight ports in operation by Sep-
trally located Hewlett Packard 2000 With the bliss of ignorance we decided tember 1977. With the completion of a
ACCESS system. On a lease-to-purchase to create our own on-site multiple-user floppy disc drive, we expect to have
plan, the intial cost was about $6,000 system with extended BASIC as our file capability early in the next school
for the terminal and a single H.P. port, language. In May 1976 we received our year.
plus approximately $500 a year in service ALTAIR 8800 kit with 24K RAM, five Our total cost, to date, is under
and maintenance fees. serial and two parallel I/O ports and a $6000, including one ALTAIR 8600, one
When BASIC was introduced into the cassette interface. A group of students in MITS Floppy Disc drive, 32K RAM and
"computer math" class, the need for on- a new pilot course, "Computer Tech- one video modulator board, one paper
line computer time made multiple ter- nology", spent the summer session tape reader, one ASqI key board/
minals an absolute and imperative neces- assembling and trouble-shooting hard: encoder, one SWTP printer (40 charac-
sity. The large initial costs and fees for ware while another group worked on ters/line), two cassette interface (a KC
expansion to 8 or 10 ports was economi- writing and debugging software. By the and a Tarbell) and two cassette recorder-
cally impossible at our school. Several middle of July' we were writing simple player machines. .
alternatives were considered, including programs in the 8080 machine code. We are convinced that with the advent
multi-plexing several terminals on a single We were fortunate to have with us a of inexpensive micro-processor systems,
port. A "poor man's multiplex" seemed guiding genius and tireless worker, Jeff of which there are several available off-
to be the best interim solution to' our Levinski, a student of computer science the-shelf or in kit form, no school should
problem in' the fall of 1975, and so at Berkeley and a recent graduate of our be without on-site multi-user computer
we ordered and assembled a TV type- school. His first important contribution facilities. •
writer kit. (Southwest Technological
Products, Albuquerque, Nl'4). This inex-
pensive terminal (approximately $300)
was connected through a simple DPDT
switch, along with the T.!. terminal by MICROCOMPUTER
modem and phone line to the tiP 2000. PROGRAMMII\IG COURSE
The TV typewriter has built-in lK FREE description and outline of MODU-LEARN ™ Home
of RAM that allows the operator to com- Study Course in Microcomputer Programming. Hundreds of
pose and edit programs on the monitor paqes of text with examples, problems and solutions. Pre-
pared by professional design engineers using systematic
screen in a format of 32 character/line software design techniques, structured program design, and
* 1() lines/page' * 2 pages. The TV type- practical examples from real microcomputer applications.
writer also has a "screen read" facility Presented in a modular sequence of ten lessons oriented for
that allows the student operator to dump the engineer, technician or hobbyist beginning to need pro-
gramming skills. Includes background material on micro-
the lK program into the HP in about
computer architecture, hardware/software tradeoffs, and
two minutes while the T.!. stands by, useful reference tables. Much of this information has been
available only through costly seminars. Now you can study
this complete course at home at your own pace for only
$49.95. 'Send for FREE descriptive brochure now.

LO'GICAL .
*The author was the sponsor of the
711CStierlinRc'
recent AEDS Programming Contest '. Mountain View, .CA 94043
winner. He is with Clairement High SERVICES INCORPORATED (415) 965-8365
School, San Diego, CA 92117. .

Reprinted with permission from AEDS Monitor,


Jul/Aug/Sep 1977.

52 CRE~TIVE COMPUTING
HOW LATE CAN YOU SLEEP
..
IN THE MORNING?
David H. Ahl
Probabilities and expected values are a vital part to 3. You also know from past experience that you can
writing almost any game or simulation. Here are two run up the stairs to the 2nd floor.in 10 seconds. The 2nd
real-life problem situations (I face them practically daily) to 3rd takes you 10% more time (11 sec.) and 3rd to 4th
which can be solved with simple statistics. Be warned: 10% more time (12.1 sec.) and so on. What position of
the second is considerably more difficult than the first. elevators upon your arrival would cause you to run up all
9 floors? (Many answers are possible - select one "break
GETTING TO WORK' even" combination).
4. Assuming your office is on the 3rd floor and you are
Driving to work, you can take one of two routes.
faced with the same situation as above (time 8:29 with
Route 1 is 5 miles long and has 4 traffic lights. Each light
8:30 appointment on the 9th floor), but with no elevator
is on a 1-minute cycle but with different intervals. Light
indicators, what is your best strategy to be on time for
1 is green in your direction for 30 sec., red for 30 sec.
the meeting or as little late as possible? That is, do you
Light 2 is 20 sec. green, 40 sec. red. Light 3 is 25 sec.
run up or wait for the elevator? •
green, 35 sec. red. Light 4 is 40 sec. green, 20 sec. red.
Route 2 is 5.2 miles long with only 1 traffic light which
is green your way 20 sec., red 40 sec.
PARTIAL ANSWERS
Speed limit in the town is 35 mph. "Getting to Work." 1. Route 2 is approximately 0.47
sec. faster. 2. The arriving truck has an expected value of
-6 sec. per day on Route 2, hence Route 1 now has the
edge by 5.53 sec.
"And Once There." Once you get on an elevator, it is a
fairly simple matter to determine how long it will take
to get to the ninth floor (8 floors x 6 sec. = 48) plus (40%
chance of stopping x 10 sec. per stop x 8 floors = 32)
equals 80 sec. But figuring when the elevator will ar-
rive on the first floor is something else again. Any ele-
vator can be at any floor going in either direction. Hence,
Elevator 1 has a 0.056 probability of being at, say, Floor
3 going up*. How long until it returns to Floor 1? Well, if
we know it goes to the 10th floor, that's easy, but i1 has
only a 0.4 chance of going to the 10th floor, 0.4 chance
of going to 9 and so on. Multiplied by 18 different pos-
sible starting positions and by 3 elevators, this is a nasty
problem. In a situation like this you have to ask yourself
whether a heuristic, or rule of thumb, or best guess
wouldn't provide an adaquate answer. For example, you
1. Which is the best route and what is the expected might want to make the assumption that at least one ele-
time difference between the two? vator is at the 4th floor (or below) and heading down.
2. Route 2 also takes you by a factory loading dock. If It is sometimes easier to come up with a solution if
a truck is just arriving (occurs 1 day out of 30) you will you think of the problem in entirely different terms. For
be held up an average of 3 minutes. Does this change exaniple, think of the elevator as a one-way trolley on a
your answer? , circular track - station 1 is Floor 1, station 2 is Floor 2
.going up, and so on. Station 18 is Floor 2 coming down
AND ONCE THERE and then back to station 1 again. Usil1g this .approach
may make it easier to work the problem.
Parking your car, you rush into theto-storv Morris-
By the way, it should be apparent that a computer isn't
town AT&T Building for your 8:30 am appointment with
much help in solving this particular problem. However,
the vice president whose office is on the 9th floor. As you
if this were part of a much larger simulation in which the
reach the elevators you glance at your watch and see that
output of one part provided the input to the next (a very
it is 8:29. From past experience you know that there is a
typical situation), a computer would be almost vital to
40% chance of an elevator stopping at any given floor; a
the solution. .
stop takes an average of 10 seconds. The elevator passes
If you're still with me and want to read a fun little book
from one floor to another in 6 seconds. There are 3
on the subject, get "Flaws and Fallacies in Statistical
elevators all of which have an indicator on the 1st floor
Thinking" by Stephen Campbell published by Prentice-
(where you are) that shows the location and direction of
Hall.
that elevator. At the point of your arrival, each elevator
is equally likely to be on any of the 10 floors going on * If there are 10 floors and the elevator has an equal
either direction. chance of being at any floor going in either direction,
1. Assuming you take the elevator, what is the pro- why isn't the probability of being at Floor 3 going up 0.1
bability that you will make your appointment on time? x 0.5 = 0.05? Simply because Floor 1 and 10 do not have
What is the probability that you will be less than 1 min- a direction associated with them, hence there are really
ute late? Less than 2 minutes late? only 18 locations. Actually, that's over-simplified be-
2. Under the conditions stated, exactly when would cause the elevator may not even reach Floor 10, or 9 or
you expect to arrive on the 9th floor? 8 etc. _

54 CREATIVE COMPUTING
Featuring on-the-spot interviews with two
manufacturers, two retailers, and a publisher

Gamboling· in Atlantic City


David H. Ahl

Atlantic City: Gambling has been the next few pages. days of personal computing are com-
approved, although it will be another Next year the exhibits will be in ing in with the advent ofthe Pet and the
nine to twelve months before it gets Convention Hall and some of the new Radio Shack computers. In other
under way. Nevertheless, the beaches hotels will be finished. So, put PC '78 words, home computing is kind of
were a little bit cleaner than last year, on your calendar now ... the last paralleling the early days of amateur or
the boardwalk traffic a bit brisker, and weekend in August. It will be dynamite! ham radio. From 1900 to 1920, there
lots of construction was underway. On were only amateurs; then, all of a
the other hand, the Shelburne Hotel, sudden, commercial radio appeared
site of the "Personnel Computing '77" and brought with it explosive. growth.
was as seedy as ever, the air con-
ditioning in the exhibit hall spasmodic,
Adam Osbome The amateur hobbyists stayed around
but had relatively modest growth
the elevators generally out-of-order, Adam Osborne is founder and compared to commercial radio. Do you
the help surly and unpleasant. So the president of Osborne and think this will happen with personal
convention flopped? Wrong! Through Associates, Inc., in Berkeley, computing? Where do you see things
the extraordinary efforts of John Dilks, California. He is a consultant on going?
Dave Jones, their wives, and other microcomputer systems, and author Osborne: Personal computing, in
organizers, PC '77 was a fantastic of the popular books, An Introduc- which people have a computer for the
success! tion to Microprocessors, Vols. 1 & 2. sake of being able to program it, is
Creative sponsored a wine and something which will always be dif-
cheese reception for the 400 or so ficult to do, so it is never going to
conference and exhibitor people on Ahl: In talking to people here in Atlantic become a mainstream thing. It is never
Friday night. We poured the last people City, I've been trying to get some kind going to reach the levels which would
out around 3:00 A.M. Nevertheless, of consensus of where the hobby is interest Sears or J.C. Penney.
most people appeared for duty in their going from here. Lud Braun felt that the Ahl: Do you feel that applies with
respective booths at 9:00 A.M. on days of the hobbyist are over and the personal computers such as the Pet or
Saturday. And a good thing too. All day Radio Shack machines?
Saturday and Sunday, virtually every Osborne: Anything that a guy has to
exhibit was five-deep with people. The program himself is always going to
workshops and presentations were all have a relatively limited audience.
crowded to overflowing. Anyone who Now, when I say relatively limited, it
went and said they did not have the can still amount to two or three
experience of their life was either lying hundred thousand people across the
or asleep. country, but this is qenerally insignifi-
Heathkit showed their lines of corn- cant. There are going to be computers
puters in public for the first time. going into the home in a form that you
Commodore had a bunch of Pets. do not have to code. So, if whatever the
MITS/Pertec had a huge, showy booth. computer is going to do for you is
SWTPC had disk systems. OSI showed already programmed, that could run
their hard disc. TDL had Xitans, into the millions. You say, well, that is
Cromemco had Z-2s with built-in disks, not the same thing, but I argue that
Midwest Scientific had their new com- eventually that is the way all computers
puter, and on and on ... Even Teletype are going. Most mainframe machines
was there. will reach the point where you won't.
In the bedlam, I managed to talk to a have to program them; You will just
cross-section of industry notables: a have to define what it is you want them
publisher, two manufacturers, and two to do, thus ultimately reaching a'
retailers. Lightly edited transcripts of merger of the home-appliance-type
these conversations will be found on Adam Osborne computer, which you don't have to

NOV/DEe 1977 55
program, with the mainframes which
you also don't have to program.
Osborne: A xerographic-type
proach. Xerox is doing that right now
ap-
Robert Suding'
Ahl: Does that imply different kinds of but the price is high and the quality
languages, or will everything be almost relatively low which is the way all these
a black box from the user standpoint? things start. Then the quality becomes
Osborne: Eventually there will be no high and the price becomes low.
languages. You will be programming Ahl: Where do you see your role,
by example. You will create on. the Osborne and Associates, in the futu re?
screen an image of what it is you want it Osborne: I think there is going to be an
to do, and the extent to which there is ever growing need for a link between
any programming language will be the the technological side of society and
manner in which you define the John Q. Public who has got to live with
variables. In other words, there can be that technology, and that is the need
no ambiguities; you must be given we are going to continue to address.
some means of identifying and resolv- We are going to be the translators; we
ing ambiguities. That is the extent to are going to allow the public to under-
which there will be programming stand what they must understand in
languages. But that will probably be 15 order to live successfully in a
to 20 years away. technological society. For example,
Ahl: That sounds like a long while. right now, computers have run wild in
What is coming sooner? our society for the simple reason that
Osborne: In the meantime you are no legislators understand computers
going to see the more traditional well enough to draw up sensible laws,
programming languages around. I do and the public at large will accept
not think you will see new ones very anything they are told because they
much. You will see them come, but I don't know any better. I want to curb Robert Suding
don't think you will see them catch on, that. In the future we are going to carry
because what wi II eventually wi pe them on in that direction, to inform the public
all out will be this concept of an easily- in terms that they can understand as to Robert Suding isfounder and presi-
programmable computer. what is going on in the technologies dent of the Digital Group in Denver,
Ahl: Well, there are things like the high- which are affecting their daily lives. Colo. Digital Group Products have
level language that goes with, say, the Ahl: Do you see yourself staying mostly had an image of being "different"-
Software Technology Music System. It in the publishing business or non-standard bus, large circuit
is very easy to learn. It seems to me that branching into other means of com- cards, naked hardware (in the
there would be a lot of things like that, municating? beginning), etc. But cine other thing
small languages for special-purpose Osborne: I see myself basically staying stood out-high reliability, hence
applications. in the publishing business - because assuring the Digital Group a place in
Osborne: Yes, but that is almost right now that is the effective low-cost this rapidly expanding market.
beginning to be the programming medium. We have not yet reached the
example that I described. You write point where video cartridges or Ahl: In your own perspective, where do
music in a form on the screen, and that anything else is nearly as good as you see the home-computer field going
creates for you the programs which visual graphics. It is going to be some in the next couple of years?
generate the music. That is the begin- time before any new technology comes Suding: Well, I see them probably
ning of the approach. It is not really a along to replace the book. trying to define more definite
programming language any more than Ahl: Adam, thank you very much for appl ications. I see a trend away from
writing English is a language. Writing your thoughts and ideas. games, other than just for beginners
music notes is a language and what
they are doing is writing music notes
and then letting the machine recognize
and play them.
Ahl: What kind of significant hardware
do you see coming out in the next five
years or so?
Osborne: I think you are going to see
very inexpensive and very complex
electronics. You are going to see the
LCD display, the liquid crystal display
replacing the touch switches, replac-
ing the keyboards. At the end of the
five-year period we are going to see
great pressure put on floppy disks and
rigid disks by memory devices ... such
as CCD, bubble memories and other
non-volatile types. Perhaps a little
later, we are going to start seeing some
real impact on printer technology from
laser technology. It's expensive today,
but in five years it's going to start
becoming quite inexpensive. The laser
creates a static charge so that a dry ink
can be deposited on it. .
Ahl: Like xerography? The exhibits were mobbed from Saturday at 9 AM to Sunday at 5 PM.

56 CREATIVE COMPUTING
and looking to more serious
applications. One field that I am trying'
to get a number of people directed into
is using microprocessors for hand-
icapped people. So I am starting a new
organization which will be amateur-
computer fans designing and building
and implementing projects for han-
dicapped people. We have also set up
sessions for various conferences next
year showing how the amateur 'com-
puter fans have implemented things for
handicapped-people. .
Ahl: Wnat specific things are you
working on?
Suding: We are working on voice
synthesizers for blind people that will
allow a blind programmer to have a
self-sufficient job using a voice ter-
minal instead of a video terminal. We
are working on devices to allow people
with cerebral palsy to communicate
through specially programmed input
or output devices which could speak to
them or it could type for them. It is
something that is not of anyone RCA showed their new COSMAC VIP microcomputer.
manufacturer, but something that
almost anyone of the various hobbyist
microprocessors are far more than sounds. The job of the microprocessor Wisconsin, who developed the original
. capable of doing. is merely to link the 64 different sounds algorithms for speech synthesis in the
Ahl: I heard you mention before that into the desired language whether it be way he thought English was spoken.
the Digital Group is planning to offer a Russian or Spanish or English or Latin Ahl: What other kinds of things, other
speech synthesizer. How will it com- or any other language. than in the area of the handicapped, are
pare to some of the others that are Ahl: Is it likely to come out with that you working on, or do you see being in
available today? strong Swedish or Slavic accent so the future?
Suding: The main thing about our characteristic of the earlier Votrax Suding: Well, I am personally in-
speech synthesizer is that it uses very units? ' terested in energy management in
low programming overhead; it takes Suding: Yes, this will definitely have homes and I am personally designing a
roughly 1200 cycles for every 100 more of a Swedish accent than most system for my solar-energy house in
words spoken. The reason. for this is here. I heard some interesting rumors Colorado where we actually control the
because it has a relatively limited total on how that originated; I suspect they whole house under process control.
flexibility; it has no inflection and it are not true any more than any other Existing solar systems are typically
cannot sing. It does not do anything rumor in hobbyist circles. I understand implemented using just standard
but produce 64 different human that it was invented by a Swede in relays and hard logic and temperature-
differential thermostats. The micro-
processor introduces a rather new
element, and that's the possibility of
programming the thing in the language
of the homeowner, making it possible
to use a "home management" language
as opposed to Fortran or assembler
and so on. The person talks tothething
and interacts with it by the machine
asking how many watts he has in the
system that he wants to control, what
temperature he would like in the
various rooms. He will be able to
custom-program the house if he has
visitors, or if there is a party; he can set
it up to take into account various
differences at his convenience. It offers
some tremendous possibilities for
energy conservation because it greatly
enhances intelligence and record-
keeping. I will be able to realistically
evaluate different overall systems for
using the minimum amount of energy
in my house. I project that the cost of
this processor will be quite a bit higher
in my case, since I will have a lot more
2005AD of Philadelphia surrounded a three-screen video display running
LUNAR LANDER with all sorts of real cockpit controls and had
power, but a processor for a "normal"
continuous lines of kids waiting to get at those controls, home controller being built now will be

NOY/DEe 1977 57
about $300 or $400 quite easily. product. We find that our biggest
Ahl: What about all the sensors re- problem now is notbeing able to meet
quired? Won't they be a lot more costly the demand; I suppose I can rationalize
than. the processor? that it's a stabilizing influence in that it
Suding: Probably not, because there smooths out production.
are several new sensors recently an- Ahl: Well, there certainly are worse
nounced in the one-dollar range. You problems!
also have some older temperature
thermisters or transducers in the range
of about $3 to $4 surplus that are very
excellent. By using thermisters and
Daniel Meyers
analog multiplexors and something as
Daniel Meyers is founder and presi-
simple as additional voltmeter chips
dent of Southwest Technical
and some old surplus telephone cable,
Products Corporation in San An-
we could probably wire up a complete
tonio, Texas, SWTPC originally
house with the temperature input
made high-quality low-cost hi-fi
system and multiplexors in the range of '
amplifiers and other electronic kits.
about $100 for all the equipment; it all
In the fali of 1975 they introduced '
depends on how sophisticated you
the SWTPC 6800 computer kit in the
want to get. And then for control you
same tradition and it has seen a wild,
can have spot room control and use
explosive growth ever since.
little butterfly dampers that are run by a Daniel Meyers
geared-down motor which you can buy
surplus for about $3 or so and modify Ahl: I see you have some disk-based Meyers: I don't remember, 6 or .8. It's
standard ductwork to have all this systems here and also that your designed around the National chip.
programmable. You should be able to components have nice pretty covers on Ahl: Will you put some hooks in Basic to
justify the cost of the whole system in a them. That is a change for SWTPC! support these peripherals?
year or two in what you save in heating Meyers: Well, one of the features that Meyers: Oh, yes.
bills. people had been asking for on the old Ahl: I notice a lot of companies have
Ahl: It sounds like you have to be a box was a cover. So we were nice to come out with grand schemes and
pretty good mechanical, electrical and them this time. We went ahead and put pieces of hardware and then no way of
civil engineer to implement such a the cover on. We are doing what using them, even with their own
system today by yourself. everyone else is doinq, of course. We software.
Suding: It certainly helps but you are expanding our systems, we have Meyers: No, no, we definitely know
would be surprised at what can be disks now, we have terminals, we have about that need and we are going to
done. The biggest problem is finding a printer and lots of new little inner take care of it. We will try to make.the
people who know something about goodies to go in the box, we have an things useful to people. That was the
heating and solar and thermodynamics interrupt timer now, we have a philosophy behind, for instance, the
and who also know programming and calculator interface, we will have an A- little interrupt timer we recently in-
computers and systems design; you to-D, and also a PROM programming troduced. A lot of people have os-
can imagine these people are card that goes in the interface slot. cillators that you can hang in their box,
somewhat hard to find. That is why I Ahl: The A-to-D, how many channels but you have to slip a switch to get
say probably the best solution would will that have? different timings. OK," with ours you
be to develop a training language in
terms understandable to a heating
construction contractor.
Ahl: Do you find today that most of the
customers of the Digital Group are
relatively more knowledgeable hob-
byists than in the past, or are they
businessmen or what?
Suding: Much more knowledgeable
hobbyists. The typical hobbyist no
longer is one that will buy anthing. He
is very, very knowledgeable. He has
friends who have recommended
things; I believe most systems are sold
through a person who has a friend who
has a' system like it. We continually
found, especially in the earlier days, we
would send a system out to a given
geographic area and within a couple of
weeks we would get a couple more
orders from that same area. It was
obvious that the person building the
system, especially if he got it running
immediately, would call over a friend to •
watch it and he would be so impressed
he would send in an order. It's a major
investment and people just don't like to
make major investments without a fair
knowledge of the company and the Commodore showed five real, live PETs.

58 CREATIVE COMPUTING
selling.
Ahl:How do you see Heathkit?
Meyers: Heathkit has said they're not
going to sell theirs assembled; they sell
them by mail and through their stores,
of which there are a limited number. We
intend, by the end of the year, to be
offering assembled units. I don't think
that anybody can sell kits for business
applications; it's just not meeting the
need.
Ahl: You said business applications.
Do you see more of your machines
going into that kind of use?
Meyers: Well, I hope so. We're working
towards that. We feel right now that we
have the disks; we manufacture really
everything that you need for a
reasonable business disc system other
than a printer and we're looking for one
of those, but we haven't found the right
mechanism yet. But that's the only item
we can't supply currently, We are also
working with a guy in California who
John Mauchley leaves banquet attendees (including John Dilks) with has developed an excellent, very fast.
some words of history and wisdom. BASIC compiler. BASIC is lovely, but
BASIC interpreters are ridiculously
slow for business. Anyway, we have the
don't do that. Ours has a software creditable keyboard, it can be ex- . disks and we have the language at an
programmer at the divider module and panded quite easily, and it could adequate speed, we have a more-than-
you can get anything from a micro- definitely be a very competitive system. adequate computer, so I think we're
second on up to an hour, software- Ahl: Although by using a non-standard close.
controllable. bus, it may limit the number of Ahl: What about support in the
Ahl: Can you use it in high-level peripherals. . business market? Don't they need
software, such as BASIC? Meyers: However, if they have the more hand-holding and support? Do
Meyers: Yes, you have to write it in peripheral available, the purchaser will you expect your dealer network to be
using the instructions that go with that buy it. And that's just the poi nt: they able to provide that?
timer, in a user-defined machine apparently intend to get the Meyers: Some of them can, some can't.
language subroutine, but that's provid- peripherals, so we'll see on that one, I The fact that the language is BASIC is a
ed for in our BASIC. All of that is don't know, Commodore, I feel, will get big help in my opinion. There are a lot
described in BASIC and the interface, some people interested in computers, of application programs available now
of course, has complete instructions but they won't be much of a com- in BASIC. The first people, I think, that
on what you want to tell that thing. If petitive threat as far as what we're are really going to use these things in
you wanted to change your timing
intervals in the middle of the program,
you could. It's very useful!
What else are we doing? Well, of
course, we are trying to stay one step
ahead of the Radio Shack wolf.
Ahl: Do you see Radio Shack and
Commodore as being. threats, or
enlarging the industry and making
more of a market?
Meyers: Both. Radio Shack could be a
definite threat but Commodore, I don't r
really think so.
Ahl: Why is that? Why do you differen-
tiate the two?
Meyers: Well, if you look at them, the
Commodore apparently is very difficult
to add on to and to interface with
external devices; it costs more to
expand the memory than our things do,
or anyone else's for that matter. $300 or
something ridiculous like that, is what I
heard to add 4K. And the keyboard is
unusable for touchtyping. Anyone who
. bought it should be happy with it for at
least a week,' before they wanted
something better. Radio Shack, unfor-
tunately for companies like us, has a Dazzle doodle (electronic Etch-a-Sketch) was a continuous attraction at
pretty good product. It's got a Creative's booth.

NOV/DEe 1977 59
business are the ones that have been
here looking; the lawyers, the doctors,
the accountants, the ones that under-
stand electronics and are interested.
Later you get to the corner ice-house NO I SOFTWARE ANt) APPUCATIONS MAGAZINE
and those places where you have to
walk in and set it on the counter and
say, "This is a diskette and it goes here,
and you push B and the system starts;"
UP FOR
. EAl'H /fEW
YOURf@!!!!~~E~
and so forth. It's going to be slow. I
don't agree with any of these people
who say we're right on the verge of this
huge market, and it's gqing to grow into
this colossal industry in a year or
two ....
Ahl: Some people have said that this is
the year that will separate the hobbyist
market from the home and small-
business market, the hobbyist is essen-
tiallyfinished, and future expansion
will come from business systems.
Meyers: There's only one thing wrong
with that. My opinion is that nobody at
this show has got a system with the
possi ble exception of M ITS/Pertec that
could be used in a small business. Some of the Creative Computing barbeque set, I to r: Alan Salisbury,
Burchie Green, Linda Eckerstrom, Steve Gray, Sandy Ahl.
Period. I just don't believe I've seen
anything else here that would be
suitable, becausethev're iackinq either
the language, or reliability, or Ahl: The first question is: can the Byte more people coming into the market.
something. Anyone of them you want Shop of Arizona fjnd happiness in New They will take one home and use it, and
to name has got a problem somewhere Jersey? Seriously, why did you decide once they start learning about com-
that isqoinq tokeep them from being to exhibit here? puters, they will want one with more
successful in selling their system to Hald: We have Byte Shops Mail Order capability. So people will become more
businesses. And they don't really Which is nationwide, and we have a lot 'intrigued with adding on to their
understand that. I think I understand of customers on the East Coast. The systems or exchanging systems and
that because I've used a computer in Byte . Shops of Arizona run the Byte upgrading them. They will probably be
my business for 31;2 years now and I Shop Mail Order. We also handle Micro disappointed to find they cannot add
know what my problems are, I know Age which distributes to a lot of anything on the Pet like a disk drive and
what I've got to have, and I don't have a independent small stores and a lot of they will come in and look at a North
system that I could use in my plant yet. those customers are also here' on the Star and see how convenient it is to
Ahl:1 have to tell you this. We have five East Coast. . use, and they wi II start looki ng at S-1 00
computers at Creative Computing and Ahl: Where do you see things going types of systems. But I think if someone
I don't use a single one of them for·the from here in the next year or two? like Commodore is very successful,
business. . , Hald: It's hard to see our two years, but maybe other larger corporations will
M~yers: Right. We're just not quite what we will See next year is the say, "If they Can do it, we can," and that,
there yet. But we're on the verge of beginning of full-fledged systems in effect, will open up the distribution
being able to sell a system that would stores. We are going to be involved in channels. If that is very successful-
work very nicely in a smaller business. systems for various businesses and
I don't think anybody here today, with occupations, and' a continuation of the
that one possible exception, could say growth of the hobby stores, and the
that they have an adequate system for beginning of the mass retailing of low-
small business, so we haven't even cost systems. 'However, I think it's
started getting into that. It's going to be difficult for a lot of the stores to get
a long, rough road. If that's where involved in the mass market mainly
People intend to make their money, I because of the demand and the way the
think they're going to be in for a big companies like Cqmmodore deal with
shock when they try. the products. They are looking for the
very-large-volume buyers,
Ahl: Do you s~e Commodore and those
products being a threat to the indepen-

Alan Hald dent stores? ' .


Hald: No, I think what will probably
happen is they'll open up the market
Alan Hald is founder and president even wider than it is now. It is difficult
of Byte Shops of Arizona and Byte for us to appeal to a wide range of the
Shops Mail Order.' The Byte Shops public when' you are talking. about
franchise has had a rock]! history, systems that cost $1,000, particularly
but Alan's store and mail-order assembled systems. There is a tenden-
operation with its outsize, popular cy now for people to want assembled
catalog has clearly been a success systems rather than kits. Once that
right from the start. price barrier is broken,' there will be Alan Hald

60 CREATIV~ COMPUTING
let's say Commodore hooks up with a Ahl: What do you think of the show,
large distributor like Sears-then Ken? Have you gotten business, or
someone like Sharp will come in and references? How is it of value to a retail
wonder who else to distribute to, and I store?
would say the computer stores are a Greene: Well, we make contacts with
natu ral si nce they are the hobbyist people in our area who did not know we
place and they will be hungry. for existed, and vice-versa. I believe the
products. show is a really good place.
Ahl: Well, I have noticed that a number Ahl: What kind of people have you been
of the computer stores today are talking to here compared to the kind of
carrying those little Microchess sets, as people who come into the store?
well as the Fairchild games and other Greene: A lot more business-oriented
prepackaged products. I see a kind ota people here than come into the store.
cross-fertilization there. There you get many more hobbyists.
Hald: Very true, what is happening now Here, people are looking for packages;
with product lines becoming so broad they want an inventory package
is that a lot of stores are going to have system, or some other business
to start making decisions as to what system. Big systems too, like $10 to $12
type of store they are going to be. The thousand.
capital requirements to support a store Ahl: You mean here! At the show?
are limited. Some stores are moving Greene: Absolutely. Very, very few
towards systems and they don't want to people came by who were hobbyists.
be bothered with hobbyists; what they They may have come too, but they
are trying to sell are the big systems. didn't talk. They came though and they
On the other side, some will develop said, "Gee, that's nice" and then left.
into more consumer-oriented stores Ahl: That's interesting, because you
that handle shelf games, hobbyist type would think that a show like this which
of computers, and the kits. I think we was billed mostly as a hobbyist show, FUN FOR THE WHOLE FAMILY ...
Chess Challenger brings a new and exciting
will see two types of stores emerging, would not draw the business-type
dimension to this internationally famous
and probably eventually a third, that customers. game of the mind. Ideal for teaching young-
being a mass-consumer type of store. It Greene: Well, I think next year it won't sters the finer points of the game, or for
will be interesting to watch. be anywhere near a hobbyist show. I sharpenir.q your own skills. It is almost
Ahl: It sure will! impossible for you to beat the computer
think next year, we will see even the big
every time, rust as the computer cannot beat
business systems. I think we will see you every time (if you are reasonably adept
DEC in here with systems and all the at playing the game).
others. Just from what the people are
Ken Greene asking for. When we come down next
year, we'll have six booths reserved. We
LET THE GAME
board in the usual
BEGIN ...
manner,
Set up the
white for
yourself and black for the computer: The
may go with even more. Two of those rank and file of the board are designated by
Ken Greene left a steady, well-
booths will be my separate corporation numbers and letters. To move your men you
paying job in industry in early 1977
which will display its business, simply enter the file (number) and rank
to open a computer store in (letter) into the keyboard, and tap the enter
hardware, software packages; the rest
Morristown, New Jersey, the first of key to record your move with the
will be my store and other Com-
the ComputerLand franchises. He computer. You will be amazed at how the
puterLand stores. machine pauses to contemplate all the
works twice as many hours a day
Ahl: In your own opinion, where do you possible alternatives before informing you
now, but wouldn't give it up for the
think things are going in the future? of its counter move.
world.
Greene: Everything looks like its going
commercial-$500 Fortrans that re-
quire disks. Everybody wants a Fortran
but the hobbyist isn't going to buy that.
I think the beginning hobbyist is going
to get sucked in by the Commodore Pet
and the Radio Shack and the Heathkit.
And what does that do to a computer
store like mine? Well, those companies
are just going to educate the market'
ss Challenger is 100% sol id state for
place. The only ones I consider high-
years of trouble free use. Complete with full
line quality units are the Heathkits. And 90 day warranty.
Heath will always command the hob-
byist in the build-your-kit market. The
computer stores like myself and the Liberty House
Computer Marts and so on are going to Box 141 Bronx, N.Y. 10461
be more like a high-level stereo dealer.
Please ship~Cl,ess Challenger at $195 each
The guy who really wants to buy the big plus $ 2.50 ea. for Postage & Handling
component system is going to come to Enclosed is o check Omoney order lor total: $__

us, rather than go to the department (N.Y. residents add sales tax)
store or his local Radio Shack and buy Please Prmt
NAME _
their assembled units. So the future for Address Apt, No. __
us is mostly with small businesses and City State Zrp __

Ken Greene top-line hobbyist systems. _ Cnargetomy


o Master Charge, Interbank No
OBankAmericard
NOY/DEe 1977 61 Card No Expwanon Date
Stqnature _
Computer Hist

1, The use of algorithms is fundamental to developing


computer programs. When was the first known use of the
floating-point algorithm, which included conditional
branches and iterations?
a. Before 1940. b. 1940-1945. c. 1945-1948. d. After
1948.
2. Before. the digital computer age, astronomers ha~ to
calculate orbits of astronomical bodies by hand. What was
the typical precision of these orbital calculations?
a.2 places. b. 6 places. c. 9 places. d. 100 places.
3. The government funded development of a computing
machine, but cost overruns of more than ten times the
original estimates caused the administration to withdraw
in alarm. An oft-repeated story, but who was the developer
the first time it happened? Eckert in 1951 is still in use today and was the basis for
a. W. Burroughs. b. N. Dodge. c. C.Babbage. d. G. many NASA missions. Which of these bodies was in
Boole. Eckert's data?
4. The first wholly key-operated calculating machine a. Jupiter. b. Mercury. c. Earth. d. Bardot.
was the Comptometer, a practical adding and listing 9. The "Universal Computer" designed by Alan Turing
machine. Who invented it? can solve any mathematical problem.
a. Leo Evans. b. Norbert Dodge. c. Francis Galton. d. a. True. b. False.
Dorr Felt.
10. Weather predicting may sometimes be no more
5. The American Arithmometer Company patented the accurate today than when granny's aching bones
first practical recording adding machine in 1892. Today signalled a storm. The first person to use data processing
the firm is known by another name. What is it? in meteorological prognostication got his name attached
a. Burroughs Corp. b. Honeywell, Inc. c. Sperry Rand to a basic weatherman's parameter. Who was he?
Corp. d. NCR Corp. a. Zucker Kurtz. b. Lewis Richardson. c. Lenwood
6. Herman Hollerith organized the Tabulating Machine Walters. d. Charles Precipitation.
Corporation which 'grew Into IBM. His punched cards 11. ,Plankalkul was an attempt in 1940 to?
were first used by which government agency? a. Make tires from garbage. b. Develop a new memory
a. Federal Bureau of Investigation. b. Census device for computers. c. Write computer programs. 'd.
Bureau. c. Internal Revenue Service. d. Department of Invent a breakfast pastry.
Defense.
12. Vannevar Bush, the man who coinvented a differen-
7. Leonardo Torres y Quevedo's "telekino" was an early tial analyzer with Samuel Caldwell also?
attempt to program a machine to playa popular game. a. Discovered a cure for polio. b. Was the military R&D
What was the game? . Director during the Manhattan Project. c. Developed the
a. Chess. b. Checkers. c. Tennis.. d. Bowling. transistor. d. Sold botanical specimens door-to-door.
8. The appl ication of computers to astronomy vilas 13. Cybernetics, which is used in control theory, automa-
revolutionary. Ephemeris data calculated by Wallace tion, and computer programming was a word coined by?
a. B. Masterson. b. S. Curuthers. c. S. Morse. d. N.
Wiener.
14. It was 51 feet long and 8 feet high, tipped the scales at
a daintySf tons, and used 3,000,000 connections for its
500 miles of wire. Its name?
a. Mark I. b. King Kong. c. ENIAC. d. Jaws.
15. A government-financed machine was developed in
conjunction with the Morse School of Electrical Engineer-
ing at the University of Pennsylvania. The coinventers
were?

62 CREATIVE COMPUTING
ory Tri via. Quiz
Edward Pasahow

The earliest method of storing programs in a


computer used tanks containing?
a. Mercury. b. Water. c. Chicken soup. d. Liquid
hydrogen.
24. Dr. Grace Hopper was involved with which commer-
cial effort?
a. IBM 701. b. Business programs for the Burroughs
7B. c. UNIVAC I. d. HAL.
25. The first programming language was developed in
1952 for UNIVAC I and was used for numeric and scientific
applications. It was?
a. FORTRAN. b. Short Code. c. Macro Language. d.

26. The first commercial, large-scale binary computer


a. Martin & Lewis. b. Mauchly & Eckert. c. Wells & used the well known (by ancient, moss-covered
Fargo. d. Aiken & Wiener. programmers) Speed Code. The language made the
single-address, fixed-point computer appear to be a three-
16. In the genealogy of data processing machinery, the address, decimal, floating-point computer with ·index
younger brother (sister?) of BINAC was? registers. The computer was?
a. UNIVAC I: b. IBM 701. c. EDSAC. d. GENIAC. a. IBM 701. b. UNIVAC II. c. Burroughs 102. d. CDC
17. UNIVAC stands for? 33.
a. Universal Alternating Current. b. University of Alta 27. Arguments on optimal storage structures have been
California. c. Unit Versatile Automatic Computer. c. going on since the early 50s. Match the machine with its
Universal Automatic Computer storage technique.
18. The conclusion of the judge in the patent infringe- a. UNIVAC I. b. IBM 702. c. Blocked records on
ment suit between Sperry Rand and IBM in 1973 was that tape. d. Unblocked records on tape.
the inventor of the computer was? 28. The man who thought of "THINK" was?
a. John Atansaoff. b. John Eckert and John Mauchly. c. a. A.A. Michelson. b. W.S. Burroughs. c. T.J. Wat-
All of the above. d. None of the above. son d. S. Craig.
19. Which university gave up the fulfillment to many 29. Wassily W. Leontief was awarded the Nobel Prize for
future fund drives when it failed to obtain patents on early his computer-associated input-output analysis. His work
computer work done there? addressed?
a. Slippery Rock. b. MIT. c. Washington State. d. a. Computer communications with peripheral equip-
Iowa State. ment. b. Grocery store POS terminals. c.
20. With its 40 racks of equipment and 20,000 vacuum Economics. d. National defense.
tubes, ENIAC ran up daily electric bills of? 30. In the top 50 data-processing industrial companies,
one is a giant. IBM's share of last year's total DP revenue
a. 1¢ (during the war, electricity was free). b. $30. c.
$60. d. $100,000. pot was about?
a. 25%. b. 50%. c. 60% d. 75%
21. Jay W. Forrester, an electrical engineer and manage-
ment expert who applied computer simulation to the real
world, also?
a. Devised COBOL. b. Retired on the proceeds at age The answers are on page 65.
23. c. Founded the RAND Corporation. d. Invented the
random-access memory cores.
22. The stored-program machine, program labels and
symbolic addresses, macros, and microprogramming all
received early attention of Maurice V. Wilkes at which lab?
a. Oxford University. b. U.S. Army Abeerdeen Proving
Ground. c. Dr. Faustus. d. University of Cambridge.

NOV/DE:C 1977 63
Personal AT LAST
for that APL Computer A professional Video Terminal
that you can rely upon,
nut :
Corporation at an affordable
on your XMAS
fist
COW3IDERING A SCHOOL
COt1PUT:i:R SYSTEM' ???
APL in Exposition $1.00
Introductions to APL for:
Teachers .75 COHSIDlffiING A PERSONAL
Scientists & Engineers ,75 C0l1PUT8H SYST~~r1 ???
Reference Card .25
for that budding CALL US FIRST- • Not a Kit • Not a Cheapie
wE CAN HELP YOU But a famous
MATHEMATICIAN DATAPOINT CRT Terminal,
who needs somethingreadabfe BIDS AND PURCHASE ORDERS
without the help of teachers
fully refurbished
WmLCON8j Model 3000 serial ASCII data, RS-232-B
Algebra: an algorithmic 9.35
interface, 117 V: 60 Hz, 110,1200 Baud
treatment j<'OR FURTHER INFO CALL and higher speeds, 90 day guarantee.
Sol utions for the above 1.50 Fully Teletype compatible, $825.00,
Elementary Analysis 6.25
(215)-647-8463 damaged case, $750.00. Model 3360,
Calculus in a new key 8.00 buffered version, $1,100.00. Quantity
discounts available.
Add 50<1:for handling: NY PERSONAL COHPUT~-;RCORP,
residents add sales tax. TELECOM'
590~ N. King's Highway, !:lox 4117
APL PRESS HTS, 30 8; 352 Alexandria, Virginia 22303 .
Box 378 FRAZER MALL 703-683-4919 TE~EX 89-623
Pleasantville, NY 10570 (DESNEWCORALE)
~1ALYI£Rl'{, PA 19355

Quiz Answers
1. a. The Babylonians during Harnmurabi's dynasty 14. a. The Mark I, an electro-mechanical computer,
(1800-1600 B.C.) developed such algorithms for ex- was built for the U.S. Navy Board of Ordnance by Howard
cavations, linear equations, and geometric problems. Aiken and his combined IBM and Harvard team.
2. c. Astronomical calculations were carried out to nine 15. b. ENIAC was produced for the U.S. Army Ord-
digits of precision before 1900. nance Proving Ground for ballistic calculations.
3. c. Charles Babbage allowed the cost of his 16. a. ENIAC begat BINAC and BINAC begat UNIVAC
difference eng ine to escalate from £1,500 to £ 17 ,000 after I.
eight years of government support. 17. d.
4. d.
18. c.' The judge concluded that Eckert and Mauchly
5. a. The Burroughs Adding Machine Co. came into
derived some. of thei r ideas from Atanasoff, partly as a
being in 1905. result of Mauchly's visit to Iowa .State in 1941.
6. b. Useofpunchedcardscutthetimerequiredforthe 19. d. See 18.
1890 census to one-third that to the previous one.
20. c. 20,000 vacuum tubes use a lot of watts!
7. a. Quevedo's machine was an early effort in the
cybernetics field (even before cybernetics had a name). 21. d. Forrester also participated in constructing the
general-purpose Whirlwind I computer.
8. a. Ephemeris data on Jupiter, Uranus, Saturn, and
Pluto from 1652 to 2060 was generated. 22. d. Wilkes directed the mathematics laboratory at
Cambridge and was the first president of the British
9. b. Turing proved that a fixed, definite process on an Computer SOCiety.
automatic machine cannot solve every mathematical
problem. 23. a. Mercury tanks formed the ultrasonic memories
of the EDSAC machine,
10. b. The Richardson Number relates gradients of
temperature and wind velocity. 24, c. Dr, Hopper was working for the Eckert-Mauchly
Computer Corporation at the time,
11. c. Karl Zuse, developer of Plankalkul, also designed
and fabricated a family of computers in the 1940s, called 25. b.
Z1 through Z4. 26. a.
12. b. Bush served as R&D Director during much of 27. ad, be.
WWII.

.
28. c. Thomas Watson Sr. dreamed up the slogan while
13. d. Wiener was interested in all aspects of com- working as an NCR salesman.
. and control in living organisms and 29. c.
30. b.

~
All about recursion- and various other goodies
offered by APL and even some versions of BASIC.

Something is ~D@@DUO~ •••


Craig A. Finseth

BASIC, as a programming language, offers a wide


variety of features. There are, however, some features that
most BASIC systems do not offer. Recursion and "on the
fly" variable creation/deletion are two examples of these.
In other languages, such as APL, these concepts are built-
in as part of the language. Why is an APL system able to do
these things while most BASIC systems cannot?
The prime reason for the difference is that APL stores its
data in a way that is much more flexible, as well as making
provisions for recursion. There is a price paid, in that the
format for storing data can become rather complicated.
This article is intended to make the concepts behind APL's
data format visible. Don't expect to be presented with a This should look quite straightforward, with the
"cut and dried" method for doing what would not be useful exception of line 50 which is where the function calls itself.
in itself. Instead, ideas and some "tools of the trade" willbe For this example, we are assuming that our BASIC system
evolved. In this way, you will be shown the reasons for a is able to handle recursivetunctions.
method of operation, as well as some other methods that Suppose that we were to try to find 3!. Someplace in a
do not work as well and the reasons why they don't. program we might have a statement like the following:
It should be noted that this article is written about a 666 LET X=FNF(3)
specific application for these concepts. Because of this,
there will be assertions made that something "must" be What would the execution of FNF look like? One way of
done a certain way. As with many things in the computer showing what happens is to make a second copy of the
field, there are usually many other ways of doing function whenever it calls itself (this is also a possible
something and some of them are probably better. Don't method of implementing recursion). Figure 1 shows what
think that a certain way is the only way: think about why it would look like.
" you are doinq it that way and look for better methods.
In it, we inserted in each call to FNF a copy of the function.
Recursion
Along with this insertion,in each copy we replaced N by
Recursion is the first difference mentioned, so let's start-
with it. First, what is recursion? A function is recursive (N-1). (Remember that we want to do (n-1)!). Mentally
when it calls itself. (It can also call a second function which setting N to 3, we can follow down the chain until we reach
calls the first, etc.) We shall use the classic factorial the end. (This diagram is tailored to the specific case of
function example to illustrate the idea. (Note that this N=3. If N were to be ten, then there would be eleven copies
of the fu nction.) In the fou rth copy, we see that (( (3-1 )-1 )-
method is not necessarily the most efficient way of
1) is, indeed, zero and so we returna one. This one is
calculating tactorialsl)
multiplied oh ((3-1)-1) and the copy returns a one again.
Now, what are factorials? Afactorial is the product of the
This result is multiplied by (3-1) which yields a two and
integers from one to n. Thus, five factorial, written 5!,
that is finally multiplied by three, giving the final value of
means 5*4 *3*2*1. In the example we shall take advantage
six. Three factorial is, of course, six.
of a useful property of factorials in that n! is the same as
Even though we can get the right answer this way, .
n*(n-1)! (that is, 5! is the same as 5*4!). So, in our factorial
making. copies of functions is not a very good way to
function we can just have it call itself to figure out what (n-
operate. One reason is that you eat up both time and
1)! is and then multiply that result by n. If you think that this
storage because you have to keep making copies of the
could go on forever, you're right. Fortunately,
function. Another reason is not to obvious. When we made
mathematicians have conveniently defined zero factorial
as one (0!=1). It's an easy matter to check to see if the copies of the function, we just substituted (N-1) for N
whenever necessary. In our specific case, this worked fine,
argumentis a zero; if so, we just return a one. One method
but how do we handle the case of the statement LET N~5?
of writing this function in a BASIC that allows multi-line
This would translate to LET (N-1) =5, which looks fishy, to
function would be thus:
say the least. If we were smart, we would change this to
10 DEF FNF(N) LET N=5+1, but this doesn't work on such other cases as
20 IF N<>O THEN 50 LET(ABS(N))=5, not even to mention LET(A+B),:,5. How
30 LET FNF=1 do we translate that? Is N now equal to +5 or -5? It lobks as
40 GOTO 60 i~we need a new way of keeping track of what's happening,
50 LET FNF=N*FNF(N-1) since it is not only inefficient, but nearly impossible to
60 FN END implement "blindly" as has been done here.

66 CREATIVE COMPUTING
10 DEF FNF(N)
20 IF N <> 0 THEN 50
30 LET FNF=1
40 GOTO 60
50 LET FNF=N* 10 DEF FNF( (N-1) )
20 IF (N-1) <> 0 TH'EN 50
.30 LET FNF=1
40 GOTO 60
50 LET FNF=(N-1)* 10 DEF FNF( ( (N-1)-1) )
20 IF ((N-1)-1) <> 0 THEN 50.
30 LET FNF=1
40 GOTO 60
50 LET FNF=( (N-1)-1)* 10 DEF FNF( ( ( (N-1)-1)-1) )
20 IF ( ((N-1)-1)-1) <> 0 THEN 50
30 LET FNF=1
50 GOTO 60
50 LET FNF=( ( (N-1)-1)-1)*FNF(. .. )
60 FN END
60 FN END
60 FN END
60 FN END

Fig. 1. Using recursion to calculate factorials.

Stacks. track both of what is in current use and the values to be


Let's digress for a moment and talk about food. In many remembered. R is the array that notes which line we were
cafeterias, there are spring-loaded platters in the counter called from. It is being kept track of internally by BASIC
that support stacks of plates, with only the top one visible. itself and is being shown here to help you follow what is
Suppose that we write a three on one plate and put it on top going on. (Remember that this BASIC can handle
of the stack. We then take another plate, write a two on it, recursion.) Let's see what might be in Nand R immediately
and put it on the pile. We add a plate with a one on it to the after we call factorial for the first time:
growing heap, and then finish off with a plate labeled zero. N(1)=3 R(1)=666 (The function was called from line
Now, when we remove the plates, the zero plate comes off 666)
first, followed by the one, then the two, and finally the
number three plate. Note that the order in which we (Assume that any elements of the arrays Nand R that are
remove them is exactly reversed from that in which we not specifically mentioned contain garbage.) We will now
placed them. Note also that there is only one number continue until FNF calls itself for the first time (the second
visible at any time, even though all of the numbers that are call). Now, Nand R look like this:
beneath it (placed on earlier) are "remembered." In our
N(1 )=2 R(1 )=50
factorial function, we want N to take on successively the
N(2)=~ R(2)=666
values 3, 2, 1, and 0 and then take on the same values in
reverse order (1, 2, 3) as it returns from successive Until now, there has been no question about what the
function calls. Going back to the plates, note that we value of N is. Now, there are two entries in the array and
placed plates on the stack, then removed only what we put there must be an agreed-upon method for figuring out
on. There could have been plates underneath; if so, then which is the most current one. (Such an agreement is
they would not have been disturbed. This process is useful called a convention, and few, if any, conventions are
becauseour factorial function may not have been the only industry-wide.) Judging by what we did to get into this
one called. For example, a function to compute sines may situation, we shall adopt the convention, temporarily, that
have been called, which then proceeded to call this one. the currently active element is N(1). Thus, whenever. we'
This "stack of plates" concept, while it might not work, encou nter an N in the function, we use the val ue inN (1) to
seems to give hope for finding a way to do recursion. tell us the current value for N. When each number is placed
How do we write something in BASIC that can use this? on top of the stack (this corresponds to making another
There are two problems: interfacing to a stack of plates is copy of the function; this is called pushing down the
not' easy and it would be a very slow peripheral since we stack), all of the other values can be moved one slot further
have to wait until someone comes to eat in order to see down to "make room." As we shall see later, removing the
what is under the top plate. Besides, people might top value (returning from a function, called popping the
complain about numbers being written on their plates. stack) allows all of the buried values to be moved one step
Thus it seems reasonable to write a simulation of what is towards the top.
going on that will run using only BASIC and needing no We will continue executing the function and stop when
fancy peripherals. What better object to use than an array, N is zero and FNF has just been set to one (for the first
since we probably will wind up doing the same task over time).
and over on many different values. We will start off by
being completely arbitrary and do thefolfowinq: DIM N(1)=O R(1 )=50
N(1 00), R(100). What, you ask, are we going to put in array N(2)=1 R(2)=50
N? N will contain the numbers that would otherwise have N(3)=2 R(3)=50
been written on the plates (3,2,1, etc.). Its use is to keep N(4)=3 R(4)=666

NOV/DEe 1977 67
If you feel a bit lost now, go back and look at the expanded used. The common solution to this is to combine the
diagram (Fig. 1). We are currently on line :?Oof the most various stacks into one large stack, For our example, we
deeply nested copy of the function. Let us continue on could do something like the following:
until we are just about to return from the copy of FNF
P=2 S(1 )=666 the entry from R
where N=1 (line 50 of the next-most-deeply nested copy).
S(2)=3 the entry from N
N(1)=1 R(1)=50
To put the next function calion the stack, the 50 (from R)
N(2)=2 R(2)=50
would go in S(3) (the odd elemerit) and the 2 (from N)
N,(3)=3 R(3)=666
would go in S(4) (the even element), The main difference
Note how the stack has popped. It should be apparent by is that P would now go up by 2. The effect of all this is to
now what will occur when we let execution continue until have one array of size 200 instead of two arrays of size 100,
we return to line 666. Both of our problems have now been Now, 2x1 00=200 and you might ask, where is the savings
solved and the "stack of plates" works. If this array struc- coming from? The space savings doesn't start until the
ture is incorporated within the BASIC system, then there things to be stored get more complicated. This savings
no longer need be more than one copy of the function. We comes when two or more stacks being combined do not
also can handle the statement LET N=5* because we can always grow at the same rate. An example might serve to
modify N(1) all we want, since it will be thrown away upon ill ustrate.
returning. Function calls are the only things that we have been
There still is a very inefficient process going on here. So putti ng on the stack so far. There is another class of
far, each time we push something onto the stack, we related things that also is convenient to put on the stack
laboriously move each entry down one place. This is very when writing an interpreter. This class is mainly concern-
wasteful of time. This copying is done because we want ed with evaluating expressions, and .consists of open
the current-use position to be constant (the first element) parentheses, subscript calculations, and operands for
but we can let the remembered values move about. The operators that have been delayed in execution (that is, in
trouble is that there are usually more remembered values 4+5*6, the 4 must be held somewhere while the 5*6 is
than current qnes. So let's flip the stack end-over-end and evaluated). Function calls can-occur anytime and so can
fix the position of the remembered values, while allowing open parentheses, etc., but they occur independently and
the position of the current one to change. We have to keep the occurrence of one does not imply the occurrence of
track of this position, so we shall introduce the variable P the other (with the exception of the parentheses around
(for pointer, if you really must know) to do this. the function's arguments). Usually, there are many more
The previous four snapshots will be reprinted in the new open parentheses, etc., than function calls,
format Since we have two things which occur independently,
we can make good use of the "common extra space." If
N(1)=3 R(1)=666 becomes N(1)=3 R(1) =666 P=1 there is a sudden rash offunction calls, the common space
N(1)=2 R(1)=50 becomes N(1)=3 R(1 )=666 P=2 can be used to handle it. The same storage, at a different
N(2)=2 R(2)=50 time, can also be used for open parentheses, etc. Thus, we
N(2)=3 R(2)=666
don't have to dedicate it to anyone particular use, (The
N(1)=O R(1)=50 becomes N(1) =3 R(1 )=666 P=4
situation can arise where we want to call a lot of functions
N(2)=1 R(2)=50 N(2)=2 R(2)=50 and evaluate a complicated statement. Here, the only
N(3)=2 R(3)=50 N(3)=1 R(3)=50
solution is more storage.)
N(4)=3 R(4)=666 N(4)=O R(4)=50 The entries on the stack containing the function calls or,
N(1 )=1 R(1)=50 becomes N(1)=3 R(1)=666 P=3 open parentheses will probably be of different, if not
N(2)=2 R(2)=50 N(2)=2 R(~)=50 varying, lengths. An example of a varying-length entry is a
N(3)=3 R(3)=666 N(3)=1 R(3)=50 function call, since it can have anywhere from zero
arguments on up, Thus, it might prove useful to keep track
In the first example, nothing much is accomplished. of the lengths of the entries, In general, it somehow makes
However, in going from the first to the second, no moving sense to place this length at the start of the entry (start
around was needed but only the incrementing of P and the being defined as the first part of the entry that you see),
placement of new values. In going from the third to the Later on, there will be a reason given for keeping those-
fourth example, instead of having to move up three entries lengths around,
in each array, all that happened was that Pwas set to P-1 BelleveIt or not, you now know enough to implement
(decremented). (Elements N(4) and R(4) don't even have recursive functions in your BASIC system, either by
to be erased. They just become part of that garbage that modifying the system itself or more simply by simulating,
we mentioned earlier.) The only price for this increase in The main difficulty-in either case-is figuring out how to
efficiency is that you must 'use N(P) instead of N(1) handle R (the return addresses), since it is that which most
whenever you want to refer to the current value. Note that systems lack in a readily usable form, This is part of what
in neither case does it make a difference whether or not APL can do that most BASICs do not.
there was already something on the stack (P might just as
well have been, say, ten to start). . Variable Creation/Deletion
The size, 100, which was picked arbitrarily, actually Already we have seen how APL could do recursion, and
does have some significance. When you select the stack that is the fi rst of the differences mentioned, Variable
size, you must be sure to allocate enough room for the creation/deletion "on the fly" is the other difference
largest number of items to be remembered that you will mentioned. We will start by examining what exactly it is
ever come across. This can lead to having large amounts that we are creating and deleting, Since we are talking
of empty space tied up in stacks that is not likely to ever be about variables, it seems logical to start by keeping track
of their names. APL, unlike BASIC, offers multi-character
variable names, so it seems time to apply the length
'This method allows us to do what we mean in a recursive program. When concept and store the number of characters in the name
we have a function call itself (that is, FNF(N-1)) what we mean is that N in followed by the name itself. Another logical thing to do is
the new copy should have a value one less than that inthe calling copy, This
is accomplished by N(1)=N(2)-1 in the calling sequence, Now, modifying
to note down the value of the variable, Since APL allows
the current N will not affect the old values, A variable that has this property multi-dimensional arrays, the number of dimensions
is said to be local to the function, (whether the name represents a simple variable, an array,

68 CREATIVE COMPUTING
a matrix, etc.) should be stored, followed by the length of perhaps only temporarily. And then there is always
each dimension (another application of the length modifying the new definition .... Last, this makes it nearly
concept) followed by the value(s) itself (themselves). impossible to enforce order (alphabetic, for instance,) on
Alternatively, there could be "flag values" telling when, for the table.
example, the dimension list ends, eliminating the need for The first problem can be solved by breaking definitions
a number of dimensions entry. There are additional ways into smaller chuncks. Whenever a chunk has to be
of doing this. Note that functions can be stored in a similar modified, only that part need generate a gap. This tends to
way, so the later discussions can be applied to either. keep the gap-size small, and, by not duplicating data
Since what we have here amounts to a variable definition unnecessarily, uses up storage at a slower rate.
(as in defi nition of a variable). that makes as good a term as The second problem is somewhat more complicated. It
any to use when referring to the whole thing. The variable really gets emphasis when you are searching the table to
definition itself, of course, can have a length associated find? name. To do this, you must find a name, then go
with it. element by element until you find a marker, then element
To keep track of all the variable definitions, we will store by element until you find the next name. Needless to say,
them in a table, simply listing them one after another. this is very slow. For an improvement, remember those
'(Needless to say, this method will be replaced with a more lengths that we insist upon hanging on to without giving a
efficient one!) Now, the table looks like this: reason? Instead of having to search through the whole
table item-by-item, you can use these lengths to skip over
variable definition #1 the variable definitionsentirely. Now, all that you have to
variable definition #2 do is search through marker values to find the start of the
variable definition #3 next name entry. And, if you were to hang on not only to
• the current lengths but also the original lengths (before
• shrinking), you could skip over the whole area and go
• directly from name to name. You now have a linked list on
To add a new variable definition to the list, you simply tack your hands (don't worry-it isn't contagious). Simply
it on the end. To delete one, you could just replace it with stated, a linked list is one in which you have a data block,
zeros or some other marker. (This same marker could fill in with a pointer to the next data block, etc. (See Figure 2.)
the rest of the "scratch area" that this table is stored in.) This, however, is still not the best of all possible worlds.
There are three ways of modifying the definition that are of When definitions get deleted entirely, it can become very
import here: making the new definition (1) shorter, (2) the difficult to keep the table correct. This can be taken care
same length, or (3) longer than the old one. If you make the of, in. effect, by forgetting that the deleted variable was
new definition the same length, there is no problem. If you there at all. This can be done by causing the pointer which
make it shorter, you can fill in the extra space with the pointed to the variable-to-be-deleted-now to point to the
marker value. If it is now longer, you can fill in the entire next entry. Inserting an entry is just the opposite case.
old definition with the marker and tack a new definition on (See Figure 3.) Moving an entry is easy; you just cause the
the end. pointer to the entry to be moved now to point to the new
This method is undesirable for three reasons. First, by location. (See Figure 4.)
always moving large chunks of data around, gaps tend to This leads to the interesting prospect of the next name
develop very quickly. Second, while this meth.od allows not having to be anywhere in particular. In other words,
recursion, it requires much too much shuffling of data to when you have to move a definition because it no longer
be efficient. One major inefficiency is that when figuring fits in its present slot, all that has to change is the pointer in
out which N to use, you might use the first one that you the preceding entry and, as far as the list is concerned,
come across. This means that, when calling a function, if nothing has happened. This nicely solves the third
there is already an N in the table, you must insert a new problem in that it is now trivial to keep the list in
definition such that the new definition is found first when alphabetical order (or any other order, for that matter).
searching the table. This entails pushing the old definition Also, recursion can be supported much more easily
to the end of the table and replacing it with the new one- because the new definition can be added to the front of the

POINTER

DATA

a\~·· POINTER ~
BLOCK

DATA DATA
BLOCK BLOCK

DATA
BLOCK

Fig. 2. Linked list.

NOV/DEe 1977 69
#1 #2 #3

POINTER POINTER POINTER

DATA DATA DATA

BLOCK BLOCK BLOCK

BEFORE

#1 NEW #2

POINTER POINTER

DATA DATA DATA

BLOCK BLOCK BLOCK

Fig. 3. Deleting an entry AFTER

til ti2 ti3

POINTER POINTER POINTER

DATA DATA DATA


BLOCK BLOCK BLOCK

BEFORE
#1 #3

POINTER POINTER

DATA DATA
BLOCK BLOCK

#2
Fig. 4. Moving an entry. AFTER POINTER
(UNCHANGED)

DATA
BLOCK

list, even though it might be located at the physical end. the latter case, you have overhead in that you have to store
There is still one minor flaw in this idea, and it is tied up in N. You also have an option in what you can do and you can
what the garbage-collect (described later) does. The even ask what N is. The same concept applies on a much
salient point is that the ·garbage-collect moves stuff larger scale when you start keeping as many extras as we
around, and the next entry is relative to where you are now. are. There is a different trade-off: that between low
Thus, there are two ways for the pointers to get messed up. overhead and low execution time. The extra information
The most obvious change is to use absolute (relative to requires space, but it significantly cuts down on the time
some fixed point) locations instead of relative (to where needed to execute a program.
you are now) locations. Now, the pointers only have one
way to get messed up. (Besides, by using absolute Garbage-Coiled
locations, each entry becomes independent of where it is Finally, there is yet another toll exacted when programs
located and can be moved around more easily.) become dynamic (constantly changing). Remember all
Although at first glance there doesn't seem to be any those gaps that are. created whenever you update a
way of stopping the lists from going on forever, there's a definition (or almost anything, for that matter)? These
convention regarding this which is to use an illegal or accumulate until a sizeable fraction of storage can be
unused address as the final pointer (often zero). By eaten up by them. They must then be packed down from
checking for this address, you can find out when to stop. time to time to keep the program from running out of space
It should begin to be apparent that when storing infor- while there is still unused storage sitting around. It is this
mation .Iike pointers, lengths, and other such things, we packing down that causes all of the lists to be moved
are using storage for non-data items. This is part of the around. The program that does this is called a garbage-
trade-off between low overhead (amount of space used for collect and must-unfortunately-be individually written
"housekeeping" purposes) and flexibility in the system: for each appl ication. Garbage-collects are another use for
This means that if you only want the data, then you are all of those lengths, since it is convenient for the garbage-
very limited in what your options are, while if you want to collect to know how long a chunk of data is in order to
keep a "description" of the data, you have more options move it. Although this requires extra space to store, it
and even-to some extent-the ability to ask questions. In saves large amounts of time and even cuts down on the
a simple example. you can write a program to average ten size of the garbage-collect routine. It should be noted that
numbers, or you can write one to average N numbers. In there are· ways of avoiding a garbage-collect. These

70 CREATIVE COMPUTfNG
involve having fixed-length chunks of data (to eliminate This method is reasonably straightforward, but it does
small gaps) and keeping a linked list of unused space. This have one drawback. If you are calling a function that has
method is often used in managing disk space, since five local variables and this function calls itself ten times,
garbage-collects on disc are very time-consuming. then there are fifty entries in the table followed by what-
Name Table ever was there before. There will probably be two types of
Turning back to our table of variable definitions, we find variables that you are looking for: local variables (the most
that it now could contain only the names of the variables. recent five of the fifty) or anything else (what is after the
In the entry for each name might be a pointer telling us fifty). It seems rather inefficient to have to look at forty-five
where the rest of the definition is. The rest of the definition names without a hope that what you want will be there.
may even be sitting right next to the name, but that doesn't Now, the situation on the stack will change whenever we
matter. The reason for this is that when we are searchlnq call another function or return from one. This happens a
the table, we are only interested in the names until we find lot less often, on the average, than trying to find the
the correct one. Only then do we look at the rest of the definition of a variable. We can, therefore, afford to spend
definition. Hence, from now on, we will call it the name a little extra time doing some polishing up of the name
table. table at that time. The polishing up, of course, consists of
The name table, along with the stack containing effectively removing the entries of those forty-five "extra"
information on function calls, etc., can tell us everything definitions.
that is going on in and around the program. This, then, is When we put a function call on the stack, we also could
called the environment and, even though the details or put a listing of the local variables for that function with the
even the major parts can change from program to call. This is useful in telling us which variables to delete
program, the term environment still refers to the "general from the name table when we return. Suppose, for the
picture" of what is going on. moment, that we would also store 'a pointer to the
Our name table is a linked list which has the names in definition for the variable that it replaces (or, say, a zero if
some order. The only ordering that we will assume is that there wasn't one). This eliminates the need for the old
when a function is called, its parameters' (arguments') entry in the table and it can be deleted. We now have only
definitions will be placed in the front of the list so that we the new entry in the table and, in the function call, a pointer
will find them before their earlier definitions (either in the to the old entry. (See Figure 5. The function F has local
main program, another function, or another recursion variables A and C. There is only one entry for A in the name
level), if there were any. When a function finishes table, yet all the information can be recovered.) Thus,
(returns), the most recently added definitions (that is, there is no information lost and upon returning, it is a
those that it added- isn't it nice how stacks work?) are simple task to restore the table by replacing the pointers to
removed. Thus, parameter definitions only exist after a the new entries with those of the old and deleting all names
function has been called and before it finishes. Thus they that have our marker (zero) in their function call entry.
are local to the function and are called local variables. (In This concludes the introduction to some ideas, con-

STACK NAME TABLE STACK

CALL F

A B A C
C

DD DD VALUE
ASSIGNEC
IN F
VALUE
ASSIGNED
IN F

BEFORE THE CALL AFTER THE CALL

Fig, 5. Stack and the name table,

almost all languages that support recursion, there is a way cepts, and "tools of the trade." Of course, many details
to define a variable as local without its having been passed were omitted, but then these vary greatly depending upon
as a parameter.) The way then to determine which defini- the exact nature of what your program is to do. You should
tion of a variable to use (assuming that there is more than now be able to see how APL-or any languages that are
one definition) is to start at the beginning and use the first dynamic and/or allow recursion-put these techniques
occurrence of the name. together to come up with a working system. _

NOV/DEC ,1977 71
PLOTTER
ART
By Nick Mykris in consultation with
David Ballew, Dept. of MathematiCs,
South Dakota School of Mines and
Technology.

NOV/DEC 1977

73
CAI: Further Considerations
for Presenting
Multiple-Problem Types
,~,..... .. .. r..,. V'
"".~,

.~,
.

74 CREATIVE COMPUTING
Part three in this five-part series on B)RUt·l24 t1ATHART
BASIC-E' INTERPRETER. \o'ER 1(1. :>
Com puter-Assisted Instruction
looks at incorporating a sliding HI' l'lHAT' 5 ,'OUR NAt1E? TRAC,'
I GIJESS l'lE'liE NEVER t1ET BEFOF:E TF:AC'f'
l,tHAT GRADE ARE 'fUU IfF 2
grade level into programs that OKA,', LET'S PLFW lollTH SOME NUMBERS

generate several types of problems. 1


+ 4

? 5

THAT'S RIGHT, TRAC,'

LET" 5 TR,' ANOTHER

21

l
+ 15

THAT'S RIGHT, TRACY

LET'S TRY ANOTHER

41
+ 15

? 50
,WONG, TR,' AGAI N? 55

,WONG, TRY AGAI N? 56

THfH'S RIGHT, TRAC,'

LEr' 5 TR,' ANOTHER.

24
+ 14

? :,8
THAT' 5 RIGHT, TRAC,'

LET'S TRY ANOTHER

54
+ 12

? 64

I·WONG, TR,' AGAI N? 54

WRONG, TRY AGAI N? 62

,'OU DON'T SEEt1 TO UNDERSTAND THIS ONE TF:ACY


THE CORRECT ANSWER IS 66

LET'S TRY ANOTHER

Laura L. Mclaughlin 41 + 7 =

E>(At1PLE 1

1.0 ·OEF FNIN$(>O=LEFT$(STR$(X+. 5), INT(LOGCO/2. :02585+1»


DIt1 G( 6)
NAt1ES$="NAt1E. RND"
NAt1ES=1
FILE NAt'lES$(128)
IF EN[) IINAt1ES THEN 300 -»
INPUT "HI' 1·1HAT'·5 ,'OUR NAt1E", NAt'lE$
F:AN[)OMI ZE
100 COUtH=COUNT+l
READ #NAMES; NRMEF$, G(1), 13(2), 0(3), G(4). G(S), G(6)
IF NAt1E$=NAt1EH THEN 500
GOTO 100
300 PRINT "I GUESS WE' \o'E NEIo'ER rsr BEFORE ";tlRt'lE$
INPUT "1·tHAT GRRDE ARE ,'OU IW; G(D
G(1)=G(1)+. =~
FOR 1=1 TO 5
13(1+1) = 13(1)
NEXT I
5(10 PRWT
PRINT "OKRY, LET' 5 PLRY 1'1ITH SOI'lE tlUt18ERS"

?l'i00 PRWT
PRINT "THAT'S Et-lOUGH FOR NOH ",NAt1E$
PRINT "COME BACI( RGAIN SOON"
PRHlT *tlAt1ES, COUNT, NAt'lE$, 13(1), 13(2), 13(3), 13(4), G(5), 13(6)
9999 END
A>
Photo by Lisa Sheble

NOV/DEe 1977 75
The previous article in this series discussed a method of previously set for both this routine and the two that follow.
calculating a sliding grade level based on the range of the Routines for printing a problem vertically or horizontally
numbers presented in a particular problem. But how can are shown at 5000 and 5500 respectively, with the type of
we incorporate this concept into a program that handles problem determined by the value of OP$. The last routine,
multiple-problem types and what other factors should we at 6000, will get the student's answer and process it. Three
consider? incorrect responses are accepted prior to showing the
Let's say we want a program that will generate six types right answer. Note that this could be easily changed to
of problems for grades 1-4: addition, subtraction, and vary depending on grade level, if we later determined that
multiplication in both the vertical and horizontal formats. allowing only two mistakes would be more appropriate for
We want this program to keep track of a student's grade the younger student.We then decide if the problem should
level for each type of problem separately. We can then give effect his grade level and do the calculations if necessary.
him practice problems, in each area, that fall within a half- We are now ready to write that part of the program which
grade on either side of his current level for that particular will actually generate the problems. The code in Example
type of problem. The program should constantly adjust 3 will generate addition (1000), subtraction (2000), and
the student's qrade levels based on the accuracy of his multiplication (3000) problems. Let's look at it a little more
responses. closely and see what it really does:
We would.also like the program to be both flexible and (1) The values for G1 (student's grade level), OP$ (type
concise. Flexibility is important so that we can later of problem), FACTOR and POWER (parameters for
expand and/or modify the types of problems to be calculating variables) are set based on the type of
presented or the grade levels to be covered. The need for problem.
conciseness is evident to all (except maybe those with (2) Five problems of each type are presented in
their own personal IBM 370). To accomplish this, we are succession (with the exception that no multiplications are
going to make extensive use of the BASIC FOR/NEXT and generated if his grade level for horizontal multiplication is
GOSUB verbs. below 2.5). By presenting the same math concept multiple
But before we can generate any problems, we must have times in succession, while at the same time limiting the
a means of obtaining the student's grade levels. Since we number, we will give him the opportunity to learn from his
are now talking about six different levels based on mistakes but decrease the possibility of boredom or
problem type and format, it is no longer practical to expect
the student to enter his grade level data. Therefore, we are
going to build a file with one record for each student. It will
contain his name and a level for each type of problem.
Example 1 shows the beginning and end of our program. D(At1PLE 2

(1) At 100, we search through the file for the student's 4000 G2=G1-.5+RND
name. When a match is found we can proceed with the t1RX= INT (FACTOR *GrpOl-IER)
A=INT(R!'I[)*t1AX)
session, since we have his current levels. 8= nIT (RND*11R,D
(2) If there is no record for a student, we must ask him IF NUt1=2 THE!'I C=0: RETURN
C=INHF:ND*rlAn
what grade he is in. This will provide us with initial values RETUF:N
(see Line 300).
(3) Since his true level is probably somewhere between. 5000 PRUIT
what he answers and the next higher grade, we will set our PRUIT" ";
IF A=0 THEN PRINT R ELSE PRHlT FIIlIIHA)
initial values up by three-tenths. Remember, the program IF WJt1=2THEN 5100
will adjust these numbers in either direction based on his PRUIT" ";
IF C=0 THEN PRUIT C ELSE PRINT HHNt(D
ability, so the initial grade levels are not absolute. 5100 PRINT" "; OF'$; u • -.
IF 8=0 THEN PRINT 8 EL~.E PRINT FNUI$(B)
(4) The end of the program (at 7000) either updates or F'PIIH "------,,
creates his record with the levels that have been adjusted RETUF:I'I
during this session.
Just a word about the function (FNIN$) defined at the 5500 PUNT
IF A=i} THEN PRINT A; ELSE PRINT HIUlt(A);
beginning of the program. As you may know, each of the F'RIIH " "; OPt;" ";
different BASICs available has its own "quirks" (or, more IF NUM = 2 THEN 5600
IF C=0 THEN PRINT C; ELSE PRINT FNHlt(C);
accurately, problems). This program was developed using PRINT" "; OP$;" ";
BASIC-E Version K1.4. One of its "quirks" is that on 5600 IF 8=0 THE 1·1 PRINT 8 ELSE PRINT FNHIF.E:);
PRHIT " = "
occasion it will incorrectly convert a numeric integer into a F:ETURN
string variable as a non-integer number (for example, 93
becomes "93.00001"). The function FNIN$ is used to 60013 INPUT ANSNER
correct this problem. When writing a CAI program, it is IF AIEI·IER = F: THEN 6200
1,1=1,1+1
essential that all such inaccuracies be identified and IF 1·1>2 THEN 6100
PUI-IT
corrected or it will result in confusing, rather than helping, F'F:II-IT "I,IF:ONG, TR,' AGAIN";
the student. Check your BASIC, nothing is perfect. GOTO 6000
61013 PRINT
Now, what kinds of common subroutines can we use? PF:UIT "VOU DON" T SEEt1 TO Ufl[)ERSTRND THIS ONE"; NAt'lEt
Well, Example 2 shows four of the more obvious ones. The H: I NT "THE COH:ECT AI·IS,IEF: IS -.
IF R=0 THEN F'F:INT R ELSE PRINT FIHNF.R)
routine at 4000 will set up to three random numbers based IF 02)131 THEfI GOTO 6:;.00 ELSE GOTO 62513
on the value of G1 (the student's grade level). The formula 6200 F'RHIT
PRINT "THAT'S RIGHT, "; f1At1E$
for determining the maximum value of anyone of the IF 132(131 THEN 6300
numbers is the same as used in the previous article for 625fj t'lA>~=5GlR(~lA>~/FACTOR)
IF F'Ol-IER = 4 THEN t1m(=SI;,RO'lA,D
addition problems (Addend = 1.73 x Grade Level ..... 4.)* G1=. 9*G1+. 1*MA>~
However, we have provided the formula with greater 6300 '1=0
IF OP$="-" AND 13(5)(2.5 AfID 1=10 THEN RETUF:N
flexibility by making the values for both FACTOR and IF OP$=";(" AND 1=10 THEN RETURN .
POWER variable. This way they may be changed based on PRINT
PRIm "LET" 5 TR,' RNOTHER. .
problem type. Note that the value of NUM must have been RETUFN

A)
•Some terminals use this "upside-down saucer" to indicate exponentia-
tion, rather than an up-arrow.

76 CREATIVE COMPUTING
choice of coding technique should be based upon the
E>~AI1PLE : extent of modification envisioned to achieve the final
1000 131 = G(l) iteration.
OPt = "+" The addition and subtraction loops also call two
FACTOR = 1. n:
pm'1ER = 4
routines we have not yet defined. Take a look at Example4.
FOP I = 1 TO 10
IF 01<4 THEil IIUI'1=2 ELSE NUI'1=:' The routine at 4500 is called from addition and subtraction
GOSU8 4000
IF 132<2. 5 At·ID 1<:6 THEfI GOSU8 4500 only for problems of that below a particular level. It will
IF 132(3 AND 1>5 THEN GOSUB 45[10
F.:=A+8+C
insure that addition problems will not require a "carry" if
IF 1(6 THEN GOSUE: 5000 ELSE GOSUB 5500 both numbers are greater than 9, and that subtractions will
GOSU8 6000 not need a "borrow." This kind of special editing
IF 1=5 THEN G(l)=Gl 131=13(2)
t·IEXT I (independent of the ranqe of the variables) must be
G(2)=G1 considered for each type of math concept presented.
(JOSUE: 6500
Otherwise, we run the risk of completely frustrating the
2000 Gl=G(::::~)
student by expecting him to attempt something which
OP$="-" f1U11=2 could well be far beyond his capabilities. Similarly, since
FOR 1=1 TO 10
G05U8 4[J[J[) we do not want to give multiplication too soon, the routine
IF W8 THEN >~=A A=8. B<~ at 6500 is used to set the student's grade level to a value
IF G2(J AND 1(6 THEN GOSUB 4500
IF G2·::::::~.
5 AND L>5 THEN (JOSUE: 4500 that will allow the generation of multiplication problems
R=A-8 only after he has reached a particular level (grade 3) in one
IF 1(6 THEN GOSUE: 5000 ELSE G051J8 5500
GOSUB 6000 of the other types.
IF 1=5 THEN G(3:);::;:G1 Gt=Cl(4) Now that we have a basis from which to work, it will be
NEn I
G(4)=Gl relatively easy to expand upon. Subrouti nes tan be written
GOSUE: 6500 for generating different formats (mixed operations,
fractions) or more operations (division, square roots).
Gl=G(S) Also, additional checks can be included to give a student a
IF Gl(2. 5 THEN 7000
OP$=":'~" larger variety of problems and eliminate those which he
FACTOF,=. 68 pm·IER=2
FOR 1=1 TO 10
has already mastered.
GOSUB 40(:fj In' the next article, we will discuss some of the
F.:=A'B
IF 1<:6 THEN GOSUB 50,)0 ELSE GOSU8 5500
considerations that should be made concerning the
GOSU8 6000 . interaction between the student and the computer.
IF 1;::;5THEN G(S);;:;Gl Gl=G(6)
tlEin I Careful thought must be given to such things as edit
G(6)=Gl requi remerits and presentation formats so that the student
GOTO 7000
does not need to learn a whole new set of rules.
A> Remember, for CAI to be a useful tool, it must be
something that is easy and comfortable to use. _

frustration.
(3) The value of NUM (number of variables) is set for Tarbell
addition based on the grade level of the problem (G2),
while for subtraction and multiplication it is set to 2. Floppy Disc Interface
(4) When done with a particular problem type, the
student's grade level for that type is updated. Designed for Hobbyists and
We could have put the generation of all three problem
types into one large FOR-NEXT loop. This approach
Systems Developers
would have saved us close to 50%ofthe code necessary to
produce the problems, but would have made
modifications and/or additions much more difficult (the
old ease of maintenance/size & efficiency trade-off). The

E>':Ai'1F'LE 4

4500 IF AGO OR 8(10 THEN RETURN


TSTA$=RlGHTHFNlII$(A),1::-
TSTB$=F.:IGHH(FNHlH8/. 1::-
TSTA=VAUTSTA$ ::-
TSTE:=VAUTSTE:$ .:0
• Plugs directly into your IMSAI or ALTAIR' and handles up
IF OF'$="-" THE 1·14600
IF T5TA + T5T8·: 10 THEN PETUHI to 4 standard single drives in daisy-chain.
IF T5TA '> 4 THEtl R=R-5
IF T~.T8 :> e, THEfI 8=8-5
• Operates at standard 250K bits per second on normal- disc
F.:ETUFJI format capacity of 243K bytes.
4600 IF T5TA - E.T8 >= [1 THEt·1 PETUPtl
IF T5TA <: 5 THEtl A=A+5
• Works with modified CP/M Operating System and BASIC-E
IF T~.TB 5 THEt·1 B=B-:, Compiler.
F:ETUF.:tl
• Hardware includes 4. extra IC slots, built-in phantom boot-
strap and on-board crystal clock. Uses WD 1771 LSI Chip.
6500 IF 13(5' >= ::: THEI·I F.:E1'-'F.:t·1
IF I31C, THEN RETURt·1 • 6-month warranty and extensive documentation.
• PRICE: Kit $190 Assembled $265
RETUf;:t·J • ALTAIR is a trademark/tradename of MlTS, INC.

R>
2062.0 SOUthLeopwood Avenue, Suite P
Carson, Calffomla 90746
(~13) 5.38-4251

NOY/DEe 1977
Part III in this series examines READ ...DATA,
RESTORE, If\iT, ON ... GOTO andthe fantastic RND.

THE 8-HOUR WONDER


All About BASIC Programming
.in One· Long bay ...
(or t=~ghtShort Nig~ts)

Thomas A. Dwyer

2.5 HOUR: SHELF LABELS AND


BATTING AVERAGES

The word is out. You're the first one


on your block with a computer, and the
calls are starting to rollin. First the
butcher, then the baker, and now-the
local sports writer. Seems he heeds to
crank out a list of batting averages fast,
his calculator is broken, and he never
did understand long division. Mean-
while, the corner grocer wonders if you
could maybe print him unit-price tags
of the kind used in supermarkets. Is
there a simple way to handle both
requests?

LIST

10 PRINT -PLAYER ,-,-AT 8AT- ,-HITS-,-8AT.AVG.-


READ ... DATA 20 READ N, 8, H
30 PRINT N, S, H, H/8
40 GO TO 20
50 DATA 1, 50, 19 WHEN ROUNPEP TO THREE ~
One way to kill several birds with one 60 DATA 2, 43, 10 ; PECIMAL PLACES) THIS RATIO
stone in the world of computing is to 70 DATA 3, 51, 13
DATA 4, 49, 17 GIVES WHAT BASEBALL FANS
realize that different programs may 60
90 END ( CALL A 'BATTING AVERAGE~
have similar structures, differing main-
ly in the data they use. For this reason,
it would be nice if.the data could be
kept more or less separate from the RUN
program itself. This also makes it easier PLAYER /I AT 8AT HITS 8AT.AVG.
to expand or revise data later on. 1 50 19 .38
2 43 10 .232558
Here's how this idea works in BASIC
3 51 13 .254902
for the batting average problem: 4 49 17 .346939
ruT OF DATA at 1 t ne 20

@) Copyright 1977 by Thomas A. Dwyer, University


of Pittsburgh, Pittsburgh, PA 15260.

78 CREATIVE COMPUTING
When this proqrarn r~aches line 20, it is
told to READ enough data to load the Improving These Programs
variables N, S, andH. So it looks for a One of the nice things about writing
DATA statement (which it finds at line programs is that once the basic idea is
50), and "uses up'tthe first three pieces up and running, it's easy to. add
of data it finds. You can think of what improvements. For example, both of
happens as follows: the above programs· suggest several
20 READ N, S: H kinds of additions. We'll describe five of

50 DATA 0:@,®
You should also picture this data as
these, and illustrate the last three.
(a) Limit the number of decimals to
what people expect: .367 instead of
.366666 for a batting average, 13.5¢
having been "used up": instead of 13.49~99 for a unit price.
20 DATA/, foO;)9 There are two ways to do this. One uses
The program . next prints a line of the INT function which will be explain-
output (line 30), and then does a "GO ed in Section 2.7 [in the Jan/Feb 1978
TO 20;'. This means it again reads data, issue]. The other uses PRINT USING,
but starting. with' the first "fresh" explained in Chapter 3. *
(unused) piece of data it can find. In (b) It would be nice to have words or
our example, this is found at line 60, so names printed instead of product or
the second time around our loop we player numbers. The best way. to do
have: this is to use string variables, explained
20 READ N, . e, H in Chapter 4. *

60 DATA~). ®, @ (c) It would be convenient to allow


grocery data to be given in both
pounds and ounces. This is easy to do.
This process continues until no more Here's one way:
"fresh" data can be found, at which
20 READ N, L, Z, P
time an "out of data" message is
printed. 25 LET Q = 16*L + Z
IMPORTANT: THe data can be IrT~h-i-s-m-.-e-a-n-s-1-5~0-z.'
distributed over DATAstatememts any . r=t==;
way you wish, provided it is in the order 50 DATA 1, 2, 7, 1.31 2,0,15, .89
expected by the READ statement. For
example, lines 50,60,70, and 80 could We agree that this means product
also be written as two statements: #1 contains 2 Ibs 7 oz and costs
$1.31. Statement 25 then converts
50 DATA 1, SO, 19, 2, 43, 10
Q to 39 oz.
60 DATA 3, 51, 13, 4, 49, 17
or even as one statement:
'Ed. Note: For this chapter you'll have to read the
50DATA 1,50, 19, 2, 43,10,3,51,13,4,49,17 author's book, "An Amateur's Guide to Personal
Computing." to be published by Addison Wesley.
Actually, a program always treats all
data as one big list. The READ state-
ment simply goes down the list, "eating
up" the data in "gulps." In our example,
each "gulp" consists of three numbers,
and it's up to you to make sure the
groups of three correspond to N, S, and
H.
Here's a similar' program for our
grocer friend. All we have to do is
change our interpretation of what the UST
variables mean, and use data ap-
5 PRINT -----------------------------------------------------------------
propriate to grocery prices. We'll also 10 READ N. Q. P
print things a.
little. differently so the
20 PRINT ·PRODUCT ,·,-QTy.IN
30 PRINT N; Q. p. 100*P/Q;
OZ.·.·PRICE·.·UNIT
·CENTS PER oz."
PRICE·

grocer can actually cut up the output to 40 GO TO 5


make shelf labels. . •• 50 DATA 1. 15. 1.29. 2. 4. ,69. 3. 32. 2.49
60 END

RIN

PRODUCT I QTY.IN oz. PRICE UNIT PRICE


15 1.29 6.6 CENTS PER oz.

PRODUCT I QTY. IN OZ.' PRICE UNIT PRICE


·2 4 .69 17.25 CENTS .PER OZ,

PRODUCT I QTY. IN OZ. PRICE UNIT PRI CE


3 32 2.49 7,78125 CENTS PER oz.

CUT OF DATA at line 10

NOV/DEe 1977 79
(d) The "out of data" message
terminates the program. But suppose LIST
we want the program to continue and
10 PRINT ·PLAYER # CLASS AT BAT ·HITS BAT .AVG."
do other things? How do we handle 20 READ N, C, B, H
this? (Read on!) 30 IF N = 0 THEN I (0
40 PRINT N; TABOO);·
(e) We may also want a program to
50 IF C =
0 THE N 90
re-use data that's been "scratched 60 PRINT "VETERAN";
out." How do we "restore" such used- 70 PRINT TAB(18);BlTAB<27)lHlTAB<34)lH/B
up data? 80 GO TO 20
90 PRINT "ROOKIE"l
Here's a revision of the batting 100 GO TO 70
average program that answers both of 110 RESTORE
these questions: ----i ••
~ 115 PRINT
120 PRiNT "BAR GRAPH OF PLAYER BATTING AVERAGES"
i30 READ N, C, B, H
140 IF N ;;, 0 THEN 220
We used the second data item in 150 PRINT "PLAYER #~;Nl
each qroup of four as a "code," with 0 160 FOR K = I TO I u 0" <H IB+ •0 05 )
170 PRINT "*";
meaning rookie and 1 meaning 180 NEXT K
veteran. Li ne 50 tests C to see what th is 190 PRINT
code is, and then branches to the 200 GO TO I 30
210 DATA 1,0,50,12,2,1,49,18,3,1,51,17,4,0,43,15,0,0,0,0
appropriate PRINT statement.
220 END

I ~ESTORE \ RUN

PLAYER # CLASS AT BAT HITS BAT.AVG.


I ROOKIE 50 12 .24
The revised batting average program .367347
2 VETERAN 49 18
uses the DATA in line 210 twice. The 3 VETERAN 51 17 .333333
first time it's used to produce a table of 4 ROOKIE 43 15 .348837
batting averages. This is done in lines
~R GRAPH OF PLAYER BATTING AVERAGES
10 to 100. This part of the program
PLAYER # 1 **** ************ *******-11-
keeps looping back to line 20 to get PLAYER # 2 ****************************tf'i~*******
new data. But the fifth time this PLAYER # 3 *******************************jIo*
happens, it finds the "phony" data 0, 0, PLAYER # 4 ***********************************
0, O. Vlje agree that storing a zero in N
signals the' end of data. The signal is
picked up in line 30 which then causes
a branch to the second part of our
program (the bar-graph routine from
lines 120 to 200). SE\-F-TEST
IMPORTANT: Even though we only 1. Simulate running this program:
need one zero in N to signal end of 10 LET T1 '" 0
data, it is essential that four zeros be 20 LET T2 ::: o
put at the end of the data statement. 30 READ A, B
This is because the READ statement 4.0 If A ::: 0 THEN 90
has four variables to fill, and will 50 PRINT A, B, A/B
squawk with an error message if it 60 LET T1 '" T 1 + A
doesn't fi nd four data items. 70 LET T2 = T2 ,: B
Now you can see what the special .80 GO TQ 30
statement 110 RESTORE does. The 90PRINT "TOTALS AND OVERALL RATIO"
first part of the problem "uses up'; all 100 PRINT T1, T2, T1/T2
the data. (What happens is that a 120 DATA 6,4., 10,5,4: 1
"pointer" moves along the data to keep 130 DATA 0,0 .
track, and when the pointer get? to the 14.0 END
end of the Iist, the program knows it's 2. Write and run a program to help
"out of data.") The RESTORE state- balance your check book. It should be
ment resets th is poi nter back to the fi rst like Problem 3 at'the end of $ection 2.2
data item. Now all the data can be used [Jul/Aug issue] but use READ and
again. (Of course, re-running a DATA instead of INPUT. .'
program also resets the pointer, but 3. Write. and run a student record
that doesn't help in our example program that has a DATA statement for
because we would never reach the bar- each student in a class as follows:
graph part.)
100 DATA,101, ~6'175, 80,l5, 90 I
I StLident # I Age-i Quiz grades I
The program should print out a class
roster With tile grade average of each
student. F:inally it should print the
averaqe age in the class, the average
grade for each 9uiZ, and the overall
Classavfrag.e .c'

80 CREATIVE COMPUTING
2.6 HOUR 6: COMPUTER GAMES
OF CHANCE
"What a pity this isn't a sin!" Those
are supposed to be the words of the
novelist Stendahl upon tasting ice
cream for the first time. They sound
more like the utterance of a computer-
center director trying to find a rationale
for evicting the game-playing devotees
who clutter up his system.
But personal computers are a
different story, and the wages of
gaming on your own system are an
intellectual refreshment that comes in
more flavors than found in all the ice-
cream stands ever franchised.
This section explains the features of
BASIC that help make this endless
variety possible. We'll start by first
answering one of the questions we
raised in the last section, How do you
make a number like
.343687 pri nt as .344?
or .264689 print as 26.46?
or .891246 print as 89?

One way to control the


number of decimal
places in a number is
to use the INTfunction
of BASIC. If a statement says

10 LET Y = INT(X)

X=1.5

00 <. +. . 01
-3\ -2 /1 /0 .
Then:- INT(U)=-3 INT(W)=-1 INT(Z)=O l'
INT(X)=1
2 \.

INT(Y)=2
3

The following program shows some LIST


more examples of the differences
between X and INT(X): --- ••~ 5 PRINT "X", "INT(X)", "X/3", -INT(100*X/3)-
10 FOR X = -2 TO 2 STEP .5
20 PRINT X, INT(X), X/3, IN! (100 *X/3)
To use INT for getting an answerin 30 NEXT X
40 END
dollars and cents with only two decimal
places (remember the UNIT PRICE
program?) we can use the expression
RJN
INT(100*X)/100. That's because
if X = 1.36782 X INT(X) X/3 INT(100*X/3)
then 100*X = 136.782 -2 -2 -.666667 -67
-1.5 -2 -.5 -50
and INT(100*X) = 136 -I -I -.333333 -34
so INT(100*X)/100 = 1.36 -.5 -I -.166667 -17
0 0 0 0
.5 0 .166667 16
1 1 .333333 33
1.5 1 .5 50
2 2 .666667 66

-
NOV/OEC 1977 81
To change a,batting average to three
decimal places we can use a similar
-
LIST,
trick:
10 PRINT "RANDOM NOS. WITH VARIOUS MULTIPLIERS"
if A = .367891 20 FOR K = 1 TO 10
then 1000* A = 367.891 30 LET X = RND (0)
40 PRINT X, 10*X, i 00 "X, INTO OO"X)
and INT(1000*A) = 367 50 NEXT K
so INT(1000*A)/1000 = .367 60 END
One more thing. To round this answer
"up" in the third decimal place, use
INT(1000*A + .5)/100 = .368 .!uN

RANDOM NOS. WITH VARIOUS MULTIPLIERS


.771027 7.71027 77.1027 77
'SELF-TEST 78.! 83
.78183 7.8183 78
1.. Modify and ..test run the ...BAITING .75174 7.5174 75.174 75
AVERAGE and UNIT PRICE programs .473969 4.73969 47.3969 47
using the above techniques to ap- .781555E-1~ .781555 7.81555 7
.203217 2.03217 20.3217 20
propriately change the number of .5159 5.159 51.59 51
decimal places in the output. .266449 2.66449 26.6449 26
.955597 9.55597 95.5597 95
.335541 3.35541 33.5541 33
~ THIS STRANGE NUMBER '"'"-y__ --:: .J
Meanwhile, back at the Casino
IS .0781555 IN PISGUISE
One feature no com-
puter language should
be without is a ran-
~~~------~~~
(SE£ SECTION .2.Y).

dom-number generat-
or. This is a built-in routine that
produces a "surprise" number each
time it's used. When a statement like
10 LE.T X = RND (0)

is executed, a number between 0 and 1


is produced "randomly," and stored in Another way to write a floating point
X. Here's a simple test program you can constant is shown in the first column of
useto see what these numbers look like the preceding test program where the
in your BASIC. number .781555E-1 appears.
NOTE: Your version of BASIC will This is called the "exponential" or
probably produce a different sequence "scientific" notation for writing con-
of random numbers, but the general stants. What .781555E-1 really means is
idea is the same. Also, RND (0) may .781555 * 10 -1
have to be changed to RND(1) in some
But 10 _1 means 1/101 (remember, 101
BASICs. (In standard BASIC the
= 10), so this number is really (.781555)
a r q u m e n t+-f h e number' in
* (1/10) = .0781555. Similarly,
parenthesis-is ignored, but in other
versions it's got to be as specified in the .781555E-2 .781555 * 10-2 .00781555, and
user manual.) .781555E-3 = .781555 * 10-3 .000781555,andsoon.
Each time RND is used in line 30, it's as
though a new number X from a secret
list is revealed. The word "random"
means that no one number will appear
SIMPLE RULE #1
more frequently than any other. To say
it another way, if you generate a lot of
random numbers, they should be E-3 means "move the decimal point
distributed equally over the interval 3 places to the left."
used (zero to one is the interval in the
example above). A program that can be
.781555E-3 = .000781555
used to check out the distribution of r:.AA.I

numbers produced by the random Scientific notation is used to save


number generator in your BASIC is space when representing very small
suggested in the first SELF-TEST and very large numbers. (You can see
question at the end of this section. that .781555E-10 takes less room to
print than .0000000000781555.)
Constants in BASIC
A similar notation is used to repre-
The numbers used in BASIC
sent large numbers. For example,
programs are called constants. So far
we have used, .8965E+1 means .8965 * 10' = .8965 * 10 = 8.965,
(1) Integer constants like -3, 4, 27893, .8965E+2 means .8965 * 102 = .8965 * 100 = 89.65,
and .8965E+ means .8965* 103 = .8965 * 1000 =896.5,
(2) Ftoetinq-point (or real) constants and so on. Here, the space saving
like .0831,3.1416, and -896.28. shows up for very large numbers ..

82, CREATIVE COMPUTING


For example,
.8965E+18 = 896500000000000000.
,~

[ SIMPLE RULE #2[


E+18 means "move the decimal
point 18 places to the right."

Simulated Craps
Now let's get back to the use of RNO
by writing a program to play craps. The
usual rules for this dice game can be
summarized in flowchart form as
follows:

CRAPS FLOW CHART


To write a program that simulates
playing this game, we'll need two
statements that simulate the roll of two
dice by producing random integers
from 1 to 6. The statements
30 LET 0' = INT(6*RNO(0) + 1)
40 LET 02 = INT(6*RNO(0) + 1)
do this because RNO(O) produces
numbers from 0 (zero) up to (but not
including) 1. So for six decimal places
we'd have: ROLL TWO DICE
Lower Value Upper Value
RNO(O) produces .000000 to .999999
6*RNO(0) produces .000000 to 5.999994
6*RNO(0)+1 produces 1:000000 to 6.999994
INT(6*RNO(0)+J) produces 1 to 6
Thus both 01 and 02 produce integers
from 1 to 6. Mathematicians say this by
writing that 1 01 6 and 1 02 6. 7 2,3,12 4,5,6,8,9,10
Note for Statistics Buffs: Tossing two or ("snake
dice with six sides gives numbers with a 11 eyes," "craps,"
total val ue from 2 to 12. But you wi II not "boxcars")
get the same effect by using a "super
die" with eleven sides as follows:
10 LET 0 = INT(11*RNO(0) + 2) THE NUMBER ROLLED
BECOMES YOUR "POINT"
It's true that this statement will produce
random integers from 2 to 12, but they
will not-show up with the same distribu-
tion you get from adding the results of
tossing two six-sided dice. For exam-
ple, with one "super die", the number 7
will show up 1/11 of the time. But with
two regular di-ce, the number 7 can be 7
formed in six different ways, each of "crapped out"
which shows up 1/36 of the time. So on
the average, a 7 will show up 6* (1/36) = Not 7
1/16 of the time, not 1/11.

'General Formula for Transforming RND


As just shown, the formula
INT(6*RNO(0) + 1)
transforms the random 'numbers so DOES
that they fall in the interval 1~ X~6. To ROLL = YOUR POINT?
generate random numbers in the range
YES NO
A~X~B use the formula
INT((B-A+1) * RNO(O) +A)

NOV/DEe 1977 83
Examples: To generate integers from
50 to 85 use: RJN

20 LET X = INT(36*RND(0) + 50) SIMULATED CRAPS GAME--YOU START WITH $10


HOW MUCH· DO YOU WANT TO BET? 2
To generate two-place decimals from ROLL IS 10
.50 to .85 use: yOUR POINT IS 10
NEXT ROLL IS 8
20 LET X = INT(36*RND(0) + 50)/100
NEXT ROLL IS 3
To generate integers from '-90 to +80 NEXT ROLL IS 6
NEXT ROLL IS 9
use:
NEXT ROLL IS 6
20 LET X= INT(171*RND(0) - 90) NEXT ROLL IS 2
NEXT ROLL IS 7
Returning to the CRAPS program, TOUGH--YOU LOSE. YOU NOW HAVE $ 8
here's a listing. followed by a sample WANT TO PLAY AGAIN Cl=YES)? 1
run: HOW MUCH DO YOU WANT TO BET? 4
ROLL IS 8
YOUR POI NT IS 8
'NEXT ROLL IS 5
NEXT ROLL IS 7
This version of the program has been TOUGH--YOU LOSE. YOU NOW HAVE s 4
written to make each statement as WANT TO PLAY AGAIN (I=YES)? 1
HOW MUCH DO YOU WANT TO BET? 8
simple as possible. Questions 5 and 6 ROLL IS 3
of the Self-Test section coming up TOUGH--YOU LOSE. YOU NOW HAVE $-4
make some suggestions for shortening WANT TO PLAY AGAIN (I=YES)? 0
YOU ENDED WITH s -4 WO.N'T YOU EVER LEARN?
the program.
ST OP at 1 I ne 28 0
Here's a run of the craps program. Your
program may give different dice rolls
because it has a different random-
number generator.

LIST
RANDOMIZE
5 RANDOM I ZE
10 PRINT -SIMULATED CRAPS GAME--YOU START WITH $10"
20 LET 0 = 1 0 rp~~'-I~~~-...-,
If you run the craps simulation 30 PRINT -HOW MUCH 00 YOU WANT TO BET";
40 INPUT B
program several times, you'll find that
50 LET 01 = INTC6"RND(0) + 1)
the rolls of the dice are the same for 60 LET D2 = INT(6*RND(0) + 1)
each run. This is because RND(O) 70 LET R 1 = 01 + D2 ~---------
always starts with the same "seed" 75 PRINT -ROLL IS-;Rl
80 IF' Rl =7 THEN 200
value, and procudes each new number 90 IF' Rl = 11 THEN 200
with the same algorithm. This is very 100 IF' R 1 = 2 THEN 1 70
helpful for debugging programs. 11 0 IF' R 1 = 3' THE N 1 70
120 ·IF' Rl = 12 THEN 170
To make the numbers really surprise
130 PRINT -YOUR POINT IS-;Rl
you, there is a feature in most versions 140 LET R2 = INT(6"RNOCO) + 1) +
of BASIC that creates a new seed 145 PRINT -NEXT ROLL IS-;R2
number for each run. All you have to do 147 IF' R2=7 THEN 170
150 IF' R2 = RI THEN 200
to get ·this feature is to start your 160 GOTO 140
program with the statement 170 LETD = 0 - B
180 PRINT -TOUGH--YOU LOSE. YOU NOW HAVE $-;D
5 RANDOMIZE 190 GOTO 220
To see what happens, run the craps 200 LET 0 = 0 + B +------~--------I YOU WON, SO
210 PRINT -YOU WIN! YOU NOW HAVE $-;0 BET IS AP()£CJ
program twice with RANDOMIZE, and
220 PRINT -WANT TO' PLAY AGAIN (1 ;YES)-;
twice without. 230 INPUT A
240 I F' A = 1 THEN 30
NOTE: Some versions ot BASIC don't
250 PRINT -YOU ENDED WITH $-;D;
. have a RANDOMIZE. Their normal way 260 IF' D> 10 THEN 290
of operating is to give you a different 270 PRINT -WON'T YOU EV':;R LEARN?-
sequence of random numbers on each 280 STOP
290 PRINT -TALK ABOUT LUCK!-
run. For these systems, if you want the 300 ENO
same sequence of random numbers on
each ru n, you must put a statement like
5 Z=RND (-1)
at the beginning of the program.
(Confusing? Aqreedl)

84 CREATIVE COMPUTING
'ION ... GOTO... I
LIST

10 PRINT

20
30 PRINT
-QUIZ: WHO WAS THE 4TH MARX BROTHER?-

INPUT A-1 = l.~I~PPc.O~'r.=2~=~H~A~R~RY~'~3==~l~E~P~P~O=-


~ ==~
IF
IF
. IF
A= 1,
A:2,
A" 3,
GO
GO
GO
TO
~:]
TO 70
TO 90

40 ON AGO T 0 5 0, 70, 9 0
This is sometimes called the "com- 50 PRINT -NO, YOU"RE THINKING OF A CIGAR LIGHTER--TRY AGAIN.-
puted GOTO" statement. It branches to 60 GOTO 30
70 PRINT -YOU MAY BE WILD ABOUT HARRY, BUT THAT"S NOT RIGHT.-
different line numbers, depending on 71 PRINT -TRY AGAIN.-
the value of a variable placed right after 80 GOTO 30
the word ON. Here's a program that 90 PRiNT -BY GEORGE YOU"VE GOT IT!!-
100 END
demonstrates how it works:
Re a d y

FUN

QUIZ: WHO WAS THE 4TH MARX BROTHER?


1 = lIPPO, 2 = HARRY, 3 = ZEPPO
? 2
YOU MAY BE WILD ABOUT HARRY, BUT THAT"S NOT RIGHT.
Here's a program that uses RNO with TRY AGAI N.
ON ... GOTO ... to generate random ? 1
messages. If you analyze the output, NO, YOU"RE THINKING OF A CIGAR LIGHTER--TRY AGAIN.
? 3
you can see that RNO must have BY GEORGE YOU"VE GOT IT!!
produced the integers 4, 4, 4, 2, 1, 1,3,
2, 4, 2 which caused branches to lines
100,100,100,60,40,40,80,60,100,60

LIST
-
5 RANDOMIZE
SELF-TEST 10fORN=ITOI0
1. Simulate running the following 20 LET K= INT (4 *RND (0) + 1 )
30 ON K GOT 0 4 0, 60, 8 0, 1 00
program, using a die to produce the 40 PRINT. - HEE - -;
random numbers in .Iine 80. What 50 GO TOIl 0
application do you see for this 60 PRINT - HA- -;
program? 70 GO TOIl 0

°°
80 PRINT -HIC--;
10 LET K1 = 90 GO TOIl 0
1 0 0 PR I NT -HO - - ;
20 LET K2 =
30 LET K3 =
40 U!:T K4 -=
°° 110 NEXT
120 END
N

50 LET K5=
60 LET K6 =
°°
70 FOR N = 1 TO 600 RUN
80 LET R = INT(6*RNO(0) + 1).
900NRGOT0140, 150, 160, 170, 180, 190 rlO_HO_HO_HA_HEE_HEE_HIC_HA_HO_HA_
140 LET K1 == K1 .+ 1
145 GO TO 210
150 LET K2 == K2 + 1
155 GO TO 210 .
--
160 LET K3 = K3 + 1
165 GO TO 210
170 LET K4 = K4 + 1
175 GO TO 210
180 LET K5 ;=K5 + 1 4. Modify the CRAPS program so a
118513010210 . . 'FOR. .:NEXT loop controls how often it
190 LET ~!3 = K6 + 1 plays. Then run it for a large number of
210 NEXT N plays (say 100, 200, 300, etc.) printing
230 PRINT K1; K2; K3; K4; K5; K6 only the final value of O. The proqram
240 ENq . itself should make the bets, using
" ' various strategies (always bet $1, for
2. You didn't really do #1 completely example). See what you can discover
did you? Six hundred die tosses is a bit about the odds of winning this game fqr
much. To get some real insight about
various strategies.
RNO from this program, you should
run it on your computer. 5. Can you find five statements in the
CRAPS program 'that can be replaced
3. Play the CRAPS program using the
with a single statement?
strategy of doubling your bet each Hint, try":
time. Will this always 'guarantee that
you eventually come out ahead?"What 800':! R1 GOTO 130, 170, 170, 130, 130, 130, 200, 130, 130, 130, 200, 170
feature can be addeq to the program to 6. Can you replace statements 50, 60,
make this s!ra!egy less threatening to 70 and 75 in the CRAPS program with a.
the "house"? single statement? -
s

NOV/DEe ·1977 85
This fifth article in the series shows how Indirect reasoning can lead to a
contradiction and thus to the truth.
~ .$ ,$ $ ~ $ $ ~ • $ ~ $ $ $$ $ $ ~ $ $ $[ $ $ $ $ $ ~ $ $ ~ $ $ $ $ $ $ $ $ $ $ ~

ThInking. Strategies
with the Computer:
Contradtctlon

Donald T. Plele and Larry E. Wood

Let craft, ambition, spite


Be quenched in Reason's night,
till weakness turn to might .
Till what is dark be light
Till what is wrong be right!
Lewis Carroll

One of the first and. possibly most elegant applications Eucl id showed that if you assu me the fi rst alternative is
of the method of contradiction was given by Euclid in the true, you can make a sequence of logical inferences that
aro century B.C. He proved that among the natural lead to a contradiction. Thus, the first alternative is
numbers 1, 2, 3, 4, '" there exists arr infinite number of untenable and the second must be true.
primes. (A prime number is one which has no factors other This indirect method called reductio ad absurdum is
than itself and 1; for example, 2, 3, 5, 7 are prime, while 9 is used throughout mathematics and represents one form of
not.) Euclid's idea is delightfully simple and illustrates the the strategy of contradiction. Interested readers may want
problem-solving strategy of contradiction. . to study Euclid~s· clever sequence of logical inferences
To beqin with, there are two possible outcomes: where he shows that the as-sumption of only finitely many
1. A finite number of natural numbers are prime or primes leads to a contradiction (Eves, 1976). .
2. An infinite number of natural numbers are prime. The following problem will be used to illustrate the
No one has been able to show directly that the second method of proof by contradiction. The reader is en-
alternative is true. However, by reasoning indirectly, couraged ·to try the problem before reading the solution.

86 CREATIVE COMPUTING
TRUTH AND FALSEHOOD Anania." The third said to the second, "You're a liar!"
Now the question is, of what race was this third man?
As in Euclid's problem, there are only two possibilities ..
The- third person is either an Anania (liar) or a Diogene
(truar). Let us assume one of the alternatives, he/she is an
Anania, and see if We can reach a contradiction. Since the
third person said "You're g liar" to the second person and
we are assuming the third person is anAnania (liar), it
must follow that the second person is really telling the
truth (a Dioqene). But if the second person is a truar then
the statement made about the fi rst person, "He said he was
an' Anania," is true. But if.we examine this statement
closely we find that neither a liar or a truar could make it. A
liar Gould not admitto being a liar and a truarwould haveto
say he/she was a Dioqene. Thus, we have arrived, by a
sequence of logical inferences, tp a contradiction based
on the original assumption that the third person Was a
Dioqene. Since there are only two alternatives,'the third
person must be a Diogene and the problem is solved. The
reader may want to check that the problem is well-posed
and that' indeed, if the third person is a truar, the
statements made by the fi rst and second persons are non-
In a faraway land there dwelt two races. The contradictory.' '.
Ananias were inveterate liars, while the Diogenes Now we turn to an application of the method 'of
were unfailingly veracious. Once upon a time, a contradiction where the choice of alternative is more than
stranger visited the land, and on meeting a party of just two. Whenever the set of alternatives is small enough,
three inhabitants inquired to what race they belonged. it is still feasible to systematically examine each of them
The first murmured something that the stranger did. and derive a contradiction to all but one. As an example,
not catch. The second remarked, "He said he was an consider the following problem:

whodunit?
Since two of the suspects are telling the truth and we are
given that only one of the first four statements is true, the
assumption that Growley did it has read, - through a
sequence of logical inferences, to a contradiction, Thus,
Growley is innocent, Each suspect, in turn, can be
checked out in a similar way. Whenever a probleni can be
reduced to a book-keeping chore like this one, it is natural
to call in the computer. Even though the work involved in
this problem is small and can be easily done by hand, the
ideas learned in programming the computer to do the job
WHODUNIT? will be useful when we are faced with a more difficult and
time-consuming problem.
Four men, one of whom is known to have committed We begin the WHODUNIT problem by assigning
a certain crime, said the following when questioned variables to statements as follows:
by an inspector from Scotland Yard.
Growley: "Snavely did it." P(1J~'Growley did it."
Snavely: "Gaston did it." P(2)~'Snavely did it."
Gus: "I didn't do it." P(3)~'Gus did it."
P(4)----,,",'Gaston did it."
Gaston: "Snavely lied when he said Idid it."
If only one of the four statements is true, whodunit? A statement is designated as true by setting the
corresponding' variable equal to one, P( I) = 1. If we assume
Brain teasers like this one often lead the novice, who is it is talse, then P(I) = O. For example, if Growleyis the
likely to attack the problem dir-ectly, into an endless loop. culprit, then the statement "Growley did it" is true and P(1)
The experienced problem-solver recognizes that by first = 1, otherwise P(1) ;, O. Using this new representation, it is
assuming a particular suspect committed the crime, it is an a simple matter to express all the statements (facts of the
easy matter to check whether this assumption is consis- case) in one equation: .
tent with the given information or leads to a contradiction.
For example,if we assume that Growley did it, we can
P(2) + P(4) + NOT P(3) + NOT P(4) = 1.
determine the truth or falsity of the statements given in the This expression embodies the condition that only one of
problem as follows: the statements; "Snavely did it"P(2), "Gaston did it" P(4),
"Snavely did it" is false. "Gus didn't do it" NOT P(3). "Gaston didn't db it" NOT P(4)
"Gaston did it" is false. is true and hence the expression adds to 1. (Recall that in
"I didn't do it" is true. the BASIC lanquaqe, if A = 1 then NOT A = 0 and vice versa
"Snavely lied wh.en he said I did it" is true. if A = 0 then NOTA = 1.) It is a
simple matter for the

NOV/DEe 1977 87
computer to systematically assume each suspect, in turn, solution, or perhaps many solutions. By changing line 120
is guilty (for 1= 1 to 4, P(I) = 1, and P(~) = 0, J 11) and check (the facts of the case) a new problem can be examined
this assumption for any contradiction with the facts of the with the same program. The reader is invited to make up
case, (P(2) + P(4) + NOT P(3) + NOT (P(4) = 1). new 'circumstances and test them for solutions. For
This is the technique employed in program CRIME in example, suppose that the statements given by the
lines 80' to 170 to crack the case. The program also checks suspects are: "Growley did it" P(1), "Snavely did it" P(2),
to see if the problem as posed has a unique solution, no "Gaston didn't do it" NOT P(4), "Snavely didn't do it" NOT
P(2) and we know that only one of the suspects is lying.
Then the facts of the case would be expressed as
C~IME RROGRAM P(1) + P(2) + NOT P(4) + NOT P(2) = 3.
Under this assumption, whodunit?
10 PRINT "THIS PROGRAM SOLVES THE jIlHDOUN!T PROBLEM AS ORGINALLY WRITTEN.'
15 f.'RINT . ,. .
16 PfUNT "FOUR SUSF't:CTS - GROWU~Y1 SNAVEL.V, l~US ANn GASTON - ARE QUESrlONCJ)"
i~~~i~;
19
20
:~~~uis

prUHT .,,,,,..
f'RltjT'
tiT~~~:~IN
.
SNAVELY DIO IT.'
CR!ME. :rH~ rClLL,OWIN~ STATEMtNTSARE GI~~N ANI) O!"LY'
SAMPLE RUN
22 PRINT' GASTON DID IT.'

~: ~~~~~: ~~ ~~·;r..
g~~Tg~l1~~~N RUN
29 PRINT •
30 P1UNT "THIS IS EXPRESSe:'l\ IN lINE 120 AS PC2H'PC-4HNOTP(:3HNOn'{4)"'1;.· CfnME
32 PRINT' . , '
34 PRINT' (YOU CAN MAKE UP YOUR OWN MYSTERY BY CHANG1NG THE STATENEN'rS' THIS F'ROGRAM SOLVES THE WHODUNIT P~OBLEM AS ORGINAl.LY ~~ITTEN.
36 PR1NT "AND THE CORRESPONDING EXPRESSION IN LINE 120.)"
40 PRINT LIN~2), ~ . * FOtJR SUSPECTS - GROWLEY, SNAVELY, GUS AND GASTON - ARE QUESTIONED
50 J=l ' ABOUT A CERTAIN CRIME. THE FOLl.OWING STATEMENTS ARE' GIVEN AND ONLY
60 DrM P[4J, At.(7:n
ONE IS TRUE.
70. A',;;'GROWLEY DID IT.SNAVELY DI~I IT.GUS Inn XT. G~STON DID IT.
80 f"OR I""l TO 4
SNAVELY DID IT.
9() MAT P=ZER
100 pcn::1 GASTON DID IT.
GUS DIDN'T DO IT.
110
120
REM***********"****************************"****j*
IF f'(2HP[4J+ NOT P[3Jt NOT P[4]=1*THEN 150' GASTON DIDN'T DO IT.
13"9 REM ********************"*********************"*U:*
14¢ 60TO 170 THIS rs E:XPF~fS!5[[1 IN LINE 120 AS P(2)+P(4)tNOTF'(3H·NOTP(4)=1.
150 JutJ+1
160 K""l (yOU CAN MAKE: UF' YOUR IlWN MYSTERY BY CHANGING THE STATEMENTS
170 NEXT I
190 GOTO J OF 190,210,230 AND THE: CORRESPONDING EXPRESSION IN LINE 120.)
190 PRINT 'SORRY THERE IS NO SOLUTION TO THIS CASE. MORE INFO IS NEEDED.·
200 GOTO 250 '
210 PRINT, -THE INESCAPABLE CONCLUSION IS THAT "ASC15*K-14d5*K]
220 GOTD 250 THE INESCAPABLE CONCLUSION IS THAT GIJS DID IT.
230 PRINT 'THERE IS NO UNlGUE $DLUTION TO THIs CA~E. MORE" THAN ONS SUSPECT"
240 PRINT' IS '!MPLICATElJ ar
THE INFORMATION GtVENt,'
DONE
25Q END

the set of possible alternatives for considerations as


cryptarithrnetic solutions - is 8! or 40,320. It would be impractical in this
problem to blindly try each possible assignment one at a
time. It would be much more efficient to divide up the
In contrast to the previous examples, where the number search space into large classes, according to a common
of alternatives were relatively small, cryptarithmetic property shared by members of each class, and then
problems usually leave a large number of possible attempt to eliminate entire classes by the method of
assiqnrnents of digits to "letters to be examined. For contradiction. Wickelgren (1974) has labeled this techni-
example, consider the following probl~m. . que classificatory contradiction.
We can illustrate this approach with the problem above
by the following argI!.Jment.
Consider all possible solutions where E = O. Since E + E =
Y, Y also equals 0, contradicting the fact that Y and E must
be different digits. Thus, the entire class of solutions
where E = 0 is ruled out. For another, less trivial example,
consider E = 3. Now Y equals 6 and there is no carry to the
next column. Thus in the record column we have R + R = E
or perhaps R + R = E + 10 if a Garry is involved. But in either
s:
case, would be an even number, since 2R is always even,
and this contradicts the assumption that 'E = 3. Thus the
entire class of solutions with E = 3 is ruled out.
, By following this same type of classificatory contradic-
tion strategy for each of the digits in order of E, R, 1,0, and
N, program CRYPT search out all five solutions to the
WIRE + MORE = MONEY problem. Can you write your own
program to solve the cryptarithmetic problem.
DONALD
+ GERALD
,ROBERT ?
WIRE MONEY
This problem has been extensively studied by Newell
A college student sent Ithe above message to his and Simon (1972) using a program called General
father. If each letter represents a unique number, how Problem Solver (GPS) which was written to demonstrate
much should his dad send? that general problem-solving strategies exist and may be
discussed at the very concrete level of computer program-
In the jargon of computer science, the search space- ming.

88 CREATIVE COMPUTING
The reader can appreciate the difficulty of heuristic
programming by imagining how one would write a
conclusion program to solve' general cryptarithmetic problems in
which the simplest inferences in a problem are first made
similar to the waya human would approach it. In contrast a
general algorithmic program can be written to solve any
cryptarithmetic problem in a way similar to program
. When it comes to problem solving, one of the most CRYPT. Can you do it?
significant advantages that people have over computers is
the ease in which humans can make inferences about a
problem and quickly reduce the search space. Program-
ming a computer to make similar inferences is at best
extremely difficult and at worst, impossible. People can be References
Carroll, Lewis. The Humorous Verse of Lewis Carroll, Dover
very unpr.edictable in ways to survey a problem looking for
Publications, New York, NY, 1960.
the .easy Inferences to attack first, while the computer is
Eves, Howard. An Introduction to the History of Mathematics,
easiest to. program to attack each problem in a very
Holt, Rinehart, and Winston, New York, NY, 1976, p. 120.
predetermined and algorithmic way. Polga (1954) con-
Newell, A., and Simon, H. Human Problem Solving, Prentice
~rasts.the algorithmic method with the heuristic approach
Hall, Englewood Cliffs, NJ, 1972.
In which the nature of the solution is guessed and then
Wickelgren, Wayne A. How to Solve Problems, W.H. Freeman
proved to be correct. These two approaches have been
and Company, San Francisco, CA, 1974.
combined into "heuristic programming" which is a new
I
way of thinking about what a computer program should
do. The idea is to find a good set of rules for generating
guesses and then prove they are correct. This technique
evolv~d from the work of Newell and Simon (1972) Acknowledgement
working on the program Logic Theorist (LT) and General . We are extremely grateful to Rodney Sohroeter for the
Problem Solver (GPS). drawings which he provided throughout the series. _

NOV/DEe 1977 89
IFIP Congress rt
Computer conventions are all the
same. The papers and panel dis-
cussions are the ostensible reasons
for attending. But the hardware and
software displays mounted by various
companies and organizations are a.biq
The Exhibits
part of the attraction.
The International
Information
Federation
Processing
of
Societies'
Were as
Congress 77-held
1977 in Toronto-was'
during August
no exception. Interesting
Convention-goers jammed the exhibit
halls to find out what more than 100
large and small computer companies,
Ruth Glick as the
book and magazine publishers, and
various Canadian government agen-
cies had to offer.
Sessions
For their part, the exhibitors put on
quite a show. Graphics displays and
data readouts flashed on terminal
screens, tape-drives spun, printers
spewed out copy, salesmen explained
the virtues of their particular equip-
ment and services, and convention- IFIP Sessions Cover Job Satisfaction,
goers interacted with demonstration
programs. Future Communications, More.
There was 'so much going on that
catching the eye of spectators was While the sessions at IFIP were, society a more stable organization
important. Some orqanizations used for the most part, not:.of direct and one.that, ismore.adaptive to
clever gimmicks to draw the crowds. interest to Creative readers, at least change than a monolithic hierarchy
Others, particularly those with un- two presented some revelant as exists in the government today.
usual computer graphics displays material Baron sees five components be-
were interesting enough to capture One panel looked across a wide ing necessary for such people-to-
attention on their own merits. variety of industries and concluded people packet-switched systems: a
Public Works Canada, tot example, that the use of computers to perform user terminal, a local distribution
had a display of computer-assisted data-processing functions deprives system, a packet-switching node,
drafting. According to Lew Woolsey, workers of job satisfaction. Ex- long-distance transmission lines or
who was demonstrating the equip- amples were cited in banks, satellites, and a host computer. As a
ment, the system is much faster and machine shops, and steel mills. result of rapidly declining prices,
more cost-effective than conventional Prior to using teller terminals, tellers microprocessor-based nodes are
drafting. Yet even for someone with no used to suggest changes that would now affordable by hobbyists.
computer experience, it takes less improve customer services; their Baron's suggestions for transrnis-
than a week to learn. Using the display attitudes paralleled those of the sion mostly involved "bootlegging
terminal, architects can try various bank managers. After computeriza- onto phone lines or satellites
designs. draw accurate lines tion, their suggestions concerned without detection." [Pub. Note: It's
"automatically," and zoom in on coding schemes, new forms or new not clear that such an illegal ap-
portions of a building as they work. displays. Within a year tellers behav- proach could really become
They can have the computer display ed more like keypunch operators widespread.] Baron. felt that the
buildings with designs similar to the than bank managers. Other pan- main stumbling block to increased
one they are planning, tryout various elists described EDP systems that interpersonal (data) communica-
features like windows and doors, had been installed in other in- tion, particularly over international
convert from conventional measure- dustries which took little or no boundaries, is government control.
ments to metric, and change the scale account of the psychological at- Perhaps the channels should be
of drawings at will. titudes of the affected workers. open to individuals he suggested.
"You can put the catalog from a At the session "Data Networks- [Pub. Note: Once in place, govern-
window company in the computer," Past, Present and Future," Paul ment regulations tend to be ex-
Woolsey said, "and tryout 27 different .Baron of Cabledata Associates tremely difficult to change but there
types of windows to see how they'd speculated that future networks may well be other alternatives such
look .... The system takes the dog would increasingly be based on as the AMSAT satellite or the much-
work out of drafting, and it reduces the individuals using micro-based rumored Bell Data Network.]
chances for costly errors." Besides the packet switching rather than more Personal-computing topics were
graphics capability, the system can growth by governments and large touched on in other sessions but in
also run stress analyses, calculate corporations. He felt that a people- nothing close to the depth of the
heating and Gooling losses, and .to-people-type structure gives Faire in SF, NCC in Dallas, or PC '77
specify requirements for lighting, in Atlantic City. -DHA
mechanical ductwork, piping, and the
like.

90 CREATIVE COMPUTING
IFIP Congress rt
Quite different was a display set up drawing a river using a joy-stick on the
by the Canadian National Institute for console.
the Blind, where several sightless A number of companies were also
programmers were demonstrating selling computer. equipment for
braille terminals manufactured by hospital use. One, Siemens, was
Triformation Systems of Stuart, showing a medical reporting system Servant or Master?
Florida (the only makers of this equip- for diagnostic X-ray departments.
ment in North America). David Brown, Their terminal was especially in- The computerized message
Manager of Computer Services for the teresting because it was designed to system at IFIP operated by "The
Institute, explained that the braille be activated by touching appropriate gomputer. Group" of Jfle
printout from the machines is used by sections of an oversized viewing TransCanada Telephone System
these programmers in much the same screen rather than by typing on the posted names of people for
way that Sighted programmers use the keyboard. The large screen can dis- whom telephone messages had
screen of a display terminal. "In the play anyone of 200 frames depending been received on strategically-
old days, they had to have computer on the injury that the physician or X- located CRT screens. Of course,
output read to them. Now they can ray technician needs to' describe. as more and more messages
work independently," he said. Information entered on the large accumulated, the longer one had
At the Institute's computer depart- screen is displayed as a medical report 'to wait while the system scrolled
ment, the staff employs the equipment on a smaller screen and can be printed thru the whole list. It printed at
to do payroll and keep records on out as hard copy to be added to the about 300 baud and then left a full
clients, eye diseases, and causes of patient's fi Ie. .screen of only 8 (large) lines up
blindness. Other exhibits were attention getting for 10 seconds. Hence, to get
"People are reluctant to hire the because of the gimmicks they through the whole list by the 3rd
blind, because they think that extra employed. day of the conference took about
problems will be created. We'd like to Probably the most popular display at 4 minutes. But why, you may ask,
convince them that blind workers can the convention was the one belonging was the list getting longer?
be just as effective as sighted ones," to MSA (Management Science Because most of the telephones
he said. Presently, he noted, there are Anierica, Inc.), an employee-owned to retrieve your message didn't
about 75 blind programmers companybased in Atlanta, Georgia, "in work! (It took me over 10 minutes
employed across Canada. All have the business of designing, developing, to retrieve 'a message wh ich,had'"
been through a special training course servicing, and marketing a complete it been posted on a bulletin board
at the University of Manitoba where line of financial accounting software in alphabetical order, would have
they learn to make flowcharts in braille systems." taken less than W seconds). Ah,
on individual cards as well as use the To attract the attention of prospec- technoloqy - who is the servant
Triformation terminals. tive customers, MSA's Jerry Bertsche and who is the master? -DHA
However, the equipment is not had set up a computer portrait studio
designed to be used exclusively by where long lines of convention-goers
programmers. Many blind workers, waited during exhibit hours each day to
including credit and reservations
clerks, various people in the telecom-
munications field, stockbrokers,
engineers and radio broadcasters,
have been using the terminals. And
Brown hopes more employers will
realize the potential for the blind.
There were also other orqanizations
on hand with equipment for special
users. System house Limited was
showing a computer-assisted car-
tography package, which can be used
in mapmaking much as the computer
drafting system displayed by Public
Works Canada is used in building
design. Ron Speer, who was
demonstrating the equipment, put up
a map of Canada on the screen and
then had. the computer enlarge a
portion of it several times. "You can
get down to one-meter ground resolu-
tion," he explained. The equipment,
which has been purchased from
System house by the Australian Army,
is especially useful as a map editing
tool, because you zoom in on boun-
dary areas (where two maps have been
put together) and touch up incon-
Most of the IFIP exhibits were big, show, and expensive.
sistencies. Speer demonstrated by

NOV/DEe 1977 91
IFIP.Conqress 77-
The 'Future
of
Computing:
What Do YOU
Think?

Do computer portraits sell software? Apparently MSA thinks so, and they certainly always had a
crowd at their booth.

We would like you to help us explore


the future of computing as part of a
have their "pictures taken." Designed Sperry Univac pitch. Then he turned to
study for Creative Computing maga-
by Computer Concepts Corporation, Creative Computing's reporter and
zine. The questionnaire below con-
the system consists of a television announced that she must be "sick,"
tains three sections. The first asks for
camera, monitor, computer and because she was taking notes on his
some basic background information
printer. According to the company's jokes.
about you, your contact with com-
literature, "the camera sends the com- Sperry Univac wouldn't say exactly
puters, and your general views about
puter a picture in the form of the black how Homer did his real-time tricks. But
the future. The second section con-
and white images that it 'sees.' The they did admit that he wasn't generated
tains statements about developments
computer converts these images to the by a computer. Apparently a live
related to computing which mayor
appropriate typewriter characters and human being talks for Homer and
may not occur in the next twenty-five
prints them." And the convention-goer manipulates his cartoon image in some
years.
leaves with an interesting souvenir- way.
We would like you to rate each item
his or her very own computer- At another exhibit, SOL (Systems
in terms of how likely you feel its occur-
generated portrait. Dimensions Limited) was offering a
rence will be, how important it will be if
Another well-attended "entertain- Toronto restaurant selection service.
it occurs, and how desirable it will be if
ment" at the convention was pre- Convention-goers could request a list
it occurs. These hypothetical results
sented by Sperry Univac, which of establishments in a particular price
were generated in part by the Creative
wanted to impress attendees with the range or those offering a certain type of
Computing readership and in part by
company's high-volume timesharing . cuisine and receive a computer print-
reference to previous studies of the
capabilities. To attract attention they out of appropriate restaurants. For a
future of computing. Some statements'
put on a twenty-minute show every less practical demonstration of the
may seem overly vague, others too
hour and a half featuring (what else!) a SOL equipment, they would have their
specific. Please try to evaluate each in
pretty girl and an irreverent televised biorhythms calculated by the com-
terms of the general trend it repre-
cartoon character named Homer pany's WYLBUR EXEC files.
sents. The final section of the ques-
Highwater. As it turned out, Homer was And finally there were the inevitable
tionnaire asks for your ideas, com-
more of a draw than the girl. Instead of computer games. At Congress 77 they
ments and suggestions on the future of
just delivering a canned presentation, were provided at the booth set up by
computing. Please feel encouraged to
he actually interacted with the Interface Age magazine. Spectators
elaborate on them.
audience-asking people's names, could select an assortment of games-
When you've completed the ques-
making faces, responding to from Life and Chess to Moon Landing,
tionnaire, please mail the results to:
questions, flailing his arms about and Star Trek and Target-and play them
Craig Johnson
adlibbing like mad. Some of his on a TV monitor attached to a
The DaVinci Group
repartee was designed to get alaugh at microcomputer. The games. were
235 Oak Drive
the expense of the spectators. For stored on programmed diskettes.
Willowdale Lake
example, during one presentation he In all, there was a lot going on in the
North Canton, Ohio 44720
accused a man standing near his pretty exhibit halls-as much as in panel
assistant of mentally undressing her discussions and other official presen-
instead of paying attention to the tations. •

92 CREATIVE COMPUTING
cuasnonnars -I:
Section I Section II
(1) ----.Age This section lists a number of events which mayor may
(2) Sex not occur in the next twenty-five years. Please rate each
. __ 1. Female event in three ways, on a scale 'of 1 to 5:
---.-2. Male
(3) Education How likely is it?
__ 1. Less than high school graduate 1. Very unlikely, almost impossible
~. High-school graduate 2.
__ 3. Some college 3.
__ 4.. Bachelor's degree 4.
__ 5. Master's degree 5: Very likely, almost certain
__ 6. Doctoral degree How 'important will it be if it occurs?
(4) How much background or training in computer 1. Very unimportant, trivial
science do 'you have? 2.
__ 1. No background 3.
__ 2. Slight background 4.
__ 3. Significant background (some formal train- . 5. Very important, crucial
ing) How desirable will it be if it occurs?
__ 4. Very substantial background (professional 1. Very undesirable
employment or professional deqree in 2.
computer science) 3.
(5) About how often have you used computers directly in 4.
the last year? 5. Very desirable
--'1. Rarely (a few times a year or less)
---,---2. Occasionally (once a month) (1) Audio (spoken) communication will be a common
__ 3. Frequently (once a week) input/output mode.
__ 4. Daily __ Likelihopd __ Importance __ Desirability

(6) On a scale from 1 to 5, how would you describe your (2) Most governmental decisions will be made by debate
political beliefs? and opinion analysis over a computer network.
__ 1. Very conservative __ Likelihood __ '_Importance __ Desirability
-----,-2. Conservative (3) Holoqraphic (three dimensional) audio/visual output
__ 3. Middle of the road will be in common USEL
__ 4. Liberal __ Likelihood __ Importance __ Desirability
__ 5. Very liberal
(4) Problems of poverty', population growth and en-
(7) How do you feel about your personal future? vironmental decay will be largely solved for the
__ 1. Very pessimistic United States. .
---,---2. Somewhat pessimistic __ Likelih09d __ Importance __ Desirability
__ ~. Neutral, can't say
__ 4. Optimistic (5) Costs of computing (costs per instruction executed)
__ 5. Very optimistic will decrease by a factor of 100 from current (1977)
levels.
(8) How do you feel about the future of the United __ Likelihood __ importance __ Desirability
States? ,
__ 1. Very pessimistic ' (6) Fear of invasion of privacy and general technical and
---,---2. Pessimistic economic problems will prevent the development of
__ 3. Neutral, can't say large data "nets" (networks).
__ 4. Optimistic __ Likelihood __ Importance _._Desirability
__ 5. Very optimistic (7) Direct two-way brain/computer (biocybernetic) links
(9) How do you feel about the future of the world? will be common. .
__ 1. Very pessimistic __ Likelihood __ Importance __ . _De~irability
---,---2. Pessimistic (8) Intelligent, self-aware computers (capable of passing
__ 3. Neutral, can't say the Turing test) will exist.
__ 4. Optimistic __ Likelihood __ Importance __ Desirability
__ 5. Very optimistic
(9) Complex interactions with computers will be carried
(10) Do you think forecasting studies are useful? out by a mix of audio communications and movement
__ 1. Useless through a sensor field (programming by song end
--.2. Of some use dance). .
__ 3. Very useful __ Likelihood __ Importance __ Desirability

NOV/DEe 1977 93
(10) Diffusion of information and authority throughout (27) Most governmental and business decisions will be
large computer-based bureaucracies will produce made directly by computer with little human in-
widespread alienation. tervention. .
_,__ likelihood __ ' _Importance __ Desirability __ Li kel ihood __ Im portance __ Desi rabi Iity
. (11) Basic concepts of computer science will be taught in (28) Computer-based data gathering and analysis
elementary school. systems will provide the basis for rapid advances in
__ ' _'Likelihood __ Importance _,_Desirability the social and environmental sciences.
, . _'_Likelihood __ Importance __ Desirability
(12) Almost all financial transactions will becarried out by
computer with no physical exchange of money. (:;9) Costs of computing (cost per instruction executed)
_'__ Likelihood __ Importance __ Desirability will decrease' by a factor of 10,000 from .current
(1977) Costs.
(13) Problems of poverty, population growth and en-
__ Likelihood __ Importance __ Desirability
vironmental decay will be largely solved for the
world. (30) Pocket-sized memory units will have capacity equal
_,_Likelihood __ Importance _._Desirability to contemporary disk memories (will have capacittes
(14) Integrated teams of artists and scientists using of approximately 1 billion bits per cubic inch). '
__ Likelihood __ lrnportance _'__ . Desirability
computer communications and data-handling will be
used to attack major social and environmental (31) Libraries with "hard copy" (books, etc.) will be
problems. largely replaced by computer-based data files.
_'__ Likelihood __ Importance __ Desirability __ Likelihood __ Importance __ Desirability
(15) The majority of American homes will have a (32) Automatic translators for natural (human) languages
computer console. will be in common use.
__ Likelihood __ Importance __ Desirabllity __ Likelihood __ Importance __ Desirability
(16) Costs of rapid, randomly-accessible memory (cost (33) Computers will exist which can comprehend stan-
per bit accessed) will decrease by a factor of 10,000 dard intelligence (IQ) tests and score over 200 on
from current (1977) costs. them.
_'_' _Likelihood _' _Importance __ Desirability _,_Likelihood __ Importance __ Desirability
(17) Rapid increase in automation will generate large (34) Computers which "learn" from experience and are
numbers of unemployed workers. "educated" rather than programmed will be in
__ Likelihood __ ' Importance __ Desirability common use.
(18) i'v1ost art and entertainment will be generated and __ Likelihood _'_Importance __ Desirability
viewed via computer. . (35) Breakdowns or errors in computer-control·led
__ Likelihood __ Importance __ Desirability systems will cause several disasters of serious
(19) Costs of rapid, randomly-accessible memory (cost proportions (resulting in hundreds of deaths or
per bit accessed) will decrease by a factor of 100 from injuries).
current (1977) costs. _,_._Likelihood __ importance __ Desirability
_,_Likelihood _.__ importance __ Desirability (36) Computer-based job-search procedures will reduce
unemployment and under-employment.
(20) A very large "computer hobbyist'; industry will __ '_,Likelihood __ . Importance __ Desirability
develop. .
__ Likelihood __ Importance __ Desirability (37) Computer hardware will b!3 largely based on
biological and biochemical circuitry.
(21) The United States will no longer dominate global __ Likelihood __ Importance __ Desirability
economic and political affairs.
__ Likelihood _'__ lmportance __ Desirability (38) The health Of the U.S. population will improve
because of Computer-based diagnostic and health-
(22) Pocket computers will have independent capacity monitoring techniques. .
equal to current "third generation" computers (IBM __ Likelihood __ Importance __ Desirability
360, Burroughs 6500, UNiVAC 1108, etc.)
__ Likelihood __ Importance __ Desirability (39) The overall quality of life for the average American
will be' greatly improved.
(23) Computer/communications utilities will become the __ Likelihood _,_Importance __ Desirability
largest industry (in dollar volume of transactions) in
the US. (40) The overall quality of life for the average human will
_, _Likelihood __ Importance __ Desirability be greatly improved.
__ Likelihood __ ' _Importance __ Desirability
(24) Most major household appliances will contain
microcomputers to operate them in home use.
__ Likelihood __ Importance _'__ DeSirability
(25) Pocket computers will be capable of automatically
linking to computing "nets" (networks) if they are
within a mile of a two-way telecommunications
channel. .
_'__ Likelihood __ Importance __ Desirability Section III
(26) The majority of U.S. computers will be linked into a Please give us any comments, suggestions or ideas you
general computing/memory network. may have related to the future of computing, the future of
__ Likelihood __ Importance __ Desirability the U.S. or the future of the world. •

94 CREATIVE COMPUTING
THE ANSWER BOOKS FOR THE HOME COMPUTER HOBBYIST
from dlllthiurn Press
Home Computers: 2'· Questions & Answers; Beginning BASIC by Paul Chirlion Watch for: these
Volume 1: Hardware by Rich Didday An introduction to BASK for beginners, written in response

How to ·US~ your microcomputer to the fullest. Ideas for things to the author's children's need for a really basic SASIC.-
exciting new books!
to do, help in reading the literature, help in deciding what ways This book will rroke an expert of any reeder.

to go, in easy-ta-understand Iqnguoge for the beginner. 225 pp. $7.95 Robots on Your Doorstep by Nels
225 pp. . $7.95 Winkless & Iben Browning $6.95

Take a Chance With Your. Calculator Text Editors anit Correctors by Norman
by lennart Rode Sondak, Eileen Sondak & Scott Sminkey $6.95
Home Computers: 210 Questions & Answers;
The programmable calculator has arrived. This book offers
Volume 2: Software by Rich Diddcv
a lively guide to the copcbilities of these calculators Complete Starship Simulation Proiect
This quide leads the new micro owner through the thorny problems
for hobbyists, students and business people.
surrounding the selection and use of software.
by Roger Garrett . $6.95
Approx. 150 pp. $6.95
175 pp. $6.95
From the Counter to the !!ottom line
by Tom Bailey & Carl Warren ~9.95
8080 Microcomputer Experiments by
Step by Step Introduction to 11080 Micro· Howard Boyet lIome Computers: A !leginner's Glossary &
processor Systems byJames Melsa & David Cohn Contains over 55 software, hardwore and interfacing
Guide by Merl Milier, & Charles Sippi $6.95
A more advanced book which will show youhow to put together experiments, with enough theory to allow one with no
what you've learned to build systems and applications that previous microprocessor or computer experience
really exploit the capabilities of your micro. to proceed to a relatively advanced level of competence. Home Computer Primer by Charles Sippi
150 pp. $7.95 Apprcx."] 50 pp. $9.95 $6.9$

Publishing Personal Computing Books is Our Business]

From dilithium Press P.O. Box 92 Forest Grove Oregon 97116

microprocessors: from chips to systems


~Y Rodnay Zaks· $9.95
The basic book for understanding microprocessors and microcomputers. It presents all the
fundamental concepts as well as the detailed application techniques. It will show you, in detail,
how a rnlcroprocessor operates, critically review existing MPU's; explain how to interconnect the
various Chips into a system; and which alternatives are available. It is based on the author's ex-
perience in teaching microprocessors to more than 2000 persons, as well as developing systems.
It Will take you step by step until the actual interfacing to peripherals. 400p. .
CONTENTS:
•Fundamental Concepts. Internal Operation of an MPU • System Chips • Comparative Micro-
processor Evaluation • Assernbllnq a System. Applications • Interfacing' Programming • System
Development • The Future. r- - - - - - - - -
ALSO AVAILABLE:
• CASSETIES (2 cassettes = 211 hour + special book)
ORDER FORM
51 •INTRODUCTION TO MICROPROCESSORS $29.95 Name __~ _
52 - MICROPROCESSOR PROGRAMMING $29.951
Position
• MICROPROCESSOR INTERFACING TECHNIQUES, by Austin Lesea and I
Rodnay Zaks. Ref C207. From keyboard to CRT and Floppy Disk; Company ~~-----
including Trouble-Shooting $9.95. Address _
• MD- 10·la~gLiage lnternatlonal Microprocessor Dictionary $1.!~51 1

8
1 Amount Enclosed _ 1
(in California, add tax)
FOR INFORMATION ON
IN·HOUSi: TRAINING:

USA: SYBEX Inc, Publications Dept, 2161 Shattuck Ave,


: o BankAmerlcard
Nurnber
Sig nature
q Mastercharge
ExpIres -r-r-

_
I
Berkeley; .Ca 94704. Tel:(415) 848·823;3. Telex: 336311. I
C"01
-~.", I
EUROPE: SYBEX·Europe, 313 rue Lecourbe, ' Fast Shipping: add $1.00 (UPS)
75015 Paris, France Tel: (1)8282502, Telex: 200858 Creative Computing
Mondrian has been widely acclaimed as the greatest Dutch
painter of our time and as one of the most influential masters of
painting.' However, a computer-qenerated random pattern was
preferred over
. -.."
the pattern of one ot 'Mo'ndrian'spaintings.
.
Why?

..- I.. ·
·"!'IJ
11-.lii_+',I_'_
~.ll •.•. I - , •I

••••
I' ••I •+t .- 1_
.'
'·.1. I.
"1"1-1
..' •I.
'
•L.
HUMAN OR
• 1 I1
_! '1- I 1 1-..••.•• '. +-
•11-t.1+t,+'1"1'-1' 1.1£ •.•.•
I • I. _~
: •.:. 'I
I I • I -'~ + I
1-1",",1 I-
1-.
II II-:fTI!oII
--4 I
- _I

'rll-III,;,'
-'
J. I
I I· '...J.."":t II - I
-I .' """11-1,.1_1
'2 ~ I•••••••• II
I AESTHETIC
I-I·I:~~t '' +-. I~~I ..• I+~'1· kti
I • . . 11....a.!r, 11-1 ~ I . "
l •
FOR PSEUDO-
I~I. ~I ~ -I :";!.i I_~'-++- 1I1I
I

.1 II~
t. z: ~I .=t-+. I •.••••.
I 'I·.... I ~
~ -, •..""'-.II·~.
••·1 .,-;1 11+ _ -
+-II ~ I' - I-~
~••
II ~I CQMPUTER-
• 1
1
,- I ., I-II r .I .:ti-1!- .,.1.:II-'1-
I, ,

1.
1'_-II •.•••..•
1':
!._ '-II II~ - " 1'
PATTERNS·'~
I -III
I•..•. •••
1- T - II •
~.~
-.-11•• I I
.1 t-
I

r~A " ; "./

.
• - I -._
I
I
. ~_ ':..
.'
_...
_. ••••••

...1. I
"
~;;;3y_ '\
" ".

Pig. 1

;.\~~i./.•:-: _~\.i~~,.!
./ " .
.' • ~ •••
~ . /' . ' .. '" ~ ,I ••• ' i
.' ~ ~ . :. ".j.,: - ... '-;:
~ ~ __ ~ '.,.. ,:~', .' ,,:.'»~.;:7.~~'
'~.,

'.
=:'.

"'.:.
-,

"".:
.

'.
• : .. . I .7-, .:. ..:.".:

.>' :.
," .,1 •

Fig.1 "Composition With Lines" (1917) by Piet Mondrian. (Reproduced


with permission of Hijkrnuseurn Kroller-Muller, Otterlo, The
Netherlands.Ic Rijkmuseum Kroller-Muller.)

AW

96 CREATIVE COMPUTING
A. MICHAEL NOLL

.1

MACHINE?

PREFERENCES
RANDOM
GENERATED

EXPERIMENT ONE:
HUMAN OR MACHINE?

Piet Mondrian's "Composition With Lines"


In 1914 the Dutch painter Piet Mondrian (1872-1944)
introduced a horizontal-vertical theme into his paintings
which later culminated in the black-and-white painting
"Composition With Lines" (1917). This abstract painting
has been described by a prominent French critic and
writer as "the most accomplished" of Mondrian's series of
paintings based upon the horizontal-vertical theme
(Seuphor, 1962). These paintings are said to incorporate

A. Michael Noll, a researcher at Bell Labs in Murray Hill. New Jersey, is a


pioneer in the use of computers in the visual arts and in experimental
aesthetics. In this article, he describes his classic experiment in which a
computer-generated picture was preferred to a Mondrian painting. The
article is an abridgement of material previously published in The
Psychological Record [Vol. 16, pp. 1-10 and Vol. 22. pp. 449-462].

NOV/DEC 1977 97
masculinity and femininity by symbolizing the masculine computer was programmed to generate pictures using a
as vertical (the upright trees of a forest) and the feminine General Dynamics SC-4020 Microfilm Plotter. The picture
as horizontal (the sea) with each complementing the other drawn on the face of the cathode ray tube was photo-
(Seuphor, 1957). Mondrian sought to indicate the plastic graphed by a 35 mm camera which was also under the
function of the sea, sky, and stars through a multiplicity of control of the microfilm plotter.
crossing verticals and horizontals (Mondrian, 1945). Mondrian's "Composition With Lines," a black and white
"Composition With Lines," shown in Fig. 1, consists of a painting composed of vertical and horizontal bars, was a
scattering of vertical and horizontal bars which, at first type picture that the microfilm plotter was capable of
glance, seem to be randomly scattered throughout the reproducing with suitable programming of the computer.
painting. With further study, however, one realizes that The computer picture thus generated called "Computer
Modri.an used considerable planning in placing each bar Composition With Lines," is shown in Fig. 2.
in proper relationship to all the others. Conceivably, The vertical and horizontal bars in "Computer Composi-
Mondrian followed some scheme, or program, in produc- tion With Lines" were produced as a series of parallel line
ing the painting although the exact algorithm is unknown. segments that were closely enough spaced to slightly
If Mondrian's "Composition With Lines" is studied overlap each other. Although Mondrian apparently placed
carefully, some interesting observations about its overall his bars in a very-orderly manner, the computer was
composition can be made. The more evident of these are: programmed to place the bars randomly within a circle of
(a) The outline of the painting is a circle that has been radius 450 units so that all locations were equiprobable.
cropped at the sides, top, and bottom; (b) The vertical and The choice between vertical bar or horizontal bar was
horizontal bars falling within a region at the top of the equally likely, and the widths of the bars were
painting have been shortened in length; and (c) The length equiprobable between 7 and 10 lines; the lengths of the
and width of the bars otherwise seem to be randomly bars were equiprobable between 10 and 60 points.
d istri buted. If a bar fell inside a parabolic region at the top of the
picture, the length of the bar was reduced by a factor
"Computer Composition With Lines" proportional to the distance of the bar from the edge of the
Many pictures can be thought of as consisting of series parabola. A trial-and-error approach was used to insure
of connected and disconnected line segme ts. Since two that the effect of the picture was similar to Mondrian's
points determine a line, such pictures can be described "Composition With Lines."
numerically by the cartesian coordinates of the end points
of the lines. Thus, a picture can be transformed into
numerical data which are then inversely transformable Human or Machine?
back into the original picture.
After the computer had produced its version of the
Digital computers perform arithmetic operations with
Mondrian painting, two pictures similar in composition,
numerical data under the control of a set of instructions
but one painted by a human and the other generated by a
called a program. If this numerical data were the
machine, were available. Subjective tests were then
coordinates of end points of lines, then the computer
administered in which subjects were shown reproductions
could be programmed to numerically specify a picture.
of both pictures and indicated their preferences and also
This numerical data could then be used to position and
which picture they thought was produced by the machine.
move the beam of a cathode ray tube to trace out the
desired picture. In this manner, an IBM 7094 digital
Procedure
The photographic print of the computer-produced
microfilm and the photograph of Mondrian's painting had
clues to their identity since the quality of the photographs
I. •• •1 was somewhat different. Since only differences in the
1 _. ;-.:=: ..• "" I designs or patterns of the two pictures were desired, the
..--iifi'. ! •~ •
I- - .r.- -_ two photographs were copied xerographically
identical in quality. These copies were arranged in two
to be

- ~I ~~. 1.,~_I.:':.!::1,J
:."': •• pairs so that the computer picture was alternately labeled

. -..
~ I.I~L-'
+ ...-
..!...LC' !..
-. ;t... ,.. - .• J..:-
...-.... --
I ~_I
-I "A" or "B"; the order of presentation was counter-
.balanced. An example of a picture pair as given to the 100

r"--'" r L.. L .•••


1 -. • • - I subjects who participated in the experiment is shown in
-
~ .::1 ~ j I IE.-..•. Fig. 3.

+':r~-. Z.;,.l~·I -Ji:.--. ~


I },. I
In addition to the two pictures, each subject was also
given two questionnaires: an identification questionnaire

1. II~~~I{J.I ~1 L and a preference questionnaire. The identification

~1~' ~-c-- JI 1 •• questionnaire was worded: "One of the pictures is a


photograph of a painting by Piet Mondrian while the other

1_ r·- i~-
-.T~1".II.J~lln
·r
~~ Ii
is a photograph of a drawing made by an IBM 7094 digital
computer. Which of the two do you think was done by the
computer." The subject then checked appropriate boxes
I] III-.+-
I
.••.
I
I

::I. I
I•..•-
II ':L
on the questionnaire for picture "A" or for picture "B" and
also gave written reasons for his choice. The preference
I - L.. II 1•.Ir
, ~ •• questionnaire asked the subject to check appropriate
r-- I
Pc r: ~-
...JI boxes to indicate which picture he "most strongly liked or
preferred" and also to give reasons for his choice. The
© AMN 1965
order of presentation of the identification and preference
questionnaires was counter-balanced.
The 100 subjects who participated in the experiment
Fig. 2 "Computer Composition With Lines" (1964) by A. Michael Noll (c A. were all employees of a large industrial research
Michael Noll 1965,) , laboratory in New Jersey.

98 CREATIVE COMPUTING
I"'=' • ," • i' 1-·
+t I-
I
r.il'.
_". 1-.."' •
-•• I ."L r I

-.1 -:t _~ t!
•I • •••'
:. •·I'!. i-I -tL.
I:: :.'
" "~.~'
I
I I ~ 1•••• - .' .ll •.•. 1• , I I •• I II I

_::r):;~:: :-:.r::j!- I 'I!,'-' +


I -
I-II.,
·1
'. - -• 1,,+1
I
•- '"+ I
I
.
'. " I 1 -

-..·t ....••.
I.,...... .~-. I I J:- I - I I~ t; 1++ 1;--1' £, -I- 1- I -I'·
~ ~ !.. I' ~ _I . I -- • I •
I • -

'1.1 Ii
1- 1 T - -I - I I •• "':t
I•.••.• II • I
r 1'- I -I .1
.:!L7! 1...r'--'"
, I.,~L---';' f II!... L . I!.II '- I - 1· I
t."
.

I• ~_~~,..1_ ~ owl! .1 1- c 11-1';:11'';' I '.1 ..•.I+-~ .fil I

:. II -~---
~ ••I - ~ r'1I 'I" I
- 1 -iL - ::i
I ~-:H-:I' ).~ ~tll a--'-.!*JII-I+~i~ J..
'.III~II':'II~ I-.!... '.1-+1;+11,'
I
,'

1. 11:IJ~'-l."T~1 r~1 ~ lit-

:}7~' -:;.-
Ie- :-1-
I
--
It ~....J--"-,
JI'
-.:::
I.T
11 J
IlL
•••I,
1-
~III_.
~. I
t:=1 1_I I IIH£'1-11.1
".+ _-
I II -
I ••
~ I
~I

• • I. I-h-T-.' '-+-11•1- III-


-I]. t-- ;'-~1~1:1lL..J_
1:1
II - I-IW I-II I -I - •· -I.
r- I 1- T - II ' •
""'""I 'II. ' _. • ""1')'1 _

picture A
I-=-_
r z,
1
1
_ -~ .
L-~ IJ__
:'r-I' I
':L
I I I: -;-111- •..•_!1 i-I ~I ~ 1
.1 - •.• I. I

picture B .I·-,:,:'-ITII
~
Fig. 3 Picture pair as presented on separate sheets to subjects. The
original microfilm and Mondrian photographed were copied xero-
graphically and then reproduced so that both pictures were
identical in quality. (c A. Michael Noll 1965 and c Rijkmuseum
Kroller-Muller.)

therefore, a question arose about the aesthetic


Results preferences for a sequence of patterns varying in some
Of the 100 subjects in the experiment, 59% preferred the attribute from complete order to complete disorder. The
computer picture while only 28% were able to correctly subjects in the Mondrian experiment had little or no
identify the computer picture. Both percentages were artistic training; therefore, a question arose about the
statistically different from selections based upon chance. aesthetic preferences of artists versus nonartists.
Perhaps the subjects' preferences would be affected by
the knowledge that one of the pictu res was generated by a
computer. Forthis reason the first fifty subjects were given 1--- 900 UNITS -----"

the preference questionnaire first while the second fifty


were given the identification

computer generated.
questionnaire first. Ap-
propriate statistical tests (chi-square with Yates' correc-
tion) indicated that the subjects' preferences were not
affected by knowledge that one of the pictures was

The reasons given by the subjects for both their


preferences and identifications were frequently quite
I
~
z
:::>
o
1>'
.,:
.s..HO~~~~.
"'u

.~~\-

o
intriguing. The computer picture was described as being
"neater," more "varied," "imaginative," "soothing," and
en
~ 1
Ya (8)
"abstract" than the Mondrian. One subject even found
some golden rectangles in the random designs within the
computer picture. ~
The knowledge that one of the pictures was produced
by a computer did not bias the subjects for or against
either picture, as mentioned previously. However, the
subjects in this experiment had very little or no artistic
training and also were quite accustomed to the impact of
technology upon many different fields. These subjects
therefore probably did not have any prejudices against
computers as a new artistic medium. If artists and subjects
-. ~

from a nontechnological environment had been similarly


tested, the results might have been different.

EXPERIMENT TWO:
ARTIST VS NONARTIST Fig. 4 Uniform grid structure and underlying computer-generated
pseudorandom pictures. Random perturbations were added to the
X and Y coordinates of each of the grid intersections. For example.
if XG(18) and YG(8) represent the coordinates for an intersection.
then two pseudorandom numbers. XR and YR. with uniform
The results of the Mondrian experiment led to two probability density and specified range. R, are added to the grid
questions. The computer-generated picture looked "more coordinates to produce the final coordinate pair where a bar is
random" to subjects than the Mondrian painting; plotted.

NOV/DEe 1977 99
••.•••I •••
I ••••••
- •1 , __ •_ , _
·_·-,'1-'.----
--.,
••.•.••••••.I .•••.•.••••••

··,,····1 ... -1-'


••••••• - •••• -1.-
.- ..
I •• I

••..•.•..•.
I'
••• ••.•..•.•.•.•
, I ..•.....•.•......
··----, ..·'.·.-1-
--
, __

.•. _----
11 ••- ••,,----
--1'-1-1.--1-1
---,,-,,'-1'-1--
- ... ....--.- ••---1.
--1-
.-- •
.•.
I"'''' ,-- •••••
I ''''''''
-1- '--1--0'----'--1-"1--,
1--1-.1"'1- -1' ..
••• 1 '-1'-'-'1-' ,-, .--'I'j
":I;::;:;;:::::i:~:;: 1
I
•1-'
1--' I
.•....
I I I ...•.
- •I'"
, I , 1_' .•.
-.
••.•.I , .•.• -I
I I 'I,:i.:!.; !::!:::::::~::.I : "1 -1 •••••••
- ••••
_--
: 11::1-~~:~::i::~:~~'~-,11 I I •- ~- 1- .•..•.•••.•.••
---. I I • '1--1 ---'-1.""-,-",
0

1t.,-'11---_._--'-'--1
'' -1--1-"'--- .11 ':T-~::~::~::::7:!=:il:1
. 1-.---1---11....-, 'I
"'1--- 11'--"'-"-"'1'
1-:::j:I:;~;:;7~:!i:'1
_1_"'.'_"_' 11 -I'
__- 1--' -,--I'·' '-'1--' --1-1
'1'-""1-'-'-'-'---
1 ,I. '1-'1 'I'--1"--1"
- .--
,
•.
- I I... --- I I'
1I
17i;; :'ali:7~l!.IT :.!II' !
1 :1-:::.~7-.1~7~!:I.!.;~i•
a1111_ "'-1--1'-'-1'
, ',.-11"
1'1- 1------1' '-/Ti' ,
--1-1-'111'---'"
1--·,., '1" 1-- ,
I I_t-;=:·:t:=~:: : : I:::. ,. • -1.1 --1-- -1111-.-. ••11-- '-1--· "'-_ ...
1'-1---1 1-' '-1-
1 _t

-. 11--1'1'
~'I'-1--1-1
-.-- ..:I:-~-';-:-;-
'l-..
I 11-' II -1-_·_---"'--·1.-
.-----1---1-1----
-'1 1-
- -I"-I-'~
111- ••• -
-: -II:!: I:;17:!: III' i I
"-'-'-,'1-'7:"
I •.--1-' 1- -.1-1-1'- •''=';17:::

1 2 3
.: ~:J,"__ :'.:: ,'_
...r: -.; !.:'. :!-.
I •I , •••
: •• "
I II'" •• I.' . I, , .•.
I-I
-i '~: -:~~:--,: II I' ~~ :,:.
-,.1.1--
• -. _"1-."I
I I_ •• '''' '. -
lilt
.·'---1- '--I
•.•..•. I i I •!!::
.-.'

1'1 ....•
' .- •.••'--',--
,_

:! :~,
!:: !.::. ',1
,'- •• I'"'

:.-11, :,:!-_~~I .
,_ •••-.," I' __ I .•
II
I II - .-

1-- . -I • .!.. ••• IL":" •~T-_.'I·' 1·---' 1'\ II


I __ .•."' .•.
•'\ :l.:-~,._-.- ,--.
' .•.
'. ,. ,.- ••, - -' )
,. - 1- •.•.
"
-'1; I), '''''lll-,-"",,-,I--L-I.
'.,'-
1:: -Li..'!~-:~:~--:
1 'J
I '-!.L -!- , \ I. , ' " , - "
:1'
'1'--' r _:~!.!;-!.'~ ~I
,r I. )I
I~ ...•
I I .•.
L .~I
I. , .'
L.. --
,I~·'--_ -. ','1 -\"--
-I
.•.
'"
-I
.' -
I I •
•••
"-'-"'-"'1 -.}
" •
I '1--- '-. -1'-,-
I'I' -- .--.- J -. --"
I
,.
'i - "I •-I •-,- -- , -::
-1-' .,
'~,'"
•... -I~':'-\I--'-I
• r':'J-''I--J
' -1-'--
1 ---

..•'---'" -'-I~,·.
.-1., 0-'"
'L
I.,
-_
101'-1•...1'-l-'-I'l,--,I."
--1 I, -,
I

--:-\-!T'-
.' ~ -
"J.L-"
J, •I • ,- -

, I·I~~-:!..;·I Ci::--:J:r ,r-t'· ....• --I " -I~-"


I, ..,--I'.11- I"i-
r--'l' .•... r1-,'
.\l I
•\! ..-' -'-=-11 -'. ,Ito. (
.-',
-I'
.••11-1·,1-:~-I:1
I';:"rl,'_:='
. ,.::~
J-_.- ..
1::111
-lr~I-_-_r --,J - I,
l'li~~'-;j·L:-!:.I; Irll--:~I~
7i I ','.J.7"_!..::'"'.::-.:'.',i\
-; ,-'" .!=:: ~1.:-: ,IJ i i ~I
:-1" ._1 - Irl.\--
~ -~a~l
I 1-
_1--
, I_~- .1 , _~-,
1-Irr'-I'--'I'
4-=,1 -
,--
-1-,
- '0,' -. --\'
--,•I' .- -'
1-
I'
-"!.7'
I .-.
, - '-_!
1-,--'
,-. I~I "-.
- •...- r-
I
1-.1-
-"I--:J1_-- 1- •.•. ~ I -.: ;lJ-I

4 5 6
1._, J _I, ~~
, ,'
•.•• - < •
•• I ••
;.:_

••
~ ." • s»: J;~,I. •••
-,,-.;')1
'.
E·•••• 1
,. ,J r :«
~I~.,~i·""f_: .~ r.. .' ,-.., -••
u.. ~-'I-;"- ,II -i~.I ,r"'1\-: J ••: _ • .: j.~,o;J 'l-I
~..J'\"., ';"-:' •..•.••.
-~.!l '.~ 'r -. ~ # - r:, ,'I
, ~.•IJ· 1 ..•h. .!~-"'"-.f.i'''
I
,'\1
I ,I ~,'":;:~Y!·
I .-.!.,...
I
:- ,=j - -~
,~".:.t\'-.!1-'-'--1 1
~ .C""-, ~ r
',p.,I, 1.- I"
, .. -;-;f~-,'''''',·,-,,~ r'
-_
,. --...,,,- J" "I
. r7'~--i
i. - ., - -,
~.J. -
' ~I
,
',1- r"" 1',!T. II ,,-,., •I
.., , - "
l ,'...r.:if ~~,,:
I
"'-"
'I. n: I.P!F r \--'~")1"~
-',"'1,
•.•••
'
~ - ~-
I,
-

.J--- "1
,
L '\0
\_

dl.~T,"""
-,
1
T_~
~I --
~_,I
,i '1'-, ,-1;::1"
r -_ rT" .'"
, r. -"- !:'- \ +-
-_I. .....-..
~J -

,T.. ,- ~M'I1-- 1 'I 1L. '


Jt ' ~' ••

7 8 9
_... -', ' .....',
.. '-rr,
- ,
, '.r- " -, ,-
'- "-
I.' ..rr: J-:"".
-, 'I' I- •.f
il ~." ..•• _ f
-1- - : t-,
'i,I' '.- 'I,: - .J- "'of: •.~ - •
, •
-1 ..-' :.' -t"••..•..'1· ! - • ,- -:';'11. - I
,
-
-I •~ •
--1....::· .-~ ..• \~t-,-r-I
;I .\0."" •••CW.., " ;: .";4"? ~. ~ •••J I~I
.. r' ..•.••
,'- I-'l~-"'.... , ., -•.
?- - -r It! I
"
_._1,
L· ~ r~ - -\.••.
- .,
I
II, '.,. ,lor.
-.a.. ,-,J.- .iI,' - -· •.•
- "Ioj -.r - ~ _
r -.~~~
I• 1-'1'':
~.•- ;-_ -,.:,~.••
L. ~ ,
~ t~·11 "-I
1~11' '.::ao.:.-, ~I"'I"',I,
.--1 ~-t._T.:,~:.4-'1 -£t.!,:. J I
r ~,..i~::-:3';:Ir-.)
"1-~-"""
I

.e
I - '. I ,-
-=-l
'&-=:-, -,
-.
-'1oII
I )'

I"
'I _I II I -I 'I J
I -~- ~
,\,-'--
»
~ I, __ fi.- .•
,,-._Jjl ~
• -",.:lr'-I r. .:"'C'- - I, 'II -t: , !-ol -
'j '- -; ~%!.~ T." 4- ~-.
" ~T.'~ ~.!:!.r-:
••... I~. 1_-
'I": I,~ .•-•.l-
I -fit
-
., - I
"
• r 1_'.~ 1._, ~I' • 1,'-- -':L. •••••' ~- 1-;1" ~
~ ., rl - =, :-.,_,- .1:]. ",.'~
•• _ i' '" "I- -~ ~;~'-_ .!'L
',- _ 111- -,
, ..:,, I, -
I' , ,--,

10 11 12
Fig,S The 12 computer-generated pictures used to study artistiC pref-
erences, The three pictures in any single row are statistically
identical. Four ranges of bar perturbations (0, 10, 50, and 250 units)
were used to produce the four sets of three statistically identical
pictures,

CREATIVE COMPUTING
100
These two questions led to a second experiment in subjects placed in the no-artistic-training category had
which only computer-generated pictures were used as taken no art courses; they henceforth will be called the
stimuli for a homogeneous subject population of un- nonartistic-trained subjects or for short, the "nonartists."
derg rad uate students d ifferi ng on Iy in thei r artistic Thirty-nine subjects were classified as artists based upon
training. The experiment was designed to determine: (a) their artistic training; 85 were classified as nonartists.
the scale of aesthetic preference for different ranges of
randomness in pseudorandom patterns,' (b) the
differences, if any, in preferences for statistically identical
pseudorandom patterns, and (c) the differences, if any,
Results
between the aesthetic preferences of subjects with and
without artistic training. A number of different mathematical models and
statistical methods were used to analyze the data to
determine answers to the questions posed in the introduc-
tion to this experiment
Stimuli
If the individual differences between the psychological
A digital computer was again programmed to plot a scales of the subjects are assumed to be negligible, then
.series of patterns consisting of vertical and horizontal an "average" psychological scale can be determined for
black bars that varied in placement, length, and width. The the whole subject population. Figure 6 shows this sing'le,
bars were constrained to fall within a circular region with a unidimensional, underlying, "average" scale (determined
predominance of vertical bars at both sides of the region. by a Case V solution of Thurstone's law of comparative
The bars fall ing within a parabolic region at the top of the judgment), The three patterns corresponding to a bar-
circular region were made increasingly shorter as their perturbation of 50 units were most preferred, according to
distance from the boundary of the parabola increased, as this solution. .
shown in Fig. 4. All bars were placed at the intersections of Perhaps the most surprising result of the experiment
random perturbations from a' uniform grid. A series of was the large variability 'among the subjects in their
pictures ranging from a completely uniform bar placement preferences for the pictures, The answer to the question of
to a very random bar placement was produced by varying whether there is a single scale of preference for ran-
the range of the perturbations from zero to a maximum. domness appears to be that there is not one scale but
Four different ranges, 0, 10, 50, and 250 units, were many scales and possibly as many scales as there are
specified for the perturbations. Three patterns were subjects (or permutations of stimuli). Thus, a single scale
calculated bya digital computer and plotted automatically was not really appropriate for the data, '
for each range; the three patterns for each range were The results show that most subjects judged the stimuli
statistically identical. A total of 12 patterns were thus on the basis of randomness, and for them the statistically
produced and are shown in Fig. 5. Although the three identical pictures were equally preferred. However, a
pictures generated at each range varied in actual bar small group Of subjects did not judge according to
placement dependinq upon the pseudorandom numbers randomness but characteristically expressed preferences
applied, they were identical in a statistical sense, since between pictures of the same degree of randomness,
they were all produced from the same pseudorandom Although the judgments of these subjects 'could not be
process. related to some other physical property, their very
Glossy photographic prints were made of all 12 existence suggests that statistically identical pictures
computer-generated patterns. Multilith mats and prints could include subtle differences tor some viewers.
were then made of all 66 possible pairs in both AS and SA As a group, the aesthetic preferences of subjects with
orderings. The multilith prints were placed into 20 loose-
leaf binders. Each binder contained all 66 possible pairs,
and a different random order of the sequence of the pairs
and their AS order was used for each binder.

Procedure
A combined instruction sheet and background
questionnaire was distributed to the subjects. The
instructions were: "This is a study to investigate the
aesthetic appea] of various patterns. The booklet contains
66 pairs of pictures. Your task is to decide which picture of
each pair is more appealing to ybu."The questionnaire.
requested each subject to give his name, age, sex, marital
status, occupation, majorfield of specialization or study w
u
and highest completed education or degree. Each was z
also asked to "briefly describe any artistic training or art W
0:
courses that you have hac]," . . W
u,
The experiment was conducted at a small university in W
0:
New Jersey. The subject" population consisted of 124 0..

undergraduate students (53 males and 71 females) at the


university. The university attracted a rather hornoqeneous
student body; therefore, the subjects could be assumed to
have similar socioeconomic backgrounds. '
The subjects' descriptions of any artistic training or art
courses they may have taken were used to classify' their
artistic training as (a) none or (b) some or substantial. The
quantity and depth of art courses were considered along
with any substantial self-study or private training, The Fig.6 Preference scale values for all 124 subjects.

NOV/DEe 1977 101


artistic training were virtually identical to those of the one particular random realization by the computer were
subjects with no artistic training. used.
The results of the present experiment indicated that Clearly, the computer picture was more random than
some subjects preferred patterns with a medium range of the Mondrian. Further programming of the computer,
randomness, while others preferred the patterns at the however, has indicated that more elaborate schemes can
extremes of randomness. The differences among all be used to produce a picture that even more closely
subjects were so great that preferences could not be resembles the Mondrian. Undoubtedly, an indistinguish-
averaged across subjects without committing a severe able pair could finally be obtained.
injustice to the data. Conventional scaling techniques, if The results of the computer-generated picture experi-
applied to the results of the present experiment, would ment raise questions about the special aesthetic sense
have produced a conclusion consistent with these past frequently attributed to artists. If artistic training is
experiments, but the powerful techniques of rnultidirnen- requisite for classification as an artist and if aesthetic
sionalanalysis were able to accommodate the individual preferences for random patterns are at least a part of
preferences of each subject and show that the preferences artistic judgment, then the results of this experiment,
were different enough that they could not be averaged under these assumptions and for the carefully controlled
together. conditions of the experiment, livo~ld seem to refute the
popular assumption that artists possess a special
aesthetic sense. Perhaps the aesthetic judgment of each
9iscussion and Conclusion artist is distinctly individualistic and should be valued for
Mondrian has been widely acclaimed as the ;'greatest this individuality .
Dutch painter of our time" (Bradley, 1944) and as one of . Artistic judgment has many different facets, and any'
the "rnostintluential masters of painting" (Lewis, 1957) .. number of them might be involved with ju,dging random
However, a computer-generated random pattern was patterns. For this reason, the data presented in this paper,
preferred over the pattern of one of Mondrian's paintings. which pertain only to artistic judgments of a small subset
Furthermore, the majority of the subjects participating in of random patterns, can only begin to elucidate the totality
the experiment were unable to correctly identify the of artistic judgment.
cornputer-qenerated picture.
Both patterns were conceived by humans, although
certain features of the computer-generated picture were REF!:RENCES
decided by a programmed random algorithm. The BRADLEY, J. 1944. "Greatest Dutch Painter of our Time." Knickerbocker
computer functioned only as a medium performing its Weekly, Feb. 14,3, (51). 16.
operations under the complete control of the computer LEWIS, D. 1957. Mondrian. New York: George Wittenborn, Inc.
program written by' the programmer-artist. As stated MONDRIAN, P. 1945. "Toward the True Visiton of Reality." In Plastic Art
and Pure Plastic Art, New York; Wittenborn and Company.
before, the programmer-artist working with the computer SEUPHOR, M. 1962. Abstract Painting. New York: Harry N. Abrams, Inc.
produced a pattern that was preferred over the pattern of SEUPHOR, M. 1957. Piet Mondrian. New York: Harry N. Abrams, Inc .•
One of Mondrian's paintings. This would seem to detract
from Mondrian's artist abilities. However, artistic merit is
not generally accepted as something that can be deter-
mined by a jury. The experiment was designed solely to
compare two patterns that differed in elements of order
and randomness. It is only incidental that the more-
orderly pattern was painted by Piet Mondrlan while the
preferred random pattern was produced with the
assistance of a digital computer.
The randomness introduced by the computer was in the
form of a mathematical algorithm for computing se-
quences of uncorrelated numbers. Thus, the "ran- Announcing .
domness" is completely deterministic, and the resulting Announcing .
pattern is mathematically specified in every detail. The Announcing .
writing ot the computer program was done in an objective
manner incorporating appropriate' mathematical for-
mulas. All of this indicates that no attempt was made to

COMPUTERFEST '78
communicate any emotions on the part of the programmer
to the final computer pattern. Therefore, the experiment
compared the results of intellectual, non-emotional
endeavor involving a computer with the pattern produced
by a painter whose work has been characterized as
expressing the emotions and mysticism of its author. The
The third annual Midwest
results of this experiment would seem to raise some Regional Computer Conference and
doubts about the importance of the artist's milieu and Exposition will be held in DetrOit,
emotional behavior in communicating through the art
object. But then again, many present-day aestheticians do
Michigan, June 23 -25. For info,
not subscribe to such definitions of art, and some even write: P. O.. Box 9578
question whether art can be attributed any defining North End Station
properties. Detroit, M I, 48201
Since xerographic copies of a photograph of the
Mondrian painting were used as stimuli in the experiment. Presented by:
any artistic effects due to the size or painting techniques MIDWEST AFFILIATION OF Cc)~PUTER CLUBS
were eliminated. The subjective comparisons hence were P.O. BOX 83, CLEVELAND,OH, 44141
only on the basis of differences between the two patterns.
Also, only one particular painting by Mondrian and only

102 CREATIVE COMPUTING


FINAL EXAMS , /' .

-Let the Compute


WriteThem

Bernard Eisenberg*

At one of its meetings earlier this preparing a final examination in ble, the required number of final
year, the CUNY Board of Higher courses having a large number of examination copies. Frequent notices
Education decided that units of The sections, is to form a committee of five from Deans are sent to the Chairmen
City University would move to a . faculty members who are teaching the and faculty reminding them about the
trimester system by September 1977. same course. After three or four deadlines, It is not unusual to have
Kingsborough Community College meetings at which the committee some final examinations submitted on
formulated a modified trimester plan to members and others teaching the the last day of the semester or even on
start during the Fall 1'976 semester. course submit possible questions and the day of the final. This is one reason
This plan was approved by the gover- comments regarding the examination, some Deans and Chairmen become
ning body at the College and the a draft of the final is assembled and bald rather fast.
Board. The plan calls for an academic circulated to all faculty teaching the
year consisting of two 12-week course. The draft is then modified one Computer to the Rescue.
semesters, one in the fall and the other or two meetings later after additional . How nice it Would be to have a
in the spring, and two six-week comments are made, and this becomes computer produce a final examination
semesters; one in the winter and the the final examination for the course, in about threeIninutes by typinq a
other in the summer. We usually refer The examination is given to the typing couple of words into a teletypewriter
to this as the 12/6/12/6 plan. Without service and after it is typed, it's reyiew- connected interactively to the com-
going into further details about the ed by a faculty member for typing and puter. Well, the clay of the corn-
plan, it means that for each academic mathematical errors. After these errors puterized math final is here and there
year,at least four final examinations are corrected, the examination is appears to be no reason why this
will have to be prepared for each of the photo-offset and enough copies couldn't be done for any course in any
basic courses offered in all semesters. printed to accommodate all sections. discipline. .
In addition, makeup finals will' also In the evening session, each ofthe The Math 05 course entitled, "Inten-
have to be produced for those students three or four faculty teaching these sive Math Review," was the first course
who for legitimate reasons did not take courses prepares his own final and has selected for the preparation of a
the final exami nations at the schedu led it typed and reproduced, computerized final examination. This
time. This process usually starts about is a remedial course required of all
halfway through the semester and students Who don't do well on the
deadlines are given for submission of placement examination, There are
the Old Way. the examination to permit typing and approximately 600 to 800 students
In the Math Department, of which I photo-offset. If the examination is not enrolled in about 30 day and evening
am a member, the usual procedure for ready fortyping on time, it becomes the sections of this course during each of
responsibility of the faculty members the regular semesters and about 100 to
"Dept. of Mathematics and Computer Science, '
. involved to type, if. necessary, and 150 students enrolled in four to six
Kingsborough Community College, City Universi-
ty of New York. reproduce in whatever manner possi- sections during the summer session.

NOV/DEe 1977 103


The course covers a review of
arithmetic and elementary algebra, It
offers no credit and has been taught for
Here's one final exam prepared
four hours a week 'during the regular
sessions,
by the computer ...
Speclflcatlons.
The specifications that had to be met, MATH 05 FINAL EXAM (PREPARED BY YOUR FRIE~DLY CUNY COMPUTER)
by the computerized final were essen- !,'ART1
tially those that should be met for any PLEASE ANSWER ANY 10 QUESTIONS OUT OF THE 12 QUESTIONS IN THIS PART.
final examination. " --~--- --- -- --------- --- -- --- -- ------~----
1,' The questions produced had to be 1. cONVERT 11.0X TO AN EQUIVALENT DECIMAL AND FRACTION.
diverse enough each time the corn- 2. GABE' SPENT 4/8 OF HIS INGOME ON HI~ HdME.IF HE EARNED
puter ' was run so that they were $2~904. , HOW MUCH DID HE S~END ON HIS ~OME?
3. CONVERT THE FRACTION 6/16 TO A QECIMAL AND TO A PERCENT.
representative of that term's work and 4. ROUND: 61.3226 TO THE NEAREST HUNDREDTH.
the curriculum covered, 5. MuLTIPLY: ~5.980 BY 2;0
2,' Although some questions might 6, S0~TRACT: 3 6/~ ~ROM 6',(12
7i COMBINE 0ND 'EXPRESS IN LOWESt TERMS: 9/7 - 1/4 + 7/6
have the same wordinq from one
8, COMPUTE: 30X OF 21.6
examination to another, the numbers in 9. DIVIDE~ a5.~5 BY 7;2 (GIVE ~NSWER TO NEAR~ST T~NTH.)
the questions had to be 'different for 10. DETERMINE WHICH OF TH~ FOLLOWING FR~CTIONS IS rH~ ,
each examination, ' 'LARGEST: 7/30, 6/2'1 " , 8/31
11. DIVIDE:' 5 5/6 BY 6 3/8
3, The numbers used in each of the
1~; IF 6 PE~ciLS COST 60 CENTS,FIND THE COST pF 19 PENCILS.
problems had to be randomly suitable,
This means that the numbers selected
by the computer had to be such that F'ART 2
solutions of the problems presented P~EASE ANSWER ANY 10 QUESTIONS pUT OF THE 12 QUESTIONS IN THIS PART.
would not come out -to six decimal --~------
places when inteqers were desired, 1. SOLVE FOR y! Y + tl = 6
that division by zero wouldn't occur in 2+ HOW MANy CENTS ARE THERE: IN X QUARTERS?
the, problems and that unusually Iwge
,3. COMBINE LIKE TERMS: 2X + 4Y'- 2)( t 3'( - 7X - flY
numbers wouldn't appear when 3
smaller ones were desired,and vice- 4. FACTOR COMPLETELY: 4X 16X
versa,'The numbers in the problems
23 194 42
had to reflect those used ln similar
5. FAC~OR COMPLETELY: 9R S + 27R S - 36R S
classroom exercises, 6. FIND THE VALUE OF W IF W = (6X - lY)/(7Z - 8U) AND
4, ~ach time a final is to be produc- X = 1, Y ~ 2, Z ~ 3.3, AND W 1
edl the orde] in which questions appear 7. SOLVr~ FOR T: 9T/l ,= ;5115
must' be random; that is, it should be 8. MULTIPLY I (6V - 8)(6V + 81
9. S~MPLIFY: (2X - 12)/(X SQUARED 36)
equally likely for any question to be 10. SOLVE FOR G: AG - 9 = BG + 7
first or second or t~irct etc. " 11. SOLY~ FOR Y: Y SQUARED' - 9 = 0
5, Provision should be made to give
students a choice from those questions 2 9 5 8
12. SIMPLIFY THE FRACTION: 12A B C/24A B C
selected by the computer so that any
deviations in covering the course
material by the large number bf faculty PART :3
teaching it, would still permit the
F'l..E,~!"EANS\'JEf,
ANY 4 OUESTHlNS OUT. OF
. , THE 7 ClUESTIONS IN THIS PAin
student to answer a sufficient number .

of questions from the curriculum 1. SOLVE THE FOLLOWING 2 EQUATIONS ALGEBRAICALLY FOR X AND Y:
covered' by his/her teacher, ~jX + 2)' ,= -\
, 6, The program has to be flexible 7X ,- 4Y = -42
enough to incorporate new material 2. SIMPLIFY THE FOLLOWING FRACTION:
that might be introduced from term to 1 1
term orto delete questions no lonqer +
relevant, 2 7
In order to meet these requirements,
3 2
the last six final examinations given in
Math" 05 'were reviewed, There 4 3
appeared to 'be a core of common
questions in both arithmetic' Sind ~. THE LENGTH OF A RECTANGULAR GARDEN IS 39 LONGER THAN ITS
WIDTH. IF 650 FT. OF FENCINd' ARE NEEDED TO ENCLOSE THE
elementary algebra that were repeated G~~DEN' WHAT ARE ITS LENGTH AND wiDTH? '
from term -to term, For example,
students were asked how to add, 4. IF 35 POUNDS OF FERTILIZER WILL COVER 735 QUARE FEET OF LAWN,
subtract, rnultiplyiand divide whole HOW M~NY POUNDS ARE NSEDED TO COVER A REtTANGULAR
LAWN 49 FT~ BY 42 FT.? '
numbers, decimals, fractions and mix-
ed numbers, Some questions required 5. JULIO HAS 30 STAMPS. SOME ARE 3 CENT STAMPS AND'THE OTHERS
them to convert 'decimals to fractions ARE 6 CENT STAMPS.IF THE TOTAL VALUE OF THE STAMP~ IS
and percents and vice-versa, They had 51.50, HOW MANY STAMPS OF EACH KIND DO~S JU~IO ~AVE?
to know how to apply these conver- 6. TWO TRAINS THAT ARE 1120 MILES APART, TRAVEL TOWARDS EACH
sions in real-world problems, They OTHER. oNE TRAVELS AT 69 MI./HR. AND THE OTHER TRAVELS
were required to solve linear numerical AT 91 hJ~/HR., HOW LONG WI~L IT BE BEFORE THEY MEET?
and literal equations, as well as
7. SOLVE GRAF'HICALLY FOR X AND Y:
quadratic equations. They were also x .:~~Y 3
required to know how to factor an 5X + J.Y 3'7

104 CREATIVE COMPUTING


algebraic expression, how to apply this
... and here's another generated in the solution of equations, and how to
solve a system of two linear equations
by the same program. algebraically and graphically. They
had to perform the arithmetic
operations on algebraic fractions and
expressions and, finally, they had to
MATH 05 FINAL EXAM (PREPARED BY YOUR FRIENDLY CUNY COMPUTER)
know how to solve a variety of word
PART 1 problems algebraically.

PLEASE ANSWER f~NY 10 QUESTIONS OUT OF THE 12 QUESTIONS IN THIS PART. Program Development.
To develop acomputer program to
1. IF 11 PENCILS COST 77 CENTS,FIND THE COST OF 24 PENCILS. simulate these exams, it was decided to
2. SONNY SPENT 4/9 OF HIS INCOME ON HIB HOME.IF HE E@RNED
$29133. , HOW MUCH DID HE SPEND ON HIS HOME?
divide the examination into three parts.
3. DIVlDE: 4.46 BY 7.0 .IGIVE ANSWER TO NEAREST TENTH.) The first would cover arithmetic, the
4. CONVERT 16.7% TO AN EQUIVALENT DECIMAL AND FRACTION. second would cover elementary
5. DIVIDE: 8 2/6 BY 8 7j8 . algebra, and the third would contain
6. COMPUTE: 36% OF 32.4
7. FIND THE AREA OF A TRIANGLE IF UNE SIDE IS 7 FT. LONG AND
word problems, simplification of a
THE ALTITUDE UPON THAT SIDE IS 12 FT. complex fraction and problems requir-
8. ROUND: 67.7431 TO THE NEAREST HUNDREDTH. ing the solution of two simultaneous
9. MULTIPLY: 25.790 BY 4.3 equations algebraically and graphical-
10. AN ARTICLE SELLS FOR 120.12. A 61 SALES TAX IS ADDED.
ly. A bank of 18 arithmetic questions
WHAT IS THE TOTAL PAID FOR THE ARTICLE?
11. COMBINE: 146.428 - 5.73 +9.7 was prepared for Part 1. A bank of 18
12. SUBTRACT: 6 5/9 FROM 9 1/12 elementary algebra questions was
developed for Part 2 and a bank of 10
PART 2 questions was selected for Part 3.
Here's how the program works. Let's
PLEASE ANSWER ANY 10 QUESTIONS OUT OF THE 12 bUEBTIONS IN THIS PART. assume that the faculty have decided
that the students should answer 10 out
ir HOW MANY CENTS ARE THERE IN X QUARTERS?
2. SOLVE FOR G: AG - 6 = BG + 12
of 13 questions in Part 1, 10 out of 13,in
3. FACTOR COMPLETELY: B SQUARED - 2B - 8 Part 2 and 4 out of 7 in Part 3. Let's
4. WRITE AN EQUATION FOR THE FOLLOWING WORD PROBLEM further assume that such a decision by
BUT DO NOT SOLVE. 9 TIMES A NUMBER IS 4 MORE the faculty will not take more than a
THAN 4 TIMES THE NUMBER. FIND THE NUMBER.
day. The latter assumption may be
5. SOLVE FOR Y: Y + 6 < 1
6. SOLVE FOR Y: Y SQUARED - 36 = 0 somewhat risky, but not unreasonable.
On the first day of classes or during the
4 9 72 first week, the program (developed in
7. SIMPLIFY THE FRACTION: 36A B C/24A B C
BASIC) is run using the aforemen-
8. COMBINE INTO A SINGLE FRACTION: S/(9X) - 9/(45X)
9. COMBINE LIKE TERMS: lX + 5Y - 3X + 8Y,- 5X - 12Y tioned selectivity numbers and within
three minutes, the final examination
8 7 2 3 4 2 produced is the final examination that
10. FACTOR COMPLETELY: 3R S + 9R S - 12R S the student gets. This examination will
11. MULTIPLY: (3V - 7)(3V + 7)
12. FIND THE PERIMETER OF A TRIANGLE WHOSE SIDES ARE contain randomly-selected questions
(3X + (-4Y»,(-2X + 8Y), AND «-9Y) - 7X) from each bank, they will be randomly
presented in the examination, and each
F·ART 3 program run will contain different and
suitable numbers for each of the
PLEASE ANSWER ANY 4 QUESTIONS OUT OF THE 7 QUESTIONS IN THIS PART. questions. (Two sample copies
1. IF 54 POUNDS OF FERTILIZER WILL COVER 1782 SQUARE FEET OF LAWN,
produced in a six-minute period are
HDl~ MANY POUNDS AF:E NEEDED TO C(:Jl)[I'~
,.,r~ECT(.'NGULM~ shown.) The computer printout of the
LAWN 77 FT. BY 84 FT.? examination is given to the reproduc-
tion department for photo-offset and as
2. SIMPLIFY THE FOLLOWING FRACTION: .
far as the faculty are concerned that
1 1
+ final is finished. No further typing is
4 '7 needed.

3 2 Benefits.
Faculty don't have to spend long
4 3 hours meeting and bothering each
3. SOLVE THE FOLLOWING 2 EQUATIONS·ALGEBRAICALLY FOR X AND YI other to meet deadlines. The time
7X + 6Y'~ 14 saved by the faculty can be devoted to
7X - 1 Y ., -3!5 their students and teaching rather than
to the chores of preparing the final. To
4. THE LENGTH OF A RECTANGULAR GARDEN IS 21 LONGER THAN ITS
WIDTH. IF 350 FT. OF FENCING ARE NEEDED TO ENCLOSE THE improve this program still further, one
GARDEN, WHAT ARE ITS LENGTH AND WIDTH? could make it a multiple-choice-type
examination which could be machine-
5. MARCEL HAS. 50 STAMPS. SOME ARE 4 CENT STAMPS AND THE OTHERS g'raded. This however, would do the
ARE 7 CENT STAMPS.IF THE TOTAL VALUE OF THE STAMPS IS
'3.20, HOW· MANY STAMPS OF EACH KIND DOES MARCEL HAVE? student a disservice, in math courses at
least, since we're interested in the work
6. A COLLECTION OF 54 COINS CONSISTS OF DIMES AND QUARTERS done and method used to support the
AND HAS A VALUE OF $10.80. HOW MANY OF EACH ARE THERE? answers attained. The reasoning and
7. ONE NUMBER IS 5 MORE THAN 7 TIMES A SECOND NUMBER. thinking used to solve a problem are
THEIR TOTAL IS 29. FIND THE NUMBERS. more important than the answers.

NOV/DEC 1977 .105


Time Saved Using Computerized Finals fact, in those questions where a per-
son's name is mentioned, the name is
A reasonable estimate of time saved in a semester by using computerized also randomly selected. The complete
finals for Math 05 is as follows: set of questions may be given to the
Faculty time for final exams: 50 hours/semester - day session students and they can be told that the .
15 hours/semester - eve. session major portion of the final examination
Typing time for final: 2 hours - day session will be selected from this set. The goals
6 hours - eve. session for the course are thereby set at the fi rst
Faculty time for 3 classroom exams: 72 (assuming 2/3 of faculty session. As an alternative to giving the
participate) students the entire bank of questions, a
With savings of this magnitude, each regular semester and probably a third separate bank of 30 mixed problems in
to 'half as much for each six-week winter and summer session, it would arithmetic and algebra is available and
appear economically feasible to computerize all final and classroom exams can be used.
for basic courses in each discipline. The larger the number of multiple It frequently happens that with large'
sections Ior.a course, the greater will be the faculty time saved. groups of students taking the same
course, the final exam is usually
Nevertheless, a second program has semester it is customary for faculty to administered in large lecture halls with
been produced which 'not only prepare a review sheet that serves as a students occupying alternate seats. By
presents questions and suitable guide for students in preparing for the using three different computerized
numbers randomly, but also gives the final. The review sheet usually high- finals for the same course, all the seats
answers to each of the questions. This lights those topics the student will in the lecture halls may be used and
also saves some faculty time when they be responsibile for and will most likely final exam number 1 may be given to
prepare to grade the examinations. For contain a list of problems he/she those students occupying columns 1,
the benefit of bilingual students, a should know how to solve. The faculty 4,7, 10, etc., exam number 2 may be
third program will produce a random members no longer have to do this. given to those in columns 2, 5, 8, 11,
final examination in Spanish, with Once again, on thefirstdayoftheterm, etc., and exam 3 may be given to those
answers as well. instead of during the last two weeks, in columns 3, 6, 9, 12 etc. As a
the complete bank of questions in all consequence, fewer proctors Will be
Other Savings. three parts of the examination can be required to administer the exam and
There are other savings and benefits run off by the computer in about three student cooperation on the exam is
from the use of computer-prepared minutes and again the questions are minimal.
random final examinations that will randomly positioned in each part and
accrue to faculty and students as well. the numbers used are suitable and Improving the Quality.
During the last two weeks of each randomly selected by the computer. In To improve the quality of the exam,
the bank of questions in each part will
be increased by at least 50 percent
during the current semester so that
there will be at least 27 questions in
each of Parts 1 and :2 and at least 15 in

Computer Part 3. Any other suggestions from


faculty and students who use these
exams this semester will be incor-

Technician porated in the next master program.


Other future plans call for com-
If you know computer software, puterizing the three exams given
during the semester. Since an exam is
you may qualify as a Digital Systems usually given after several topics are
Technician in our Linden, N.J. facility. covered, the bank of questions from
The person we're looking for has a basic know- which each of the classroom exam
ledge of electronics, possibly combined with an questions is selected will be solely from
understanding of control circuits. After training and these topics. Starting with the winter
added experience, your work will include program· session, all classroom and final exams
ming in assembly and higher level languages. in Math 05 may be computerized with
You should have six months to three years experi- and without answers and bilingually in
ence as a computer technician to handle software- Spanish ..All makeup exams in Math 05
oriented activities associated with a process control which have to be prepared, can be
computer and its interfaces. done so in less than three minutes.
Duties will include troubleshooting via diagnostic Although not all faculty (about 13)
programs, loading and off-loading disc packs, control teaching Math 05 may wish to join this
of records and spare parts for maintenance, and
project for one reason or another, the
tracking of system changes and enhancements.
initial reaction appears to be that most,
Associate degree preferred.
if not all, will. All of the evening-session
For consideration, please forward a complete
resume to: Professional Employment Coordinator, final exams can also be run on the
Exxon Chemical Company USA, P.O.Box 222, Linden, computer and a different one may be
N.J. 07036. given to each evening session instruc-
tor.

E)$(ON Future projects will consist of the


development of similarly computerized
exams for such multiple-sectioned
courses in Math and then in other
CHEMICALS disciplines. •
We are an equal opportunity employer, m/f. CREATIVE COMPUTING
Part 2: Formal Grammars and Lanquaqes

IT's EASY WI-tEN


YOU UNDERSTAND
FORMAL.. GRAMMARS!

John Lees

The preceding article in this loosely-connected series DIGIT:: =0111213141516171819}


gave an introduction to computer languages. Now we're
Looks rather messy, doesn't it? Well, it isn't. Most of that
going to take a closer look at one of the primary tools for
understanding and manipulating languages, the formal. is just formal notation. The fi rst line is the definition of this
grammar. grammar, G1. VN, VT, and P are sets, and S is an element of
set VN called the start symbol. VN is the set of non-terminal
Underlying every language, natural or artificial, is a
symbols, that is, symbols used in the grammar which don't
grammar, or set-of rules for producing the language. In
English, we say that a sentence is correct if it is produced end up in the language. VT is the set of terminal symbols,
those which do end up in the language, and P is the set of
according to the rules of the English grammar. "The is
paper white" is not a correct sentence because it cannot rules, or productions, which define how the terminal
be produced according to the rules of the English symbols may be combined to produce sentences of the
grammar. "GO TO TOWN" is acorrect English sentence; it language. In the productions, ": : =" means "produces" or
is also a correct PLII sentence, but not a correct Basic "is replaced by," and the "I" means "or". The language: L1,
sentence. It all depends on the grammar. defined by the grammar, G1, is the set of all possible
It could be noted in passing that "The door walks with strings, or sentences, produced by the grammar. The
green melodies" is a correct English sentence. It doesn't language L1, like most interesting languages, is infinite.
mean anything, but it is grammatically correct. Grammar Now how does this grammar work? Let's see if we can
(syntax) and meaning (semantics) are not necessarily write the set of rules which produce the sentence "02145".
connected. However, it is generally agreed that it is uncool We begin with the production having the startsymbol as a
left-hand side.
in a computer language to allow syntactically correct
sentences without meanings. But do keep in mind that S : : = NUMERAL
grammar and meaning are two entirely different things, Now we replace a non-terminal on the right-hand side with
perhaps especially when dealing with comp.uters. the right-hand side of a production of which the non-
Let's introduce a distinction. Not all grammars are terminal is the left-hand side. Better read that sentence
formal grammars. A formal grammar is one which we can again. We want a multi-digit numeral, so we'll make the
completely specify in a particular way using a standard- following substitution of "DIGIT NUMERAL" for
ized notation. Very few of the languages we use can "NUMERAL". We can do this because NUMERAL, the
actually be defined with a formal grammar. The "natural" right-hand side of the production S : : = NUMERAL,
languages, such as English and French, cannot be appears as the left-hand side of the production NUMERAL
formally defined. That is one reason why we don't have : : = DIGIT NUMERAL.
machines which can understand English or translate
S: : = DIGIT NUMERAL
between natural languages.
You are all familiar with one very simple language, that At this point we can subsittute for DIGIT a terminal,
of numerals. Things like "123" or "02145". Being a simple specifically 0, giving:
language, it has a Simple grammar: S :: = 0 NUMERAL
G1 = (VN' VT, P, S) Then we substitute for NUMERAL AGAIN:
VN ={S, NUMERAL, DIGIT} S:: =0 DIGIT NUMERAL
VT ={ O,1,2,3,4,5,6,7,8,9} For DIGIT:
p ={ s: : = NUMERAL S :: = 02 NUMERAL
NUMERAL: := DIGIT Keep on like that until we have:
NUMERAL: := DIGIT NUMERAL S:: = 0214 NUMERAL
NOV/DEC 1977 107
This time we make a different substitution for NUMERAL, Not that the Basic you use on your friendly
since we don't want the numeral to grow any larger: neighborhood computer was produced by a compiler
S :: = 0.214 DIGIT generator. The Basic language is not that well-behaved.
It's easier to write a compiler by hand, in most cases,
And a final substitution for DIGIT:
although you certainly use as much of a grammar as you
S :: = 0.2145 can figure out to help you. Attempting to formalize the
And voila! We· have produced a sentence in the language grammar for a language, or just for each statement type, is
of numerals using the grammar G1. What we just did, a great way to catch disasters such as ambiguity. There
incidently, is what is known as "top-down parsing." are, by the way, grammars for most of the tiny languages
Bottom-up parsing would reverse the process, beginning floating around and you sometimes run across a language
with the numeral and making substitutions of left-hand manual which uses the notation of grammars (BNF, its
sides for right-hand sides until we ended up with the start called) to set out the syntax of statements.
symbol on the left-hand side; that is S :: = NUMERAL. Before we close, let's consider ambiguity, because it is
Both techniques of parsing have the same purpose: to interesting and is one of the main reasons why English
determine if a given sentence is in a certain language. You doesn't have a nice grammar. Formally, a sentence is
parse a sentence to see if it is syntactically correct. ambiguous if there is more than one derivation for it, more
. The grammar we just looked at has one little deficiency. than one distinct set of productions which result in that
Normally we don't want leading zeros on numerals. A sentence. Consider a very simplified English grammar:
small modification to the grammar yields a new grammar
SENTENCE: := SUBJECT PREDICATE [
for a new language Which doesn't have leading zeros.
PREDICATE SUBJECT
Listing only the productions this time:
SUBJECT: : = NOUN
S :: = NUMERAL
PREDICATE: : = VERB
NUMERAL: := DIGIT
Consider a very simple English sentence "Time flies." Now
NUMERAL: := NZDIGIT STRING parse it:
STRING: := DIGIT STRING Time flies
STRING: := DIGIT Time VERB
DIGIT:: = a [1 [2 [3 [4 [5 [6 [7 [8 [9 NOUN VERB
NZDIGIT: := 1 [2[3[4[5[6[7[8[9 NOUN PREDICATE
Yes, all that added complication just to forbid leading SUBJECT PREDICATE
zeros. You begin to see why grammars are not the solution
to the world's ills. Try this new grammar out and see if you SENTENCE
can produce the strings "123", "20.", "5", "a". After doing Fine. "Time flies" is a syntactically correct English
so, you'll see why all those productions are necessary. sentence. But what's wrong with:
What happens if we try to' parse the sentence "0.2145" Time flies
with G2, our new grammar? Doing it bottom-up:
Time NOUN
0.2145
VERB NOUN
0.214 DIGIT
PREDICATE NOUN
0.214 STRING
PREDICATE SUBJECT
0.21 DIGIT STRING
SENTENCE
0.21 STRING
Nothing is wrong with it! Either way, "Time flies" is an
0.2 DIGIT STRING English sentence. Voila! We have just shown that our
0.2 STRIf>JG simplified English grammar is ambiguous. Complicating
a DIGIT STRING the grammar won't help at all. As you well know from a
lifetime of experience, English is what is known as an
a STRING inherently ambiguous language. Spoken English is even
At this point we're stuck. We can replace "a STRING" with worse. The problem with an ambiguous language comes
"DIGIT STRING" and that with "STRING", but there is no when you try to attach a meaning to a sentence. If the
substitution of "NUMERAL" for "STRING" and hence no language is unambiguous, you can have the nice, neat
way to get to the start symbol, S. The string "0.2145" is not situation of one sentence, one meaning. Not so in English!'
in the language defined by G2. People who write compilers for computer languages
Nifty, huh? If you're clever you can even write a program long for unambiguous languages. They would be quite
to parse a string according to G2 and print out a message happy if once they parsed a sentence they could attach a
such as INVALID CONSTANT if it can't. It is but a large single, definite meaning to it. But life is not that simple.
and difficult step from this small grammar and such a Take Fortran. (Please!) A harmless statement such as
simple program, to one which can parse the sentence GO ALPHA = WEIGHT(X). Is WEIGHT an array, or a function?
TO TOWN and reply SYNTAX ERROR because the The grammar won't tell you. Writing a compiler can be a
sentence is not in the Basic language. very, very tricky business. Compiler writers cheat a lot.
We have just scratched the surface of the topic of In spite of suffering from somewhat ambiguous syntax,
grammars and languages. There are different types of once you settle on a particular derivation for a sentence in
grammars, and techniques for converting one type into a computer language, at least the meaning isn't am-
another and reasons why you'd rather have another type, biguous. Alas for us poor English-speaking creatures!
and all kinds of theorems and algorithms for this and that. There are English sentences that parse quite nicely, but
A language can have more than one grammar. There exist are as ambiguous as all get out. T~e woe caused over the
enormous progr.ams which will take as input certain types ages by the semantic ambiguit~ of that simple and
of grammars and produce as output a complete compiler common English sentence "I love you" is legion ... and
for the language defined by the grammar. The area of poetry. Predicate, subject, direct object. Ah, but there is
formal languages is one of the major subject areas of more to language than syntax: Perhaps next time we'll
computer science. delve into semantics. _

108 CREATIVE COMPUTING


Different Numbers
~"llIBS ~ by

~p'()r,IBrnS
Eve~. Wirth
In this puzzle; first yOIJ must supply the 12 missing
numbers and then add them up. This will give you a year in
which one of the underlying principles of the computer
was invented, (Hint: it was a mathematical principle.) What
was the year, the principle, and who WaS the person?

1.__ Nights" ak/a The Arabian Nights


New Life for, Nim! 2.__ degrees in a circle
by B. M. Rothbart, London
3.__ original colonies

Nim is perhaps the most popular game as a 4.__ signs in the Zodiac
programming exercise, in beginning computer 5,__ square inches = 1 square foot
science courses. However, as far as playing' the
game for the initiated player, it ls no more than a 6.__ th Amendment (Women's Suffrage)
test of adding binary numbers in one's head. 7.__ Years War (Anglo-French wars)
However, a small change produces a
two-dimensional N im which resists attempts at a 8.__ Heinz Varieties
definite analysis. Objects are placed in small groups 9.__ Degrees (boiling point of water
forrninq a two-dimensional array as follows: Fahrenheit thermometer)
, 2 7 6 3
10,__ feet = 1 fathom
120 5
439 1 11,__ R's (basics of education) ,
The two players then take turns to remove 12,.__ good turn deserves another.
matches with the sole limitation that the matches
removed on any turn must be from the same Tota!
column or row. As in conventional Nim, the player
'aUl4:lew DUI4:leaIISJlj aui umq AassaJd pue JeaA le41 U!II':lluad
who takes the last match can be either the winner paraooosrp DUlwal~ le41 puno] aAe4 14DIW (lOA 'JaAaM04 '(pazluDo:laJ
or loser depending on the agree'ment reached AlaplM IOU SI a4) ~ooq moA UI 4sns PUll IOU pjnoo noA I' uaAIDJol aq 11'M
nOA 'JeaA le41 UI slsAleue lelluaJall'p pasrxap 4snS JeAauue/\ le41 JaAO:lSlp
before the game' started. ' 11'MnoA xooq AJOlSI4 soueurauiaui POODe aAe4 noA I' pue Sl6l SI lelOI a41
Some trivial wins and losses are readilv
l 'z t L9 'S 'll 'v
spotted, but 'the charm lies in the way in which £ 'll OOl 'L £l '£
even experienced players are unable to play by 9 'oi st '9 09£l
rote. Is there a
foolproof method for playing? We III '6 1717l '9 iooi 'l

leave that for readers to fi nd out. "SJaqwn,N lUaJaH!O" or JaMSUV

MULTIPLY
Simple (Crypt) Arithmetic
( I

G"' EOT b
N I N E ONE
01 N~
- F 0 U R
+
TWO o Nt!
F I V E F I V E GyEo Tf
E I G H T G...-R' A7N
ONE
T l~ 0 S EVE N
+ F 0 U R S EVE N DIVISION
S EVE N + S I, X
TWENTY MAN
B E )A B L E
,F I V E , V M N
- F 0 U R ~ F ,R 1~ Y -L L
ONE &T S-Nv A T
+ 0 N E + J E5NI) -H E
TWO "3 S I X T2 Y H E
\ ~,:
NOV/DEe 1977 109
"This year's social studies project," 1
ingeniously announced to the moppets in Cj
my elementary class, "is to learn about the
computer industry." 1 proceeded to
produce films, books, magazine articles,
lectures and the obligatory field trip.
i ~Qrf=.:o.·==-::-~-ot+!
When the term had come to its close,
they demonstrated the wealth of their new
knowledge in test papers, reports, and
:0 5\).\fol~STJi$C-fe''fJ~
homework assignments.
If you are overworked, discouraged or
tired, have no fear, the next generation is
o (]
.~.A bioe.
almost ready, as you willquickly ascertain [) b/fAfI/r
from these quotes from their writings.
"Take a good long look at a computer.
Does it have input, output, a bit of binary?
No, you say to allthese questions? Then
you are not taking a good long. look at a
computer."

Out of-the Mouths of Babes


Eve R. Wirth

"Just yesterday ~hen 1 read my libury


book I knew real good what computers
"Girl computer workers have to make axaly do for us, but today it's a different
real certain all the holes are in the right colored horse story."
spots, because if not then how will the
computerman get in them."

"Lots of people are working in the


hustling bustling business of computers.
There could easily be 1000 of them doing
this. Maybe 5000 doing this. Might even be
a million. 1can't be too for sure because it
takes just about all of my knowing to even
know that lots of people are working in the
hustling bustling business of computers."

"Question: What do you think is the


greatest feat of the invention of the
computer? Answer: "I didn't think it has
feat" but when I think about it I would say
the right foot is 'the strongest and
greatest."

110 CREATIVE COMPUTING


"In the pre-me times of history one day a Question: How long have computers been
guy decided to make a machine that could in existence? .
'do stuff faster. He thought it was high time Answer: "Since the beginning of time and
for .action, so here's what he did. He put maybe even longer than this."
alot of holes in it and lots of buttons and
stuff, and when you pressed the buttons
zoom-voom-boorn you got your answer
and then everybody yelled with their deep
throats woopee, yippee and maybe even
sock-it-to-me." '

"Remembering eggacly what 'binary'


means is something that is forever going to
be on my mind." .

"What a 'bit' is has a very short memory


on my end."

Question: How long are people in school to "The very first modern computer was
learn about computers? Answer: "They built in the dark ages of 1930, in either the
could be anywhere from 5 feet and up." A.D. or VD. times of history."

"A bit of blarney is computer talk for all "If you like to fool around with figures
practical purposes invented by the Irish." alot then become a design engineer. My
Uncle Henry is one, and he fools around
alot with figures."

"I was so glad in my body to know that


someday I would go to school to find out
how to be a computer programmer. I had
so many glad tickles in my stomach about
it. Then with a sudden finding out that I
also wanted to be a pilot, allmy glad tickles
went dowri my throat upside' down and
with a lump coming of sadness it was all
over me being a computer programmer."

"A lady computer operator and a man


computer operator are the same, only just
the opposite in the you know where
places."

"They are producing more and more


people to work on computors anally."

"From now on, after learning all about


computers, I'm going to think wonderful
happy-that-you-made-it-so thoughts with a
smile in my heart."
Aren't you? •

Illustrations by Detta Ahl and Robert Green IV

NOV/DEe 1977 111


/

Tired of returning to your local gift shop and hardware

Great Gifts store to browse among china, baskets, appliances and


tools for a present appropriate to that special person?
Instead, this year, share your interests. Choose a gift
from Creative Computing - select from outrageous fun to

From topical information.


Bridge the gap. Microcomputers
for communication
have such a potential
wouldn't it be a shame if we let our-'
selves become isolated
from our friends and

Creative Computing family. because of our


interest in absorbing
them. Instead, give a
subscription to Creative Computing, or a game, or book,
or t-shirt, that,say "join me in this interest, laugh arid learn
along with me."
Give Creative Com- Just look at all the neat stuff you tan give (or ask to get)!
puting to a friend for only
pennies a day! . . II-·-·~
The best gift of all is a magazine '~~ ~'-
delivered every other month" as a 0"
'-"".-...1.0 __
reminder ot your thoughtfulness.
Creative Computing offers you the
means to get the most from your
III III III
computer. It includes thoroughly
documented programs with complete
listings and sample runs - games,
CAI, artificial intelligence - music and
speech synthesis, investment
analysis-programming techniques-«
The Gift of Laughter
in depth book reviews, hardware and Is there a better way to be clued into the phenomena of
. software evaluations to help you' computers than throuqh computer age humorists? What is
choose what's best for you, and much: the effect these new machines are having on the way we
more. ' think and relate? Laugh yourself silly to the answers as
Creative Computing will be a gift I you discover the hidden wisdom and unforgettable hilarity
you'll be thanked for, again and again. in
Each subscription you send will be The Cclossal Computer
announced as a gift from you by a I
computer generated art card.
Cartoon Book
If you are ready to share your passion about com-
puters, start by giving this bright, zany collection of the
wittiest cartoons ever. You get 128 pages 8%x11 inches of
fun and frolic for only $4.95. It's an irresistible intro-
duction for the novice and a startling look at the familiar.
for the initiated.

SET OF 3
BINARY DICE
Three binary dice, one red, green, and blue in zip-lock bag. Each
die has 3 ones and 3 zeroes. Use one to simulate the flipping of a
coin, with two you can count to four, just think of the
possibilities with three! The only dice that let you roll zero' Wow!
Set of 3, $1.25 postpaid. [3G]

COMPUTER RAGE is a fascinating new board game based on a


large-scale multi-processing computer system. The object is to move
your three programs from input to output. Moves are determined by
the roll of 3 binary dice. Hazards include priority interrupts, program-
bugs, decision symbols which 'alter your path, power failures, and
restricted use input and output channels. Notes are included for using
the game in school. Ages IO-adult; 2-4 players. COMPUTER RAGE
comes with a colorful board, 12 program playing pieces, 3 binary dice,
38 interrupt cards. Orders must be prepaid. Only S8.95 postpaid (SIO
outside of USA). Creative Computing, P.O. Box 789-M, Morristown,
NJ 07960, ATTN: Cindy

112 CREATIVE COMPUTING


The diversity in The Best of The Best of
Creative Computing-
ume 1 can only be described
Vol-
cP6ativ6
as staggering. The book
contains 328 pages of articles
computinfj
and fiction aboutcomputers,
games that you can play with
computers and calculators,
hilarious cartoons, vivid
graphics and comprehensive
book reviews.
Authors range from Isaac
Asimov to Sen: John Tunney
of California; from Marian
Goldeen, an eighth-grader in
Palo Alto to Erik McWilliams
of the National Science
Foundation; and from Dr.
Sema Marks of CUNY to
Peter Payack, a small press
poet. In all, over 170 authors are represented in over 200
individual articles, learning activities, games, reviews and stories.
This 328-page book has 108 pages of articles on computers in
education, CAI, programming, and the computer impact, on
society; 10 pages of fiction and poetry including a fascinating
story by Isaac Asimov about all the computers on earth linking up This fascinating 336-page book contains the best of the
after a nuclear war to support the few remaining survivors; 15 articles, fiction, foolishness, puzzles, programs, games, and
pages of "Foolishness" including a cute cartoon piece - reviews from Volume 2 issues of Creative Computing magazine.
called"Why We're Losing Our War Against Computers"; 26 pages The contents are enormously diverse with sornethinq for
on "People, Places, and Things" including the popular feature everyone. Fifteen new computer games are described with
'The Compleat Computer Catalogue" which gives capsule complete listings and sample runs for each; 67 pages are devoted
reviews and lists sources for all kinds of computer-related to puzzles, problems, programs, and. things to actually do.
goodies; 79 pages of learning activities, problems and puzzles; 29 Frederik Pohl drops in for a visit along with 10 other super
pages continuing 18 computer games including a fantastic storytellers. And much more! The staggering diversity of the book
extended version of the single most popular computer game - can really only be grasped by examining the contents, or better
Super Star Trek; and 32 pages of in-depth book and game reviews yet, the book itself.
including Steve Gray's definitive review of 34 books on the Basic Price is $8.95 plus $0.75 shipping and handling in the USA
language. ($9.70 total); outside USA, add $1.00 ($10.70 total). Individual
. The Best of Creative Computing - Volume 1 is available by mail orders must be prepaid. Creative Computing Press, Attn: Helen
for $8.95 plus 75¢ postage from Creative Computing Press, Attn: P.O. Box 789-M, Morristown, NJ 07960.
Helen·P.O. Box 789-M, Morristown, N.J. 07960.

THE BEST OF'BYTE - VOL. 1


The Best of Byte - Volume 1 is a 384-page blockbuster of a book
which contains the majority of material from the first 12 issues of
Byte magazine. 146 pages are devoted to "Hardware" and are
cram full of how-to articles on everything from TV displays to
joysticks to cassette interfaces. The section on computer kits
describes building 7 major kits.' But hardware without software
101 BASIC Computer Games is the most popular
might as well be a boat anchor, so there are 125 pages of
"Software and Applications" ranging from on-line debuggers to book of computer games in the world. Every pro-
games to a complete small business accounting system. A gram in the book has been thoroughly tested and
section on "Theory" examines the how and why behind the appears with a complete listing, sample run, and de-
circuits and programs, and a final section "Opinion" looks at scriptive write-up. All you need add is a BASIC-
where this explosive new hobby is heading. speaking computer and you're set to go.
The Besr of Byre - Volume 7 is edited by Carl Helmers and David ,
Ahl and published by Creative Cornputinq Press. Price in the US
101 BASIC Computer Garnes, Edited by David H.
is $11.95 plus $100 shipping and handling ($12.95 total); foreign
orders add $1.00 ($1395 total). Orders from individuals must be Ahl. 248 pages. 8Y2X11 paperbound. $7.50 plus 75~
prepaid. Creative Computing Press, Attn: Helen, P.O. Box 789- postage and handling ($8.25 total) from Creative
M. Morristown, NJ 079!30. Allow 8 weeks for delivery. Computing, P.O. Box 789-M, Morristown, NJ 07960.
STRRT

~
.j:>.

o
::u
1'1
:r>
-f
<:1'1 CRERTIVE
o
o Here is a maze that was computed and plotted by a computer. The program that generated The program generates the maze by making a random walk through the area until it-can no
:!: the maze was written in BASIC. It begins by asking forthe name of the maze andthenforthe longer walk. It then starts walking from another point. It walks until it has visited each and
"1l
C size (it may be upto 85 by 65). Each maze that is generated will be different ifgiven a different every room. The paths it took are plotted to form the maze. For a program listing, send your
-f
name and/or size. request with a large self-addressed, stamped envelope to: Gary D. Sasaki, Hewlett Packard,
Z
o The program was written for the HP 9830A desk top computer and the HP 9866 plotter. 5301 Stevenscreek Blvd., Santa Clara, CA 95050, (408) 246-4300
IJBaDaDffi~IJBaDaDIJ~~
A Guided Tour of Game Playing Games, Tricks and Fun & Games
Computer Programming· With the Computer, Puzzles For A Hand with the Computer.
In Basic ' 2nd Ed. Ted Sagt'. "This book is designed as a
Donald Spencer. Over 70 games. puzz'les.
Calculator text for a one-semester course in com-
Tom Dwyer and Mkharl Kaufman, Wally Judd. This book is a necessity for puter programming using the BASIC
and mathematical recreations for the
"This is a fine book. mainly for young anyone who owns or intends to buy a language. The .programs used as il-
computer. Over 25 games in BASIC and
people. but of value for everyone. full <if hand calculator. from the most lustrations and exercises are games
FORTRAN are included complete with
detail. many examples ~including sophisticated (the HP65. for example) to rather than mathematical algorithms. in
descriptions. flowcharts. and output.
programs for hotel and airline. reser- the basic "four banger." 110 pp. $2.95 order to make the book appealing and
Also Includes a fascinating account of the
vations systems. and pay toll). with much [8D] accessible to more students. The text is
history of game-playing machines. right
thought having been given to the use of well written, with many excellent sample
up to today's computer war games. Lots
graphics in teaching. This is the best of programs. Highly recommended." -c- The
of "how-to" information for applying
the introductory texts on BASIC.",- MalhrmDlici Teacher 351 pp .. $6.95 [8B]
mathematical concepts to writing your
Creative Computing Large formal. 156 own games. 320 pp. 1976 $16.95 [8S]
pp, $4.SG [SL]

8 New Books From


reative Computing Library
Microcomputer Send orders to Creative Computing, P.O. Box 789-M, Morristown,
Design N.J. 07960. For faster service call Toll-free (800)·631-8112, or New
Donald P. Martin. This book is well- Jersey call (201) 540-0445.
suited for the engineer who's designing
microprocessors into his company's r--------------~--------------------------
products. Not just block diagrams
vague theory, but dozens of practical
circuits with schematics for CPUs based
or
CP88.tlv8 computlnd
on SOSO and SOOS chips. Includes MAGAZINE SUBSCRIPTIONS
interfacing to A/ D,. D / A, LED digits,
UARTs, teletypewriters. Over 440 pp. Foreign Foreign
Term US Surf.ce Air
$14.95 [9P]
1-Year 0$8 0$12 0$ 20
2-Year 0 15 0 23 0 39
TV Typewriter 3-Year 0 21 0 33 0 57
Microcomputer o o
Primer ' Cookbook Lifetime
Vol. 1 Bound 0
300
10
0400
0 12 0
600
15
Don Lancaster. An in-depth coverage of Vol. 2 Bound 0 10 0 12 0 15
Mitchell Waite and Michael Pardee. tv typewriters (tvt's)-a truly low-cost
Introduces the beginner to the basic microcomputer and small-systems dis- ONew o Renewal o Gift
principles of microcomputers. Discusses play interface. Completely illustrates
the five main parts of a computer-the BOOKS AND MERCHANDISE
how you cando it yourself. 256 pp. $9.95
central proc~ssing unit, memory, in-
put/ output mterfaces, and programs.
Quan Cat Descrtpttons Price
Explains current available microcom-
puters. 224 pp. $7.95 [4A] . CMOS Cookbook
Dart Lancaster. Tells all you need to
How To Buy and Use know to understand and profit from
working with this digital logic family. It's
Minicomputers and inexpensive and genuinely Jun to us.
Explains CMOS-how it works and how
Microcomputers to ·power it. Plus usage rules, state Books sruppmq charge $100 USA. $2.00 Foreiqn
William Barden, Jr. Includes guides for testing, bread boarding, interface, and
select ion, buying and programming your other basics. Filled with practial NJ Residents add 5% sales tax
own system with detailed descriptions of applications. 416 pp. $9.95 [9S]
what's currently on the market. Dis-
cusses both hardware and software TOTAL (rnaqazrnes and books)
peripherals, and gives an explanation of
both practical and recreational
pp. $9.95 [4C]
uses. 240 o Cash. check. or M.O. enclosed

o BankAmeflcard } Card No. _


TTL Cookbook
Don Lancaster. This complete, detailed
o Master Charge Exprratron date _
guide to transistor-transistor logic (TTL)
explains what it is, how it works and how o Please btll me ($1 00 bllltng fee will be added)
to use it. Discusses practical applications Book orders from individuals must be prepaid.
such as a digital counter and display
system, events counter, and electronic Your ,name and address:
stop watch. 336 pp, $S.95 [9R]
Name

Address
Getting Involved With How To Program
Your Own Computer Microcomputers CIty ________ State _ Zrp _

us Solomon and Stanley Veil. Here is William Barden, Jr. Explains assembly-
one of the first books on microcomputers Send gift to:
language programming of microcom-
that requires no previous knowledge of puters based on the Intel.gOSO, Motorola
electronics or computer programming. It Name
MC6S00, and MOS Technology
tells you where to find needed informa- M CS6502 microprocessors. Basic con-
tion, explains basic concepts, and sum- cepts, architecture and operations dis- Address
marizes existing systems. Good place for cussed. Provides precanned operations.
the neophyte to begin. 216 pp. $5.95 [9Ni 256 pp. $S.95 [4B] ________ State ZIP _
COMPUTER
=ONTROL

116 CREATIVE COMPUTING


What happens when a computer designed to accept
thought patterns 'as input tries to output thought pat-
terns of its own?
number of faculty has decreased by 7.5846 percent and the
999 END number of administrators has increased by 14.596 percent."
READY "That's true, sir. Actually I came to discuss something
else"
RUN
*** PLEASE STAND BY *** "I' hope it's not the budget again, Eckert. I om sorry about
cutting you back this year, but I thought that with that large
grant from the National Science Foundation you could get
, The cursor blinked white against the green screen of the by without so much help from the college."
cathode ray tube. "Oh, no," the student thought to' herself, "It's the NSF project that I wanted to talk about, sir."
"what now?" She glanced up over the terminal towards the "You've made progress, I hope? It's almost time for our
glass wall of the computer room, attempting to see within annual report to the government." .
any reason for the halt in service. She scratched the place "Yes, we've made progress." Eckert sighed and gazed at
behind her left ear where the electrode rubbed against her the carpet. '
skin and adjusted the metal cap slightly. Her eyes returned '''Weil, what is it, then?"
to the cursor, flicked, away, then returned and remained "As you recall, sir, the grant was to support an experi-
fixed. A few seconds later she rose, took the cap from atop mental project in artificial intelligence."
her head, and set it down on the chair. She ran around the "Of course I remember." He didn't. "I thought at the time
terminal' once, flopped to the floor, and did ten pushup's. that developing some artificial intelligence among the faculty
Then she ran around the terminal twice, flopped to the was a good idea, since they seem to be somewhat lacking in
floor, and did ten more pushups. Then she ran around the the natural kind."
terminal three times, puffing slightly now, flopped again to Eckert forced a smile. He had heard the joke before. "We
the floor, and did another ten pushups. were trying to work out a means by which instructions
After circling the terminal 55 times and doing a total of could be entered directly into a computer without the neces-
100 pushups, the girl picked the cap off the chair, replaced it sity of punching cards of typing on a terminal. It's a pro,
. on her head, and slumped wearily behind the screen. grammer's dream!" Eckert's glowing eyes moved briefly up-
ward, but were forced back to the carpet py the president's
***CONTINUE*** uncomprehending stare. "During the early seventies, various
means of entering information by voice were developed,
appeared before the girl's glazed eyes. From somewhere be- but ... " The phone rang. .
hind the glass wall arose a deep chuckle. "Excuse me a moment, Eckert." The president picked up
the receiver. "Yes?" The president listened for a moment.
* * * ** "Well, you tell that bastard that he damn well better get
those lawns cut, and by this afternoon, or I'll fire his ass."
The intercom buzzed twice. The president took his feet off The 'president listened again. "Well, I suppose you're right.
the desk, set down the paperback book, and flicked the Talk to the union steward, then. Ask him to be reasonable, for
switch. . , once." The president slammed the phone back into the
"Professor Eckert to see you, sir." cradle. "Damrnit, nobody ever does anything around this
The president mentally ran through the names of the place. Now where were we?"
school's 253 faculty - his 253, as he liked to think of them - "I was explaining the background of the NSF project."
but could not place Eckert. "Professor Eckert?" "Oh, right. Go ahead."
"The head of the computer center, sir." "The vocal techniques worked fairly well, but they were
"Oh, Eckert, What the hell does he want? If it's about very sensitive to slight changes in tone - a strange voice
the budget tell him I'm sorry but not another dime for his threw them off completely, and even a sore throat could
damn tape packs or whatever.": cause trouble. Besides, they were slow. A human can think
"He saysit's an emergency, sir." much faster than he can speak."
"I'll bet it's an emergency. You tell that twerp that if his "Seems to me we've got quite a few people around here of
damn machine has screwed up the payroll again I'll send him whom exactly the opposite is true."
straight back to typewriter repair school." Eckert forced another smile. He had heard that one before,
"He seems quite excited, sir." " too. "In any case, we wanted to develop a technique for
"He's probably finally figured out how to get that toy of entering iriformation directly from the brain into the com-
his to do some useful work for a change. Give me two min- puter. No typing, not even any speaking. So we formed an
utes." The president pushed aside several overflowing manila artificial intelligence lab, applied for a government grant,
folders, some old issues of the campus newspaper, a half- and began working. That was three and a half years ago."
eaten chocolate bar, and a report from a dean who had left "Yes, you took over the old bus garage, didn't you?"
the college seven months before. He picked the top binder "The old boiler room, sir, when the college installed the
from a large pile and opened to' a page at random. He flicked solar panels. But we've gotten most of the soot out by now.
the intercom switch again. "Send Eckert in." , You'd hardly recognize the place, Anyway, eventually we
The door opened and a small, nervous man with wildly developed a sort of metal beanie through which the brain
tousled hair took a few steps into the cavernous office. could transmit information directly to the computer. The data
"Well, Eckert, good to see you! I've just been reading over channel was designed to be one-way - the computer could
your latest outprint." send information back to a fast terminal device, as usual."
"Printout, sir." Eckert paused, sighed, and resumed speaking. "We
"Well, whatever. I see that the number of students has in-' gathered some student volunteers, all experienced program-
creased 2.84736 percent over the past three years, while the mers, and turned them loose with the beanies. Until last

NOV/DEe 1977 117


week everything was going fine."
"Yes?" The president knew better then to ask directly
what had gone wrong. He passed his hand over his forehead,
trying to wipe away visions of dazzled students with hair
standing on end and eyeballs rolling idly.
"Then we began noticing that the participants were be-
having strangely. First they began volunteering to sweep out
the computer room."
"Sounds good to me."
"Yes, but not every hour. Then they began offering to oil
the tape drives, vacuum the disk packs, and empty the chad
box on the card punch. Finally we had to lock the machine
room door so we could use the equipment."
"What are you suggesting, Eckert?" The president's tone
had changed.
"Well, apparently the computer has grown ... "
"GROWN?" -
"Well, developed, then, another circuit, which somehow
lets it program the students." Eckert stopped.
The president tried to absorb the news. "So we load the
thing with calculus, plug in all the students, and cut back
the math department? Well done, Eckert!"
'''No, sir, I'm afraid that's not exactly what I wanted to
say."
"What's the problem, man?"
"You see, we don't know how to control what the students seemed to relate a lot better to machines than to anything
are being programmed to do. The computer seems to be which involved people. "But we need your help now." Eckert
doing it on its own." recounted the problem in detail, emphasizing the machine-
"Son of a bitch." The president savored each syllable. language programming techniques which had been used.
Having the payroll screwed up was nothing. "We've got a list of all the students who participated in the
"I wanted to alert you to the, uh, situation as soon as I was project. Of course we'll have to scrap the whole thing now,
sure that .it was really happening. I have my best programmer but first we have to find some way of, well, de-programming
working on it right now," Eckert lied. them. That's where you come in. Do you think you can
"Your best programmer? Why can't you do it yourself?" handle it?"
"Well, I'd like to, but I have the daily, bi-weekly, weekly, "I'll try." This was Tom's way of showing enthusiasm.
semi-monthly, monthly, quarterly, and annual reports to get "Can you give me access to the documentation?"
out, besides the new grading system and the classroom space "Yes. My secretary has all the information on her desk."
evaluation." "OK. I'll try to find the problem. Then we can round every-
"Of course. Well, all I can say is you'd better get some body up and unload them all at once. I'll be in touch." Tom
action ... " There was a scuffling noise in the outer office, reached for the door, ignored Eckert's warning cry, and
the sound of a body being pushed against a wall; then the pulled off the other doorknob. He slammed the door, locking
door was jerked open. A large, bearded student ran across Eckert into the office, took a large pile of jumbled papers off
the room, pushed a custard pie into the president's face, and the secretary's desk, and left the center.
left as quickly as he had come.
*****
*'* * * *
, Eckert stood nervously behind the control console. "Are
Eckert pulled open the door of the computer center, pushed - you sure this is going to work?" Tom did not bother to look
past a student doing frantic jumping jacks, and edged be-'. up from the keyboard.
tween two girls playing a game of imaginary tennis. He "We're ready to go."
entered his secretary's office. "Has Tom arrived yet?" Eckert left the machine room and surveyed the small
"He's waiting for you inside." group of waiting students. "All right, everyone, we're going
Eckert tried to open his door. The knob came off in his to try a new type of experiment." Eckert felt a momentary
hand. He sighed. "The door is still broken." twinge of guilt for not having told the students what had
"I know. I've asked to have it fixed, but there's no ... " happened - or what he hoped was going to happen now.
No money in the budget, Eckert thought, and rapped on "Please put on your beanies and sit down behind a terminal."
the door. It was opened from the inside by an emaciated, The students scuffled noisily into their places, and Eckert
acne-scarred student wearing pants several inches too short. walked behind the row of terminals to be sure that every-
He was -rubbing sleep from his eyes with his free hand. thing was ready. He signalled to Tom through the glass. Tom
"Hello, Tom. Thanks for coming over. I know you were up typed a few characters and looked up expectantly.
late last night straightening out that problem with the For-
tran compiler." * ** * *
"I found a bug at 04756 octal - a zop fault which under
certain circumstances prevented the J-block from linking up There was a knock at the dormitory-room door. Tom
with the permfile." looked up from the latest issue of Computing Reviews,
"Well, thanks for fixing -it." Eckert carefully closed the glanced at his watch, and said, "Come in, Cindy." The door
door behind him. "Tom, I wanted to talk to you about the opened, and a lithe, tanned girl with long brown hair and a
artificial intelligence project." ~rplexed expression entered. Cindy removed her pullover,
"You haven't let me work on that one yet." kicked off her shoes, and slid out of her bluejeans. Tom got up
"I know, Tom. I thought we could use you more effectively from the desk, locked the door. and switched off the light.
somewhere else." The true was, Eckert mused, that Tom "I've been expecting you." •

118 CREATIVE COMPUTING


Hit the deck in shorts and
a tee shirt. Or your bikini if
you want.
You're on a leisurely cruise
to remote islands. With names
like Martinique, Grenada, '
Guadeloupe. Those are the
ones you've heard of.
A big, beautiful sailing vessel
glides from one breathtaking
Caribbean jewel to another.
And you're aboard, having
the time of your life with an
\ intimate group of lively, fun-
loving people. Singles and
couples, too. There's good food,
~ "grog;' and a few pleasant
" comforts ... but there's little
resemblance to "astay at a
fancy hotel, and you'll be
happy about that.
Spend six days exploring
paradise and getting to know
congenial people. There's no
other vacation like it.
Your share from $265. A new cruise is forming now.
Write Cap'n Mike for your free adventure
booklet in full color. '

---- -----------
I
8 Windiammer Cruises.
I
I
N.~ I
Address

Zip
I
Phone I
: P,O, Box 120, Dept. 581
j-------_
Miami Beach, Florida 33139
-
I
1
.NORDS
The NOI:"ds w~tk.~dllC ound with
th(ir aga5 on tfuz skg Md tn(lir
h?Al\ds on l~rg(l swarters.
Thq:re wos a good rea son for
thip: tha. 5ki(l$ Wflr(L fall of l~ga
bug.s ecrul([d sruts.. .

Th~ snits wa« not consid<lrlZ'd a bla:ssing. 'The.snits


had a bIte that fdt 1i.ka.th~ Ce\[1l6S of a ch71ID 5~W.
A Nord brttzn bg Z\ t1nit brok out in spo~s and
dflv<z1opfld 2m odor so Mrrflndous th~t It .W~5
cllllld Th~ CUfSa.. Thrt condition liJ:stad SIX Mont~.
It WZlS 6it months in isolation for no OM could
stZ!M the odor
Then th~Nords d<l\I~lopldtn<t tflchnologg
to rid fhams<llvas of thcz snits. It WZ15
in th~form-of robot equipf)fld with
Z{
~ h%rg~swatta:r. Tb.a: Nords built an
~rmy of fhem and prograrnmad tbam
fo kill 2111 snits. TKe Nor-ds figurad
hzavcn was just 'Zlround th(l corner;
· The robots b~921n by chasing snits
2!1L over CtlZltl0n but it W~5n·t
long before thrz: robots di~cov~r~d
tnzrt th~snits had only 0 ne
sonrcz of food: tht. l<l'ZlV(lS of th<l
M~untpl~nt~. Programmedt~
destroy ~1l smts and computlng
caus e and effect ZlS being ow ttnd
the .5{ID1l) the robDts used thair
swatters to .redu~ zell the MZlumS
to mztngled pUlp.

Tilatw1l6 uYlfortuYl~ttl, What th(l robots didn't know (and couldn't


hZ\vtl known 5incq th(l infor.ma tion W~$nt inc1ud<zd in tbair progrzun~)
WZi5 that tn<z sezds of th(l Ml{unts »tese ihl only sourC~ Df birth
control "the: NOLd~had.
::

Th~ popul~tion increzt6a: was iml'Yladi~t(2Zlnd im~l1se:


OlZsperation &et in. LIt~ vsu«
pzt.1Sid. M~tingW~5 lflstrictld
to three dztys ~ g(l~r. TnrL
. robots wara r([pro9r~mmed
ond t4;;ad ?I6 police. DnaWfj5
'Z{6signad to each nDTh/t, Atly
couplcz. zdtczltlpting tD IOZtfe on .
ltny oth(zr thZ\n tlYl tbree
dQ:6ignztied d21g6 fllCe:d tbi.
possibIlity of b~irq reduced
to m~ngla:d pulp.

PBYIBWS •••

BASIC FOR BEGINNERS

A,e<'01 of eduC;l1Ion.l""me,
lor you to prog••mon your
•••
Icul.lo,o,eompute,

CALCULATORS FOR BEGINNERS CALCULATORS IN ELEMEN-


TARYSCHOOLS
A u".IIled".fl,.' ••ch,ng" .•••
orkbook
.boutho •••. ,oU1~"mple.foudunc',on When, .•••
he<e.r><iho .•••c.lcul.tO"
conbeu ••,d,nth.cl.",oom,n

~~~'~~.~~:Pfl;:,:~:~~h;~~ ~;I~:,on.
COMPUTERS IN EDUCATION
!It.do,. th'ou~h 1.
- NEW DEVELOPMENTS
Howe<>mputo" ••ou,ed,n."a<l'ilon
L,••'".bou'''lln,',c.onln •.••••••
lcu
:~~,I:I'~C:.:.::n~t~e~"'" <c'enc•. lato,.ndcompul ••d•••lopm.nt<
.nd ,h." po ••,bl~ futun .pplo""I,O'"

Ththom'/~"on.lcompute<. Wh., TEACHING USING COMPUTERS


"".II.bou,' Howw,ll II be u,e<I'
Compyle,·A,,,,,e.1ln"'ucilon.
Wh".ColIn yOu 9"1 ono' Why.hould
Compute<,M.n''I'''I,n't,uct'on.
youge,one' How w,lII1 beu.ed'
Compu'e<ba,edl •.,n,n9IndOlh ••

CLASSf\OOM ~ATERIALS
:~:,~:~I'c.o"O'" 01 compyl,. ••In The Dragons of Eden: Speculations on the Evolution of Human
Complolol ••ch'''9un,I,lo,
colcul.'o".ndcompul
,,"ng
••••••'nciuded"'.ooh ••'u •.•••
,th.xploc'l
Intelligence. Carl Sagan. New York: Random House. 263 pp.
porm,,,,onlo ·'COPYME··fo.cl.",oomu
.,eprodu.co.ablowO,kbook
••. E. ••y 'u"e "hko Hardback. $8.95. 1977.

How You Can Learn to Live with Computers. Harry Kleinberg.


New York: Lippincott. 216 pp. Hardback. $8.95. 1977.

Getting Involved with Your Own Computer: A Guide for


Beginners. Leslie Solomon and Stanley Veit. 216 pp. Hardback.
$9.95; paperback, $5.95.1977. From: Ridley Enslow Publishers,
60 Crescent Place, Box 301, Short Hills, NJ 07Q78 or Creative
Computing book service.

Since it's all the current rage, and is supposedly science


• A new, innovative approach to computing--contains fiction, and is available in book form, I feel somewhat compelled
creative articles and materials to teach you all about to discuss Star Wars. I guess I can justify this by talking about
calculators and computers. the use of computer technology in the movie.
, Star Wars is a well-done, fast-paced adventure flick with
• Filled with self-contained instructional units which something to enthrall everyone. The visual effects are stunning
can be reproduced to use at home or at school! These and superbly done, the plot won't confuse you (synopsis: good
"copy me" materials range from elementary school guys, wearing white, versus bad guys, wearing black), you'll
level through community college. A teacher's have no trouble deciding which side to cheer for (hint: the
commentary or guide will accompany each unit. damsel in distress is wearing white), the violence is clean, and the
Some units are for hand-held calculators, others for sex is limited to good-luck kisses. The scale comes across as
learning BASIC. being properly huge. I kept expecting the minions of Boskone
and a Gray Lensman or two to pop up at any moment.
• CALCULATORS/COMPUTERS Magazine also However, in spite of the fact that you become very involved in
includes games,simulations and interesting articles the movie while watching it, Star Wars falls kinda flat when you
for anyone interested in personal computing. think about it afterward. It is decidedly not 2001 and not close
even to Star Trek. None of that almost mystical quality of
gaining new insights which made 2001 such a cherished
experience, and none of the believability which makes Star Trek
such a desirable future in which to daydream. Star Wars is about
I
as profound, believable, and desirable as a James Bond movie.
1SUBSCRIPTION: 1 yr. (7 issues)-$12.00. Payment must
Anyway, I said I was going to talk about the technology.
1accompany all orders. Subscriptions begin with the current issue. Actually I'm going to say something about the computer
1 technology not used. The universe presented in Star Wars is
FOREIGN RATES: $17 per year surface mail. Airmail to
1 nothing short of scatter-brained, which makes for very poor
Canada$23; Airmail to Europe and Pan America $28; Air- .
1 science fiction. When looked at closely, the movie disintegrates
1 mail elsewhere $32.
rNAME _
into an oddball collection of incompletely thought-out ideas
held together with that wonder glue, action. Why do the Jawas
1 run around Tatooine in a motorized septic tank and why is the
I ADDRESS. _
surface of the planet apparently littered with cast-off or wrecked
: CITY --'STAT ,ZIP _ 'droids? How can the Millenium Falcon take off from a
planetary surface? Why oh why does the Death Star have a trash
I. .
I Mall payment with order to: masher in which a tentacled monster lives? Arghh! Maybe there
I DYI\IIAX, P.O. Box 310, Dept. 18, Menlo Park, CA 94025 are reasons, but they sure weren't given.
1- ._
124 CREATIVE COMPUTING

14~\'I~WS•••

And from our point of view, the biggest question must bewhy
thetechology required for C-3PO is nowhere else in evidence.
Huh? C-3POhas very advanced voice recognition and synthesis,
an a,cute artificial intelligence, and is obviously the produce of
ultrarnicrominiaturization, So why are they still punching
buttons to control starships, why do people man turret-mounted
lasers, fly fighters which are moving far too quicklyfor human
reaction time to control (a lot happens in 120 milliseconds at
those: speeds, my friends), and ... Arghh! 'Of course one can
always hope that there is a ban on using advanced cybernetic
technology in warfare, but probably they just didn't think of it.
The 'book is even worse than the movie in its inept use of
technology. I hope they listen to some competent technical
advice', for the sequels.
Unfortunately, I just can't stand to boycott the movie for its
stupidity. What else is there? At least it's better than, ick, Space:
1999. Sigh. May the Farce be with you.
Let's, talk about another best seller now, and a somewhat
unexpected one, The Dragons of Eden. Carl Sagan is, as he
readily admits, going a little far afield from his usual realm of
astronomy and extraterrestrial intelligence to write a book
dealing primarily with the evolution of the human brain, but he
does it very well, producing a quite readable and quite
fascinating book. He gives a good overview, in reasonably non-
technical terms and with several helpful charts and illustrations,
of what is known for certain-about humanevolution, but the real
fascination is in the speculations hinted at by the subtitle.
Abundant food for thought is presented, especially in the
chapter, "The Future Evolution of the Brain."
What makes it so interesting that this book has gained best-
seller status is that Sagan adopts, and not simply as metaphor,
the model of the brain as an information processing system and
nothing more. He states boldly in his introduction that "both
because of the clear trend in the recent .history of biology and
because there is not one shred of evidence to support it, I will not
inthese pages entertain any hypothesis on' what used to be called
the mind-body dualism, the idea that inhabiting the matter of
the- body is something made of quite different stuff, called
mind:" 'Computer terminology such as "hard-wired" and
"programmed" is used extensively throughout the book in
discussing the functioning of human beings. This is a pretty
heavy idea to lay on The General Public, but I haven't yet heard
of any bible-belt burnings of the book.
The Dragons of Eden is just chock-full of ideas and
statements and plausible assertions which give one pause to
think. 'It is an excellent catalyst to discussion. I heartily
recommend this book to the curious, for any course touching on
Artificial Intelligence or human intelligence, and I especially
recommend it to those of you who while away cold, lonely nights
trying to answer that question of questions: "What am I?" If we
keep working on it, one of these days we're going to answer that
question.
N ow let's consider another in what is bound to be an unending
stream of books on the general topic of Explaining Computers
to The Masses. Harry Kleinberg has written an interesting book
called How You Can Learn to Live with Computers. It is one of
the clearest explanations of what computers are and what they
can be used for, that I have yet read. It may possibly rank with
The Peter Principle in pointing out an obvious fact which has
gone unnoticed for lack .of being formalized. '
After devoting the first half of the book to a simple
explanation of what is, afterall, a simple, device, Kleinberg goes
into a rather roundabout discussion of what the computer is,
with the conclusion that the computer is a logic device. Hardly a
startling conclusion, right? He then points out that, if a task
requires more than logic, present computers can't do it. Simple?
Sure. Building on that unarguable fact, Kleinberg introduces a
concept he calls the K Vector, which is a way of convincing you

NOVIDEC 1977 125


• •
@OMPUTALKE~ WS •••FBVIBWS. ••FBVI

r--®-o-o-'--r-----,· I ~ ~
that, assuming you're worried about such things, you cannot be
completely replaced by a computer and can probably estimate
how much of your job function can be replaced by a computer. (I
feel secure - a reviewer can't possibly be replaced by a
computer. What's logical about reviewing?)
Kleinberg's book is slightly cautious, very reassuring, and
quite helpful in gaining an understanding of computers on a gut
level. ,This is a good book to give to a person still suffering from
the traditional misconceptions about computers. In fact, a lot of
people in the AI community might profit from reading this
5-100 BUS
book. It makes it very clear that present computers simply
cannot ever be intelligent. Sorry. Just isn't possible. There is
more to intelligence than logic.
I kept saying "present" computers for a reason. Thirty years is
not long in the evolution of a machine intelligence. Don't give lip
hope. The time of the machines will come,
SPEAK "KAAMPVUTAOLKER" The new book by Leslie-Solomon (Popular Electronics), and
Stanley Veit (Computer Mart of New York),' Getting Involved
with Your Own Computer, is for people who haven't gone much
MODEL CT-1 SYNTHESIZER 395.00 farther than wondering what personal computing.is all about.
CSR1S0FTWARESYSTEM 35:00 An introduction is given to further sources of information, basic
DEMONSTRATION CASSETTE 2.95 vocabulary and concepts are briefly explained, and most of the
CALIF. RESIDENTS ADD 6% SALES TAX
popular personal computing systems now on the market are
summarized. The explanations of programming, software, and
WRITE FOR INFORMATIVE LITERATURE
"What Can You Do with a Computer?" are rather muddled, but
that is something from which the entire field of personal
COMPUTALKER CONSULTANTS computing is presently suffering. The glossary is one of the worst
P.o. BOX 1951, DEPT. E, SANTA MONICA, CA 90406 I've seen. Still, this book is not a bad place to start.
Also out and floating around is the Interim Report on
Humane Computing: A Survey of its Theory and Practice. This
is a project trying to "identify the important issues in the use of
computers for the enhancement of our lives with a view to

We do more than
encouraging positive trends in this direction." The interim
report is mainly a reaction to, and compilation of, responses to a
request for ideas and information which Clement ran in most of

just sell computers the personal computing magazines last year. The present report
is still in the.food-for-thought stage. If you're interested in this
area, Andrew Clement can bereached at 789 West I8th Avenue,
Vancouver B.C., Canada V5Z IWI.
We give you more than just the run-of-the-mill computer store. Whether browsing or buying, you'll You'll have noticed that I've stopped asking for volunteer
find a professional atmosphere that is also relaxed and casual. Plus an array of incomparable
reviewers. Right now I'm swamped, with around 75 willing
benefits. Such as an extensive selection of microcomputers. A full range of peripherals. Broad
microcomputer experience. Full technical support. Software and books. Even leasing. We're
people in my file and obviously not that many books to send out.
dedicated to giving you more at The Computer Mart. I'll let you know when I need people again.
Extensive Hardware Selection Whatever your microcomputer needs, we have the hardware for
you. Imsai, Processor Technology, Polymorphic, Cromenco, Apple and more.
Magic Squares. Paul Calter. New York: Thomas Nelson Inc.
Full Range Of Peripherals We have virtually any type of peripheral you'll need to complete 143 pp., hardbound. $7.95. 1977.
your system. Sanyo monitors. Northstar and iCom floppy disk systems. Lear Siegler terminals. Magic Squares, by Paul Calter, is ... not your normal book.
Additional memory. Tape Cassettes. Paper tape readers. Plus, much more.
On the one hand, it's a rather tongue-in-cheeky detective story
.Microcomputer Experience We have solid microcomputer experience gained through .featuring Mat Inverse, CAD (Computer Assisted Detective),
selling hundreds of microcomputers. We know what you can expect from your system. That's whose sets out in a somewhat bumbling manner to foil a plot to
important to you.
force the world to renounce its use of computers and return to
Technical Support We stand behind the products we sell. With an experienced five-person the time-tested ways of the Pythagoreans, and on the other hand
service department. When you have a problem, we're there with the solution. it is a book full of puzzles and numerology. Solving the puzzles,
Library Of Software And Books We have a substantial library of software. And, are committed most of which are programming problems, is not necessary to
to developing new software programs to expand the uses f~r your microcomputer. Plus, we follow the plot. In spite of Calter's tendency toward atrocious
have an extensive library of instruction books, programming aids and periodicals. Come in and puns, he has written an entertaining little story.
browse anytime.

Classes On Microcomputers If you're just getting started in microcomputers, we have a series


of classes designed to acquaint you with the operations of a microcomputer and its BASIC Compilation of State & Federal Privacy Laws. Robert Smith
programming language.
and Keith Snyder. Privacy Journal, P.O. Box 8844,
At the Computer Mart, we do more than just sell compuiers. Washington, D.C. 200_03. 8Y2 x 22 paperback, 215 pp. $12.50.
1977. "-
Phone Orders are processed promptly. Hours Monday-Friday 10:00-8:00
Send for a free catalog today.
The only such conpendium I know of on privacy and
Saturday 10:00-5:30
confidentiality statutes and legislation.

TH~ L[]r:1PlJT~Rr:1I1RT
633 West Katella Avenue, Orange, California 92667, (714) 633-1222
My Friend - The Computer. Jean Rice. T.S. Denison &
Company, Inc., 5100 West 82nd. St., Minneapolis, Minn.
BankAmericard and Mastercharge Accepted, Leas!ng Available. 55437. 85 pp. (8Y2 x II, paper). $2.95. 1976.

126 CREATIVE COMPUTING


My Friend -- The Computer introduces the young reader to topic as cut-and-dried as standards. She is obviously
computers and their uses. The book is divided into seven parts knowledgeable about the subject of DP management, and
covering the following topics: Part one discusses what a convincingly argues for the need for good, up-to-date standards,
computer is and the notion of time-sharing. Part two discusses supporting this as basically a management function.
some common uses of computers in medicine, industry, etc .. As Ms. Wooldridge herself warns, this book is definitely
Part three presents a brief history of computers. The fourth part geared toward the professional "in commerce or government ...
outlines the various parts or units of a computer. Part five deals heir to the practical difficulties of daily reality" in that
with input, output, and memory devices. In the sixth part the environment (the student is cautioned to make necessary
notion of organizing thoughts via flowcharts is presented. The adjustments when using this text for courses). So for those
last part of the book deals with programs and the BASIC responsible for standards.. this text could help. But as a must
language. (This is not meant to be a BASIC primer, but rather reference text for the shelf of every programmer, analyst, or even
an illustration of a programming language thru a few simple DP manager, I would not particularly recommend it.
examples.) The book contains two appendices, one dealing with Blaise W. Liffick
Teletype operation and the other with preparation of paper Rochester, NY
tapes. The text concludes with a glossary of simple definitions of
computer terms. Following each section is a set of simple
questions (and answers) which would indicate understanding of Some Common BASIC Programs. Lon Poole & Mary
the material presented. Borchers. Adam Osborne & Associates, Inc., Berkeley, CA. 192
A strong point of the book is the lists of student activities pp. $7.50. 1977.
associated with each section. The book is exceptionally well This book contains 76 programs that "perform a variety of
written, and uses cartoons and illustrations very effectively. common, practical tasks. "Most of the programs are concerned
This book can be highly recommended for use in a unit at the with business, mathematics, or statistics, but there are a few
'elementary school level (grades 5 - 7). No elementary school unusual ones.
library should be without it. Each program starts with a short description, followed by a
Bruce W. DeYoung run and a listing. Also included are optional additions that may
Oakland, N.J. be used to change the program's function a bit.
The style of the writing .is ordinary and concise. The
There is now an excellent Teacher's Guide to accompany Jean programming techniques are standard ones that can be adapted
Rice's book, containing text, spirit masters and overhead to most versions of BASIC. The programs can be used by
transparencies -- JL someone who has no knowledge of BASIC.
This would be a useful book for people who are not interested
in programming, but need a computer to perform routine tasks,
Systems and Programming Standards. Susan Wooldridge. such as plotting equations or finding standard deviations. Most
Mason Charter. 189 pp., Hardbound. $12.50. 1977. Creative Computing readers would probably rather write their
For anyone who is new at being a DP manager, this is almost a own programs, as most of them are fairly simple. These are the
must topic; and this new text covers the subject matter with type of programs that everybody writes when they are learning
clear, concise examples and careful planning using a step-by- BASIC. Still, it is a useful reference book, especiallyfor people
step approach. In addition to management, Ms. Wooldridge who don't have the time or knowledge enough to write their own
feels it is to everyone's advantage that all DP personnel know programs.
something about standards design. David Rothenberg
Ms. Wooldridge's style is flowing and easily read even for a Westport, CT

MICROPROCESSOR INTERFACING TECHNIQUES


Austin Lesea and Rodnay Zaks. Ref C207 - Available: Oct. 15 - . $9.95
FROM KEYBOARD TO FLOPPY DISK:
The book takes you through the complete assembly of a microprocessor system: assembling a
CPU; Input-output techniques; interfacing to a keyboard, LED, teletype, printer, floppy disk, CRT,
cassette-tape; Industrial interfacing: analog-digital techniques; Communications; Busing and
standards, including S100, IEEE488, CAMAC. A complete case-study is presented for a multi-
channel communication system and a chapter is dedicated to trouble-shooting techniques. Actual
interconnects are presented for a number of microprocessors, and, in particular the 8080 and
the 6800.

ALSO AVAILABLE:
-CASSETTES (2 cassettes = 20 hour + special book)
r-
S1 . INTRODUCTION TO MICROPROCESSORS
S2· MICROPROCESSOR PROGRAMMING
$29.95
$29.95
ORDER FORM
Name _
-MICROPROCESSORS: from chips to systems, by Rodnay Zaks
The Basic microprocessor book. Ref C201 $9.95 Position
-MD - 10-La'nguage International Microprocressor Dlctlonary $1.95 Company _
-SEMINAR BOOKS: each , $39.95
B1-MICROPROCESSORS B5- BIT-SLICES Address . _
B2-MICROPROCESSORPROGRAMMING B6- INDUSTRIAL TECHNIQUES
B3-MILITARY TECHNIQUES B7- INTERFACING TECHNIQUES
Amount Enclosed _
(in California, add tax)
FOR INFORMATION ON
o BankAmericard DMastercharge

8
IN-HOUSE TRAINING:
Number Expires _ I
USA: SYBEX inc, 2161 Shattuck Ave, Berkeley, Sig nature ~ _
Ca 94704. Tel:(415) 848-8233. Telex: 336311
EUROPE: SYBEX-Europe, 313 rue Lecourbe,
I
75015 Paris, France Tel:(1)8282502, Telex: 200858 Fast Shipping: add $1.00 (UPS) C207 J
'-------------------------------------------~
Creative Computing
-~
• •
SPECIAL OFFER
WS ••• PBYIBWS •••PBYI
* TEXAS INSTRUMENTS PROGRAMMABLE
CALCULATORS
** TEC 9900 SUPER STARTER SYSTEM
***TELETYPE TERMINAL MODEL 43
BELOW DISCOUNT HOUSE PRICES! Interactive Data Analysis. Donald R. McNeil. John Wiley-ee
;iTI SR 58 $97.95 Sons, Inc., New York. 186 pp, paperbound. $9.95. 1977.
TI SR 59 $224.95
TI PC 100A $149.95
, Interactive Data Analysis is a statistics textbook with a twist.
COMPLETE with charger, case, instructions, warranty. The typical college-level approach starts with elementary
probability theory and develops the concepts of statistical
**TEC - 9900-SS 16 BIT COMPUTER inference. McNeil instead starts with what he calls exploratory
16 bit TI9900 microP, 32 bit I/O hardware, mult & divide, data analysis - analyzing data to find its inherent structure, to
buffered bus, 20 ma loop, RS 232C, 8 interrupts and facilitate later model building.
sockets. The reason for this approach, explains McNeil, is that "in
KIT: $299.00 scientific work, one almost always begins with the data, and
ASSEMBLED: $399.00 when structures in the data are found to be statistically
***NEW! TELETYPE TERMINAL MODEL 43
significant, a model or theory is sought to explain those
10 or 30 CPS. Interface: EIA (RS232) or TTL (Digital). Fan- patterns."
tastic discounts, Among McNeil's somewhat unorthodox, yet quite useful,
WITH TTL INTERFACE: $984.95 analytical tools are new kinds of data displays, such as the
WITH RS 232 INTERFACE: $1184.95 "stern-and-leaf plot," which looks somewhat like a histogram
but contains much more information about the sample, and the
To order: check or money order plus $3 postage and handl- "box plot," which provides a very compact graphical representa-
ing. NYC residents only add 8% tax. tion of a sample's medians and quartiles (or other desired
partitions). -
OWENS ASSOCIATES, DEPT. CC
147 Norwood Avenue
The author has provided programs in both FORTRAN and
Staten Island, New York 10304
APL versions to produce the displays and all the data
Telephone: (212) 448-6283 transformations discussed in the book. (Although he has
emphasized the use of the computer, all the tiques and exercises
can be done without much 'difficulty using pencil and paper.)
And although he assumes no prior knowledge of statistics (or
really of computing), his novel approach of "numerical detective
work" will also be interesting to students who have learned more
traditional statistics. .
Thomas A. Gutnick
Arlington, VA

Are You FORTRAN Techniques. A. Colin Day, Cambridge University


Press, New York. 96 pp. $3.95, 1972. ,
Overworked? This book's subtitle is "special reference to non-numerical
applications" for good reason. In a slim 96 pages, the author
Are you still doing those things that covers many salient points on lineprinter graphs, table
your computer should be doing for searching, keyword-in-context identification, stacks and
you? We are developing those utili- queues, list processing, and sorting. The book fills in knowledge
ties and subsystems that will allow, on a set of random techniques used by FORTRAN
you to spend more time getting to programmers in each of these areas; it is a practical book rather
the essence of your development. than a theoretical one.
The latest product in
The first chapter contains descriptions of basic techniques
our software line is:
such as flags and switches, packing and unpacking numbers,
table translation, buffers, open-coded subroutines, and simple
The D)'JUlmic character manipulation hints which will work on even the most
restrictive FORTRAN compliers. The chapter on line-printer
Debugger plotting includes remarks on point, line, density, and histogram
Our Dynamic Debugger is a revolu-
plots, the chapter on sorting includes four sorts, and the chapter
tionary approach to debugging, Un-
on stacks and queues includes a description of simulating
like conventional debuggers, which
recursion in a FORTRAN program. The only fault I can find
are passive instruments that must be
with the book is that Day wastes a chapter on "symbol state
tediously guided to locate errors, the
tables" (useful to check that data conforms to a set of syntactic
DynarnlcDebuqqer is an intelligent
rules), giving it too abstract a coverage for such a book. All in
all, Day manages to pack copious hints and notes (including
companion which can quickly pin-
point problem areas.
examples and diagrams) quite well into a slim but concise
reference work.
Call or write for detailed specs Brian N. Hess
Western Springs, IL
COMPUTER MART
OF NEW JERSEY, INC.
501 Route # 27

Iselin, N.J. 08830
(201) 283-0600
Store Hours: 'Iues..thru Sat. 10 em-s om
Tues. and Thurs. 'til 9 pm

THE
MICROCOMPUTER
PEOPLE

128 CREATIVE COMPUTING


SYBEX
HAS
ANSWERS!
• BOOKS,
• IN-HOUSE
TRAINING
• SEMINARS
• CONSULTING
•••••
Program Listing

090 REM BY J 1M WEST, WILMETTE, IL, (512)256-1621, JAN 1977


Changing Bases 095 DIM D(20),
096 F'0R J:1
N(20)
T0 6\ READ D$CJ)\ NEXT J
Here's a clever little program (which 09 7 DATA "" A "," B "," C "," D "," E "," F' "
could be used as a subroutine in a 100 PRINT THIS PR0GRAM WILL TAKE A P0SITIVE INTEGER (BASE 10)
110 PRINT "AND C0NVERT IT T0 ANY NEW BASE BETWEEN 2 AND 16"\PRINT
larger program) to convert from one 115 REM INPUT
base to another, in particular from base 120 PRUT "NEW BASE :"; \INPUT B The InplJr sec:+lo\,\
10 to a new base between 2 and 16. The 125 IF' B < 2 THEN120 cnec.k... -for il\vi,l,d
crucial parts of the routine are found in 126 IF' B > 16 THEN 120 i~.k, clc.ci""'l.ls )
127 IF' B - IN! (B) •. 0 THEN 120
statements 150-170 which determine 130 PRINT "INTEGER (BASE 10) :";\INPUT 1\~a-h'v~ ",."W\bu$
how many digits are in the new number 131 IF' NCl)-INTCN(!» •. 0 THEN 130 ,wi ~ 1I1t..e.
by raising the new base to successively 155 IF' NO) < 0 THEN 150
higher powers and checking if the 135 REM CALCULATI0N
140 LET P : 0
resultant number is larger than that to 150 IF' BAP •. N(D THEN 180
be converted. For example, if we 160 LET P : P + 1
wanted to convert 15 to base 2, 170 G0T0 150
statements 150-170 would change 180 F'0R I : 1 T0 P
190 DCI) : INT (NCI)IBACP-I»
variables as follows to finally meet the 200 LET NCI+I) ; NCI) - (D.(I)*BA(P-I»
condition of B P greater than N(1). 210 NEXT I
220 REM 0UTPUT
B P BP N(1) 230 PR INT\PRINT
2 0 1 15 .255 PRINT N~I); "(BASE 10) : ;
2 1 2 15 240 F'0il I : 1 10 P
2 2 4 15 245 IF' D(n •. 9 THEN 255
250 PRINT D(l);\J30T0 260
2 3 8 15 255 PRINT D$CD(I)-9);
2 4 16 15 260 NEXT I
Hence, the routine has determined that 265 PRINT" CBASE"; B; ~)"
there are 4 digits (P) in the new 270 PRINT\PRINT\PRINT
300 GelT0 120
. number. 999 END
Statements 180-210 then do the
actual conversion and deposit the new
number in 0(1) through O(P). We're THIS PR0GRAM WILL TAKE A P0SITIVE INTEGER CBASE 10)
not going to tell you how it works but AND CeiNVERT IT T0 ANY NEW BASE BETWEEN 2 AND 16
leave that up to you to figure out.
Thanks to Jim West of Teletype NEW BASE :7 2 Sample Run
Corp; for I.eaving this little gem in my INTEGER CBASE 10) =7 1977
GE timesharing account. - OHA.
1977 (BASE 10) = 1 o 1 0 •0 1 (BASE 2 )

NEW BASE =7 8
INTEGER CBASE 10) =7 1977

1977 CBASE 10) = 3 6 7 (BASE 8 )

NEW BASE :7 12
INTEGER (BASE 10) =? 1977

1977 (BASE 10) = 8 9 (BASE 12 )

NEW BASE =7 1 EO
INTEGER (BASE 10) =? 1977

1977 <BASE 10) = 7 B 9 (BASE 16 )

130 CREATIVE COMPUTING


FRIEND
There is a computer I would like to call friend. Computer mart
Then all of my troubles and worries would end.
It is the lottery computer run by our state.
Millionaires are made by one stroke of fate. new york
If I were to befriend this electronic brain New York City & long Island
'My tastes again would run to champagne:
And the machine I would not soon forget,
For the two of us together make a fine duet.

Iwould make it some flowers made up of wire, IMSAI, SWTPCo, Digital Group
Feed it a voltage just a little bit higher. Processor Tech, Apple, OSI
Install light bulbs a tiny bit brighter, TDL-Z-80, Seals, Cromemco,
Ease the tape tension a little bit slighter.
Veras, Tarbell, Oliver
We millionaires are a bit touched in the head. Magazines, books, chips,
For my honorable intentions word now I spread, sockets, connectors, terminals.
Look soon for your newspaper story to carry
Headlines of "Computer and man soon to marry." IT'S ALL HERE WAITING FOR YOU

Edward Stewart FRIENDLY ADVICE TOO

New York City


118 Madison Ave.
(Enter on 30th SI.)
New York 10016
212-686-7923
(Tues. thru Sat.)

HOBBYISTS! ENGINEERS! TECHNICIANS! STUDENTS!


Write and run machine language programs at home, display video graphics
'But you're out of your mind,'
on your TV set and design microprocessor circuits - the very first night
.They said with a shrug. - even if you've never used a computer before!
'The customer's happy- SPECIFICATIONS RCA COSMAC microprocessor /minl-
What's one little bug.' ELF II features anRCA

But he was determined.


COSMAC COS/MOS
microprocessor
8-bit
address- computer
able to 64k bytes with
A THOUGHTfUL GIFT
The others went home. DMA, interrupt, 16 regis-
FOR ANYONE WHO MUST
ters, ALU, 256 byte RAM,
He spread out the program, full hex keyboard, two STAY UP TO DATE IN
digit hex output display, COMPUTERS AND
Deserted, alone. 5 slot plug-in expansion ELECTRONICS I

bus, stable crystal clock


The cleaning men came. The for timing purposes and a

ELFII$9995
Whole room was cluttered double-sided plated-
through PC board plus
With memory dumps, punch cards, RCA 1861 video IC to dis-
'I'm close,' he muttered. play any segment of mem- ...------ SEND TODAy· 'I-
ory on a video monitor or • NETRONICS R&D LTD.,:Dept. CCll
TV screen.
The mumbling got louder, 333 Litchfield Road, New Milford, CT 06776 Phone (203) 354-9375 I
Yes! I want to run programs at controllers, etc. (soon to be
'Simple deductions, USE ELF II FOR .•. home and have enclosed: available as kits). Manual in-I
I've got it, it's right, just GAMES
Play interactive keyboard games,
D $99.95 plus $3 p&h for RCA
COSMAC ELF II kit. Featured
eludes instru. ctions for assembly,
testing, programming, video
I
Change one instruction' games with analog inputs, games

It still wasn't perfect


utilizing your TV set for a video
display!
in POPULAR
Includes
ELECTRONICS.
all components plus
graphics and games plus how
you can get ELF II User's Club I
As year followed year GRAPHICS
Create pictures, designs, alpha-
everything you need to write
and run machine language
grams plus the new Pixie chip
pro-
bulletins. Kit can be assembled
in a single evening. and you'll
still have time to run programs,
I
And strangers would comment, numerics and fabulous animated that lets you display video including games, video graphics, •
graphics on your TV screen. De- controllers, etc., before going to
'Is that guy still here' effects on your TV screen for
hour after hour of family fun! signed to give engineers practice
in computer programming and
bed! D $4.95 for 1.5 amp 6.3
VAC power supply, required for
I
CIRCUIT DESIGN
He died at the console Design circuits using a micro-
microprocessor circuit design, ELF II kit. D $5.00 for RCA •
ELF II is also perfect for college 1802 User's Manual.
Of hunger and thirst, processor. Use ELF II as a
and college-bound students (who D I want mine wired and tested I
counter, alarm system, lock,
Next day he was buried
Face down, nine edge first.
controller, thermostat, timer,
telephone dialer, etc. The' pos-
must un~ersta.nd
any. engrneermg,
co~put~rs
scientific
for
or
with the power transformer
RCA 1802 User's Manual
and
for I
And the last bug in sight,
sibilities are infinite!
Coming Soon!
business career). Easy mstruc-
lions .get you started right away,
even If you've never used a corn-
$149.95 plus $3 p&h.
Conn. res. add sales tax. I
Excluslve Ne\ronics Plug-In puter before! NAME _
An ant passing by, Program Debugger and monitor
allows visual display of any
As your need for computing
power grows, five card expan-
ADDRESS I
Saluted his tombstone program on a clock pulse by. sion bus (less connectors) allows CITY I
And whispered, 'Nice try!' clock pulse basis to help you memory expansion, program de-

...I
learn programming t-a-s-tl 0 4k
Author Unknown memory. Cassette 1/0 • 0 to I- bugger/monitor,
to D and D
cassette I/O, A
to A converters,
STATE--ZIP
0 Send info on other kits!
.•

(Submitted by J. Prusis,
Dearborn, Michigan)

NOV/OEC 1977
A, A to D o· Controller plug-ins.

131
••

~---------------
PROM, ASCII keyboard inputs, Dealer Inquiries Invited
120 PRINT -SRIGINAL CSST SF ITEM (DSLLARS, NS CENTS)";
130 INPUT C .
140 PRINT" LIFE SF ITEM (YEARS, NS MSNTHS)",
150 INPUT L
160 PRINT "SCRAP VALUE (DeLLARS, Ne CENTS)-;
170 INPUT S
180 PRINT
190 PRINT :Y~A~-, "STR~I@HT-,-S~M_SF- ,- D0U~LE-
Delving Into 200 PRINT
210 PRINT
, LINE, DIGITS,
.
DECLINING
220 V=C-S be dCllf'H'."fd • Cost - Ser~ Value
Depreciation 230 DI =V/L
~"lu4! ~
Stni,,,,+ "'al~ I ,<u.rJ
240 Y =«L+J) /2) * L ]
This simple little program computes 250Z=L '
annual depreciation on a capital item 2 60 FeR X:I TS L
using 3 different types of depreciation. 270 1Yl=v. ez IY)
The IRS generally allows any type of 280 Z=Z-I }
290 D3:2*C/L
depreciation as long as it is consistent; 300 C =C-D3
in other words you can't start 310 PRINT X,
depreciating an item using the double 312 Q=DI
314 GSSUB 400
declining balance method and then
316 Q=D2
switch to straight line. 318 GSSUB 400
Why different methods of deprecia- 320 Q=D3
tion? Because depreciation serves 322 G0SUB 400
different purposes. Say you're a car 325 PRINT
330 NEXT X
leasing firm; then most of' the 350 PRINT" FINISHED"
depreciation occurs early in the life of 360 G0T0 999
your capital goods (automobiles) and 400 Q =1NHQ* 100) II 00
420 IF Q>IOO THEN 440
you might want to use the double 430 PRINT" ";
declining balance or sum of digits 440 IF Q>IO THEN 460
method to reflect this. On the other 450 PRINT "_";
hand, an auto service shop might buy 460 PRINT s Q,
490 RETURN
a hoist with an expected 5-year life. 999 END
Because you expect the income of the
shop to increase over time you'd like RUN
to push as much of your expenses as SRIGINAL CSST SF ITEM (OOLLARS, NS CENTS)? 3900
possible to future years to offset the LIFE SF ITEM (YEARS N0 MeNTHS)? 5
increased taxes. Hence, you would opt SCRAP VALUE (D0LLARS, NS CENTS~? 400
for straight-line depreciation. YEAR STRAIGHT SUM SF DSUBLE
To delve further into the mysteries LINE DIGITS DECLINING
of depreciation as an indirect source
of capital and also the tax effects, I I s 700 $ 1166.66 $ 1560
2 $ 700 $ 933.33 $ 936
recommend almost any business 3 $ 700 $ 700 $ 561.59
finance text such as Hunt, Williams, 4 $ 700 $ 466 e.66 $ 336.95
and Donaldson: Basic Business 5 $ 700 $ 233.33 s 202.17
Finance published by Irwin. - DHA FINISHED

1 PRINT "THIS PRSGRAM CSMPUTES THE TSTAL AMSUNT SF MSNEY·


2 PRINT -WHICH WILL ACCUMULATE UNDER A SYSTEMATIC INVESTMENT PReGRAM-
3 PRINT\PRINT "H~W MUCH 00 YSU ~ANT TS INVEST PER YEAR";
4 INPUT A\PRINT H'SW MANY YEARS; \INPUT N
Systematic Savings 5 PRINT "ANNUAL RATE SF INTEREST (PERCENT)-;\INPUT
6 PRINT\PRINT -YEAR",-TSTAL
R
INVEST-, -TSTAL ACCUMULATED"
10 FSR NI =1 T0 N
When is it worth taking a simple 20 S:A*«(I+<R/IOO» AN!)-!) I(RIIOO)
algebra or finance or engineering 30 PRINT NI,NI*A,S
formula and. writing a computer 40 NEXT NI
99 END
program around it? Why not simply
use an $8 calculator to get the result?
Generally that's the best bet except READY
when you want to use the formula over RUN
and over again or when amounts are
THIS PRSGRAM C0MPUTES THE T0TAL AM0UNT SF MSNEY
being accumulated from one calcula- WHICH WILL ACCUM,ULATE UNDER A SySTEMATIC INVESTMENT PRSGRAM
tion to the next one.
Here's such an example. This HSW MUCH D0 Y0U WANT TS INVEST PER YEAR? 5000
program computes the total amount of HSW MANY YEARS? 10
ANNUAL RATE SF INTEREST (PERCENT)? 6.7
money which will accumulate under.a
systematic investment program. The YEAR TeTAL INVEST TSTAL ACCUMULATED
entire forumla is contained in Line 20; I 5000 5000
2 10000 10335
S is the net investment year by year.
3 15000 16027.4
Use it to find out how much you could 4 20000 22101.3
save if you weren't investing in a home 5 25000 28582.1
computer, peripherals, terminals, 5 30000 35497.1
7 35000 42875.4
software, etc., etc. - DHA 8 40000 50748.
9 45000 59148.1
10 50000 68111.1

132 CREATIVE COMPUTING


SMART
I k~ow a computer that is so very, very smart. On Napoleon's battle plan it could yet improve.
But it still takes me to tell it when to start. Could beat Bobby Fisher whatever be his move.
It can easily compute the orbits of the moons, With Einstein's theory it should for sure agree.
Could even play all the Beatie's favorite tunes. But remember, it could not do this, without me.
Edward Stewart

=::=
-+r
IT'S A GREAT BIG COMPUTER WORLD
ButYou OnlyNeed.
=::
---14-
-+r ---14-
-+r
-+r
THE ---14-
---14-

=::= COMPUTER 'CORNER


-+r
=::
---14- READY FOR IMMEDIATE DELIVERY
---+t- • SOL- A NewDawnI, Heret ---+4-
-+r
-+r
-+r
•IMSAI 8080
• :~~L
Z~
•MemOfieo & 1/0 Boardo
---14-
---14-
---14-
SOROe IQ 120
-+r ---14-
'-+f- •Compute, Boo!< Service ---14-
VIDEO TERMINAL
---II+- • Magnetic Tape8 & Dilks -t4--
--++---
-+t-
-+r
•Full line of Magazines

•~~n~~&:~~~e:-nfOfrNItion
-t4--
-1+-
---14-
Fully Assembled $995
-+r ---14- Price includes 24x80 charac-
-+r Visit THE COMPUTER CORNER fOf 811 veer ---14- ters, upper & lower case and
--++--- computer needs. Stop in and brOWN - you'll like our --+4--
--tII+- personalservice. ~ RS-232auxlli '
-+r ---14-
-+r THE COMPUTER CORNER --1+-
'-+f- --1+-
-+r White Plains Mall - Upper Level -!4-
-+r 200 Hamilton Avenue ---14-
-+r White Plains, New York 10601 ~

=::= Tel: (914) WHY - DATA =::


-+r A~1e Parl<ing ---14-
-:} 10-61~~~=rday J::
/11* **t* ********\\"

- - ·:-tciC
Was a telephone computer so bold ..,
The first of it's kind that was sold.
When you call its number
BYTESHDP SEND ME _.
ory
_ SOROC IQ 120 TERMINAL(S)
.
It is a bummer
It always puts you on hold. DAOEA
mlR~l
803 N. Scottsdale Rd.
o Standard Model 0 w/Option Package
o ENCLOSE $
MONEY ORDER.
CHECK OR

Tempe, Arizona 85281


There was a computer from Clyde. 602·8H4·1193 o CHARGE$ TO
Was indeed so very dignified. Name 0 Visa Card 0 Masterct)arge
We did not agree Phone Card No.
On its pedigree. AddrEiss\..---I---------- Interbank No.~~_Exp. Date_~
It told me to kiss its back side. City State_~Zip----- Call us collect for credit card orders.
15 day delay on personal checks.
VISIT OUR BYTE SHOP RETAIL STORES: Arizona residence add 4% sales tax.
There was a computer from South Bend.
That figured income tax without end. 813 N. Scottsdale Rd. 12654 N. 28th Drive 2612 E. Broadway •
Tempe, Az. 85281 Phoenix, A2. 85029 Tucson, Az. 85716 .'."
Calculated the tax (602) 894·1129 (602) 942·7300 (602) 327·4579
A little bit lax. SEND $2.50 FORTHE 40 PAGE BYTE SHOPPER CATALOG
Who is it they will apprehend?

NOVIDEC 1977 133


A student shows how he used a Sol computer
to assist other students in their lab work.

Inorganic Chemistry
Program . J.P. Peer

Partial Sample Run

YOU CAN PICK THE DISPLAY SPEED FOR THIS PROGRAM.


'0' IS STANDARD (FAST DISPLAY), '99' IS VERY SLOW.
Type the display speed ( 0 to 99 ) here: 0

Type the number of Stability Constants ( 1 to 10 ) here: 5

i~~:
Type K
Type K
Type K
~~!I~:~::
OKAY.

3
4
5
NOW TYPE IN THE STA8ILITY

here:
here:
here:
1.9E 4
3.5E 3
7.9E 2
1.5E 2
0.28
CONSTANTS.

NOW YOU NEED TO TYPE IN THE ANALYTICAL CONCENTRATIONS


OF THE LIGAND AND METAL ( PLEASE USE MOLES / LITER ).
Type the Ligand concentration ( 0 to 50 ) here: 1.0
Type the Metal concentration ( 0 to 50 ) here: 0 •.1

ALPHAS CONCENTRATIONS OF COMPLEXES


++++++ +++++++++++++++++++++++++++
O-Ligand complex 9.8625933 E-15 molar

i
0 9.8625933 E-14
1 1.8738927 E-9 1-Ligand complex 1.8738927 E-10 molar.
·2 .00000656 2-Ligand complex .00000066 molar
3 .00518131 3-Ligand complex .00051813 molar
# 4 .77719701 4-Ligand complex .0777197 molar
# 5 .21761516 5-Ligand complex .02176152 molar

Program Listing

1000 REM CHM342C MODIFIED FOR SOL. 1977 8Y J. P. PEER


1010 REM 417 WEST WATER STREET, BERNE, INDIANA 46711
1020 REM LET'S CLEAR THE CRT SCREEN. TO DO THIS WE PRINT THE
1030 REM SCREEN-ERASE CHARACTER. ON SOL IT IS THE 'CLEAR'
1040 REM KEY. ON OTHER COMpUTERS IT IS THE 'SCREEN ERASE'
Dear David Ahl: 1050 REM KEY OR 'CONTROL-L.' IF YOU ARE USING A HARD-COPY
I read the following interview with 1060 REM TERMINAL YOU CAN OMIT THIS.
Lee Felsensteiri on the Sol computer in 1100 PRINT"(clear ~ey)"
1110 REM SET SPEED OF SOL'S VIDEO DISPLAY MODULE (VDM). IF
the July-August 1977 Creative Com- 1120 REM YOUR MACHINE IS NOT A ·SOL YOU CAN OMIT THIS.
puting. 1200 SET S=O
Ahl: Do you have some feeling 1250 DIM K(11 ),A1 (12)
concerning what people are doing 1290 REM A COLON (:) SEP~RATES STATEMENTS ON ONE LINE.
with them so far? 1300 PRINT:PRINT:PRINT
1400 PRINT" HIT HIS PRO G RAM FIN D S T ~ E"
Felsenstein: It's very hard for me to 1500 PRINT"C 0 N C E N T RAT ION S 0 F ALL S P E C I E S"
tell ... they're getting SOLs in order 1600 PRINT"I N A COM P LEX ION E QUI L .1 B R I U M "
to do something. Just what it is we 1700 PRINT"Y 0 U MUS T T Y PEl NTH EST A B I LIT Y"
don't know ..... 1800 PRINT"C 0 N S TAN T S .":PRINT:PRINT:PRINT
1850 PRINT:PRINT:PRINT
In an effort to clear up some of the 1900 REM IF YOU'RE USING A HARD-COPY TERMINAL YOU CAN OMIT THE
mystery I am sending you a sample of 1910 REM SUBROUTINE AT LINE 64000.
what I have been doing with my Sol 19.20 GOSUB 64000

134 CREATIVE COMPUTING


computer. I. am a chemistry student
and computer fanatic. I bought the Sol 2000 FOR Z=1 TO 6:PRINT:NEXT Z
2100 PRINT" August, 1977 by J. P. Peer"
because it comes assembled and it has 2200 FOR Z=1 TO 7:PRINT:NEXT Z
a keyboard instead of those ludicrous 2300 GOsUB 64000
toggle switches! 2400 PRINT
In the Spring of 19761 began working 2500 L=0:U=99
2600 PRINT"YOU CAN PICK THE DISPLAY SPEED FOR THIS PROGRAM."
with Dr. L.A. Bares of Indiana 2700 PRINT"'O' IS STANDARD (FAST DISPLAY), '99' IS VERY SLOW."
University-Purdue University at Fort 2800 INPUT"Type the display speed ( 0 to 99 ) here: ",52
Wayne to build a series of interactive 2900 A=s2
programs to assist Inorganic 3000 GOsUB 60000
Chemistry students with their 3050 REM CHANGE VDM DISPLAY SPEED T~ USER'S WHIM.
3100 SET s=A
laboratory work. This group of 3200 PRINT"(clear key)"
programs was written in BASIC on a 3300 L=1:U=10
COC-6600 and was used this Spring by 3400 PRINT:PRINT
chemistry students. The series 3500 INPUT"Type the number of Stability Constants ( 1 to 10 ) here: ",L1
3510 REM IF YOUR BASIC WON'T ACCEPT THIS TYPE OF INPUT ~TATEMENT TRY
presently has about ten programs. I am 3520 REM THE FOLLOWING SUBSTITUTION:
sending you one of these programs 3530 REM PRINT"Type the number of •.•.•. here: ";
that I modified to run on my Sol. 3540 REM INPUT A
This program finds the concen- 3600 A=L 1
3700 GOsUB 60000
trations of the various species present
3800 L1=INT(A)
in a complex-ion equilibrium. The user 4000 PRINT"(clear key)"
enters the stability constants and the 4100 PRINT:PRINT
analytical concentrations of the metal 4200 PRINT" OKAY. NOW TYPE IN THE STABILITY CONSTANTS."
and ligand. The effects of pH and 4300 FOR 1=1 TO L1
4400 PRINT"Type K(";I;" ) here: "; : INPUT" ",K(I)
solubility on the equilibrium have been 4500 NEXT I
ignored for simplicity. 4600 PRINT
Our other Inorganic Chemistry 4700 L=0:U=50
programs assist the lab student as . 4800 PRINT"NOW YOU NEED TO TYPE IN THE ANALYTICAL CONCENTRATIONS"
he/she finds the stability constants of a 4900 PRINT"OF THE LIGAND AND METAL ( PLEASE USE MOLES / LITER )."
5000 INPUT"Type the Ligand concentration ( 0 to 50 ) here: ",L2
complex ion and then, with these 5100 A=L2
constants known, proceed to plot 5200 GOsUB 60000
beautiful logarithmic distribution 5300 L2=A
graphs showing the relationship 5400 INPUT"Type the Metal concentration ( 0 to 50 ) he~e: ",M
5500 A=M
between ligand concentration and 5600 GOsUB 60000
various complex ion concentrations. 5700 M=A
We also wrote a program to do 5800 REM FIND alpha O. SEE BLACKBURN'S 'EQUILIBRIUM' FOR THE THEORY.
similar plots of polyprotic acid species 5900 T=1:s=1:N=1
6000 T=T*K(N)*L2
versus pH, and a program to plot redox 6100 S=S+T
titration curves, just for fun. 6200 N=N+1
The Sol-compatible versions of 6300 IF N <= L1 THEN 6000
several of our other programs must 6400 A1(0)=1/S
wait until Processor Technology pro- 6500 REM FIND ALL THE OTHER alphas.
6600 N=1
duces its long-awaited 8K BASIC. (I've 6700 A1(N)=K(N)*A1(N-1)*L2
been waiting since February!) 6800 N=N+1
I believe the only non-standard 6900 IF N <=L1 THEN 6700
BASIC statement I have used is: SET S 7000 PRINT"(clear key)"
7100 PRINT
= (a number). This changes the video 7200 PRINT"ALPHAS";TAB(27);"CONCENTRATIONS OF COMPLEXES"
display speed for Processor 7300 PRINT"++++++";TAB(27);"+++++++++++++++++++++++++++"
Technology's VOM. If you aren't using 7400 FOR J=O TO L1
a Processor Technology computer, 7500 PRINT"#";J;" =";A1(J);TAB(21);J;"-Ligand complex =";A1(J)*M;
7550 PRINT" molar"
omit the statements about display 7600 NEXT J
speed, 7650 PRINT
For more information on our 7700 INPUT"To rerun this program type a zero here: ",Z
programs contact 7800 IF Z j 0 THEN STOP
J. P. Peer 7900 PRINT"(clear key)"
8000 INPUT"To use the same Stability Constants type zero here: ",Z
417 West Water Street 8100 IF Z = 0 THEN 4600
Berne, Indiana 46711 8200 GO TO 2400
59999 STOP
and 60000 REM MY WORLD-fAMOUS ERROR LIMITS SUBROUTINE. LET'S NOT ALLOW
60010 REM THE USER TO MAKE MISTAKES WHEN 5/HE TYPES IN DATA. INPUT
Dr. L. A. Bares 60020 REM MUST BE WITHIN THE LIMITS OF 'L' AND 'U'. 'A' IS RETURNED.
Indiana University-Purdue Uni- 60030 REM ANY GOOD BASIC INTERPRETER SHOULD HAVE THIS ABILITY BUILT
versity at Fort Wayne 60040 REM IN AS AN INTRINSIC.FUNCTION.
60100 IF A >= L THEN IF A <= U THEN RETURN
2101 Coliseum Boulevard East 60200 PRINT"OOOOPS! THIS NUMBER MUST BE FROM ";L;" TO ";U
Fort Wayne, Indiana 46805 60300 PRINT"PLEASE TRY AGAIN HERE: "; : INPUT" ",A
60400 GO TO 60100
References 63999 STOP
64000 REM SUBRDUTINE TO STOP SCROLLING OF THE SCREEN. LET'S HAVE
Angelici, R. J., Synthesis & Technique 64010 REM PITY ON THE POOR USER WHO CAN'T READ AT 120000 BAUD AND
in Inorganic Chemistry, Experiment 64020 REM ALLOW HIM/ER TO READ WHAT WE PRINTED BEFORE IT DISAPPEARS.
13 (1977). 64030 REM A GOOD INTERPRETER WOULD HAVE THIS AS AN INTRINSIC FUNCTION
Blackburn, T. R., Equilibrium (1969), 64040 REM ALSO. FOR WORK WITH CRT'S IT'S INEVITABLE.
64100 INPUT"To continue, type any number here: ",Z
Li, N. C., J. M. White & R. L. Yoest, J. 64200 PRINT"(clear key)" <,
Amer. Chem. Soc., 78, 5218 (1956). 64300 RETURN

NOVIDEC 1977 135


MASTERMIND
II
Steve North

W~»I
..aO-REM' MASTERMIND I I
30-RD! STEVE NORTH Program Listing
"iiO-RD!
~'f , CREATIVE COMPUTING
_5Q-~!M PO BOX 789-M MORRISTOWN NE~ JERSEY 07960
60~D!
-70 PRINT "MASTERMIND I I"
In the March-April 1976 issue of 80 INPUT "NU'lBER OF COLORS"; C9
Creative we published a computerized 90 IF C9>8 THEN PRINT ''NO MORE THAN 8. PLEASE''': GOTO 80
version of Mastermind, a logic game. 100 INPUT ''NtJln~ER OF POSITIONS";P9
Mastermind is played by two people- 110 INPUT "Nll'IBER OF ROUNDS"; 1'9
120 P-C9fP9
one is called the code-maker; the other,
130 PRINT "TOTAL POSSl'BILITIES ."JP
the code-breaker. At the beginning of 140 H-OrC-O
the game the code-maker forms a 150 DIM QCP9).SC10.2).SSC10).ASCP9).GSCP9).ICP).HSCP9)
code, or combination of colored pegs. 160 LS ••••
BWRGOYPT ••
He hides these from the code-breaker. 170 PRINT
180 PRINT
The code-breaker then attempts to 190 PRINT "COLOR LETTER"
deduce the code, by placing his own 200 PRINT •.•••:.== .:rea::.::"

guesses, one at a time, on the board. 210 FOR X.1 TO C9


After he makes a guess (by placing a 220 READ XS
230 PRINT Xs>TAB(13)JMIDSCLS.X.1)
combination of colored pegs on the 240 NEXT X
board) the code-maker then gives the 250 PRINT
code-breaker clues to indicate how 260 FOR Ra1 TO R9
close the guess was to the code. For ·270 PRINT
280 PRINT "ROUND NU'lBER "JR; •• ---- ••
every peg in the guess that's the right 290 PRIN,
color and in the right position, the 300 PRINT "GUESS MY COMBINATION."
code-breaker gets a black peg. For /~RD! GET A COMBINATION
every peg in the guess that's the right 320 A-INTCP*RND(l)+l)
330 GOSUB 3000
color but not in the right position, the
340 FOR X=l TO A
code-breaker gets a white peg. Note 350 GOSUB 3500
that these black and white pegs do not 360 NEXT X
indicate which pegs in the guess are 370 FOR Mal. TO 10
correct, but merely that they exist. For 380 PRINT "MOVE I ·";M;" GUESS •• ; r INPUT XS
390' I F XS••"WARD·' THEN 2000
example, if the code was: 400 IF XS•••• QUI T" THEN 2500
Yellow Red Red Green 410 IF LENCXS)<>P9 THEN PRINT "BAD NtJIIBER OF POSITIONS."r GOTO 380
and my guess was ~ I'D! UNPACK XS INTO GSC1-P9)
Red Red Yellow Black 430 FOR X-I TO P9
440 FOR· Y-1 TO C9
I would receive two white pegs and 450 IF HIDSCXS.X.l>-MIDS(LS.Y.1> THEN 480
one black peg for the guess. I wouldn't 460 NEXT Y
know (except by comparing previous 470 PRINT ••••• J MIDSCXS.X.1>; ••• IS UNRECOGNIZED."r GOTO 380
guesses) which one of the pegs in my 480 GS(X)-MIDS(XS.X.1)
490 NEXT X
guess was the right color in the right ?D' RD! NOW WE CONVERT Q( 1-P9) INTO AS(1-P9) (ACTUAL GUESS]
position. 510 GOSUB 4000

136 CREATIVE COMPUTING


In the version of Mastermind ~ R9I I AND GET NUMBER O'F ELACKS AND WI TES
530 GOSUB 4500
published earlier in Creative, the com- 540 IF B-P9 THEN 630
puter could play only the passive role, ~a R9I TELL inMAN RESULTS
that of the code-maker. Since then 562,.YRINT '"(OU HAVE "I BI" ELACKS AND "Hil" win TES."
many readers have submitted excellent 110 R9I SAVE ALL THI S STUFF FOR BOARD PRINTOUT LATER
580 ssnO-xs
versions wh ich play both the active and 590 S(M.l )-B
passive roles. Most of the submissions 600 S(M.2)-W
were unfortunately in Fortran so we 610 NEXT M
here present a version of the game 620 PRINt '"(OU RAN OUT OF MOVESI THAT'S ALL YOU GETI"IGOTO 640
622 GOSUB 4000
written in MITS 8K BASIC.
623 PRINt -THE ACTUAL COMBINATION WASI "I
Actually, the task of getti ng the 624 FOR x- 1 TO P9
computer to deduce the correct 625 PRINT AS(X)I
combination is not at all difficult. 626 NEXT X
627 PRfNT
Imagine, for instance, that you made a
630 PRINT ''YOU GUESSEP IT IN ."au" MOVESI"
list of all the possible codes. To begin, 640 R-R+M
you select a guess from your list at 650 GOSUB 5000
random. Then, as you receive clues, 660 91
you cross off from the list those ~O RDC NOW COMPUT.ERGUESSES
~'O"""R9I
cornblnations which you know are 690 FOR X"1 TO P
impossible. For example if your guess 700 I<X)-1
is Red Red Green Green and you 710 NEXT x
receive no pegs, then you know that 720 PRINT "NOW I GUESS. THINK OF A COMBINATION."
730 INPUT "HIT RETURN WHEN READY "IXS
any combination containing either a 740 FOR M-l TO 10
red or a green peg is impossible and 750 GOSUB 3000
may be crossed off the list. The process 6' . R90J FIND A GUESS
is continued until the correct solution 7,70 G-INT(P*RND( 1)+ 1>
780 IF 1< G)-l, THEN 890
is reached or there are no more
790 FOR X"G TO P
combinations left on the list (in which 800 IF l(X)-1 THEN 880
case you know that the code-maker 810 NEXT x
make a mistake in giving you the clues 820 FOR x- 1 TO G
830 IF IeX)-1 THEN 860
somewhere).
840 NEXT X
Note that in this particular im- 850 PRINT '"(OU DUMMY. YOU HAVE GIVEN ME INCONSISTENT INFOllMATION."
plementation, we never actually create 860 PRINT "LET'S TRY AGAIN. AND THI S TIME. BE MORE CAREFUL.·'
a list of the combinations, but merely 670 GOTO 660
860 G-X
keep track of which ones (in sequential
(890) R9INOW WE CONVERT GUESS IG INTO GS
order) may be. correct. Using this '"90'0 FOR X-. 1 TO G
system, we can easily say that the 910 GOSUB 3500
523rd combination may be correct, but 920 NEXT X
to actually produce the 523rd combina- 930 GOSUB 6000
940 PRINT "MY GUESS I SI "I
tion we have to count all the way from 950 FOR X-I TO P9
the first combination (or the previous 960 PRINT HS(X)S
one, if it was lower than 523). Actually, 970 NEXT X
this problem could be simplified to a 960 INPUT" BLACKS. \/HI TES HI BI. \II I
990 IF Bl •• P9 THEN 1120
conversion from base 10 to base 1000 GOSUB 3000
(number-of-colors) and then adjusting 1010 FOR X-I TO P
the values used in the MID$ function so 1020 GOSUB 35.00
as not to take a zeroth character from a 1030 IF IeX)=O THEN 1070
1035 GOStJB 6500
string if you want to experiment. We did
1040 GOSUB 4000
try a version that kept an actual list of 1050 GOSUB 4500
all possible combinations (as a string 1060 IF B1<>B OR Wl<>W THEN I ex) •• o
array), which was significantly faster 1070 NEXT X
than this version, but which ate tremen- 1060 NEXT M
1090 PRINT "I USED UP ALL MY MOVESI"
dous amounts of memory. 1100 PRINT "I GUESS MY CPU IS JUST HAVING AN OFF DAY."
At the beginning of this game, you 1110 GOTO 1130
input the number of colors and number 1120 PRINT "I GOT IT IN '.'IM'" MOVESI'"
of positions you wish to use (which 1130 C=C+M
1140 GOSUB 5000
will directly affect the number ot
1150 NEXT R
combinations) and the number of 1160 PRINT "GAME OVER"
rounds you wish to play. While you are 1170 PRINT "FINAL SCOREI"
playing as the code-breaker, you may 1160 GOSUB 5040
type in BOARD at any time to get a list WO STOP
200 REM
of your previous guesses and clues, "·0 REM BOARD PRINTOUT ROUTINE
and QUIT to end the game. Note that ..a~R9I
this version uses string arrays, but this 2025 PRINT
is merely for convenience and can 2030 PRINT "BOARD"
2040 PRINT ''MOVE GUESS BLACK WHITE"
easily be converted for a BASIC that 2050 FOR Z ••1 .TO M-l
has no string arrays as long as it has a 2060 PRINT ZI TAB(9); ssczrr TABe 25); scz , 1); TAB( 35H scz , 2)
MID$ function. This is because the 2070 NEXT Z;
string arrays are one-dimensional, 2075 PRINT
2080 GOTO 380
never exceed a length greater than the
~REM
number of positions, and the elements
never contain more than one character. ~U-{: QUIT ROUTINE

NOY/DEe 1977 137



••• 2530 PRINT "QUITTERI
2535 GOSUB 4000
2540 FOR X~1 TO P9
MY COMBINATION WASI "J


• •

2550 PRINT ASeX);
2.560 NEXT X
2565 PRINT

••
2570 PRINT "GOOD BYE!'
2580 STOP


• •

~~RDI
dl-O-10 Rm
"';O;SaRm
INITIALItE Q( I-P9) TO tEROS

• • 3030 FOR 5- 1 TO P9
3040 QCS)-O


••• 3050 NEXT S
3~RETURN
~Rm
»"0' REM INCRDliNT Q( l-P9)


••• 3):StYREM
~3522 IF Qe 1»0
~gqt Rm
THEN 3530
IF tERO. Tift's IS OUR FIRST INCRmENTa MAKE ALL ONES


• •

3526 FOR. Sa 1 TO P9
3527 Q('S).1
3528 NEXT S

• •
3529 RETURN
3530 Qa 1

• •
.- .
3540 Q(Q).Q(Q)+l
3550 IF Q(Q)<-C9'THEN RETURN

•• 3560 Q(Q)=1
3570 Q-Q+l
358
~40og
GOTO 3540

••
••
_~
3.0.:2ir Rm
Rm
JlEM

4030 FOR S-I TO P9


CONVERT Q,(l-P9) TO AS( I-P9)


• •

4040 AS( S)-MI DS(l.S. Q( 5). I)
4050 NEXT S
RETURN

• •
4500 Rnt
REM GET .Nt,HBER OF ELAcKS (B) AND WHITES (W)


• •

<4S-3tj--Rm
R!l'I

4540 BaOI W-OI FaO


MASHES GS AND AS IN THE PROCESS


4550 FOR S= ITO P9

• ••

4560 IF GS(.S)<>AS( S) THEN 4620
4570 S-B+.1
4580 GS(S)-CHRS(F)

• •
• ••
4590 AS(S)~CHR$(F+I)
4600 FaF+2
4610 GOTO 4660

• •
4620 FOR T- 1 TO P9
4630 IrGS( S)<~AS( T) THnJ 4650


••• 4640 IF GSCT).AS(T)

4650 NEXT T
THEN 4650
4645 W-W+11 AS( n-CHRS( F) I GS(·S)-CHRS( F+ 1>.1F- F+21 GO TO 4660

• •
4660 NEXT S
R:EtURN

• •
Rm
-;'.,;;;i:' Rm PRINT SCORE


••• ..5w::uR!l'I
.503,Q" PRINT "SCOREI"
~PRINT "COMPUTER ";e


5050 PRINT" Hl1'IAN ";H

• •

5060 .PRINt
50 79.•...
~5e2--R!l'I
RETURN


• •

_551u. REM
.Ss20 Rm
5530 FOR S-1 TO P9 '
CONVERT Q( l-P9) INTO GS( I-P9')

• •
5540 GS(S)aMIDSCl.S.Q(S).I)
5550 NExT S


• •

~
5560 RETURN

69'10 R!l'I
6020 R!l'I
R!l'I
CONVERT Q( l-P9)
' .
to HS( I-P9)


• •

6030 FOR S-I TO P9
6040 HS( S)aMI DS(l.S. Q( S). I)
6050 NEXT S


• •

6060 RETURN
~HEM
6:5TOR!l'I COpy HS INTO GS

• •
6520' REM
6530 FOR 5= 1 . TO P9

• •
6540 GS(S)-HS(S)
6550 NEXT S


• •

6560 RETURN
EUil:0 Ra'I PROGRAM DATA FOR COLOR NAMES
8010 DATA BLACK.WHITE. RED. GREEN.ORANGE.Y£LL01,J.PURPLE. TAN

••
9$'R!l'I ••• WE'RE SORRY BUT IT'S TIME TO GO•••
9999 END

138 CREATIVE COMPUTING



• •
• RUN Sample Run •
• •
• RUN


• •

MASTERMIND I I
NU'oIBER OF COL.oRS?
NUoiBER OF POSITIONS?
4
4 •
• •

MASTERMIND II
NUoiBER OF COLORS?
NUoiBER OF POSITIONS?
4
5

• •
NUoiBER OF ROUNDS? 1


NUoiBER OF ROUNDS? 2

•• .-
TOTAL POSSI BILl TI ES " 256 TOTAL POSSiBILITIES = ~024


• •

COLOR LETTER

• COLOR LETTER


•• •

BLACK
WHITE
RED
B
111
R •
• •

BLACK
WHITE
RED
B
W
R

••
GREEN G

• •
GREEN G











ROUND

MOVE'
YOU HAVE
NU'lBER

GUESS MY COMBINATION.
MOVE'
YOU HAVE
1

2
2

1
GUESS?
BLACKS
GUESS?
BLACKS
I ----

BIIIRG
AND
BW!>G
AND
WHI TES.

WHITES.




•• •


.' ROUND' NUMBER

GUESS MY COMBINATION.
MOVE'
YOU HAVE
MOVE #
YOU HAVE
1

2
0

0
GUESS?
BLACKS
GUESS?
BLACKS
1 ----

BBWWG
AND - 3
WWBRR
AND 3
WHI TES.

WHI TES.

• •
MOVE # 3 GUESS? BRRW


MOVE # 3 GUESS? GGRBW

• •

YOU HAVE
MOVE #
YOU HAVE
4
3

2
BLACKS
GUESS?
BLACKS
AND
BRRB
AND
0 WHITES.

WHITES.
• •
YOU HAVE
MOVE # 4
3 BLACKS
GUESS?
AND
GRRBS'
0 WHI TES.


YOU GUESSED I T IN '4 MOVES I


• •

MOVE'
YOU GUESSED
SCOREI
5 GUESS?
IT IN
BBRW
5 MOVESI

• •
••
SCORE:
COMPUTER
HUoIAN
.0
4


• •
COMPUTER
HUoIAN
0
5

• •

NOW I GUESS. THINK OF A COMBINATI~N.

•• •
HIT RETURN IIIHEN READY?


NOW I GUESS. THINK OF A COMBINATION. MY GUESS ISI BBIIIIIIR BLACKS. WHITES



HI T RETURN
MY GUESS
MY GUESS 151
WHEN READY ?
I SI GRGR
GBRB
BLACKS.
BLACKS.
WHITES
WHITES
1 1.1
'1 1.0

• •

MY GUESS
MY GUESS
MY GUESS
ISI
151
WIIIRGR
RBBGG
I SI BRGGB
BLACKS.
BLACKS.
BLACKS.
WHI TES
IIIHITE5
IIIHITES
?
?
1.4
0.5

•• •• •
MY GUESS IS. WRRIII lLACKS.


WHI TES ? 0.1 MY GUESS 151 GGBBR BLACKS. WHITES ? 5.0
MY GUESS ISI GGWG lLACKS, WHI TES.? 4.0


I GOT IT IN S MOVES I


I GOT IT IN 4 MOVES I SCORE:


SCOREI


COMPUTER 5

•• •
COMPUTER 4 HLMAN 4

• •
HUMAN 5

.~~~~~!!"
100% GUARANTEE!!
We guarantee the products we sell.
Electrolabs TRICK OR TREAT!!
For each C2716, or TMS2716
Full refund or replacement for any
unsatisfactory product returned with- POB 6721,Stanford, CA 94305 purchased before 1, Jan. 1978
we will donate $2.00 to UNICEF
~e~~adi~YcSe~tfjR~~C1h60~ ~r~~~~~~,e~i~d
shipped fresh from refrigerated storage,
and our l Cs work properly!
415-321-5601· in your
equal
name,
amount
and issue you an
in credit towards
your 1978 purchases.
~;g~e~~!~~Og~~~~ds~b~~~PDenv~~~~:
~dd LINEAR
CPUs,. Support, & PROMs UVEPROMS
Equipment sent in response to each inquiry LM323K 5.95
and order. Call for quantity and special LM309K Z-80 39.00
group discount programs. 0.99 C2716 5V Only 59.00
LM317K 2.95 8080A 11.95
LM375N Xtal Osc. Ck t. 2.75 8X3001 55.00 TMS2716 3 Supplies - 49.00
MEMORY 8228 7.29 C2708 .Indus. Std. - Hi.95
LS 7031 8 decade counter & 75eg. driver MCM6810L·1 8216 2.39
2.95 C2708 (650nSeo.) 14.95
all on one 40 pin chip. Uses +5 only 15.95 21 L02-1 1.25 AY5·1013 4.95
(includes schematic and app. note) 93411 DC 1.00 C1702A 2K 4.95
8223 PROM SPECIAL 1019.95
~~u~3~4g~p~~g~ ~r'~CQ,es7~~n~·I~~bS U~ C3.107B.
C2114
1.00
19.00
uPD371 D Cassette Cntr!. 49.00 C1702 2.25
MM74C926N 4decade counter/driver 5,95 uPD372D Ff opp v-Crrtrl. 52.00 MM5203Q 2K 2.95
MM5058N/2533V 1024 Static S:R: 10/9.95 uPD411 D-4 135nS. 3.95
82S2708 70nS. Pin for P. 29.95

TANTALUM CAPACITOR SPECIAL: 22uFd/35VDC 10/3.99


·
\IEerbatlm '"
Storage Media
MM5204Q

Removable Magnetic.
manufactured by
.
4K 9.95

These are CSR13 type and offer excellent bypass, filter and coupling
performance out to GHz. frequencies. Perfect for memory and digital. . Information Terminals Corp.

~" VIDEO TAPE By major US Manufacturer, but NOT 12.99 MiniDisks 5 Per Box, Ea. Box: 10 Boxes, Ea: 50 Boxes, Ea:
Memorex. Absolutely guaranteed to cause neither head
10/119.95 MD525·1 (Soft Sector) 29.95 26.95 24.25
clogging nor excessive wear. 2400 ft.XX inch for one hour
play on Sony, G:E:, Panasonic and all other Monochrome and color MD525-10 (Hard Sector: 10 Holes) 29.95 26.95 24.95
EIAJ standard machines. Call for. prices on sizes to fit Sony Por-rapack , MD525-16 (Hard Sector: 16 Holes) 29.95 26.95 24.95
and for other lengths. OU[ bulk purchase makes this offer possible.
Splice-Free, 'and shipped in an attractive permanent black plastic storage Flexible Disks 2 Per Pkg.
box. Xu format is the highest performance per dollar. Normally $22.95.
FD34-1000 (Soft Sector IBM.Std.) 11.95 10.49 9.49
FD32·1000 (Hard Sector. Inner) 12.49 11.29 10.19
AJ'L Programming language selectric printer balls 29.00 FD65·1000 (Hard Sector, Outer) 12.49 11.29 10.19
VADIC Modem Cards. Complete, requiring only ±J 2V, +5V, and Flippy Disks 10 Per Box:
22 pin connectors for Bell 103 Orig./Answer service: 79.95 FD34·2000 (Soft, IBM) 89.30 80.30 72.30
FD32·2000 (Hard, Inner) 93.80 84.40 75.90
SMOKE DETECTORS Save your life, your lab, your computer. FD65·2000 (Hard, Outer) 93.80 84.40 75.90
Mfg. by BR K. We think that this is the most reliable unit on the market.
Same as the one demonstrated on TV for Pittway by William Conrad. Digital Cassettes 2 Per Pkg:
1·150 For all "Kansas City" and other digital recording with audio decks.
:~e~dp~i~~~vne'
~'Vsc~~:ti~~~~~~a~ii~~ ~;~~~rt~~~:~e~~i~~~90~ ~~ 29.95 8.90 8.50 7.49
7 dollar battery. Nationally advertised at $39.95. Specify battery or 110V. R-300 Digital Direct 11.99 10.99 9.99

NOV/DEC 1977 139


OTHELLO
Ed Wright*
Subroutine BOARDP(B,NM): Prints possible board positions. I am working
Language: FORTRAN out the board after having converted on a version of MOVEE that will look
Description: Othello is a two-player the 1's and O's and -1 's to W's, .'s, and ahead four ply (two turns) and use
game played on an 8-by-8 grid. The B's. (See sample game included). pruning techniques and a more general
game begins with four chips on the Subroutine BOARDC(MOVESI, evaluation "function."
board-two black and two white. In MOVESJ, IF, IAA, JAA, 8, 0C, DIR, Final note: Originally, if the com-
alternating moves, the players place a LC): Chances the board for the IFth puter was allowed to go first, I had a
chip on the board (one player uses move of the possible moves stored in random-number generator that chose
white chips, the other black chips). MOVESI, MOVESJ. Depending upon one ofthe four possible opening moves
When, by making your move, you 0C, it too can either change the board for the computer to make. However,
succeed in getting one or more chips of for a move made by the computer or by since the opening position is com-
the opposing color between two of its opponent. pletely symmetric, it makes no dif-
yours (in a horizontal, vertical, or Subroutine MOVEE(B, 0C, NM, ference which of these four opening
diagonal row) they are converted to MOVESI, MOVESJ, NFLlP, DIR, LC, moves one makes. Therefore, in the
chips of your color. The game ends 1M, IF, IAA, JAA): Evaluates each of the interest of reducing slightly the size of
when the board is completely filled and moves given to it from the move- the program, I removed the random-
the winner is determined on the basis generator subroutine and returns what number generator and associated
of who has more chips of his color on it considers to be the best move via the statements and now just allow the
the board. In the computerized version integer IF; that is, the move it selects is program to make one of the four
of the game presented here, you are MOVESI(IF), MOVESJ(IF). I have not possible opening moves. I feel the
pitted against the computer. tried it, but I believe you could replace savings in space is more important to
The author provided the following fifC with -fifC in this routine and set up the computer hobbyist.
explanation of each subroutine: the program to play itself and "fine- Also, I am continually fine-tuning the
Subroutine MOVEG (8, OC, NM, , tune" the evaluation of the moves, The move-evaluation subroutine that is
MOVESI, MOVESJ, DIR, LC, JAA, IAA present version of MOVEE only looks included the printout, although its
1M, N¢MVE, NFLlP): Generates all the ahead two ply and evaluates all the basic structure will no; change.
legal moves from any poss·ible board
position. 8 is a 20 array that stores the
present board position (100="off the Sample Run
board," 1=white, -1 =black, O=empty BOARD POSITION AFTER 9 MOVES

square). ¢C is the "opposite-color J = 1 2 3 4 5 6 7 -Game opening-


I
variable" and tells the program what
color. the opponent is ..If - ec is put in 1
2
the place of e5C, then the subroutine 3
will generate all the legal moves for the 4 W B
5 B W
opponent. MOVESI and MOVESJ are 6
arrays that store the I and J coord inates 7
8
of each of the legal moves returned
from the subroutine. DIR is a 20 array
WELCOME TO THE GAME OF OTHELLO. DO YOU WISH TO
that stores the number of the direction GO FIRST? YOU ARE WHITE IF YOU ARE FIRST.
that pieces are flipped for each move. ?
'yes'
LC is an array that stores how many
different directions pieces are flipped DO 'YOU WISH TO BE GIVEN A HANDICAP?
?
for each move. 1M is the number of 'no'
possible moves generated. Ne5MVE
DO YOU WISH TO .GIVE ME A HANDICAP?
(could be eliminated and 1M used) is a ?
variable that if equal to 1 indicates no Ino'
moves exist for the player from the
present board position. Ne5MVE equal WHAT IS YOUR MOVE? (I,J).
? eee14
to 0 indicates the player does have at 4,6
least one move. NFLIP is an array that
BOARD POSITION AFTER 1 MOVES
stores how many pieces are flipped for
each of the 1M moves. J = 1 2 3 456 7 8
I
Subroutine C0UNT(8,0C, N¢C):
Counts up the opponent's number of 1
2
. '

pieces on the board. If -¢C is put in 3 "

place of ¢C, then it counts up the. 4 W Vi W


5 B W
number of pieces the computer has.

>802 Coriander Dr., Torrance, CA 90502. MY MOVE IS 5,6

140 CREATIVE COMPUTING


'-'~
-Later in the game- -Still later in the game- -At the end of the game-
~
~,

WHAT IS YOUR MOVE (I ,J). WHAT IS YOUR MOVE (I ,J) • WHAT IS YOUR MOVE (I,J) •
? 00014 ? 00014
3,8
? 00014
7,1
~
3,5
~
BOARD POSITION AFTER 11 MOVES BOARD POSITION AFTER 23 MOVES BOARD POSITION AFTER 59 MOVES
J
~
J 5 J 8
I I ~
1 1 1 B B B B B B B B ~
2 2 W 2 \'I B B B W W B
3 W B 3 \'I W W VI W W 3 W B B B VI VI B B ~
4 W W W 4 W B VI B VI W 4 W B B B W B W 8
5 B B B B W W 5 B B W B B W B 5 W B W W B W W B ~
6 W W W 6 W B W W B 6 W W W VI W B VI B
7 W 7 B W VI W W W W W B ~
8 8 B B B B B B B B B
~
MY MOVE IS 8,4 MY MOVE IS 2,4 MY MOVE IS 2,7
~
BOARD POSITION AFTER 12 MOVES BOARD POSITION AFTER 24 MOVES BOARD POSITION AFTER 60 MOVES
~
~
INTEGER E(10,10) ,DIR(30,8)
DIMENSION DRSPON(2) ,IAA(8) ,JAA(8) ,MOVESI(30) 612 FORMAl'U , 'YOU PLAYED WELL AND WE HAVE TIED. I WAS
2,MOVESJ(30) ,LC(30) ,NFLIP(30) 2'THANK YOU FOR A FINE GAME.')
DATA DRSPON /'YES','NO'/ WRITE(6,613)
DATA IAA /-1,-1,-1,0,1,1,1,0/ 613 FORMAT(/,lX,'DO YOU WISH TO PLAY AGAIN?' )
DATA JAA /-l,0,l,I,I,0,-I,~I/ READ(5,*)RESPON
COMMON /TWO/ OC ProgramListing IF(RESPON.EO.DRSPON(l))GO TO 22
DO 10 1=1,10 STOP
DO 10 J=l,10 END
B(I,J)=0 SUBROUTINE MOVEG(B,OC,NM,MOVESI,MOVESJ,DIR,LC,JAA,IAA,IM,
IF(I.EQ.l.OR.I.EQ.10)B(I,J)=100 2NOMVE,NFLIP)
IF(J.EQ.l.0R.J.EQ.10)8(I,J)=100 INTEGER B(10,10) ,DIR(30,8)
B(5,5)=1 ' DIMENSION MOVESI(30) "MOVESJ(30) ,LC(30) ,NFLIP(30),
8(5,6)=-1 2IAA(1) ,JAA(l)
8(6,5)=-1 COliMON /TWO/ OCA
B(6,6)zl DO 1 1=1,30
CALL 80ARDP(B,0,0) LC(I)=0
WRITE(6,601) NFLIP(I) =0
601 FORMAT U / ,IX, '\~ELCOME TO THE GAME OF OTHELLO. DO YOU WISH TO IM=0
2',/,' GO FIRST? YOU ARE WHITE IF YOU ARE FIRST.') DO 20 1=2,9
REAli(5,*)RESPON DO 20 J=2,9
OCzl IF(B(I,J))20,3,20
IF(RESPON.EQ.DRSPON(2))GO TO 11 IC=0
CALL HANDIC(OC,B,DRSPON,NHD) DO 5 L=l,8
NM=NHD IA=IAA (L)
IF(NM.EQ.60)GO TO 15 JA=JAA(L)
CALL MOVEG(B,-OC,NM,MOVESI,MOVESJ,DIR,LC,JAA,IAA, IF(B(I+IA,J+JA)-OC)5,6,5
2IM,NOMVE,NFLIP) , IV=l
If(IM.EQ.0)GO TO 12 IV=IV+l
WRITE(6,713) MVI=I+IV* IA
FORMAT(//,IX,'WHAT IS YOUR MOVE (I ,J) .') MVJ=J+IV*JA
READ(5,*) MOVEI,MOVEJ IF(B(MVI,MVJ))7,5,7
MOVEJ=MOVEJ+l IF(B(MVI,MVJ)-100)11,5,11
MOVEI=MOVEI+l 11 IF(B(MVI,MVJ)-OC)8,4,B
DO 9 I=l,IM 8 IF(IC-l)13,12,13
IF(MOVESItI) .EQ.MOVELAND.MOVESJ(I) .EQ.MOVEJ)GO TO 13 13 IM=IM+l '
CONTINUE IC=l
WRITE(6,701) 12 NFLIP(IM)=NFLIP(IM)+IV
FORMAT(lX,'MOVE INVALID. PLEASE RE-ENTER') LC (1M)=LC (1M)+l
'GO TO 14 LD=LC (1M)
NM=NM+l DIR(IM,LD)=L
CALL BOARDC(MOVESI,MOVESJ,I,IAA,JAA,B,-OC,DIR,LC) CONTINUE
CALL BOARDP(B,NM,NHD) IF(IC)21,20,21
GO TO 2 21 MOVESI(IM)=I
OCz-l MOVESJ(IM)=J
CALL HANDIC(OC,B,DRSPON,NHD) 20 CONTINUE
B(5,7)=1 IF(IM)31,31,30
B(5,6)=1 31 IF (OCA.EO.OC) WRITE (6,10'0)
NM=NHD+l 100 FORMATU,lX,'I HAVE NO MOVE AND MUST' PASS')
CALL BOARDP(B,NM,NHD) 30 RETURN
GO TO 8 END
12 WRITE(6,756) SUBROUTINE COUNT(B,OC,NOC)
756 FORMAT(/,lX,'I CAN SEE NO MOVE FOR YOU, SO I WILL' INTEGER B(10,l)
2'MOVE IF I CAN.') NOC=0
2 IF(NM.EQ.60)GO TO 15 DO 10 1=2,9
CALL MOVEG(B,OC,NM,MOVESI,MOVESJ,DIR,LC,JAA,IAA, DO 10 J=2,9
2IM,NOMVE,NFLIP) IF(B(I,J)-OC)10,5,10
IF(IM.EQ.0)GO TO 20 5 NOC=NOC+l
CALL MOVEE(B,OC,NM,MOVESI,MOVESJ,NFLIP,DIR,LC,IM,IF,IAA,JAA) U CONTINUE
MOVEI-MOVESI(IF)-1 RETURN
MOVEJ-MOVESJ(IF)-l END
WRITE(6,603)MOVEI,MOVEJ SUBROUTINE BOARDP(B,NM,NHD)
FORMAT(/,lX,'MY MOVE IS : ',11,',',11) DIMENSION OUT(3) ,POUT(10,10)
CALL BOARDC (MOVESI ,I10VESJ,IF, IAA ,JAA, B,OC, DIR, LC) INTEGER B (10,1)
NM=NM+l DATA QUT'/'S','.','w'/
CALL BOARDP(B,NM,NHD) NMP=NM-NHD
GO TO 8 'WRITE(6,100)NMP
WRITE(6,602) 100 FORMAT(/,6X,'BOARD POSITION AFTER ',12,' MOVES',/)
FORMAT(/,lX,'DO YOU HAVE A MOVE?') WRITE(6,101)
READ(5,*)RESPON 101 FORMAT (, J = 8' )
IF(RESPON.EQ.DRSPON(I))GO TO 8 WRITE(6,102)
IF(IM.NE.0)GO TO 2 102 FORMAT (, I')
15 CALL COUNT(B,OC,NOC) WRITE(6,103)
CALL COUNT(B,-OC,NC) 103 FORMAT ( I II '}

IF(NOC.GT.NC)WRITE(6,610) DO 9 Ic2,9
610 FORMAT(/,lX,'CONGRATULATIONS,YOU PLAYED WELL AND HAVE WON.', DO 9 Ja2,9
2/,lX,'THANK YOU FOR A FINE GAME') IScB(I,J)+2
IF(NOC .LT. NC)WRITE(6,611) POUT(I,J)=OUT(IS)
611 FORMAT(/,lX, 'YOU PLAYED WELL; HOWEVER,YO·UR LUCK WAS BAD AND' DO 10 1=2,9
r r-r-a
2,/,'I,'HAVE WON. THANK YOU FOR A FINE GAME.') 10 WRITE(6,104) ri , (POUT(I,J) ,Jz2,9)
IF(NOC .EQ. NC)WRITE(6,612) 104 FO~MAT(lX,Il,3X,B(Al,2X))

1977 141
RETURN IF(B(IZ,JZ)+OC)41,40,41
END 40 I~K=JMID(LL)
SUBROUTINE BOARDC(MOVESI,MOVESJ,IF,IAA,JAA,B,OC,DIR,LC) ML=IMID(LL)
INTEGER B(l~,l~) ,DIR(30,8) IF(B(ML,MK) .EQ.0)NSUBO=90
DIMENSION MOVESI(3~) ,MciVESJ(3~),IAA(l) ,JAA(l) ,LC(30) 41 IF(BTT(MI,MJ).NE.OC)GO TO 38
MI=MOVESI (IF) NFLIP(I)=NFLIP(I)-40
MJ=MOVESJ (IF) lC=2
B(MI,MJ)=-OC 38 CONTINUE
NDIR=LC (IF) CALL COUNT(BTT,-OC,NOC)
DO 40 I=l,NDIR IF(NOC)39,39,42
L=DIR(IF,I) 39 NFLIP(I)=NFLIP(I)-200
IA=IAA(L) GO TO 32
JA=JAA (L) 42 DO 37 K1=2,9
IV=~ DO 37 K2=2,9
31 IV=IV+l 37 BTTS(K1,K2,J)=BTT(Kl,K2)
MVI=MHIV*IA DO 100 IL=2,9
MVJ=MJ+IV*JA DO 100 JL=2,9
IF(B(MVI,MVJ)+OC)39,4~,39 IF(BTT(IL,JL))96,100,96
39 B(MVI,MVJ)=-OC 96 IF(BTT(IL,JL) ~ OC)99,100,99
GO TO 31 99 DO 90 IZ=1,8
40 CONTINUE IV=0
RETURN 80 IV=IV+!
END ILL=IL~IV*IAA(IZ)
SUBROUTINE MOVEE(B,OC,NM,MOVESI,MOVESJ,NFLIP,DIR,LC, JLL=JL+IV*JAA(IZ)
2IM,IF,IAA,JAA) . IF(BTT(ILL,JLL»)98,36,98
INTEGER B(I~,l) ,DIR(30,1) ,BT(10,1~) ,BTT(I~,10) ,DIRB(20,8) 98 IF(BTT(ILL,JLL)-100)97,36,97
2,BTTS(9,9,20) ,DIRBB(20,8) 97 IF(BTT(ILL,JLL)-OC)80,90,80
DIMENSION MOVES!(l) ,MOVESJ(l) ,LC(I) ,NFLIP(I) ,MBI(20) ,MBJ(20) 90 CONTINUE
·2,LCB(20) ;NFLIPB(30) ,IAA(I) ,JAA(I) ,IY(24) ,JY(24), 100 CONTINUE
2IMID (24),JMID (24) ,ID (24) ,JD (24) ,NCORNI (4),NCORNJ (4) 95 CALL MOVEG(BTT,OC,NM,MBBI,MBBJ,DIRBB,LCBB,JAA,IAA,IM2,
2,MBBI(20) ,MBBJ(20) ,LCBB(20) ,NFLIB(30) 2NOMVE,NFLIB)
DATA.NCORNI,NCORNJ /2,2,9,9,2,9,9,2/ IF(IM2.EQ.0)GO TO 103·
DATA ID,JD /3,4,5,6,7,8,6*9,8,7,6,5,4,3,12*2,3,4,5,6,7,8, DO 102 IL=1,IM2
26*9,8,7,6,5,4,3/ . IF(MBBI(IL) .NE.2.0R.MB8I(IL) .NE.9)GO TO 102
DATA IY,JY /5,1,3,8,1,6,9,1,9,9,1,9,6,1,8,3,1,5,2,1,2,2,1,2, IF(MBBJ(IL) .NE.2.0R.~iBBJ(IL) .NE.9)GO TO 102
22,1,2,2,1,2,5,1,3,8,1,6,9,1,9,9,1,9,6,1,8,3,1,5/ GO TO 36
DATA IMID,JMID /4,1,4,7,1,7,9,1;9,9,1,~,7,1,7,4,1,4,2,1,2,2j 102 CONTINUE
21,2,2,1,2,2,1,2,4,1,4,7,1,7,9,1,9,9,1,9,7,1,7,4,1,4/ 103 NFLIP(I)=NFLIP(I)-190
ICO=0 36 CON1'INUE
IF=l IF(IC.NE.l)GO TO 35
IF(NM.EQ.59)GO TO 20 DO 50 K=1,24
10 DO 12 I=I,IM IQ=ID(K)
MI=MOVESI (I) JQ=JD(K)
MJ=MOVESJ(I) IF(MLEQ.IQ.AND.MJ.EQ.JQ)GO TO 50
IF(MI.NE.3.AND.MI.NE.8)GO TO 13 52 IF(B(IQ,JQ)+OC)50,53,50
IF(MJ.NE.3.AND.MJ.NE.8)GO TO 13 53 bO 54 K1=1,IM1
IF(MI.EQ.3.AND.MJ.EQ.3)IC=1 54IF(BTTS(IQ,JQ,Kl).EQ.OC)NFLIP(I)=NFLIP(I)-8
IF(MI.EQ.3.AND.MJ.EQ.8)IC=2 50 CONTINUE
IF(MI.EQ.8.AND.MJ.EQ.8)IC=3 NFLIP(I)=NFLIP(I)+25-NSUBO
IF(MI.EQ.8.AND.MJ.EQ.3)IC=4 35 DO 60 K=1,4
IF(B(NCORNI(IC) ,NCORNJ(lC)) .EQ.0)NFLIP(I)=NFLIP(I)-50 KCl=NCORNI(K)
13 IF(ML·NE.2.AND.MLNE.9)GO TO 11 KC2=NCORNJ(K)
IF(MJ.NE.2.AND.MJ.NE.9)GO TO 11 IF(B(KC1,RC2)) 60,58,60
Ico=ico+l 58 DO 61 Rl=l,IMl
NFLIP(I)=NFLIP(I)+60 61IF(BTTS(KC1,KC2,Kl).EQ.OC)NFLIP(I)=NFLIP(I)-55
11 IF(MI.LE.3.0R.MI.GE.8)GO TO IF(ICO.LE.l)GO 1'0 60
IF(MJ.LE.3.0R.MJ.GE.8)GO TO IF(MI.EQ;KC1.AND.MJ.EQ.KC2)GO TO 66
NFLIP(I)=NFLIP(I)+10 DO 62 K1=1,IM1
GO TO 12 62 IF(BT'I'S(.KC1,KC2,K1) .EQ.OC)NFLIP(I)=NFLIP(I)-20
ND=LC(I) 60 CONTINUE
DO 5 J=l,ND 32 CONTINUE
L=DIR (I,J) NFLIPM=-800
IA=IM (L) DO 15 1=1,11'1 .
JA=JAA(L) IF(NFLIP(I)-NFLIPM)lS,16,16
IVaI 16 NFLIPM=NFLIP(I)
IV=IV+1 IF=I
MVI=MHIV~IA 15 CONTINUE
MVJ-MJ+IV*JA 20 RETURN
IF(B(MVI,MVJ)-OC)6,4,6 END
IV=IV+l SUBROUTINE HANDIC(OC,B,DRSPON,NHD)
MVI=MI+IV*IA DIMENSION DRSPON(I)
MVJ=MJ+IV*JA INTEGER 1l(10,1)
IF(B(MVI,MVj)-OC)7,~,7 NHD=0
" IF(B(MVI,MVJ)+OC)5,6,5 WRiTE(6,608)
8 IF(B(MI-IA,MJ-JA))5,9,5 608 FORMAT(/,lX,'DO YOU WISH TO BE GIVEN A HANDICAP?')
9 NFLIP(I)=NFLIP(I)-5 READ(S,*)RESPON
GO TO 12 IF(RESPON.EQ.DRSPON(l))GO TO 7
5 CONTINUE WRITE(6,610)
12 CON.TINUE 610 FORMAT(/,lX,"DO YOU WISH 1'0 GIVE fIEA HANDICAP?')
DO 32 I=l,IM READ(5,*)RESPON
NSUBO=0 IF(RESPON.EQ.DRSPON(2))GO 1'0 100
MI=MOVESI (I) NAH=-OC
MJ=MOVESJ(I) WRITE(6,609)
IC=0 609 FoilMAT(/,IX, 'HOW MANY CORNERS? (1-4) ')
DO 33 K=I,10 607 READ(5,*)NHD
DO 33 J=1,10 IF(NHD.LT.1.0R.NHD.GT.4)GO TO 607
33 BT(K,J)=B(K,J) CALL HANDI(n,NHD,NAH,OC)
LL=0 CALL ~OARDP(B,0,0)
DO 56 J=1,24 GO TO 100
IPP=ID(J) NAH=OC
JPP=JD(J) WRITE(6,609)
IF(MOVESI(I) .NE.IPP.OR.I;OVESJ(I) .NE.JPP)GO TO 56 606 READ(5,*)NHD
LL=J . IF(NHD.LT.1.0R.NHD.GT.4)GO TO 606
56 CONTINUE CALL HANDI(B,NHD,NAH,OC)·
CALL BOARDC(MOVESI,MOVESJ,I,IAA,JAA,DT,OC,DIR,LC) CALL BOARDP(B,0,0)
CALL MOVEG(BT,-OC,NM,MBI,MBJ,DIRB,LCB,JAA,IAA,IM1, 100 RETURN
2NOMVE,NFLIPB) END
.IF(IM1.NE.0)GO TO 63 SUBROUnNE HAND I (8,NHD ,NAH ,OC)
NFLIP(I)=NFLIP(I)+l00 INTEGER B(10,1)
GO TO 32 INTEGER NCORNI(4) ,NCORNJ(4)
63 DO 36 J=l, IM1 DATA NCORNI,NCORNJ /2,2,9,9,2,9,9,2/
DO 34 K=I,10 SIGN=-l.
DO 34 L=l,10 IF(NAH.EQ.OC)SIGN=+l.
34 BTT(K,L)=BT(K,L) DO 10 I=I,NHD
CALL BOARDC(MSI.MBJ.J.IAA.JAA.BTT.-OC.DIRB.LCB) Il=NCORNI(I)
IF(LL.EQ.0)GO TO 38 . 12=NCORNJ(I)
IC=l 10 B(I1,I2)=SIGN*OC
IZ=IY (LL) RETURN
JZ=JY (LL) END

142
Announcing the West Coast's largest Personal Computing
.Show. April 28, 29, and 30, 1978 at California's brand new
long Beach Convention Center. This is a selling show with
180 booths (each draped, carpeted and with 500 waits
of electricity). Threefull days of conference sessions.
There will be home brew exhibits, exhibitors lounge,
inquiry badge system, computerized registration, a
newsroom, and a full blown advertising and promotional
campaign to bring you thousands of qualified buyers.

ri;"iirii-;;~it1
I for anything. I
I Send me the show kit: . I
I ~:::~ny: Title: I,
I Address: State: I
I
L -------_._-
...I
Zip Code:

Call.: (714) 973-0880


1833 E.. 17 sr.,
. Phone:

Or mail this coupon:


Suite 108, Santa Ana, CA 92701.
Sign early, corner booths are limited.
PERCOMP 78,
.
I
you'll find the Cybercom "blue boards" at the
following dealers:
MINNESOTA
ARIZONA Computer Depot, Inc.
Bits & Bytes Minneapolis
Phoenix
NEBRASKA
Electronic Discount Sales Altair Computer Center
Mesa Lincoln
ARKANSAS NEW HAMPSHIRE
Computer Products Unltd. Computer Mart
Little Rock • Nashua
CALIFORNIA Computer Shop 11111111
Alpha Micro Systems Union
Irvine
NEW JERSEY
Anchor Etectronics William Electronic Supply
Santa Clara Edison
Bits N Bytes NEW YORK
Fullerton Computer Enterprises
Bites, Bytes & Pieces Fayetteville
Citrus Heights Audio Design Electronics
Bootstrap Computer Store New York
San Francisco· Mini Micro Mart
Computer Room Syracuse
San Jose Computer Corner
Computer Center White Plains
San Diego .
Computer Mart 01 New York
Computer Components New York
Van Nuys
Index to Advertisers The Computer Mark NORTH CAROLINA
David A. Cook & Assoc.
Orange .
Boone
Jade Co.
APL Press 65 Lawndale OHIO
Cybershop
J K Electronics
Associated Electron,ics 27 Woodland Columbus

Byte, Inc 13 Mtcrotronics Microworks


Menlo Park Cincinnati
Byte Shop Mail Order 133 Orange Cnty. Computer Cntr. OREGON .
Compultalker Consultants 126 Costa Mesa Heath Quality Electronics

Computer Components 24
Coming'in January Recreational Computer Cntr. Aloha
Sunnyvale Dream Electronics
Computer Corner 133 Sunshine Computer Co. Corvallis
• How Would You Like a 16-Bit Com- Carson IEEE Student Store
Computer Enterprises 51 Corvallis
puter? P.rices of 16-.bit microprocessor Mike Quinn Electronics
Computerfest '78 102 Oakland Airport OKLAHOMA
chips are coming down and some are Altair Computer Center
Computer Mart of CA 126 Ximedia
Tulsa
now second-sourced. Here's a run- San Francisco
Computer Mart of NJ 128 DELAWARE PENNSYLVANIA
down on the new features you can Market Line Systems
Computer Mart of NY 131 Computer Data Systems
Hunnington Valley
expect from 16-bit machines in the Wilmington
a
Creative Computing 112,112A, COLORADO
Martin J. 'Boyle Assoc.
113, 115 near future. Byte Shop
Pittsburgh
LaForge Enterprises
Cromemco 1 • How to Write a Computer Simula- Englewood
Harrisburg
tion. In simple' language, the author FLORIDA
Cybercom/Solid State Custom Data Systems TEXAS I
K A Electronics
144, CIII shows how to write a computer simula- Miami
Music Douglas Computer Systems Dallas
53 tion to be used for classroom instruc- P & wCommunicetion
Digital Group Jacksonville
Houston
Cntr.
tion in some other subject, using as an Solartronics
Dilithium Press 95 Merritt Island The Micro Store
Dymax 124 example a simulation of power genera- Richardson
Williams Radio & TV
E & L Instruments 7 tion, fuel requirements, and costs. Jacksonville Microsystems Services
Corpus Christi
Electrolabs 139 • Games, Games, Games. Several new HAWAII
Houston Computer Mart
Mahala Micro Systems
Exxon Chemicals 106 ones you'll want to feed into your Honolulu . Houston
Small Computer Systems Young Electronics
Four Corner Press 19 computer right away. Complete Honolulu Pasadena

Gro Lee Designs 19 listings, runs and descriptions, of ILLINOIS Microtex, Inc.
Lillipute Co. Houston
Heath 14,15 course. Skokie Computer Te-rminal

Jade Co .• 30, 31 • .A New Sorting Algorithm. Using as American Microprocessor EI Paso

Liberty House 61 few comparisons as possible, with a Equipment


Prairie View
and Supply Corp. UTAH
Central Utah
Logical Services 52 minimum of steps between each com- Champaign Computer Co. Electronics Supply
Mahomet Provo
McGraw Hill 32A,33 parison, and takinq advantage of- Wilcox Enterprises Computers & Stuff
Micro Age 25 natural sequencing, this is a modular, Naperville Provo
IOWA Egbert Electronics
MITS CIV easy-to-understand sort program
Solid State Music ot Iowa Cit~ Orem
Netronics 131 written in BASIC. Iowa City McMullen Electronics

• Grammar as a Programming INDIANA Provo


Owens Associates 128 Data Domain SOS Computer Systems
Parasitic Engineering 23 Language. This brief but thorough Bloomington Provo

Percomp '78 143 description of Logo shows how a one- Syscon Internationallnc
South Bend
VIRGINIA
Computer Hobbies Unlld.
Personal Computing Corporation 65 command computer language can be KENTUCKY Richmond
TheData Domain Computer Systems Store
Personal & Small Business highly uncomplicated and very Lexington McLean
Computer Expo 45. suitable for student tinkering. MARYLAND Microtec
Cheap Inc. Reston
Polymorphic Systems 5 • An a-Hour Course in BASIC: Part 4. College Park M- Tech Engineering Inc.
Processor Technology 2 Readership has been very high for the TACtronics Springfield

QuanTronics 17 first three parts of this series, which is Laurel CANADA


L.P. Enterprises Trintronicsl
Scelbi 9 an introduction to BASIC by Tom Joppa The Computer Place

Southwest Technical Products Dwyer, author of "A Guided Tour to Micro Electronic Data Toronto
Systems EUROPE
Company CII Computer Programming in BASIC," Baltimore Struech Engineering Lid.
Microprogramming, Inc. West Midlands, England
Sunshine Com Ruter Co. 21 one of the top best-sellers on the Burnsville Haywood Electronics
Sybex 95,127,129 Creative Computing book list. MASSACHUSETTS Associates Lid.
Computer Mart Northwood. Middlesex,
Tarbell Electronics 77 Waltham England
Technical Design Labs 11 g~;;;g~~e~eshoP 11000011 ~r~7':u~~er~h~~e~~a~H
Telecommunication Services 65 MICHIGAN West Germany
Vector Electronic Company, Inc 125 Computer Mart Co. S +. W Hobbytronic
Royal Oak Heidelberg, West Germany
Windjammer Cruises 119 Special purchase plans available to colleges and universities.

144 CREATIVE COMPUTING


$109.95
29.95

$199.95
29.95

And, we build just

\ about any board you'll


want for S-100 bus expansion.
When you're thinking about expansion
look to the Solid State Music "blue
boards:' You'll find quality and user versa-
tility built into everyone allowing you to ex-
pand your system in whatever direction you
choose ... and, we've been doing it for years.
102 Input/Output, PROM and
Universal Board Right from the start we design our boards with our
Kit $ 54.95
Bare Rc. Board 29.95 customers in mind. Extra features are added that will
aid in expansion, not hinder program design and devel-
opment. All first class parts are used and they're checked
to make sure you have years of trouble free operation. Plus,
every kit comes complete with assembly instructions and user
information to make assembly a snap and operation a pleasure.
Talk to your dealer today to get more facts about the "blue boards"
or write direct. Compare prices, quality and features. You'll find out
why more and more people are using Solid State Music "blue boards"
$199.95
for their S-100 bus expansion.

SPECIAL BONUS OFFER


An 8080 Monitor for
104 2-Parallel and 2-Serlal
1/2 price!!!
Input/Output Board
Kit $149.95 If you buy any of the Solid State Music
kits or assembled boards you'll receive
rembted boards also available a SSM8080 Monitor complete with ei-
;Iightly higher prices.
ther eight 1702's or two 2708's and over
50 pages of software information. A
$49.95 retail value ... just $25.00 ..Hurry!

Solid State Music


2102A Walsh Avenue
Santa Clara, CA 95050
(408) 246-2707 We're the blue boards
Altair Computer Centers offer you direct access to the complete line of Altair microcomputer products.
For demonstrations, information or service, visit the experts at your local Altair Computer Center today. They're
located at these addresses:

ALTAIR COMPUTER CENTER THE COMPUTER STORE ALTAIR COMPUTER CENTER ALTAIR COMPUTER CENTER
4941 East 29th St. OF ANN ARBOR 8105 SW Nimbus Ave. 3208 Beltline Road
TUCSON, AZ 85711 310 East Washington Street BEAVERTON, OR 97005 Suite 206
(602) -748-7363 ANN ARBOR, MI 48104 (503) -644-2314 DALLAS, TX 75234
(313)-995·7616 (214) -241-4088 Metro-263-7638
COMPUTER KITS (S.F. area) ALTAIR COMPUTER CENTER
1044 University Ave. COMPUTER STORE OF DETROIT 611 N. 27th St. Suite 9 ALTAIR COMPUTER CENTER
BERKELEY, CA 94710 505-507 West 11 Mile St. LINCOLN, NB 68503 .5750 Bintliff Drive
(415) -845-5300 MADISON HEIGHTS, MI 48071 (402) -474-2800 HOUSTON, TX 77036
(313) -545-2225 (713)-780-8981
THE COMPUTER STORE COMPUTER STORES
(Arrowhead Computer Co.) THE COMPUTER ROOM OF CAROLINA. INC. COMPUTERS-TO-GO
820 Broadway 3938 Beau 0' Rue Drive 1808 E. Independence Blvd. 4503 West Broad St.
SANTA MONICA, CA 90401 EAGAN, MN 55122 CHARLOTTE, N_C. 28205 RICHMOND, VA 23230
(213) -451-0713 (612)-452-2567 (704) -334-0242 (1304) -335-5773

COMPUTER SHACK MICROSYSTEMS (Washington. D.C.)


. GATEWAY ELECTRONICS. INC. GATEWAY ELECTRONICS. INC.
3120 San Mateo N.E. 6605A Backlick Rd.
OF COLORADO 8123-25 Page Blvd.
ALBUQUERQUE, NM 87110 SPRINGFIELD, VA 22150
2839 W. 44th Ave. ST. LOUIS, MO 63130
(505) -883·8282. 883·8283 (703) -569-1110
DENVER, CO 80211 (314) -427-6116
(303) -458-5444 THE COMPUTER STORE
ALTAIR COMPUTER CENTER THE COMPUTER STORE
269 Obsorne Rd.
THE COMPUTER SYSTEM CENTER 5252 North Dixie Drive Suite 5
ALBANY, NY 12211
3330 Piedmont Road DAYTON, OH 45414 Municipal Parking Building
(518) -459-6140
ATLANTA, GA 30305 (513)-274·1149 CHARLESTON, W.VA_ 25301
(404 )_231_:1..69.1: .L304) -345-1360
TH COMPUTE;R STORE
ALTAIR COMPUTER CENTER OF NEW YORK
CHICAGO COMPUTER STORE 110 The Annex 55 West 39th St.
517 Talcott Rd. 5345 East Forty First sr. NEW YORK, NY 10018
PARK RIDGE. IL 60068 TULSA, OK 74135 (212) -221-1404
(312) -823-2388 (918)-664-4564

You might also like