Text content (OCR)
g2 INTERNATIONAL ™ ee eg
& Apple core _P
—_ presents ?
= Sa SS Se Go “asa
The Premier Magazine for Apple Computer Users ™M
VOLUME 4 NUMBER5 AUGUST 1983 $3.25 (US)
Apple ///
WordStar
NoDOS 2
BUY A BANANA.
SAVE A BUNCH.
MORE TO COME.
Leading Edge Products, Inc, 295 Turnpike Street, Canton, Massachusetts 02091
Call: toll-free 1-800-343-6833; or in Massachusetts call collect (617) 828-8150. Telex 951-624
INTRODUCING
With UltraTerm, the revolutionary new card
from Videx, you'll enjoy sweeping panoramas
of spreadsheets that you've never seen before:
128 columns by 32 lines, 132 columns by 2
lines and even 160 columns by 24
revel in the scenics of ay
stretching out act Teen.
records
in the new horizon of 80
by 48 lines—double the lines you
ormally have. So your word processing will
reveal a “depth of character” never possible
before!
Another breath-taking view of Ultraterm—it
delivers absolutely flicker-free, state of ut?
display, with 8 x 12 character matrix:
preposterously clear, rea
Apple is a registered trademark of Apple Computer Inc
paper! And youssiiierentate those charac:
ters in sevel des: normal (white on black),
inverse (black on white), bright intensity ang
dim intensity.
Ultraterm features a built-in soft video swi
and has complete firmware support for BASIC,
Pascal and CP/M®. Use it with the Apple® |
Apple Ile, Apple fl and Franklin
UltraTerm. Come on over and
enjoy the view.
Suggested retail price: $379
897 N.W. Grant Avenue, Corvallis, OR 97330.
503-758-0521
CP/Mis a registered trademark of Digital Research Inc
MEDICAL Fite
MANAGEMENT
Microsoft SoftCard systems
introduce your Apple to thousands
of new programs.
More powerful Apples. When you plug a SoftCardm system software manufacturer. The very first. Today,
into the Applee Il, II Plus, or lle, you're adding the ability Microsoft software is running on well over
to run thousands of CP/Ma-80-based programs. Word ‘7 a million computers, worldwide.
processing, data-base management, analysis and forecast- 2 With a reputation for dependability
ing programs—SoftCard gives your Apple access to ~ and consistent product
thousands of software tools for use in your business 4 % enhancement.
or home. Fe ? z > Ask your dealer. Ask about the
Premium capabilities. Apple Il or || Plusowners % superior application programs the
who want even more can add the Premium 3 SoftCard and Premium System make
System. In addition to CP/M-80, it provides ay * available to your Apple—high quality
80-column upper-and-lower case video on é ‘ programs for almost every area of home,
and a 16K RAMCard. Apple Ile owners z " - business and professional use. Then ask for a
can have all this on a single card— . “ demonstration of the complete SoftCard,
the Premium SoftCard lle. . Premium System, or SoftCard Ile. And introduce
Two computers in one. Any pa your system to some of those thousands of new
of these systems turns your y programs.
Apple into two computers. One o.. ” 7
that runs Apple software and . . BETTER TOOLS FOR MICROCOMPUTERS
another that runs CP/M-80. Which ” the,
means you'll double the utility of your ae =
computer. if ‘4 w
MICROSOFT CORPORATION
10700 NORTHUP WAY,
Complete solutions. The SoftCard, Premium
System, and Premium SoftCard Ile have everythin:
you need. Easy-to-install circuit boards. The CP/ BELLEVUE, WASHINGTON 98004
operating system. Microsofte BASIC. And the utilities you
need to manage CP/M-80 files. Microsofts a registered trademark, and SoftCard and the Microsoft
Why Microsoft? Microsoft was the first microcomputer 'ogo are trademarks of Microsoft Corporatio.
egret
WES WOES isa
bg
<i
Cat
Bey
Take a bite... ay fox
swararas
O06
KO
IR POC
y
sf
Vol. 4, No. 5 August 1983
Cover: Courtesy of Apple Computer Inc.
ARTICLES
Coming Full Circle - Kevin Everett Fitzmaurice. ............ 0000s cece cece cence eee e ences 10
The dark and bright sides of the Apple ///.
Structured Programming - Ronald L. Askew. .......0 0000s e eee c eee e eee eect nent n ene e eens 16
A good way to do it right.
Review: WordStar-Woody Liswood 3 cise: saeeenis eee SE Ee eS 20
The CP/M Best Seller in wordprocessing.
Reversal Eugenie M. Payttiattsscassencs:anarenrosncarsnesancerswin: snereinse wrnnwia sw irnnerecsietaceresiessretam: mearermmante 25
Othello by any other name...
A Moving Average Program - Joe and Chris Jasper... 0.0.0... c ccc cece eee eee 28
A program for business or home.
Use of the Disk Il Interface Card Part Il- John Uhley.......... 0... cece een cence ence eee e eens 32
Reading and writing without DOS.
Speed Reading on ‘the Apple ~ Michael A: Fischetse.... sseewrseesawens sere eee a 39
The Electronic tachistoscope.
Apple /// BASIC Compare - Mike Kramer. . 40
Compare adapted to Business BASIC.
The: Stamp ‘Collector Richard S: Willingssss<.<sccseners Sepee mace gene prem 46
Review of a Philatelist’s helper.
Hand Crafted Compiling - John B. Matthews M.D... 2.2.0.6 6.0.0 c eee cee ene tenet eee 50
More on Assembly Language.
Review: Proof Reader - Woody Liswood............ 00.00 cece eee eee eee xi tenenenetetdlnesessavenemntae-s 55
Check documents for spelling errors.
DEPARTMENTS
Textfile 4
Planting a Seed: The Management Converts - Peter C. Weiglin 9
Ask Us 58
IAC Sponsoring Members. 62
From the IAC President - Dave Alpert. . 63
From the IAC Office - Ken Silverman. . 64
Forbidden Fruit- Mark L. Crosby............ 0.00.22 eeeeeee eee e eee ee 65
New Temptations, Delicacies, and Necessities.
Apple
rchard
Vol. 4, No. 5 August 1983
Entire contents Copyright® 1983
by International Apple Core, Inc.
Peter C. Weiglin - Editor and Publisher
Donna Caldwell - Managing Editor
Nicole Lefcourt - Editorial Assistant
Val J. Golding - Editorial Associate
Contributing Editors:
Mark L. Crosby - New Products
“Dr. Wo” - Pascal/Languages Editor
Neil D. Lipson, P. E.
A. S. (Woody) Liswood
Morgan P. Caffrey
Barry D. Bayer
Jim Linhart - Miscellaneous Cartoonery
Dawn Brown - Circulation Manager
Karen Vanikiotis Zinsmeister - [AC Staff
Advertising Representative:
JE Publishers’ Representative Company
6855 Santa Monica Blvd.
Los Angeles, CA 90038
(213) 467-2266
New York - (212) 724-7767
San Francisco - (415) 864-3252
Address for all subscriptions, correspondence,
advertising material, manuscripts, etc.:
Apple Orchard
908 George Street
Santa Clara, CA 95050
(408) 727-7652
APPLE ORCHARD (ISSN 0277 - 1950) is published monthly by the International Apple
Core, Inc., 908 George St, Santa Clara, CA 95050. Second Class Postage paid at
Santa Clara, CA and additional entry points.
Subscription Rates (U.S. funds): $24.00 for 1 year, $45.00 for 2 years in the U.
S.FPO & APO; $30.00:1 yr., $55,002 yr., in Canada; $36.00 (surface), $48.00
(airmail) in Mexico, Central America, Caribbean Islands, Phillippines, Samoa; $36.00
(surface), $60.00 (airmail) in South America, Europe, North Africa; $36.00 (surface),
$72.00 (airmail) in Asia, Middle East, South Africa, Australia.
APPLE ORCHARD is a publicaion of the International Apple Core, a worldwide
federation of Apple computer User Groups. The opinions expressed herein are those
of the authors, and do not necessarily represent the views of the International Apple
Core, While we appreciate the co-operation of Apple Computer, Inc. and other
sponsoring members, the IAC and APPLE ORCHARD do not necessarily represent the
views of any of these companies. Our existence is derived from the thousands of
Apple users, and it is their interests which we serve.
Textfile
Apple Orchard is now a monthly publication. That's right,
monthly. In about 18 months, we have come from publishing
four times a year to 12 times, competing on considerably less
than equal financial terms with megabuck publishers, but
building a stable base of readers, advertisers, and friends. It's an
exciting achievement for our small staff and many friends, but it
brings with it a new responsibility.
For those of you who are subscribers at our old nine-time
rate, we're adding one issue to your subscription if it expires
before the end of 1983; two copies are being added if the old
expiration date was after the end of 1983. That roughly
compensates for the fact that our subscription rate is a bit lower
ona per-issue basis. Also, for the first time, we have an incentive
for a two-year subscription: it's $24 for one year, and $45 fortwo
years in the U. S. Outside of the U. S., the rates are as shown
elsewhere in this issue, and we've added the air mail postage
categories for those international subscribers who requested
them.
Other changes include a new advertising representative
firm, headed by a human dynamo named Jay Eisenberg. If
you're a prospective advertiser, call him at (213) 467-2266 ...
but then, he or one of his staff has probably called you already,
We have quite a story to tell. Jeff Ginsberg, who had been
handling that chore, will now be taking care of some special
projects for us.
If you're one of those who has been hearing about the pros
and cons of the Apple ///, we invite you to read “Coming Full
Circle”, by Kevin Fitzmaurice of Omaha. It's a classic tale of
love/hate/love, including a summary of features, Funny thing:
the rumoris that Apple is abandoning the Apple ///. Well, there
are almost 100,000 ///s out there, an installed base that many
companies would love to have. The /// ranks fifth or sixth
among computers in terms of sales, but of course the Il is so far
ahead that it causes a distorted perspective. Well, Apple people
claim that abandonment is not in their minds, and invite us to
watch what happens in the next couple of months. We're
watching.
Meanwhile, the largest installed base for the CP/M operating
system is on Apple computers, and we're seeking to devote
more space to this “old-timer”. Beginning on Page 20, Woody
Liswood takes a look at WordStar, the best-selling word
processor for CP/M (so far). Also, he reviews Proof Reader,
which checks spelling. Next month, we'll feature a program
that converts text files from CP/M to SOS on the Apple ///.
The variety of articles in this Apple Orchard issue also
includes Part Two of John Uhley’s probing into the Disk Il drive,
covering reading and writing to and from disks without DOS.
Joe and Chris Jasper provide a small program, actually a
subroutine, for calculating moving or running averages. Mike
Kramer shares his Apple /// BASIC Compare program, and
John Matthews covers “Handcrafted Compiling”, tactics for
better use of Assembly language.
‘And speaking of sharing, that's what Apple Orchard is; a
-means for sharing information. Monthly or not itis, and will be,
no better than the sum of its contributions. If you have even the
slightest thought of writing a long or short article about Apple
computers, their uses, innards, software, etc., for a magazine,
drop us a line and we'll send you a copy of our author
guidelines. We look forward to hearing from you.
Dont let price get in the way
of owning a quality printer.
Adding a printer to your computer makes
sense. But deciding which printer to add can be
tricky. Do you settle for a printer with limited
functions and an inexpensive price tag or buy a
more versatile printer that costs more than your
computer? Neither choice makes sense.
Here’s a refreshing option—the new, compact
STX-80 printer from Star Micronics. It’s the under
$200 printer that’s whisper-quiet, prints 60 cps
and is ready to run with most popular personal
computers.
The STX-80 has deluxe features you would
Py
expect in higher priced models. It prints a full 80
columns of crisp, attractive characters with true
descenders, foreign language characters and
special symbols. It offers both finely detailed dot-
addressable graphics and block graphics.
And, of course, the STX-80 comes with Star
Micronics’ 180 day warranty (90 days on the
print element).
The STX-80 thermal printer from Star
Micronics. It combines high performance with
a very low price. So now, there is nothing in
the way of owning a quality printer.
“Manufacturer's suggested retail IL
SQ
SCO
THE POWER BEHIND THE PRINTED WORD.
Computer Peripherals Division, 1120 Empire Central Place,
Suite 216, Dallas, TX 75247 (214) 631-8560
The newSTX 801 printer
for only $199
winchester
disk
corona
starfire 5
~ drive from Corona.
It leaves Apple DOS in the dust.
For starters, the Starfire gives you all the
power inherent in a hard disk drive. Lightning speed
(up to 10 times faster than a floppy), enormous
storage capacity (5 and 10 megabytes), and
superb data reliability.
With none of the bottlenecks, headaches and
hassles of floppy drives.
But even better, it makes Apple DOS infinitely
friendlier, faster and more powerful.
Boot into any program from the hard
run programs with a single keystroke.
We've added other features from the Coro:
PC, our own 16-bit desktop and personal computers.
You can automatically, selectively backup your vol-
umes. Partition the disk and run up to 16 different
operating systems, including Apple DOS, Pascal and
CP/M?
And depend on our DataGuard™ and Fail-
Safe™ data protection systems for the disk reliability
and data integrity you need.
| monitor 7 |
is being squeezed,
tarfire hard disk.
or the name of ue nearest Corona dealer, FEEL THE POWER.
st call us toll-free at 800-621-6746. Or write
Corona Data Systems, 31324 Via Colinas, Westlake #
Village, CA 91361. (213) 991-1144. ‘Fasopoe om Omegs Mictonvel tn Store 4 tm Aion te
‘Its simple.
The typewriter was a wonder in its with Letter Perfect, and more.
time. Letter Perfect is a wonder for Much more.
today. Lettei Perfect from LJK When it comes to practical
lets you use your computer to software for Ataris and Apples,
write letters and create reports, Letter Perfect is simple to
and edit your work. Change learn. And hard to beat. Ask
a word, Move a line. your dealer for a demon-
Combine two paragraphs. stration, or write LJK
You can do it all for more information.
LUK, INC. * 7852 Big Bend Blvd, St. Louis, MO 63119 « (314) 962-1855,
Plantings
a seed...
nf
The Management Converts
Today, the “progressive” manager is one who spearheads
the use of microcomputers as business tools in his or her
organization. More and more chests puff out proudly as boxes
beige and gray/blue appear on desks. Most of these folks
would have you believe that it was always this way, but it ain't
necessarily so. The fact is that the acceptance of personal
computers in institutional settings did not come easily.
The machines were seen by some managers as “toys”,
using “dormitory software”. The most common avoidance
approach was, and is, to say, “We're studying it’, as long as
possible. Reluctant managers may limit the scope of activities
in which the computer is to be used; or he may say that these
things are fine for menial work, but that managers have better
things to do than to play with keyboards.
That last one at least has a ring of plausibility to it There is,
after all, no real substitute for a human being when it comes to
dealing with other human beings, and that’s what manage-
mentis. Managers are continually being warned to combat the
instinct to do their subordinates’ jobs for them, and to rely on
team members to know their jobs. But management involves
the use of information to plan, control and evaluate the
activities and performance of others. If we achieve blissful
ignorance, then how do we assess the decisions, judgment,
and promotability of those subordinates? And how do we get
the relevant information to make the decisions, in time to be
most effective?
Enter the computer, the best information-processing tool
yet devised to aid humans. In the personal area, the Apple
computer and its imitators have been even more effective than
the relatively unapproachable mainframe computers. The
“business-institutional” market segment is growing rapidly, as
managers describe the new small computers in glowing terms.
The funny partis that ina majority of organizations, large and
small, the microcomputer didn't arrive with fanfare at the front
door; rather, it was smuggled in through the servants’ entrance
by employees who had become computer hobbyists (not
“hobbiests”, please), and who had seen the value of this tool in
the performance of their work. Unless the hobbyist also
happened to be the chief executive, what followed was a
process of system development, demonstration, proposal and
rejection, iterated until grudging approval was given. That
grudging approval turned to the appropriation of credit by
managers after the “toys” proved successful.
The idea that managers should concentrate on the humans
whom they manage is a good one in an era when computer-
generated data substitutes for human judgment; having a pile
of printouts to point to builds “justifiability” and fends off much
criticism. That human-oriented sentiment all too often obscures
another reason why some managers are reluctant to use a
microcomputer: the folk wisdom is that managers don't use
keyboards. Keyboards are for secretaries, for clerks, for “girls”.
Another funny thing: the managers who have taken to
keyboards attached to Apples have scored innumerable
successes as a result of that interaction. That's a trend that
should continue: the computer-using manager will outdistance
his or her illiterate brethren by greater distances.
And in terms of ease of use, computers are coming to
everyone, even managers. Apple's Lisa is an example. The
manager doesn't have to be a programmer or a typist, yet he or
she can make use of the computer as a tool. Unfortunately, a
computer will not guarantee success. The key is in how, and
how well, it is used.
FCUas l
he time had finally come when |
could afford to upgrade my personal
computer system. Not that my Apple Il
Plus had something wrong with it, but
rather | wanted a system that could do
more, and do it better. After reading
about all of the problems the Apple ///
was having, | decided that perhaps my
happy relationship with Apple was com:
ing to an end.
| made quite an extensive search. My
bulging literature library is proof of that.
Yet, | simply could not find one personal
unit that could meet all of my require:
ments. By this time | was beginning to
hear that Apple had been hard at work
remaking the Apple ///. | decided to give
Apple the benefit of the doubt, and take a
second look. Lo and behold, here it was
right in front of me, the very computer |
had been searching for all along!
What | would like to do now, is to give
you a clear and simple list of the features
of the Apple /// ona single page or two
(See Figure 1). You should then be able
to use this list as a yardstick for compari-
sons of different micros. Then, we'll look
at a few of the important features of the
Apple ///
The First RAM Machine
One of the most intriguing and unique
Coming Full-Circle
by Kevin Everett FitzMaurice
features of the Apple /// is that it is the
first RAM based machine. While all the
other new personal computers have
greatly increased ROM, the /// has almost
completely done away with it! Inside the
/// there is only 4K of ROM which does a
diagnostic check of the ///, and then
automatically boots whatever disk is in
the built-in system disk drive. What this
means is that you are not bound to any
language or operating system, nor do
you have to work around them to use
different ones, nor are you stuck with
outdated ROM! Any language or oper:
ating system is just loaded in on disk first
thing. You will never be caught with an
outdated machine because updating any
language or operating system is as easy
as loading a different disk. With the ///'s
generous amount of RAM, there is no
reason not to take this more intelligent
path to updating your BASIC, UCSD
Pascal, DOS, SOS, or what have you.
There is quite a speed difference be-
tween a RAM based operating system,
and a DISK based operating system. If
you have worked with one of the popular
portables, and have had to wait for” swap-
ping’, then you already know what |
mean.
Apple Il Emulation Mode
When you use the new Apple Il Emula-
tion diskette, none of the advanced feat-
ures of the /// are functional. Instead of
an Apple ///, itis as if you had an Apple Il
Plus or an Apple Il. Your II Plus has 48K,
DOS 3.3, Applesoft, Autostart ROM, a
disk controller in Slot 6 with 1 or 2 drives,
and either an Apple II serial card or an
Apple Il communications card. The Uni-
versal Parallel Interface Card is also fully
supported under emulation. While emu-
lating the Apple ll, the only changes to the
above are that now you are in Integer
BASIC with Programmer's Aid *1, instead
of Applesoft with Autostart ROM.
Paddles and joysticks are not universally
useable under emulation; for example,
any program that uses the annunciators
at the same time that it reads the joysticks
will get erroneous joystick readings. Also,
any Apple Il program that uses its own
routines for paddle-reading routines will
not run under the Emulator program.
All programs that require only the ll orl
Plus as configured above, and which use
only keyboard input, will run without any
problems on the ///. Most Apple Il pro-
grams require only the configuration the
Apple /// will emulate! However | would
like to see the next rewrite of Apple Il
emulation to include options for a 16K-
RAM card (64K needed for Apple Logo),
80 column display, lower case, support of
the ProFile, and an option for the Dvorak
American Simplified keyboard. Perhaps
the best deal would be for Apple to offer a
new Apple //e emulation mode. To run
Apple Il Pascal the emulation mode is not
needed, and you still have your super
Apple /// with all its power.
Apple /// Software
Apple has been demonstrating its sup-
port of the /// by supplying most of the
indispensible software packages a user
needs. With the Access /// program and
a modem, the Apple /// can communi-
cate with large mainframes, exchange
files back and forth, and thus do remote
data-processing work for them. Access
/// supports ANSI standard escape se-
quences, and emulation of the DEC
VT100 and VT52. Now you really can
work from home!
There are several utilities for the Pascal
System. One offers a whole library of
utilities, and is rightly called Apple ///
Pascal Utility Library. Another is called
Script ///, and is for formatting any text
written with the Apple /// Pascal Editor.
The formatted text can then be printed to
the screen, saved on disk, or printed out.
And for the serious Pascal programmer
there is Record Processing Services, which
provides sophisticated file management
for development work. Considering all
the Pascal aids, and the fact that most of
Pascal can exist on the ProFile so that you
need only one Pascal diskette, the Apple
/// isthe best UCSD Pascal development
system around.
AppleWriter /// is out and was used to
write this article. Among the many fea-
tures of AppleWriter /// are paragraph
and column tabulation, word wrap, split
screen operation, the ability to read Visi-
Calc /// files, global search, file insertion,
centering, four kinds of justification, search
and replace, printing to the screen,
automatic pagination, typeover, etc.
AppleWriter /// even includes a Word
Processing Language (WPL) that makes
it easy to customize your own applica
tions. Also included is a utility disk for the
transfer of files beteen Apple Writer 1.1, Il,
///, Mail List Manager Files, and general
conversion between SOS and DOS text
files. The most enjoyable feature of Apple
Writer for me is the powerful, yet easy to
use text formatting menu. Compared to
any other word processor that | have
used, this is the only one that makes it
simple to format something as difficult as
a single envelope.
Business graphics are made easy with
a new program called, of course, Apple
/// Business Graphics. It uses the DIF file
standard so it can communicate with
VisiCalc /// as well as Business BASIC,
and Apple /// Pascal.
Mail List Manager is yet another pro-
gram released through Apple for the ///.
This one is for creating and maintaining
mailing label files, among other things.
Quick File /// is a inexpensive data base
(file maintenence) program from Apple.
And of course, there is a special version
of VisiCalc, the Apple program that took
business software to new heights, for the
Apple ///. But have you heard? There is a
new much improved VisiCalc called, Visi
Cale Advanced Version, and so far it is
just for the Apple ///!
Outside support of the/// continues to
increase every day. More and more of the
tried and true programs for the Apple I
are being updated forthe Apple /// allthe
time. And Apple has the Microsoft CP/M
board designed to work with SOS, out
and working. Apple has named it Soft-
Card ///, and ina move to support it, has
become the sole distributor. Quite unlike
CP/M-86, the CP/M:80 for the Apple ///
will allow fairly straightforward conver-
sion of existing CP/M software. Many
CP/M programs will only require refor-
matting for the Apple /// disk drives,
which can also read Apple Il CP/M disks.
SoftCard /// includes the standard Mi-
crosoft BASIC. It also allows CP/M and
SOS to exchange files, and the ProFile is
fully supported. We have been waiting a
long time for this adapter, because Mi-
crosoft spent a lot of time interfacing
CP/Mand SOS. This being accomplished,
the wait was well worth it SOS, however,
is such a real advancement over CP/M
that, you may just want to stick with it
32-Bit, or 16-Bit, or 8-Bit?
The Apple /// comes with the 8-bit
6502B, which is an improvement on the
6502A, which is an improvement on the
6502, which is an improvement on the
6800, which is an improvement on the
first 8-bit chip, the 8008. The 6502B
includes an address enhanced instruc-
tion set for the 6502. Now there are both
bank-switched and enhanced indirect
addressing allowing up to 512K RAM.
Also, there are separate execution envi-
ronments for user and SOS, including
private zero and stack pages. Even clock
speed has been increased to 2-MHz peak,
and 1.7-MHz average. This allows the ///
to run, on the average, about 40% faster
than the Apple Il. This makes the 6502Ba
dream come true for 6502 lovers (Micro
magazine take note)!
The speed at which a CPU (central
processing unit) computes is a highly
overrated comparison factor between
personal computers. Being such an easy
one to compare on paper, because of
being in the numerical values of clock
speed and bit-size, it is often used. But in
real life, the computational speed of a
CPUis like horsepower, a factor to consi-
der if you intend to pull heavy loads like
time sharing or your camper.
A substantial problem when compar-
ing just clock speed, is not knowing that
one CPU can compute faster than anoth-
er at the same speed. The 6502, for
example, averages four times faster than
the 8-bit Z-80 at the same clock speed.
Also, a fast processor running a slow
BASIC may appear to be slower than a
slow processor that is running a fast
BASIC. The demands on the CPU by the
operating system can vary a great deal.
Matters are further complicated by
memory access times, as an 8-bit chip
can have much faster access times thana
16-bit chip depending on the memory
chips used and other factors. Yet another
problem involves the number of bytes
used by instructions. A 16-bit chip often
requires more bytes than an 8-bit chip for
the same operation, and usually needs
more memory for the same program.
Even 8-bit chips don't use the same
amounts of memory. The 6502 is a more
efficient user of memory than the Z-80,
which can result in both memory savings
and speed improvement Internal repre-
sentation of numbers varies from ma-
chine to machine, and language to lan-
guage. The difference in the amount of
bytes needed to represent numbers can
be substantial in a large program, and
can account for some speed differences.
To simplify matters, and to test a
complete system's performance, we have
benchmark tests. The IEEE is in the
progress of developing a standard set of
benchmark programs. But, benchmark
testing can not take into consideration
the tricks or advanced features that a
machine may have to speed its process-
ing. For example the Apple /// canruna
full 20% faster by merely pressing the
CONTROL key and the “5” key on the
Figure 1:
Keyboard Friendliness.
numeric keypad at any time (this sus-
pends screen display).
Another problem with benchmark test-
ing is that the tests are usually very small
programs that can't begin to use the
advantages of features like Business
BASIC’s invokable modules, which can
sharply reduce the amount of code needed.
Frankly, | will never rely on benchmark
testing until it is done with very large
programs, and these would have to utilize
the features available to each machine.
Standard benchmark programs only test
a machine's ability to do things in a very
cramped fashion, and if followed too
closely would discourage advanced fea-
tures.
Features like Business BASIC’s ability
to search for the line number of a GOTO,
starting either with its own line number or
at the beginning line number of the
Apple ///
a) Arranged in a strictly traditional typewriter layout.
b) Sculptured, stepped, and angled keys.
c) Numeric key pad. Recognized differently from main keyboard.
d) Software definable character set. Can be used for graphics.
e) All characters used by programming languages.
f) Dedicated cursor or arrow keys.
g) Two-key method to boot a disk without powering on and off.
h) Alpha lock key. Shift locks alphabetical keys only.
i) The entire ASCII code.
j) Automatic repeat for all keys and the speed can be tripled.
k) Can print 224 distinct characters.
1) Little bumps on D, K, and 5 keys for finger positioning.
m) Numeric keypad can be redefined into 12 special function keys.
n) Dvorak American Simplified Keyboard available on file.
0) 128 byte type ahead buffer.
p) Many different fonts available on file.
q) Character set can be changed under program control at any time.
1) Up to 13 control keys.
s) Computer “ON” light.
t) Two system keys. Closed and Open Apple keys redefine others.
u) 73 keys total.
Integrated Main Unit (built-in features).
a) 80 column display.
b) 143K Disk drive.
) Interface for up to 4 disk drives,
d) RS-232-C. Can be made to serve 6 devices with T-switch.
e) Color. All 16 colors with 192 lines of 280 dots per line.
f) Graphics. 16 shades of green with 192 lines of 560 dots per line.
g) Sound. 64 volume settings and over seven octaves,
h) Speaker. Of speech producing quality.
i). Monitor ports. RGB or any video device, NTSC, 80-column monochrome.
J) Real time clock (location for one on board at coordinates 3-B).
k) Two Joystick ports, A & B. Silentype printer can share port A.
1) Diagnostics in ROM.
m) Audio output, SOS Audio Driver can be rewritten for your needs.
n) Builtin security mount to prevent theft.
0) 256K RAM ability,512K potential without strain.
q) Four real expansion slots,
program, cannot become significant
time-wise in small programs. Most BASICs
always start at the very beginning line
number even if itis the next line they want
If a programmer wants to speed up a
program there are many techniques a-
vailable. Perhaps a more important ques:
tion than benchmark testing is, does the
program in question use all the speed
advantages of your machine, or even
more to the point, does it run fast enough
for you?
Most applications for a personal com-
puter just don't require the horsepower of
a race car (time-sharing CPU) any more
than we require it with our passenger
cars. It took a long time for people in the
AS. to realize that unnecessary horse-
power was costing them a lot of money,
and yet was virtually unusable. Word
Features
Expansion Products Supported.
processing, for example, is handled 8 bits
at a time regardless of the CPU size. To
put it simply, eight bit machines have
their place and true sixteen bit machines
have theirs. Some may find it surprising
to learn that super refined 8-bit chips like
the 6502B, the 6809, and the 6509 can
compute faster than early 16-bit chips.
A bench mark test in Byte, January
1982, Page 54, showed the pseudo 8/16-
bit IBM-PC to compute only about 20%
faster than the 8-bit Apple Il on the
average. This is consistent with the find-
ings of the benchmark testing for arith-
metic processing done by the Associa-
tion of Computer Users, but they found
the Apple Il about 50% faster on their
accounts receivable test. The Apple ///
runs about 40% faster than the Apple lon
the average. Most of this speed improve-
ment is not noticeable, however, due to
a) ProFile 5-MEG super quiet hard disk drive. Can fit under monitor.
b) Universal parallel port A T-switch could extend this.
c) Silentype inexpensive printer can plug in port A.
d) Qume letter quality printer (plugs into RS-232-C).
) Monitor ///, 16 shades of green and full graphics.
f) Modem eliminator cable comes with /// for use of RS-232-C with printers.
g) Cursor /// joysticks plug into ports A and B.
h) Prototyping board for development of new boards.
i) Apple CP/M adapter made by Microsoft including MBASIC.
j) Apple's new dot matrix and letter quality printers.
k) niFile and DuoFile disk drives providing up to 1.7 MEG.
REVOLUTIONARY OPERATING SYSTEM.
a) First ever written to be user friendly.
b) Data base capabilities. Hierarchical file-structure.
¢) Manages ALL memory locations and 1/O.
d) One disk format for ALL allows file sharing and communication.
e) Easily updated without hurting existing compatibility.
f) Ability to rewrite software drivers instead of changing hardware.
g) Will locate which drive a file is in for you.
h) Error proof menu system.
i) Any destruction of data requires confirmation.
j) Automatic date/time stamping of every file.
k) Interrupt driven.
1) Device-independent 1/O.
m) Stores information using all empty space.
n) Programs that request printing could continue while the printing goes on.
0) Powerful drivers for graphics, console, audio, printer, and RS-232.
p) Programs can run 20% faster by pressing Control-5 (no video).
q) Uses alll available memory.
Apple Languages
1) Apple /// UCSD Pascal.
a) Works under SOS, thus it has a hierarchical file-structure.
b) Will run Apple II Pascal.
c) 6502 development system.
d) Can communicate directly with SOS.
€) 32-bit floating point arithmetic. IEEE proposed standard.
f) Enhanced instruction set
the fact that the 6502B must also run
SOS, which consists of a great deal more
code than DOS 3.3 or PC-DOS. With all
the extra work we get out of SOS, though,
this trade off is well worth it
When the 32-bit CPU is affordable for
the personal computer, there will by then
also be storage media that can make use
of the 32-bit CPU's capacity for TERAbyte
virtual memory (trillions of bytes). Pehaps
the read/write video disk with a 32-bit
CPU like Intel's IAPX-432 or Motorola's
still in progress 120,000 transistor 32-bit
CPU, will be the real step into the future.
We can then have data bases (collections
of related information) and libraries for
everything and anything at our fingertips.
I have already heard promises of read/
write video disks with 100 GIGAbytes per
side (one hundred billion bytes). There
are several 32-bit chips already announc-
ed that can directly address 4-GIGAbytes
of main memory.
If we are going to access and search
through such vast amounts of data as
third generation storage will permit, then
the speed of our CPU will become a
crucial consideration. But present stor-
age being floppy disks and Winchester
type hard disk drives, the eight bit mach-
ines with 256K programmable RAM are
challenge enough for a single person to
utilize fully. Increases in RAM, Disk stor-
age, and CPU speed are just not signifi-
cant enough for desk top (personal)
computers to have to go to second
generation (16-bit) systems. It is also
quite likely that 16-bit systems will not be
fast enough, or able to address enough
memory for efficient use of GIGAbyte
and TERAbyte appliances. However, time
sharing, advanced operating systems,
and scientific number crunching applica-
tions can use the power of the full 16-bit
systems now. With the introduction of
third generation memory, storage, and
speed, it will be time to update both 8-bit
and 16-bit systems. Everything, including
applications, will have increased geome-
trically with third generation capabilities.
Apple's Lisa is the first example of a
personal computer that does need the
power of a true 16-bit processor. There is
no way that a single 8-bit chip or a pseudo
16-bit chip could run all the operating
code and graphics that are so necessary
to the Lisa. In fact the Lisa is Apple's first
departure from von Neumann architec-
ture, as it has another three processors to
assist the main processor. Since the Lisa
includes in its $9,995.00 price the inte-
grated six application programs | have
read so much about, the 5MEG ProFile,
1.7MEG of diskette storage, and 1MEG
of main memory, then only a fool would
call it overpriced!
Figure 1 (cont.)
g) BASIC programs can be edited with the Pascal Editor.
h) Can be loaded to the Profile and takes up only 175 Kbytes.
i) Memory limited by size of RAM, not software.
j) Up to 48 units for any one program.
k) Can be used to develop UCSD Pascal for any p-code machine.
2) Business BASIC.
a) Apple's third BASIC.
b) Up to 19 digit precision.
c) Console driver allows four direction scrolling.
d) Memory limitations are based on available memory.
e) Graphics subroutines are easily called.
f) Variables of current programs not destroyed by changes.
g) Code is fully I/O independent.
h) Turnkey systems need only to use the file name “HELLO”.
i) Arrays of several dimensions.
j) Integer variables available to speed up BASIC processing.
k) Can edit programs with AppleWriter ///.
1) Long Integers can be used for Financial Accounting.
m) REAL variables have significant digits after 6 rounded.
n) Floating-point Arithmetic is done with 32-bit precision.
Here are some of the advanced statements available:
a) PRINT USING and IMAGE statements with aids for output.
b) IF THEN ELSE for structured programming.
c) CHAIN to link programs together.
d) INVOKE and PERFORM make Assembly language routines easy.
e) WINDOW statement for definition of screen size.
f) ON KBD statement looks for keyboard input.
g) TYP statement controls type of data to be read.
h) INDENT and OUTDENT to make BASIC loops readable.
i) EXEC simulates keyboard input
j) DEF FN statement allows definition of added functions.
k) SWAP statement swaps values between variables.
1) FOR... NEXT has the STEP clause available.
m) POP removes the top pointer from the program stack.
n) ON ERR is used to handle errors.
0) RESUME will start execution over at the beginning of the error.
Here are the builtin disk file statements:
a) REC statement returns current record number.
b) ON EOF statement controls end of file procedures.
c) CREATE is used to make directories.
d) CATALOG to list directories.
e) DELETE, LOCK, UNLOCK, RENAME, OPEN, and CLOSE for disk files.
f) OUTPUT *, PRINT *, and PRINT * CSING for disk files.
g) READ *, WRITE *, all for use with files on floppy or Profile.
3) Apple /// COBOL
a) Rated High Intermediate Level by U.S. GSA.
b) Higher rating than many minicomputers.
c) Can run significant mainframe COBOL programs.
d) Makes use of SOS's advanced features.
e) Animator -provides full view of actual program execution.
f) FORMS-2 -interactively generates screens and source code.
g) Far more programs exist in COBOL than any other language.
h) Most English like language to date.
i) Supports structured programming with the PERFORM statement
Software Sources:
a) Apple Il software library.
b) Apple Computer, Inc.
c) UCSD Pascal software library.
d) CP/M software library with adapter.
e) International Apple Core
f) Apple /// software from everyone.
g) COBOL software library.
Conclusion
Apple /// represents the apex of the
combination of von Neumann and 8-bit
architecture. The main improvement |
would make on the /// is to build-in as
standard its Universal Parallel Interface,
rather than have it take up a slot. But
where do you stop adding if you want to
keep the initial price within reach, and
maintain a small footprint? Some com:
panies have stopped much too soon. The
success of the Apple Il was and still is, in
my opinion, due primarily to its builtin
expansion chassis. We could also build in
to the Apple /// an interface for the
Profile, another RS-232, four more ex-
pansion slots, a 6502B for I/O process-
ing, terminal interfaces, or we could just
buy a Lisa if we could afford it!
You will never be sorry you purchased
the ///, as the software end of it can be
updated more easily than any other com-
puter. And there are more programs for
Apple computers than any others. Also,
Apple has already built so much into it,
that you may never need anything else.
But if you do, there is plenty of room for
the future. Just as it is, the Apple /// is, in
my mind, THE state-of-the-art profes-
sional or networking micro system.
The /// is fully supported by Apple,
meaning you can expect new software
and hardware releases from Apple all the
time. Apple said in Apple /// Dimensions
that their number one project for the
whole company in ‘82 was the re-release
of the Apple ///. We have recently seen
new ideas for the ///, such as the “Pro-
duct Training Paks” that help the novice
get started using Apple /// programs,
and the interactive program called the
“The Keyboard” to teach its use.
Quick File /// is an example of Apple
continuing to release new software for
the ///. We should soon see the release
of the clock chip kit Even more manuals
have been and will be released on the
Apple ///. To end all complaints against
the low K of the built-in Apple Il compati-
ble drive on the ///, Apple has anounced
the DuoFile (2 drives) and UniFile (1
drive) drives. Each drive holds 850K! And
to provide easier back-up of the Profile,
Apple has developed and released Back-
up ///. This new program makes back-
ing up the ProFile an easy chore, and
condenses files to take up less disk
space.
What is even more exciting is the new
Catalyst program from Quark Engineer
ing. Using this program I can boot all my
software from the hard disk. | have finally
gotten away from the old “floppy shuffle”!
Well, here | am; an Apple fan once
again!
Ne DOUBLE-TAKE ac ve PRONTO-DOS a; may
2-WAY-SCROLL / MULTIPLE UTILITY 34.95 HIGH-SPEED DISK UTILITY
BY MARK SIMONSEN. BY TOM WEISHAAR
LISTINGS & CATALOGS SCROLL Up AND Down, Put HIGH-SPEED DOS inyour Apple's normal memory,
making file names and program lines much easier to Language Card or Apple lle high-memory—
access. Arrow-keys control scroll direction. New Apple- Function
‘soft List Format lists each program statement on new BLOAD HI-RES IMAGE .......
line for FAST program tracing and de-bugging. LOAD 60-SECTOR PROGRAM
Variable Diplay shows all of a prograns strings and SAVE 60-SECTOR PROGRAM «
variables with current values. Cross-Reference shows BLOAD LANGUAGE Ci 4
line nos. on which each variable & string appears. Better Kap ea ite No Change) sak, Shashi
Renumber/Append lets you merge programs (not just Boot the Pronto disk or your updated disks, cr
connect end-to-end). Applesoft ine-Number as eaqg eBro with the normal INIT command. Compatible with ail
you type. Instant Hex/Dec Converter, Program Stats, DOS commands, G.P.L.E.® and most of your programs.
Cursor Eliminate/Redefine, Free Space-On-Disk.. Fronto-DOS wil move DOS to your Language Card
Charts: Peeks/Pokes ‘or Apple Ile's standard high-memory, giving you
With 2 and Tipe & Tricks : Ppl uf oarnaie mani “
a rontoDOS also frees-up 15-extre-sectors per initial-
‘Apple Mechanic's 4315 Sterra Vista | San Diego, Callfomia 92103 | ized cist amost one hal track of ciak specet
Hi-Res type routines PLUS: Auto Free-Disk-Space, New “TYPE” Com-
are oT ‘ONLY | 8nd displays Text File contents, and much more...
programs
Geena ay abhi ssrA] ——
give Beagle Bros.
srormon your clek RENAME COMMANDS AND ERROR MESSAGES: ALPHA PLOT oxy
eae anying you want Pte your rogram An urtino. BY BERT KERGEY £ JAGK CASSIDY
anything you want nunautho-
fzed save-atiompt can produce 8 Not Copyable' mes DRAW IN HI-RES, on both pages, using keyboard OR
sage, or any message you want. Also LIST-prevention | paddies/joystick. View lines before plotting, Use mixed-
and one key peooramexsaition from eatlog: colors and Reverse (background opposite) plotting.
u stasis Oe or ce ported paerlingto Fast hi-res circles, boxes and ellipses; filled or outlined.
ur messag L Omit of & Compress HERes | to 1/3 Disk-Space. Super-
APPLE MECHANIC Fascinating "apcumentation. tips and experiments. | impssc rs pages t ane Sor reosateant roca
‘SHAPE-WRITER / BYTE-ZAP Hours of juicy Apple reading material image area anywhere on either hi-res page.
BY BEAT KERRY mate SOS toeleay you decioned 1) WBE ‘Or | Proportionslly-Spaced Hi-Res Type with adjustable
‘SHAPE EDITOR: Keyboard-draw shapes for anima- : character size and color. Upper and lower case with no
tion in your programs Create Pre Mone paced (includes Peeks & Pokes Chart and Tip Book #2) eae Imi Sorere ppb lh ors ie
jpetaces with special characters. Six fonts inclu ip
Listable Applet demas show you how to animate All Beagle Bros disks -
graphics and create professior iar rapt
BYTE-ZAP: Rewrite any byte on a disk for repair or || @@ Unlocked, ores GOTO your loc:
alteration. Load entire sectors on the screen for inspec- and Com Apple Software
tion. Hex/Dec/Ascii displays and input. Educational * Store for Beagle
instructions include experiments for making trick fle Apple* Il, | ? Mandl io agile
names, restoring deleted files, changing DOS, etc. Don’t le for | Bros products.
MORE: Useful music, text and hi-res tricks for your n’t settle for less. H they don't
tele #5) _ | TAPPLE” sa registered trade mark of You-Know-Who.| have ‘what you ||
ONLy | want, tell them |
APPLE MECHA NeW FLEX TEXT 28) tose onne
TYPEF ACE! ‘ONLY | " 20/40/56/70-COLUMNS WITHOUT HARDWARE | stick by call-
20.00 BY MARK SIMONSEN ing Beagle Bros \
BY BERT KERSEY, PRINT VARIABLE-WIDTH TEXT on both hires | (619-296-6400)
26 NEW FONTS for use with Apple Mechanic pro- | screens with Applesoft_ commands (including | or ANY Apple
grams. Many sizes of fully-editable characters. Hiab 1-70). Normal, expanded & compressed text with | Sofware Distributor.
BEAGLE MENU: Display only thefilenames you want | no hardware. 70-columns requires a monitor (not tv) :
from your disks (e.g. only Applesoft or only Lockedfiles) | Add to text or text to graphics. Run your
for fast one-key cursor selection. existing Applesoft programs under Flex Text control
(Includes Peeks & Pokes Chart and Beagle Menu Easy to use and compatible with GPLI
’ DOS Tool Kit® font compatibility, or use the supplied 100 TIP BOOK TIPS ON DISK 20.00
Flex Text typefaces, Select up to9 fonts with control-key BY BERT KERSEY
MEMORY commen ea rel od cals any type style! 100 LISTABLE PROGRAMS from fee le cope Tip
ustom text character editor inclu Books 1-4. Make your Apple do things it’s never done!
(includes Peeks & Pokes Chart) All 100 programs ere changeable for experimentation.
Includes our Apple Command. aturing all Apple-
soft, Integer Basic and DOS Commands!
BEAGLE BAG av (Includes Peeks/Pokes and Command Charts)
T2-GAMES-PLUS ON ONE DISK = 20-50 ‘uy gm A
COMPARE BEAGLE BAG with any one-game g RUSH the following disks by First Class Mall—
locked-up disk on the market today. All 12 games area Mf O Alpha Plot... $39.50 1 Pronto-DOS . $29.50
blast, the price is right, the instructions are crystal clear, fj CO Ap.Mechi + 29.50 Qo Ter anal #1... 20.00
AND the disk is ible. You can even change the O Beagle Bag. . . 29.50
programs or list them to learn by seeing how they work. ff 2 oes spon » 2400 a On Gity 7
‘Twelve Games from the Applesoft Ace, Bert Kersey— jg 1 Double-Take. . 34: i
TextTrain, Slippery Digits, Wowzo, Buzzword Magic Ml O Flex Text....:29.50 (Add me to mailing list.
10 asstnUOWLU Ra0C YNTOOB C@OBDC": | pack "A great Nanety that taps your Apples exoiy. CO Frame-Up |: 29.50 O Already on mailing list.
X20 FO LENTAS) 1 NSCRN(X 19): | ExGallont review In January 83 Softak (page 148). AT YOUR APPLE DEALER NOW!
7 ERO RTSH STD) ISe18)(SCHINGS 18) 10); | BEAGLE MENU too: See “Typefaces” disk Or order directly from an Bros—
POP Rte NER A GOT NT) 10% | (Includes Peeks & Pokes Chart and Beagle Menu)
UTILITY CITY az E-UP a
UTILITIES ON ONE DISK 23.50 HIGH-SPEED DISPLAY UTILITY i
BY BERT KERSEY. EY TOM WEISHAAR Visa/MasterCard/COD, fal To es FREE
LIST FORMATTER prints each program statement | _ MAKE PROFESSIONAL PRESENTATIONS of exist- Nationwide: 1-800-854-2003 ext. 827
‘ona new line. Loops indented with printer page breaks. | ing hives, lo-res & text frames. FAST hi-res loads in Calltornia: A005" F200 ext BT
A great Applesoft program de-bugger! Also... 2¥eseconds! Paddle or Keyboard-advance frames. Calorie t eoe See 1800 ext
Mult-Column Catalogs for printouts, auto-post Run- | _ Unattended Shows are optional with each picture
number & Date in proper, put invisible commands in | arranged and bre programmed to display from 1 to 99 OR mail U.S.Check, Money-Order or Visa/MC#
programs, create Invisible file names, alphabetize/store | seconds. Text Screen lets you create amoral | | to BEAGLE BROS, tath-Floor
info on disk, convert dec to hex or Integer toFP, protect | white text “slides” and add type “live” from the keyboard [4316 SIERRA VISTA, SAN DIEGO, GA 92
and append programs, dump text to printer. during shows. Mail of presentations on disk to 103
|| MORE TOO: 21 Programs Total, a best-seller! friends a cian Pooks Crome chan I oven $10 fst Clas Shipping Any Sze Order
Includes lifor
Be | ee ORDERS SHIPPED IMMEDIATELY.
Structured Programming
by Ronald L. Askew
When a member of a micro user group sits down to write an
article for his/her club newsletter, he/she does it for one of a
small set of reasons. Some do it to establish themselves as
experts on a particular subject Some will perform the chore
out of loyalty to the group and to insure the quality of the club's
information function. Others are content to invest their creative
writing talents in the hope that someone else might learn
something useful from it. I'm writing for none of those reasons.
My motivation springs from a groundswell of frustration in
trying to take advantage of one of the most important and most
highly advertised benefits of user club membership, ie., access
to the club program library.
Whether you are a novice programmer or have been at it for
years, | am sure that you have had occasion to dig out one of
your old programs hoping to update it with a few embellish-
ments for some particular and important application. Or
perhaps you spent hours copying a listing of some promising
contributed program from a magazine. It doesn’t matter if the
program was a game, a print utility or a super file management
application, you probably spent too much time trying to figure
out how the old program worked before you could modify it at
all.
And how about the programs on your club's program disks!
Of course, you got the programs for slightly more than the cost
of the diskettes, but how often should you be expected to have
to shell out your hard earned cash for a disk-full of frustration?
And if you think you can take many of those nifty little programs
and modify them for some special purpose, you might as well
resign yourself and dig in for the near certainty of having to
invest hours and hours of work just figuring out how the code
works.
This article is written as a plea to BASIC programmers to
change their evil ways. | am offering, herewith, some general
programming principles to help make your code in the BASIC
language easier to read, write, debug, and easier for the author
or anyone else to maintain and modify. It is common
knowledge that, generally, those who learn to program in
BASIC are infamous for their poor coding habits and even
poorer documentation techniques, and this includes yours
truly. Consider for a moment that the software you spent
$150.00 for might have been written by some one-time
hobbyist who, though he/she might be a genius, chose to set
the price of the software based on the amount of code and time
spent in writing and debugging it Now consider how unreliable
and bug-infested this software might be. This is a serious
problem for the whole micro industry. If the problem is not
addressed by the hobbyist/user, we might find what some
suspect to be already the case, that although micros are
convenient and useful tools for home and business, the
majority of software available is unreliable and unecessarily
overpriced.
The principles that follow are borrowed from a number of
sources and do not pretend to be an exhaustive approach to
structured programming, The general approach is an abbrevi-
ated and simplified hybrid of the “Top Down” and “Step Wise
Refinement” methods of software development.
Examples are written in Apple /// BUSINESS BASIC be-
cause of obviously superior built-in software devices that
contribute and encourage structured programming. Most of
the principles can be generalized and applied to any extended
BASIC (including Apple Il Integer and Applesoft) and all apply,
ultimately, to most languages that are not self-documenting
and that do not demand structure.
Structure Outline
When you sit down to write, the first thing you should do is to.
outline the major functional parts of the program. Identify a
range of linenumbers for the code and mark them with REM
statements. Make sure you have allowed room for short utility
routines that might be called often by the other modules.
Principles that should be kept in mind are as follows:
e Short subroutines that are accessed often should be
placed at or near the beginning of the program. This
enhances execution speed because GOSUBs and
GOTOs, in interpretive BASICs, tend to search from the
beginning of the code for the destination linenumber.
Speed is also enhanced because the program is shorter
due to the non-redundance of frequently executed code.
Each subroutine should list the parameters it must
receive. The major advantage of this approach, even in
cases where speed and brevity are not considered impor-
tant, is that your subroutines are all labeled and in one
place so they can be easily found when you want to debug
or modify them.
* Try to anticipate what subroutines you might require.
Certain common routines should be in a library some-
where so that you can renumber them and EXEC them
into the project at hand. Common routines might be for
text centering, numeric input routines with string to
numeric conversion, generalized menus, graphics initiali-
zation, ‘hit any key to continue’, output formatting, etc. .
¢ Longer routines, especially if not accessed very often,
should be positioned at the end of the program.
* Modules should be generalized, that is, if you have one
routine that accepts numeric input and another that has a
numeric entry routine incorporated in it, you have been
redundant It would be better to write one generalized
routine than to have several versions of it
¢ The initialization section is usually executed only once and
should be located at the very end of the program. This
includes all DATA, DIM, DEF FN and IMAGE statements,
and control character and other variable constant initiali-
zations. Should your program involve chaining or EXEC
overlays, divide your initialization module into two or more
submodules. By doing this, you can CLEAR unneeded
overhead and only the necessary variable baggage is
available to the chained program.
Listing 1 is an example of a skeleton structure.
Control Logic
Now you can actually write the code for your “main control
logic”. If the program is complex then you might want to
perform Step 1 to subdivide and outline the major modules of
your main control logic section. The main control logic may be
organized by menu options and their branches. There may
also be internally controlled options and branches dictated by
calculations, the value of key variables, or any other program
branching criteria.
Listing 2 is an example of a simple main control logic
module. Note how the program fills in as you determine what
constant, variable, and subroutines are needed. The dummy
PRINT statement for the ‘add’ routine demonstrates how the
menu module can be tested even though the subroutine it calls
is not yet written.
Subroutines
You should incorporate subroutines into the program on an
‘as needed basis’, testing each from immediate execution
mode with GOSUBs to ensure the operating integrity of your
software.
° The special and temporary variables should be given
names that will not conflict with the other program
variables and that can be used by other subroutines that it
neither call or that call it Suggested variable names are:
TMPS(TMP.INDEX),
STRGS(TMP.INDEX),
TMP.STRG$(TMP.INDEX), etc.
¢ Always qualify FOR .. NEXT loops in subroutines that
may be called from within another FOR. . NEXT loop. A
qualified FOR..NEXT loop has the control variable
identified in the NEXT part of the construct. For Example:
100 NEXT J is qualified,
100 NEXT is not qualified.
Write Code
Now you can write and hook each major functional module
using Steps 1 to 3, in turn, until the program is complete. First
outlining, then writing the code and adding subroutines. The
subsequent examples provide sequenced snapshot views of
the development of the program following these principles.
¢ Each module should be tested before moving on to the
next one. If the module has been designed as has been
suggested, this can be done from the keyboard in
immediate mode by typing GOSUB (linenumber). This
approach reduces the complexity of debugging a large
hunk of code at one time and it serves to isolate the type
of logic errors that are most difficult to find. Often you will
have to initialize, from the keyboard, some dummy data
that the module needs before GOSUBing.
As the coding progresses and new ideas impose on the
structure and/or the scope of the project, it is often
necessary to reevaluate the existing structure. This activity
is much simplified when the above principles have been
adopted.
Readability
Your programs will be fairly readable just through the
application of the structuring techniques described above.
Here are some additional tricks to make it even more readable.
Offset your REM statement from the other program lines
by embedding control characters. There are exotic ways of
doing this but here is the simplest technique (the charac-
ter in brackets is a control character):
100 REM[J]***turn on thermostat***[J]
This will cause the line to be separated from the lines above
and below it and might look like this:
90 IF temperature (= freezing THEN 200
95 RETURN
100 REM
***turn on thermostat***
105 GOSUB 60000 : GOSUB 61000
110 ON ERR GOTO 62000
¢ Variable names should give the reader a good idea what
the value of a variable is. To this end, it is a good idea to
adopt certain naming conventions. Temporary variables
should be named as we discussed above. Control charac-
ters should be given names like a$, b$ or ctrl .a$, ctrl .b$;
and these should be declared in an intialization section.
Other variable names should be descriptive as follows:
6300 freezing = 32: boiling = 120: screenlength% = 24:
firstname$ = “Sam: lastname$ = “Jones”: int max% =
32767
If, for the sake of speed, it is necessary to shorten variable
names or to eliminate REM statements, it is best to publish the
slow documented version with the advice to users that they
should use appropriate REM removal and text editor utility
programs for that purpose.
Flow of Control Constructs
Ihave also included a listing of skeleton routines that may be
of assistance to BASIC programmers adapting routines from
an algorithmic language or from other languages that incor-
porate some of the more common “flow of control” constructs.
They may be used to help in direct translations from such a .
language or by the ambitious BASIC programmer who wishes
to simplify program logic and branching techniques. It is
assumed that readers need not be briefed on the use of the
FOR..NEXT, GOTO, GOSUB.. RETURN, and IF..THEN..
ELSE constructs.
1. WHILE
This construct will evaluate a logical expression prior to the
execution of the following block of code. This means that it will
i GOSUB 62600:GOSUB 62700
9 REM short subroutines
38 REM setup protected field
39 REM fid.len& := lenoth of field, horz%,verth -= coordinates
58 REM input integer
59 REM parameters not yet determined
2998 REM add 2 numbers
2999 REM oprandi’ := ist operand, oprand2% := 2d operand
3998 REM subtract 2 numbers
39979 REM corandi® := 1st operand, oprand2% := 2d operand
59999 REM menu - control module 63900 ROEM UOC GGU GGG ISS SISISIGR J OCICIGIOI III
63910 REM * Program to perform calculations *
62599 REM constant initialization 63910 REM * on pairs of integers *
; 63930 REM * Copyright (C) 1982 *
62699 REM variable initialization 63940 REM * by Ronald L. Askew *
a 639401 REN OCG OOO CGO OEICGGSOICIC GCG ICE
Listing 1
only execute the block that follows if the logical expression is 3. CASE
true or since BASIC does not have a Boolean data type, if the
numerical value of the expression is not zero. If the expression
evaluates as false (or zero), the block of code will be ignored.
Applications of this construct are common to many pro-
gramming problems. Suppose you want to continue to allow
user input and processing only if the user responds with
alphanumeric characters, as in an input routine. Or suppose
you want to continue processing all values but you only want to
print results while they are non-negative. Finally, suppose you
want to read from a file “while” the file still has data in it
2. REPEAT
This construct is the functional opposite of WHILE. The
block of code will execute at least once and repeat only if a
condition evaluates as true or non-zero. As with the WHILE
construct, if the expression is always true, an infinite loop
results.
Applications include the reading of a random file that is
known to exist and has as its first record data describing the
number of pointers to subsequent records (linked lists). If
the condition tested was whether or not the next record in the
list has a null pointer, execution will continue until a record is
read that has such a pointer, but it will read at least one record
(the header record) before the loop terminates.
The CASE construct is most useful as an alternative to along
list of IF statements testing for some specific condition. An
expression is compared to a list of selectors of the same data
type. Each selector is associated with a statement or block of
statements to be executed. The first matching selector deter-
mines the code to be executed. If none of the selectors
matches the expression, no statements are selected or executed.
One special application may provide the best example: a
menu where the legal options are selected by the entry of a
letter from “A” to “G” (in upper or lower case) or the control
characters produced by pressing the «RETURN»,and the
«ESCAPE» keys.
In Conclusion:
It would be encouraging if user groups imposed some
standards upon the software they accept into their libraries. |
am sure that most, if not all, disk librarians and newsletter
editors are down-in-the-mouth about the problems of having to
respond to members who have, in turn, responded negatively
to the quality of important organizational software materials. If
acomputer club is not willing to impose standards, it becomes
the responsibility of the contributors to make the best contri-
bution they can or we're all in trouble.
+ GOSUB
626G0:66
9 REM short subroutines
& REM
>
REM [14 field, horak,
B REM
9
REM
input
patameter
integer
not determined
98 REM
?
add 2 numbers
9 REM 1
eprandi% := Ist operend, oprand2%
2 numbers
ist operand
subtract
oprandiW := oprand2%
REM menu -
9 control module
00 TEXT.HOME
1
VPOS=4: PRINT USING 63460;
Addition
REM veeewe
02 REM 1
03 REM
t)
4 REM 2 Subraction
vert% = coordinates
= 2d operand
= 2d
operand
titles
Listing 2
(Listing 2 cont.)
$0005 REM
40006 REM ees te ee ete
60007 REM Enter Seiection
O10 WINDOW 29.8 te port for options
020 PRINT screencf 00G1 TO 60009
230 vow i.8 To creen on$, REM erase linenumbers
040 GET resoond$ u.opts$s.respond$) THEN 60040
O86 ON INSTRimenu osts$.respond$) GOSUB 3060,4000: GOTO 60000
initialization
to perform calculations"
REM variable initiaiization
screenoff$=chr3(14)
screen
REM
REM
REM
REM
menu opts$="12"
Peer ecTOreCe Cer tet terse tte cere rters:
x Prog
x on p
rem
irs
to perform
of
calculations
integers
*
*
Convright
ty Ronald
cc)
1982
Askew
*
x
x
*
ZOO GOO GOOG IOS GG OGG CGI
ons
100. REM WHRHKKAKKKRKKAMKARKAKHKKAKAMKKE RAM AER KERR KRM KR ARERR RR AR KHER ER KERR
103 REM ** xe
105 9 REM xx Structured Business Basic - ae
110 REM ** A set of Subroutine Skeletons od
115 REM ** by xn
120. REM ** a
125 REM x* Ronald L. Askew xe
130 REM ** xe
OT MET ETTTOCTOTCTOCTCTOTOOTICOUCTCOCTOCITOCSCOCOCe STITT TT ee ee ee ete eter tee
PALME TA METECTCTOCSOSCOCICTOCE SCS TE TIC TOSe Tete Tete e etter rere rere ttt te tert Te)
205 9 REM ** xe
208 REM xx Emulation of the While Statement xe
207 REM ** a
208 REM OCG GG GCE CIGCGGOOGSIGCGOCIGOIGIIGISOIOIGOIGSIGIOIGUIOUIOI UOT TOTO IGE
210 IF conditiontstestvalue% THEN operationi=executed: ELSE GOTO 250
220 operationZ=executed
230 operation3=executed
240 etc, .=executed
245 GOTO 210
250 REM continue sequential processing
200) REM OCC GCG O OS OSGGUUSIGOIGOGO IOC UOIGGGIGOIGIGOEOUI OOOO IOI ISITE
305 REM x* ke
306 REM ** Emulation of the Repeat Statement x
307 REM ** wx
208 REM 00S 00 Gg GGSOIGGUISOIGOIGOGOIOIGUICIOIGCIGRGDIOGSIIOI GUCCI O SIO ISU IIGE
309 truest: false=0
310 FOR test=false TO true
315 operationl=ezecuted
320 operationZ=executed
330 operation3=executed
340 etc... =executed
345 test=(conditionk=testvalue®)
350 NEXT test
360 REM continue sequential processina
600) REM OCC GRO SOCCER SC US IG SIOCI GOGO GCGOOCCIGCIOGOGOGCIOG IODIOGOGI ISI GIO
405 REM *x ae
406 REM *x Emulation of the Case Statement xe
407 REM *x ae
208 REN OGG COURS OSI SO UCIGG IGG OI IOGIGIICIGTIOCIOGIOGC GOOG UI IO SIO
409 escapekev$=CHR$(27):returnkey$=CHR$(13)
410 acceptable. chars$="ABCDEFGabcodefa"+esckey$+returnkey$
420 GET respond.char$:IF NOT INSTR(acceptable.chars$,respond.char$) THEN 420
430 ON INSTR(acceptable.chars$,respond.char$) GOSUB 500,510,520,530,540,550,
560 ,500,510.520.530.540,550,560,600.610
450 REM continue sequential
processing
Listing 3
WordStar
Review by Woody Liswood
Published by:
MicroPro International Corporation
33 San Pablo Avenue
San Rafael, Ca. 94903
(415) 499 - 1200
Want a quick opinion? WordStar is the best word processor
available for the Apple. That is if you don’t need real propor-
tional printing. If you do, then you should check out Spell-
Binder. But SpellBinder is not a what-you-see-is-what-you-get
screen image like WordStar. So, you should really think about
what you want, and then try out both of those programs. |
personally like WordStar for my own use.
There is one problem though: WordStar is a CP/M based
program. Therefore, you need to purchase a CP/M card of
some sortas well as an 80-column card. If you do lots of writing,
you'll be glad you did.
WordStar is a what-you-see-is-what-you-get word processor.
The screen shows you exactly what will appear on your paper.
To me, that's what word processing is all about
WordStar is not the easiest program you will ever have to
learn. Since the program can do so much, and offers you so
much flexibility, you have to learn how to use all of the features.
Documentation
The documentation which comes with WordStar is so
complete it gets in the way. It is designed to document the
program, not to teach you how to use it | have used WordStar
for a long time now, and | still discover new things it can do
when | page through the manual. What happens is that | get a
need, look in the documentation, then discover that it not only
does what I want, it does a few more things as well.
20 Apple Orchard
Operation
The operation is quite simple, or quite complicated. It all
depends on your point-of-view. | go for the simple. The
program is controlled by Control key sequences. To me they
make sense.
Cursor movement is all with the left hand; Control-S moves
to the left; Control-D moves to the right; Control-E moves up
and Control-X moves down. So far, so good. Control-A moves
left one word; Control-F moves right one word. Now some
complications; Control-QS moves to the left end of the line;
ControlQD moves to the right side of the line; Control-QE
moves to the top of the screen; ControlQX moves to the
bottom of the screen; Control-QR moves to the start of the file
and Control-QC moves to the end of the file; Control-Q plus a
number will move to those marks if you have set them.
Control deletes the line the cursor is on; Control-T deletes
the word to the right; Control-G deletes the character the cursor
is on; Control-QY deletes to the right side of the line; Control-
Q(left arrow) deletes to the left side of line. A left arrow deletes a
character it goes over.
Ihave heard some criticism of WordStar because of these
one and two control character sequences. | have also heard
criticism that WordStar, on the Apple, doesn’t have the special
function keys that are available on other CP/M based ma-
chines. Rubbish. Having all those keys available under your left
hand means you can do all your text manipulation and cursor
movement without moving your hand from the keyboard or
without having to take your eyes away from to screen to figure
out what to do. That makes the program very easy to use. I've
tried the function keys and personally feel that they get in the
way, Actually, if function keys were available | would use them
for strings of commands (macro’s if you will), not for single
movement commands. I would have one key save the current
file and return the cursor back to the current location. Oh well,
maybe some day.
Screens
WordStar contains a series of help screens. These screens
contain many of the control command sequences which you
can use to cause things to happen. After you gain some
familiarity with the program, you can turn the screens off. A
very nice feature.
No-File
The first screen which appears is the NO-FILE menu. It is
called “no file” because you do not have a file in memory to be
worked upon. From this menu you can change the logged
drive, allow your file directory to be displayed or not, and set
your help level. This determines the amount, if any, of
information that the help screens will show.
From here you can also print file, rename a file, copy a file
from one name to another or from one disk to another, and you
can delete a file.
Also available are an exit back to CP/M or a Run a program
option, which would return you to WordStar when it ends.
There is also a command to run MailMerge or Spellstar.
WordStar also works with two types of files. You can edit
normal word processing files. These files will contain lots of
special characters which the program uses for it's formatting.
You can also edit a normal CP/M text file and have no special
formatting characters put into the file.
Main Menu
If you have selected a help level of 3, then all of the help
menu's will appear when requested. First to appear is the MAIN
MENU. This menu shows you the control sequences which
move the cursor around and cause the screen to scroll. You
don't have to memorize all those things | was talking about.
They are displayed at the top of the screen for you to read. Also
displayed are some Miscellaneous commands for tabbing,
reforming paragraphs, turning insert on and off, the find and
replace and how to stop a command once you have given it
For example, Control-B reforms a paragraph. WordStar,
while you are entering data, automatically word wraps and right
and left justifies the text. However, you will probably want to go
back and add or subtract characters. When you do that the
right justification is lost When you are finished with the editing,
you move the cursor back to the line where you started your
editing and press a Control-B. The paragraph then is justified
and things can continue. That's how easy it is. Oh, yes, you can
turn off the justification feature if you wish.
WordStar allows you to insert or write over your file. Itis your
choice. | always leave the insert on.
The other thing shown on the menuis the control sequences
to get to the other menus. Remember that there are many two
character control sequences. Each of the first character's has
TransModem 1200
-77
How to Save Money with the SSM TransModem 1200°
Cut down your phone time. The TransModem 1200
cuts long distance costs by sending and receiving elec-
tronic information faster.
The TransModem 1200 runs at the most widely used
baud rates—110, 300, or 1200—so you can easily commu-
nicate with any computer, including other personal com-
puters, public information services, and timeshare
systems.
You don’t even have to set the data transfer speed. The
TransModem 1200 automatically adjusts the baud rate to
match the speed of any modem on the other end of the
line.
You can’t find a better equipped modem for the
money. The TransModem 1200 completes calls where
other modems cannot get through. It dials and answers
high speed Touch Tone™ or Pulse dial telephones auto-
matically. It stores telephone numbers of up to 32 digits,
enabling you to dial MCI Advantage™ or Sprint® automat-
ically. And Transend™ software is available, so you don’t
have to do any programming.
Put it to work today. The TransModem 1200 works
with any computer, including the IBM PC. Cable and serial
interfaces are available for the Apple II/Ile® and Apple III®.
Ask your local SSM dealer for the TransModem 1200.
Delivery is immediate so you can start saving money now.
Satisfaction is guaranteed or your money back.
a7
Microcomputer Products, Inc.
2190 Paragon Drive, San Jose, CA 95131 408/946-7400
‘ransModem 1200 and Transend are trademarks of SSM Microcomputer Products, Inc. Touch. Tone isa trademark of AT&T. MCI Advantage is trademark of MCI. Sprintisa registered trade-
‘mark of Southern Pacific Communications Co., a Southern Pacific subsidiary. Apple IV/Ileand Apple Ill are registered trademarks of Apple Computer Corporation,
their own screen to show you what the second character is and
what that character does. Control J gives you a Help menu.
Control Q shows you what is called a Quick menu. Control O
controls the Onscreen menu. Control K is the Block menu, and
Control P shows you special characters which will affect your
printing.
Help
The Help menu gives you text information about the help
levels, how the reform command works, what the special
symbols mean that are shown at the right side of the screen,
and what each of the “dot” commands do. In addition, it has
text information about the status line, the ruler line, how to set
margins and tabs, how to place markers and how to move text.
Quick
The Quick menu shows you many of the commands that are
accessed by first typing a Control-Q; Control-QS moves the
cursor to the left end of the line; Control-QF starts a string or
character find sequence; L finds a misspelled word marked
with SpellStar; and Q plus something else repeats that
indefinitely or until the end of the file is reached.
Block
The Block menu is reached by first typing a Control-K. This
shows you the characters for setting, moving, and working with
blocks of information. After a Control-K, S saves the file onto
the disk and let's you continue working. D saves the file and
places youat the no-file menu; X saves the file and places you in
CP/M; Q abandons the work; 1 to 9 places those markers; B
marks the beginning of a block of text for a block move; K
marks the end of a block for a block move; and H hides or
displays a marked block. That deserves an explanation.
Ifyou use a Videx board with an Inverse chip, then the menus
and special functions are all shown in inverse characters. When
you mark a block of text, all of that text turns into inverse
characters. This feature makes it very easy to see what you are
doing. Well, when you are done, you would use the H to turn off
the inverse characters so that you can see the text normally. C
lets you copy blocks of text; V lets you move blocks of text; Y
deletes text; W writes the text elsewhere; and N sets column
mode on or off. Also, R allows you to read a file on the disk and
place it in your document O copies a file on to the disk; J
deletes from the disk; P prints and an E renames.
As youcan see, you can do your disk file operations and start
printing some other file all while you are editing a current file.
That is a very handy feature.
Yes, WordStar allows print spooling. You can be editing one
file while you are printing another.
Onscreen
The Onscreen menu controls much of the visible activities of
WordStar. It is reached with a Control-O. After the Control-O, L
sets the left margin; R sets the right margins, X releases the
margins; | sets and N clears tabs. G sets paragraph tabs and F
sets the ruler to the cursor position. C centers the text and S sets
the line spacing mode. In WordStar, if you want double spacing
and you cannot set that on your printer, you must have double
spacing on the screen.
There are also a number of toggles at this menu. W toggles
word wrap; T turns on or off the ruler line; J is for justification ; V
is for variable tabs; His for hyphen help; Eis fora soft hyphen; D
is for the printer display, and P is for page breaks. Now to
explain.
22 Apple Orchard
Word wrap only lets full words exist at the end of a line.
Incomplete words, are wrapped down to the next line. If you
don't want spacing between words, you would toggle the word
wrap off and let WordStar act like a typewriter page. There is a
ruler line normally displayed at the top of the screen. It shows
where the tabs are and what the margins are set at. If you want
to display an additional line of text and don't feel you need to
see those things, you can set it off.
Hyphen help is a useful WordStar feature. If you leave
hyphen help on, then when you form paragraphs, rather than
wrap longer words found at the end of the line down to the next
line, WordStar will stop at the word and allow you to insert a soft
hyphen in it That way, your printed material will look better with
less spaces between words on any given line. Soft hyphen, you
ask? WordStar has hard and soft hyphens. Hard hyphens
always print. Soft hyphens only print when they are found at the
end ofaline. If you toggle soft hyphen on, then all your hyphens
will be soft. Sound Confusing? It really isn’t The Word Plus, a
spelling program, actually will go through a WordStar docu-
mentand insert soft hyphens in all words of a certain character
length or longer. Page breaks are dotted lines which show on
screen where the page will break when printed. This allows you
to visualize how the material will look before you take the time
to print it | use that display all the time. When a page will break
where | don't want it to, | use a dot comand to force a page
break where | would like it to appear. The printer toggle hides
special printer control characters so that your screen will show,
exactly, what will appear on paper. If it is off, special printer
control characters will appear where you inserted them. | leave
it off so that | will know what is going on.
Print
The Print menu is reached with a Control-P. This menu
allows you to insert printer control characters in the text. B turns
on bold face; D turns on double strike; S underlines; X strikes
out the text V subscripts; T superscripts; H overprints the
characters; A changes to an alternate pitch, N returns to
standard pitch, C allows for a pause during printing, Y changes
ribbon color, and there are four user defined characters, QWE
R, which will do what ever you set up during your WordStar
installation. Of course, your printer must be able to support all
these features.
DOT Commands
Dot commands are commands which are preceded by a
period “.” with the period located on the far left end of a line.
They are used by many word processors. With these com-
mands, you can override the WordStar defaults. The following
are some of the commands: LH sets line height; CW sets
character width; PL sets paper length; PO sets the page offset
from the left edge of your paper; MT sets the top margin; HE
sets a heading; MB sets the bottom margin; FM sets the footing
margin; FO sets the footing; PC sets the page number column;
PA starts a new page; CP starts a new page if there is a specified
number of lines left to be printed; OP omits page numbers; PN
starts page numbering; IG or two dots allows you to insert
nonprinting comments, and VJ toggles justification.
Summary
Asyoucan see, WordStar can do almost anything you wantit
to do. Many people call it the Cadillac of word processors. |
agree. If you do lots of writing, you need WordStar. Don't settle
for second best.
Mailmerge
MailMerge is WordStar's option for form letter development
Itallows you to produce form letters, to insert variable data into
a document during printing, to insert other complete files
during printing, to print multiple copies of a single document,
and to build command files for automating complicated
processing operations.
MailMerge is accessed from the WordStar no-file menu by
keying M.
That, however, is not the way it’s used. You must first create,
with WordStar, a file which contains special dot commands
and other special commands which, when processed by
MailMerge, allow all those special things to happen.
Following is the first section of a letter which I use. It shows
just how one feature of MailMerge works.
.. Source product review notification letter
.OP
cS
AV” TODAY'S DATE?",DATE
AV“ COMPANY NAME?”,COMPANY
AV” ADDRESS?",ADDR1
“AV” CITY STATE ZIP?”,ADDR2
AV” SOFTWARE NAME?”,NAME.
AV” CONTACT NAME?”,CNAME.
WOODY LISWOOD
110 Upland Drive
San Francisco, CA 94127
(415) 585-6375
&DATES
& COMPANYS
SADDRIS
SADDR2&
Dear SCNAMES:
Thank you for participating in our review program. This review
may appear in a variety of separate media. We plan on
publishing this review in the Cider Press, the nation-wide
magazine of the San Francisco Apple Core. Also, | now publish
a software and hardware review magazine on both The Source
and CompuServe. As space permits, | will be publishing
selected reviews on The Source and on CompuServe. Addi-
tionally, certain reviews will also appear in The Apple Orchard,
a 30,000+ publication of the International Apple Core.
I have enclosed a copy of the article about Gname& that is
written to go on-line. If you wish to reply, | will be happy to add
your reply as a comment section to the review. In addition, we
plan to publish this article in the next scheduled issue of the
Cider Press. The article for the Cider Press may be slightly
different since we will add illustrations and other graphics that
we cannot utilize on The Source.
The.AV'S tell MailMerge to ask me for those variable names.
Then, when it sees a Gname& within the text, it places the
appropriate variable name within the text, and justifies it
accordingly. It looks like an originally typed letter. How about
that
MailMerge works with CP/M data files also. It works the same
way with some small exceptions. Instead of .av's, you first tell
MailMerge the names, in sequence, which will be found
between carriage returns in the data file. Then you use those
names within the &.....6's. MailMerge will go through and place
the appropriate data into the letter.
You can create the data files with WordStar using the Non-
Document mode, or if you can use DataStar, MicroPro's data
entry and retrieval program, to create the files.
There is a “.DM” command for use also. This displays a
message on the screen while MailMerge is going about it's
work. You can say, now put the letter head stationary in the
printer and press “P”. Then display a request to now put the
envelope in the printer...
A very powerful and flexible program.
Another Dot command of great use is the “.FI”. This stands
for insert a file. Whenever MailMerge reads this command and
the file name next to it, it will then add that file to the text which is
being printed. This way you can create a large boiler plate
document by only keying in a series of commands. If you need
paragraphs a, b, d, g, aa, zz, c, then qq. You would set up the
MailMerge file with a series of “.Fl A, .Fl B”. etc.
You can also span multiple disks using the “.FI” commands.
You would set up the same way, but follow the “.FI B” with a
“CHANGE”. This tells the operator to change disks and will
cause MailMerge to warm-boot the new disk without causing a
BDOS error in CP/M. Why, you ask, would a document or
documents to be printed as one printing be so large as to be
spread over more than one disk? Perhaps each disk contains
one chapter of a book. The MailMerge file would basically say
print chapter one, change disk, print chapter two, change disk,
and so forth. A useful feature for writers.
Another feature is the repeat printing feature. This tells the
file to be repeated until a specified action has ended, a data file
is used up, or a selected number of documents have been
printed.
You can see that it is possible to build a command file with
just dot commands, which would invoke a series of MailMerge
documents, each of which might use a separate data file for
processing. With continuous feed paper, you can come in,
select one command file, and hope your ribbon holds out.
Summary
Mailmerge is a necessary and useful addition to the MicroPro
- WordStar product line. If you do word processing, you really
need the features found in MailMerge. It does much more than
just Form Letters. Once you have become used to the
command file structure and learned the extra dot commands
used for MailMerge, you will find many uses for it
Spellstar
SpellStar is the MicroPro spelling program which works only
with WordStar. It is run by keying in a S from the WordStar No-
File menu.
SpellStar comes with a basic dictionary of about 20,000
words. On the Apple, which was the version which I tested, that
takes most of one disk.
The program works very well. | have used it with many files
without problems. Over the past few months I have used, and
August 1983 23
reviewed a number of spelling check programs. Each has its
good points and its bad points.
The best feature of SpellStar is that it is designed to run
within WordStar. Here’s how.
After you select the SpellStar menu option within WordStar,
you are asked the name of the file you want to check or to add
to the dictionary. If you are doing a spelling check on the file you
just worked on with WordStar, you key a Control-Rand a return.
Otherwise, you must type in the name of the file.
Next, you come to an operations menu. You choose C to
check spelling, M to go to dictionary maintenance, or X to
return to the no-file menu.
Spelling Check
You are then given the option to change the spelling check
controls. If you use a hard-disk, this is usually unnecessary. If
you are using 5 1/4 inch floppies, then you will need to tell
SpellStar which drive contains the file to be checked and which
drive has the dictionary. You can, at this point, indicate which
drive contains the main dictionary, or change the default name
of the main dictionary to the dictionary name to be used. You
may also adda supplemental dictionary name to be used. And,
you can designate a work drive to hold the subsidiary files
which SpellStar generates while it processes your textfile.
What you have to worry about with small disks is that the
dictionary takes about 100k. SpellStar generates work files that
are equal in size to your text file. If you are checking large files, it
is possible for you to run out of space. When that happens with
CP/M, you bomb.
The Spelling Check
While the spelling check is going on, SpellStar displays a
screen which tells you where it is and what it is doing.
First, you are told how many words are in your document.
Then, the number of different words are displayed.
Next is the number of words in your main dictionary along
with the number of words in the supplemental dictionary.
Then, WordStar keeps track of where it is in the main
dictionary and updates the number of dictionary words
checked. This is a nice feature for it tells you what is happening.
You don't just sit there staring at the screen waiting for a cursor
to return and wondering if things have bombed and you should
reset out and start over again.
When this is done, Spellstar gives you the number of
misspelled words and the total number of occurrences of
those misspelled words.
At this point you can display the misspelled words on the
screen, start over, return to the WordStar menu, or mark the
words as misspelled in the file and continue with the program.
Correcting Your Spelling Errors
SpellStar uses WordStar to fix the errors. Each of the words
is marked with a special character. You use a Control-L to go
from word to word. You must make the decisions yourself.
There is actually a menu of items that you can choose from.
When the cursor stops at a potential misspelling, F lets you fix
the word; B allows you to bypass the word leaving it marked; an
lignores the word; D says the word is correct and will place it
into an ADD file to be added to the dictionary during a
maintenance operation, and S adds it to the supplemental
dictionary rather than the main dictionary.
24 Apple Orchard
SpellStar has a small buffer of about a 20 word capacity. If
you instruct the program to ignore a word or say that a word is
correctly spelled, it will automatically remove the spelling
marks and pass over future occurrences of that word. That's a
nice feature.
Works smoothly. No problems. However, this is the one area
where I feel the program should be improved. SpellStar has no
feature to check the dictionary for suggested correct spelling
and to read a correctly spelled word out of the dictionary and
correct the file. Modern technology for spelling programs
should have that feature.
Dictionary Maintenance
After you complete your spelling checking, and have
indicated that there were correctly spelled words in the file, you
have the option to add those words to either a supplemental
dictionary or to the main dictionary. WordStar has placed those
words in a file with the extension .ADD. You would go back to
the SpellStar prompt and this time choose the dictionary
maintenance option.
The dictionary maintenance menu presents itself in a similar
way as the spelling checking menu. You have the opportunity
to indicate what drive contains what file. The main dictionary is
100k long, You will need a blank, formatted disk to hold the
new dictionary since both will not fit on the same disk.
You also have menu items to create a new dictionary, add
words, delete words, list dictionary words, combine add/ delete
functions or to only use the “S” words from the .ADD file.
When you combine add/delete this is what happens. Words
which are in the ADD file but not in the dictionary are added to
the dictionary. Words which are in the add file and in the
dictionary are deleted from the dictionary. Actually SpellStar
stops at each of the words to be deleted and informs you that
this word is already in the dictionary and asks that you confirm
that you really want to delete that word. Neat. That's how you
get a misspelling out of the dictionary.
Dictionary maintenance takes a few moments, but not
excessively so. It works well. Other spelling programs have the
maintenance program as an automatic function after checking
spelling. | kind of like this way. It gives me lots of control over the
process and allows me enough options to set up things the way
| want.
Summary
This a well organized and constructed spelling checking
program and dictionary maintenance operation. Itis designed,
specifically, to work with WordStar and takes advantage of the
WordStar editing features for spelling correction. It works, is
relatively easy to use, and like all MicroPro programs appears to
have been designed as a solution to a problem rather than as
an afterthought to a separate program.
However, in my opinion, there are now better spelling
programs on the market. You owe it to yourself to look at “THE.
WORD PLUS" before you make a decision about Spellstar.
The difference is that “THE WORD PLUS” in addition to the
spelling checking, gives you suggested spellings for words that
it doesn't recognize, then will place those words in the file for
you when itis done. That way you do not have to mark a word as
misspelled and come back to it with a text editor and try to
remember how to fix it
If you get SpellStar as part of a package, then | think that you
probably will use it and be very happy with it If you must
purchase a program, | think that you would like some other
programs better.
7
Reversal
Review by Eugene M. Paymar
Published by:
HAYDEN PUBLISHING CO.
50 Essex St
Rochelle Park, NJ 07662
Available through B. Dalton Bookstores
Price: $34.95 (approximately)
All right! | have to confess. | love playing strategy games
against the computer, but | hate sitting around waiting for the
computer to make its move. At 15 seconds | start to get antsy;
at 45 seconds | begin to think of rubbing my feet on the carpet
and hurling bolts of static lightning into the guts of my poor
Apple. Of course, /’m allowed all the time that/ need, but that's
a different story.
Under the above restraints, | have always had a difficult time
finding a good quality game to play. Sargon II came closest; |
could always beat it, but only by paying very close attention.
The game known variously as Othello/Reversi/Reversal has
always been a particular source of disappointment to me. |
learned the game in Nikko, Japan one memorable evening
four years ago, and have been enthused about it ever since.
However, finding a good computer opponentis something like
pursuing the Holy Grail. I've played two versions on the Heath
H-8, at least two more on the Apple, and the Atari game
computer version. Frankly, the only real challenge lay in trying
to zero the poor computers.
Then a friend invited me over to see the new “great”
Reversal game that he had just bought | noted with interest
that the authors were Dan and Kathe Spracklen, the authors of
Sargon II, However, with my previous experience in mind I set
the top level of play, AQ9(Advanced Strategy, level 9). The
program's curser blinked interminably. At 40 seconds my
friend hastily saved both his computer and our friendship by
restarting the program at level A3 which produced a computer
response a few seconds after each of my moves.
Now, one does not have to play this type of game long to
realize that you are relatively safest on the sides and perman-
ently safe in the corners. Thus it seems reasonable to strive to
achieve positions on the sides of the board and later spread
into the corners; and conversely, try to keep your opponent
from doing likewise. Much to my astonishment, after only a few
moves the computer freely offered a jump onto the side of the
board. Muttering a few choice scathing comments about both
the program's capability and my friend's judgment, | gleefully
accepted this and several future “gifts”. Approaching the end
of the game, | had a forty point lead. Then | discovered that was
forced to give the computer a corner . . . and then another one!
When the dust cleared | had lost by forty points!
I asked to borrow the game for future study. My friend
graciously granted my request (after all, I'm a heck of a
guy... also, | have spent 15 years in the martial arts). Several
evenings and a number of heartbreaking last-move losses
later, | had finally found enough patterns to play the machine
even at A3 and win some at A4. Folks, this program is tough!
And not merely tough. The Spracklens have done their usual
fine job of human interfacing. Not surprisingly, they have used
Sargon II as a model with very similar menu and control
features. The main menu has four options: play the computer;
play a human opponent; board “editor”; and exit
If you wish to play the computer, screen prompts let you
choose the computer's strategy (beginner, intermediate, ad-
vanced) and level (1-9) as well as select your own color. Once
the game begins, the «ESCAPE» key lets you toggle back and
forth between a text screen which records the moves and a
delightful Hi-Res display of the board. All of the pieces have
faces which appropriately change expression as the tide of
battle ebbs to and fro. When the computer makes its move it
Puts its flashing piece on the screen, but in another nice touch,
it does not change over the pieces until you hit (RETURN». This
allows you ample time to analyze its move. When it’s your turn,
you may move a flashing cursor from one legal move to the
next via a key stroke from the keyboard, finally pushing
«RETURN» to enter the move.
If you choose to play a fellow human, the computer simply
acts as the umpire. It will only allow legal moves, and it takes
care of changing the captured pieces.
The edit mode is another nice feature. You can get there
either from the initial menu or from the middle of a game by
typing Control-R. (Warning: Be sure to toggle back to the text
screen first, or you will likely be lost in never-never land.) This
mode is useful in setting up problems or in recovering from
accidentally hitting «RETURN» during a game and thus making
the wrong move (of course, you would never cheat and try to
recover from an inferior move). The “++” and?” keys move the
cursor up and down the board, respectively while the left and
tight arrows do their own things, also. Typing “W” or “B” at the
cursor location will place the appropriately colored piece there.
The space bar erases whatever is at that location. Finally,
«RETURN: terminates the edit mode and brings back the main
menu from which you can re-enter one of the game modes and
continue with the now modified position.
The exit mode leaves you in the System Monitor. It would
have been a little nicer to be back in DOS, but typing “3D0G”
gets you back to what acts like a freshly booted DOS.
In summary, Reversal is an excellent program, good for
many hours of challenging intellectual play. | may not have
found the Grail yet, but this program is a real treasure. e
August 1983 25
Satisfying Over
With Innovation
The Original Apple® graphics printer interface.
Since its introduction three years ago, the
Grappler has been imitated by many, but never
matched. Now with Dual Hi-Res Graphics for side
by side reproductions and Mixed
Mode screen dump- =
ing, the Grappler +
remains the most
intelligent interface
available. Over two
dozen commands
give Apple users full control over any graphics or
text on the Apple Screen, including a new 80
column text dump. Performance, reliability and
support have made the Grappler + the #1 selling
intelligent Apple interface.
For Apples and Printers
The economical way to add printer buffering. The
Bufferboard easily adds memory to your current
Apple interface system, freeing your computer for
additional input. Easily upgradable from 16K, the
Bufferboard can store up to 20 pages of text. It
fits neatly inside your Apple, “Docking” onto your
existing printer interface.* No clumsy boxes or
cables, no external power supplies. ..just conve-
nience and g
economy. With
the Buff
Showing the first 100000 of 358064 characters.