$3.00
TABLE OF CONTENTS
256K In Detail — Part I 4
Packet Radio 10
Bringing Up the BB II 15
dBase II 28
Superfile 29
WordStar, Volumes of Hints . . . 31
MicroWyl 33
A Two-Faced Drive for the BB I 34
REGULAR FEATURES
Letters 2
C'ing Clearly 12
Pascal Procedures . 16
On Your Own 19
FORTHwords 20
KayPro 24
Technical Tips 38
"THE ORIGINAL BIG BOARD"
OEM - INDUSTRIAL - BUSINESS - SCIENTIFIC
$7 SINGLE BOARD COMPUTER KIT!
S/ Z-80CPU! 64KRAM!
(DO NOT CONFUSE WITH ANY OF OUR FLATTERING IMITATORS!)
4*
%
CO
1-
tt-o .
Q
0>O
a
O
a.
UJ
_l
CD
CTJ
5
«<
c
in
n*. "O
CD
CO
CO
<
<JJ a>
o ai
o-o
CO
o
u.
>-
Wo
-1
= co
^ -
_1
<
o
z
<
£L
THE BIG BOARD PROJECT: With thousands sold worldwide and over two years of field experience, the Big
Board may just be one of the most reliable single board computers available today. This is the same design that
was licensed by Xerox Corp. as the basis for their 820 computer.
The Big Board gives you the right mix of most needed computing features all on one board. The Big Board was
designed from scratch to run the latest version of CP/M*. Just imagine all the off-the-shelf software that can be
run on the Big Board without any modifications needed.
$QH OOO (64KKIT
v ^3 I 5/*5r BASICI/ °)
FULLY SOCKETED!
FEATURES: (Remember, all this on one board!)
SIZE: 8Vj x 13% IN.
SAME AS AN 8 IN. DRIVE.
REQUIRES: +5V @ 3 AMPS
+ - 12V @ .5 AMPS.
64K RAM
Uses Industry standard 4116 RAM's. All 64K is available to the user, our VIDEO
and EPROM sections do not make holes In system RAM. Also, very special care
was taken in the RAM array PC layout to eliminate potential noise and glitches.
Z-80 CPU
Running at 2.5 MHZ. Handles all 4116 RAM refresh and supports Mode 2
INTERUPTS. Fully buffered and runs 8080 software.
24 x 80 CHARACTER VIDEO
With a crisp, flicker-free display that looks extremely sharp even on small
monitors. Hardware scroll and full cursor control. Composite video or split video
and sync. Character set is supplied on a 2716 style ROM, making customized
fonts easy. Sync pulses can be any desired length or polarity. Video may be
inverted or true. 5x7 Matrix - Upper & Lower Case.
SERIAL I/O (OPTIONAL)
Full 2 channels using the Z80 SIO and the SMC 8116 Baud Rate Generator. FULL
RS232! For synchronous or asynchronous communication. In synchronous
mode, the clocks can be transmitted or received by a modem. Both channels can
be set up for either data-communication or data-terminals. Supports mode 2 Int.
Price for all parts and connectors: $39.95
FLOPPY DISC CONTROLLER
Uses WD1771 controller chip with a TTL Data Separatorfor enhanced reliability.
IBM 3740 compatible. Supports up to four 8 inch disc drives. Directly compatible
with standard Shugart drives such as the SA800 or SA801. Drives can be
configured for remote AC off-on. Runs CP/M* 2.2.
BASIC I/O
Consists of separate parallel port (Z80 PIO) for use with an ASCII encoded
keyboard for input. Output would be on the 80 x 24 Video Display.
TWO PORT PARALLEL I/O (OPTIONAL)
Uses Z-80 PIO. Full 16 bits, fully buffered, bi-directional. Uses selectable hand
shake polarity. Set of all parts and connectors for parallel I/O: $19.95
BLANK PC BOARD — $119
The blank Big Board PC Board comes complete with full
documentation (including schematics), the character ROM,
the PFM 3.3 MONITOR ROM, and a diskette with the source
of our BIOS, BOOT, and PFM 3.3 MONITOR.
REAL TIME CLOCK (OPTIONAL)
Uses Z-80 CTC. Can be configured as a Counter on Real Time Clock. Set of all
parts: $9.95
CP/M* 2.2 FOR BIG BOARD
The popular CP/M* D.O.S. to run on Big Board is available for $139.00.
BIG BOARD SOFTWARE SPECIAL — $149
Through special arrangement with CDL we offer a powerful package of TDL Z-80
software that has a suggested retail of almost $600. Includes: Extended Disk
Business Basic, ZEDIT text editor, MACRO II Macro Assembler, LINKER,
DEBUG I and DEBUG II. Supplied on 8 in. diskette with extensive manual.
PFM 3.3 2K SYSTEM MONITOR
The real power of the Big Board lies in its PFM 3.3 on board monitor. PFM commands include: Dump Memory, Boot CP/M*, Copy, Examine, Fill Memory, Test Memory, Go To,
Read and Write I/O Ports, Disc Read (Drive, Track, Sector), and Search PFM occupies one of the four 2716 EPROM locations provided. Z-80 is a Trademark of Zilog.
Digital Research Computers
w (OF TEXAS)
P.O. BOX 401565 • GARLAND, TEXAS 75040 • (214)271-3538
TERMS: Shipments will be made approximately 3 to 6 weeks after we
receive your order. VISA, MC, cash accepted. We will accept COD's (for the
Big Board only) with a $75 deposit. Balance UPS COD. Add $4.00 shipping.
USA AND CANADA ONLY
♦TRADEMARK OF DIGITAL RESEARCH. NOT ASSOCIATED WITH DIGITAL RESEARCH OF CALIFORNIA, THE ORIGINATORS OF CPM SOFTWARE
"1 TO 4 PIECE DOMESTIC USA PRICE.
MICRO CORNUCOPIA
P.O. Box 223
Bend, Oregon 97709
503-382-8048
Editor & Publisher
David J. Thompson
Graphic Design
Sandra Thompson
Technical Guru
Dana Cotant
Staff Assistant
Dorcas Dsenis
Typography
Patti Morris & Martin White
Irish Setter
Illustrator
Gary Whitley
MICRO CORNUCOPIA is the sin-
gle board systems journal support-
ing systems programming lan-
guages and single board systems —
including the Big Board, the Big
Board II, and the Xerox 820.
MICRO CORNUCOPIA is pub-
lished six times a year by Micro Cor-
nucopia of Oregon, P.O. Box 223
Bend, Oregon 97709
SUBSCRIPTION RATES:
1 yr.(6 issues) $16.00
1 yr.(Canada & Mexico) $20.00
1 yr.(other foreign) $26.00
All subscription orders payable in
U.S. funds on a U.S. bank, please.
ADVERTISING RATES: Available
on request.
CHANGE OF ADDRESS: Please
send old label and new address.
SOFTWARE, HARDWARE, AND
BOOK VENDORS: We would very
much like to review your CP/M
compatible products for Micro C.
Please send material to the Review
Editor, Micro Cornucopia.
LETTERS TO THE EDITOR: Please
sound off.
CP'M is a trademark of Digital Research, Inc.
Copyright 1983 by Micro Cornucopia
All rights reserved
mamwam
June 1983 The Single Board Systems Journal
No. 12
All
Wet!
Almost SOG
The Semi Official Get-together (SOG)
is almost upon us so we need to get some
idea how many of your are planning to
come. If you are even thinking of com-
ing, be sure to call or write immediately.
If you are planning to participate in the
Friday afternoon raft trips (profession-
ally guided) and/or the cookout which
follows, you need to get your $25 per
person to us by July 7 so we can reserve a
place for you. See the article on the SOG
in this issue, and be sure to let us know
right away if you are even considering
coming!
The Slicer
I've been bitten by the 16-bit bug.
Whether the byte is fatal or not I'll soon
know. I'm getting an 80186 based board
called the Slicer from Slicer Computer
Inc.
They placed a one-page ad in the May
issue of Byte and got about 800 re-
sponses (so far) so they are working fe-
verishly on the final versions of the
monitor and bios so they can start ship-
ping boards.
The 80186 is like an 8086 with a few
extra math instructions, two DMA chan-
nels and 3 timers for starters.
The Slicer contains the 80186, up to
256K RAM, a 1797 double density con-
troller (5 and 8 inch drives simultane-
ously), SASI interface, a 90 pin expan-
sion interface, and two serial ports (up to
38.4 K baud). It does not have a video
monitor on board so you you have to use
a separate monitor. The board runs at 8
MHz with no wait states. It measures
5.85 by 11.75 inches.
At only $140 for the bare board with
documentation, power connector, the
monitor in two 2732s, and the source of
monitor and BIOS — it should be just the
ticket for those of us wanting to get our
feet wet with a real 16-bit machine (rath-
er than an 8-bit pretender). In fact, it
looks like we're going to have a whole
new system to fondle and fuss over in
the pages of Micro C.
Come to the SOG and you'll have a
chance to try out one of the first units in
existence and meet Otto Baade, the de-
signer.
CO-POWER-88
Guess what else you'll see at the SOG?
I purchased Software Publishers CO-
POWER-88 board (I already had SWP's
dual density package) and now have my
original BB I running single density Z80,
double density Z80, and single/double
density CP/M 86.
Anyway, Dana and I hooked up the
8088 board and got it running in just a
few minutes. (It was the easiest MOD
I've ever added to the BB. You boot up in
CP/M 80 just like usual and you have the
option of using the 8088 memory as a
RAM disk (drive M:) or running a Z80
program which suddenly transports you
into the domain of the 8088. However:
CP/M 86 Software
I don't have a speck of software to run
on under CP/M 86 except the 8086 ver-
sions of ASM and ED (groan!) that came
with it. I hadn't thought about that when
I drooled over the new boards.
You've no doubt seen all those glow-
ing ads about new software for CP/M 86,
but look at the fine print (the prices) and
you'll find that most of the packages are
half-again as expensive as their CP/M 80
cousins.
I'm really spoiled by the 100-volume
CPMug library I have in the corner and
by all the great things you folks send in.
For the 8088/86, I'm high and dry.
So, we're going to have to start a new
library. If any of you know a mad 8086
programmer who is writing really great
code and tossing crumbs of it here and
there for hungry CP/M 86 users to snatch
up, then by all means let us know. We'll
all practice up on our snatching (I under-
stand it looks very much like aerobics).
(continued on page 30)
LETTERS
Dear Editor,
I've found that Smartkey (see issue 5),
is a particularly helpful utility program
which allows redefinition of the console
keyboard. Keys can even be redefined to
generate strings.
For example, Wordstar lacks a left
word deletion command. If you don't
like the word you've just typed, you
have to delete it one character at a time or
else move the cursor to use the "delete
word right" command. Smartkey lets
you create a macro so that a single key-
stroke will delete the word to the left.
Smartkey also lets you define cursor and
function keys, especially helpful in
speeding up multi-key commands.
Smartprint, a companion program, real-
ly makes it easy to create a translation
table for characters going to the printer.
FBN Software has moved. The new
address is 16 Coles Place, Torrens ACT
2607, Australia. In the United States,
Smartkey continues to be available from
Lifeboat Associates, 1651 Third Avenue,
New York NY 10028, phone (212) 860-
0300, and from ICI Computers, PO Box
255, Aurora OR, 97002, phone (506) 678
2778.
John S. Allen
40 Rugg Rd
Allston, MA 02134
Dear Editor,
We have several Tandon Model 848
Thinline 8" drives here, both single and
double sided models. We chose them be-
cause they were half height but were also
pleased to find them sturdy, well made,
and fast.
Then a problem . . .
We began to lose data, and I really
mean lose data! After very short use (less
than a week at a few hours a day) we
found tracks on our Dysan disks which
had been worn down to the plastic base.
We could see right through the clear
tracks on the disk!
We tried changing the drive mounting
from horizontal to vertical but it didn't
help. Then we turned to the service
manual which stated:
"The head is loaded into contact with
the recording medium whenever the
drive lever is latched."
In other words, the heads are loaded
against the disk and remain loaded as
long as the latch is closed. So the head
grinds away the track it's sitting on!
We also find that there is a head load
option which consists of a head load sol-
enoid, a couple of logic gates and some
resistors. There is space on the circuit
board for the parts but they aren't in-
stalled.
A call to Tandon headquarters re-
vealed some interesting news. They are
aware of the problem but they will not
retrofit any Model 848 with head load
option, nor will they sell parts for the
modification. The person we talked to
insisted that the option must be specified
in the original order. (We talked to Renee
at 213-993-6644, ext 425.)
She also implied that they will not ser-
vice any drive which wasn't purchased
from an authorized dealer and I don't
know of any mail order outfits which are
authorized dealers. So we are out of
luck.
In a nutshell, the thinline 848's most of
us are buying will, with relatively short
use, destroy our disks. You can save
yourself some of the grief if you keep the
door unlatched as much as possible.
However, anyone planning on pur-
chasing Tandons should insist on the
head load option, or even better, con-
sider buying someone else's drives.
Willard E Johnson
Department of Physics
California State University
Hayward, CA 94542
Editor's note:
Anyone have any inside scoop on Tandon?
Is it really impossible to get this head load
option?
You might take a look, Will, at enabling the
DC motor timeout so that it will shut itself off
immediately after a drive access, or use the BB
motor control line to turn off the drive motor
(and then set the timeout down to a couple of
seconds). However, with their attitude to-
ward support, perhaps it's best to stay away
from them altogether.
Dear Editor,
Just a quick correction for BB II people.
Port 88 is the baud rate generator for se-
rial port B. Port 89 is the baud rate gener-
ator address for serial port A (opposite
what was indicated in issue #11).
Jim Skinner
20435 SW Alexander
Aloha, OR 97006
Dear Editor,
I have recently joined the ranks of the
BB II owners. The only real problem has
been choosing a monitor. I've been lucky
enough to have access to several moni-
tors and would like to share my findings.
First, if you use the 50Hz patch pro-
vided in the documentation (from Taylor
Electric), just about any 24/80 monitor
will work with the BB II 7X9 controller.
The only problem with the 50 Hz vertical
rate is that it may beat against you 60 Hz
AC. The resulting flicker is most pro-
nounced on white and green monitors.
With amber phosphor, the flicker is
barely evident.
The patch is:
ODC,2
ODD,5F
ODC,0
ODD,6F
ODC,7
ODD,18
The Sanyo 18 MHz, 12" green— the
USI Pi3 20 MHz, 12" amber— and the
Amdek Video 100 12 MHz, 12" B&W, all
work with the BB II. Depending on the
monitor, you might need to change the
parameter in the second line of the
patch. I have used values between 57h
and 5Fh. My choice among the three
monitors listed is definitely the USI Pi3.
Also, my 7X9 display appeared to be
twinkling because the video was ran-
domly dropping dots. This is caused by
glitching in the shift register U45. You
can fix this by changing U33 from a
74LS30 to a 7430. Another way to fix the
problem is to add a 22 pf capacitor be-
tween U31 pin 11 and ground.
The last problem is that the BB II com-
posite video signal suffers from high fre-
quency roll-off. So the horizontal lines
appear to be brighter than the vertical
lines. This is most apparent when the
brightness is turned down low. The fol-
lowing mod should fix this.
1. Change U24 from a 74LS86 to a 74S86.
2. Change R13 from IK to 750 ohms.
3. Add a 22 pf capacitor across R13 (the
Sanyo needed 100 pf)-
Cole Chevalier
17862 Fitch
Irvine, CA 92714
Dear Editor,
I use MicroPro's CalcStar spreadsheet
for financial and inventory projections.
The problem with CalcStar is that it
keeps all data in memory so the size of
the spreadsheet is quite limited.
I saw ads for Supersoft's Spreadsheet
called Scratchpad. It touted their "VM"
feature. I bought it knowing that it
Micro Cornucopia, Number 12, June 1983
would be somewhat slower (by defini-
tion).
I was really disappointed though with
their tedious formula entry. It is so slow
that entering a spreadsheet large enough
to need virtual memory wouldn't likely
occur during my lifetime. I feel that
scratchpad would be a waste of money at
$29.95 and I paid $212.00! I hope other
SuperSoft products are easier to use.
Are there any Micro C readers who
would like to work with me on a better
spreadsheet?
John Allen
144 Yagi Lane RR #1
Bowling Green MO. 63334
Dear Editor,
I wonder if you or any readers might
shed some light on several problems I
have had with my Big Board.
I have noticed that cntl-S will some-
times cause an untimely end of the dis-
play (while TYPING out a file) rather
than just stopping the text.
When I'm in WordStar with a parallel
keyboard, the system can't accept key-
board input while it is doing anything
else. Any character entered at this time
will come out an "F". Occasionally a
stray ":" will appear in the file, which is
bad news if I'm going to be assembling it.
I don't have these problems if I'm using a
serial keyboard.
If I'm using WordStar to edit a file that
is larger than will fit into RAM, I tend to
get blocks of errors such as a string of e's
or I'll just notice a chunk of text missing
or duplicated. Any suggestions?
John F Ingham
VK5KG
37 Second Ave
Sefton Park
South Australia 5083
Editor's note:
A few shots in the dark. You may have a
buffer in the serial keyboard (besides a couple
of characters in the SIO) and let's see, serial
port B generates interrupts but so does the
keyboard PIO. During disk access, interrupts
are disabled most of the time so you have to
send characters quite slowly or the processor
will miss them.
It sounds like your parallel keyboard is gen-
erating some garbage characters. If your key-
board cable is quite long you might get some
glitching that would cause the cntl-S problem
etc.
As for the large file problem, I'm at a total
loss unless you have a marginal drive or a bad
copy of WordStar. What say anyone?
And, by the way, thanks for the nice com-
ments about Micro C.
Micro Cornucopia, Number 12, June 1983
Dear Editor,
Here is a small correction to Tony
Ozrelic's C'ing Clearly on page 12 of is-
sue #11. The line "answer = &query;"
should read "answer = query;" or "an-
swer = &query[0];". Page 89 of The C
Programming Language, Kernighan and
Ritchie state that the & operator can be
applied only to variables and array ele-
ments. On page 94 they write: "pa =
&a[0]" can also be written as "pa = a". I
tried Tony's statement on my Zilog
S8000 at work and got a warning.
I realize that this may appear to be
picking nits, but after programming and
teaching programming for almost ten
years, I feel that nit picking perfection-
ists make the best programmers. But in
the same breath I would like to praise
Tony for doing the C column. I think he
should be commended for doing a fine
job.
Finally, I think Micro C is the most en-
joyable computer magazine I've ever
read. Please keep up the good work!
You'll be hearing more from me when I
get off my duff and submit something to
either the C or Pascal columns.
A simple request: Does anyone know
where I can locate the source of the
Othello program on user disk #1? I'd
really like to try extending it.
Adam S Moskowitz
221 Summer St #2
Somerville, MA 02143
Dear Editor,
I have been plagued by video jitter
ever since I got my BB up and running.
The symptom was that all the dots on a
line would move back and forth about 1
dot width.
After verifying that I had the right
crystal, adding extra filtering, checking
the CRT, and everything else I could
think of, I finally located the problem. It
was caused by U51 and U38, the series
one-shot combination used to generate
the horizontal sync pulse.
I solved the problem by bypassing
U38. Do this by bending out U38 pin 13,
and adding a jumper on the bottom of
the board from U51 pin 13 to U38 pin 13.
This modification shifted the screen
image but my CRT had an adjustable de-
lay.
The problem is caused either by varia-
tion in the width of U51's pulse or varia-
tion in the trigger point of U38. If you are
having this problem, this fix may work,
or you might try a different brand of one-
shot.
Henry Holcomb
7 Belmont Place
Lynchburg, VA 24502
BUYING A BIG BOARD? READ THIS FIRST!
Let us put it together for you. We are experienced
at electronics assembly and are set up to produce finished
and fully tested Big Boards that you can rely on.
Normal assembly time is less than two weeks. Total
charge is $100 or $60 with sockets factory installed plus
$5 shipping. Idaho residents add $3 sales tax.
We also repair non-working Big Boards at a price to
be determined upon inspection.
Send your kit (or have Digital Research send it) to:
Jay Papillon
PARADISE VALLEY ELECTRONICS
871 N.Eisenhower St.
Moscow, ID 83843
Additional Products £ Services :
IFORTH (Idaho FORTH) Complete FORTH Monitor
in 4 EPROM's.
CRTRAM A debugging aid, Needs no DRAM to run
uses CRT ram for scratchpad.
GRAPH2 Graphics Character Generator includes
bit mapped graphics characters with
normal $ reverse ASCII character set.
Requires a two jumper no trace cut
modification,
EPROM Burning Service Your program on 8" disk
single density CP/M file to 2708/2716
or 2732/2764.
Quantity discounts available
Your
Our
EPROM
EPROM
$35
$55
$15
$20
$15
$20
$20
$25
256K In Detail - Part I
By Art Boehm
2000 29th Ave NW
New Brighton, Minn 55112
612-633-9292
Xhe following article is much larger
than I had planned. However, it covers
not only specific hardware and software
modifications but also tools and tech-
niques. There should be something here
for just about everyone.
Four Banks of RAM
Converting the Big Board to 262K is ac-
tually rather straightforward. Most of
the work involves rearranging capacitors
on the RAM voltage buses.
As Karl-Wilhelm Wacker noted in Mi-
cro C, issue 9, U82 (74LS241) has plenty
of power to directly drive the RAM Write
signal, and that opens a selector bit on
U59 (pin 9) that can be used to select be-
tween two new bank bits (on pins 10 and
11) to drive A7 of the 64K RAMs.
The obvious choices for new bank bits
are System PIO bits A4 (unused) and A5
(bell). If you really can't live without the
bell and will never have more than three
drives, you could use A2. Or if you never
need a remote console, you could just as-
sume the keyboard and use A3. But
those bits require reworking PFM.
Incidently, we have had this modifica-
tion running reliably on both 2.5 MHZ
systems and those with the 4 MHZ mod-
ification described by Otto Hiller on page
3 of issue 3. The key to reliability is filter-
ing, which is why a good deal of the
modification involves rearranging the
bypass caps.
The new bank bits control U13
through U46 (0000 to BFFF). Ul through
U8 (C000 to FFFF, i.e. PFM) are not cur-
rently switched to avoid the "traveling
through hyperspace" problem. You
could use compatible 16K parts (i.e.
2118's) for Ul to U8, though we chose all
64K parts (e.g. 4164's or 6664's) to keep
our future options open. (See Figure 1)
Since power-up reset selects input
mode (and therefore a hi-Z signal) on the
System PIO, when PFM moves itself out
of the ROM it goes into "bank 3" (A5 and
A4 are both high) if RAMs Ul through
U8 were bank switched. But PFM
promptly initializes the PIO port A bits
through 2 and 5 through 7 as outputs
and these outputs are initially cleared
(low) by power up.
So, as execution switches to "bank 1"
(bit 5 is low and 4 is high) which of course
is not PFM.
You can cure this problem by changing
PFM INIT3 to put 030h into the port A
output register after loading the vector
(but before setting the mode). In addi-
tion you need to initialize all the bits ex-
cept 3 as outputs.
Reworking the board
Before we actually make changes to
the board, we must talk about how to re-
work a board as complex as the Big
Board.
First, remember that it is full of static-
sensitive components so be careful. Al-
ways ground or discharge (if you've nev-
er been discharged before, you ought to
try it) yourself before touching the
board, and especially before touching
any MOS parts (like 65K RAMs).
Second, use the right tools. You would
not cut picture frame molding with a
chain saw, and you cannot rework a
board with such small features without
precision (but not necessarily expensive)
tools.
Tools You'll Need
1. A 12-18 watt soldering iron with a
precision point or micro- spade tip. Any-
thing bigger risks foil delamination,
burned components, or frequent solder
bridges.
2. High quality 21-22 gauge (around 1/
32") multi-core solder; the thicker stuff
just blobs on and makes a mess.
3. Solder removal tools; narrow width
(.025-. 050) desoldering braid works
good but nothing beats a vacuum de-
soldering tool. Radio Shack has a mini-
desoldering tool (#64-2091) that works
great and only costs $6.49. The rubber
bulbs don't develop vacuum quick
enough to do the job.
4. A wet sponge for keeping the solder
tip clean and blob- free, or a combination
iron holder and sponge.
5. An X-acto knife with a heavy duty
handle (7/16" dia. or more) The thin
handle version is not sturdy enough to
cut tough foil without risking a snapped
blade. Shallow angle blades have to be
held too upright to cut easily (and
safely).
6. A miniature (i.e. 4") needle or long
nose pliers. You cannot get along with-
out one, and it should have scored jaws
and plastic coated handles.
7. A miniature flush cutting, angle
blade pliers. Most other types of cutting
pliers can't get in close enough or leave
stubs that are too long (and may touch
neighboring parts).
8. A needle pointed tweezers; the only
reliable way to pickup fragments of 30
ga. wire or solder.
9. A set of jeweler's screwdrivers;
you'll need them to adjust your glasses
after staring at the board for 15 hours.
10. A way to drill .041" holes; a #59
drill is the correct size, but you need
some way to hold it like a pin vise or min-
iature drill. You can get these drills with
larger shanks for use in a Dremel moto
tools.
11. Some 30 ga. wire and a 30 ga. wire
stripper. Finer wire is too hard to work
with (much less find or strip) and heavier
wire makes too big a lump at the connec-
tion points. Besides, if you get some pre-
stripped 2.5" lengths, they are exactly
the right length for 80% of the jumpers
you'll need.
12. A decent ohmmeter. This is in-
cluded under rework tools because it is
used to verify that your cuts and adds
worked right (i.e. cuts are open and adds
are shorts) before you try it out. This is
especially necessary when working with
the power and ground busing as this
change does (+5V should not be shorted
to ground when you are done).
Incidentally, cuts will not necessarily
show as true opens due to other compo-
nents. Mainly you are verifying that
there are no shorts.
13. An IC puller and inserter. Big
chips you can pry out successfully with a
screwdriver. With little chips you get
one end or three corners loose and when
you grab it to get the rest, it flips over and
buries its leads in your finger. Radio
Shack has a nice puller/inserter combo
(#276-1574) for $6.95. You can swap all
32 RAMs in 5 minutes with it.
Techniques
Now that you have all these fine new
tools, let's talk about technique.
You'll be doing four basic things, re-
moving components, adding compo-
nents, cutting foils, and adding jumpers.
Removing components
Remove components by first remov-
Micro Cornucopia, Number 12, June 1983
ing the solder from their leads with a sol-
der sucker.
When you have done all the leads you
should be able to pull the part out from
the component side with a pliers with at
most, a touch of the iron to the leads.
Adding components
You have to find a place for new com-
ponents to reside. Small components
(e.g. diodes, miniature resistors) can go
on either the component side or the foil
side. Larger components should go on
the component side.
Small components can be tacked to a
foil on the same side as the component.
Scrape the protective coating off the foil
and then bend the component lead to jog
down and lay on the foil for at least 1/8"
(more if you have room) . The solder joint
must provide mechanical strength.
Components can also be soldered into
vias (the holes that get signals from one
board side to the other), or can be in-
serted through new .041" holes to inter-
cept foils or jumper wires on the other
side of the board.
When you cannot solder to a foil on
the other side, you must bend the leads
for mechanical strength. If you grab the
lead 1/8" above the hole and push diago-
nally down, you should get an L-shaped
bend that will work.
By the way, before you drill a hole in
the big board, mark your spot and hold
the board up to the light to see what is on
the other side. You might be surprised.
Cutting Runs
Cutting foils is quite simple. Make two
cuts 1/32" to 1/16" apart through the foil
and "lift" (remove) the piece between
the cuts. On boards with quality copper
like the Big Board, "lift" really means
undercut and scrape. Always check your
cuts with an ohmmeter to make sure
they worked.
Adding Jumpers
Adding jumpers is similar to adding
components, except it is nearly always
done on the foil side. You can solder to
runs, vias, socket pin, or component
pin.
Use 30 guage wire and leave just a little
slack (maybe 1/16" extra). On long runs,
you can tack the wire to the board in a
FFFF
EOOO
EFFF
COOO
BFFF
BFFF
7FFF
<iOOO
3FFF-
3000
2.FFF
OOOO
MOW ITER
R££E(WEP
FOR.
E-XPAlJSIOM
PUTURE. !
BANKS
OO- II
BANK
OO
BANK
Ol
BANK
10
BANK
If
RAMy/viDEO
8ANIC "V"
* 1 4.
BANK
OO
BANK
Ol
BANK
IO
BANK
1/
VIDEO RAM
BANK
OOV
BANK
Ol V
BANK
ioV
BANK
llV
1
OPTIONAL. ROMS
ROM
Figure 1 - Storage Bank Assignment
few places with RTV.
When soldering directly to a pin,
watch closely for shorts to nearby pins
and foils. To minimize this, melt the sol-
der already on the pin/pad, and push or
pull the stripped portion of wire down
(into the solder) until it touches the pin
and the insulation just touches the sol-
der. Then clip off the excess wire flush
with the solder. If the solder blob is too
big, remove it and resolder the pin be-
fore again adding the jumper.
BB I Layout
You need to be thoroughly familiar
with the layout of the Big Board. It has a
component side and a foil side. It also
has four quadrants — the CPU, RAM,
Video, and I/O. We will use these terms
for orientation.
The main ground plane is on the com-
ponent side and is generally cross-
hatched. There are three main voltage
grids in the RAM quadrant: +5, -5, and
+12.
The -5 and +12 come up the CPU/
RAM edge on the foil side, and then run
down each of the four RAM rows on the
component side. These two supplies al-
so have traces at 90 degrees down each of
the eight RAM columns (on the foil side).
The +5V supply comes from between
the video and I/O sections to the CPU
side of the RAMs on the component
side, and then forms a half-grid by run-
ning traces down each of the eight RAM
columns on the foil side.
Bypassing
Filtering on the +5V grid is provided
by a small capacitor on each end of the
column traces (Cl-8 and C78-85) .
The filtering on -5V and + 12V supplies
is more complicated.
Each supply has a large capacitor on
each of the four row traces, (notice that
they alternate sides). C21, 38, 51, and 68
filter -5V, while C22, 37, 52, and 67 filter
+12V.
The -12V and +5V supplies also have
20 small capacitors (between them) dis-
tributed in alternating, interlaced pat-
terns down each of the eight RAM col-
umns.
In odd numbered columns, the five ca-
pacitors (between the +5V filters) (e.g.
C13, 25, 39, 55, and 70 in column 1) filter
+ 12, -5, +12, -5, and +12. In the even
numbered columns, the five capacitors
between the +5V capacitors (e.g. C14,
26, 40, 56, and 71 in column 2) filter -5,
+ 12,-5, +12, and -5.
Changes
Now that you have all this straight, the
following changes should make perfect
sense (See Figures 2, 3, and 4).
Pin 1 of the present RAMs is tied to the
-5V grid. Remove all the filters from the
-5V grid (we'll reuse the big capacitors
later), cut the -5 V supply, and tie the grid
HIGH through a pullup and filter. Some
65K rams don't use this pin, but those
with internal refresh need to have this
pin tied high (to disable the function).
(See Figure 2 for pinouts.)
Pin 9 of the present RAMs is tied to the
+5V grid. Remove all 16 +5V filters for
later reuse. This cuts off the +5V supply.
We will also cut all eight column traces
between rows 1 and 2. Pin 9 of the RAMs
in row 1 will be tied together and to
ground (C000-FFFF will always be locat-
ed in bank 0). Pin 9 of the RAMs in row 4
(U39-46) will be tied together and to the
output of R12, which connects to U59 pin
9.
(continued next page)
Micro Cornucopia, Number 12, June 1983
-*[
1 •
ib
] SND
P C
2.
H
IS
] CAS
"w[
|
11
] Q
RAS [
^
1
13
] Afe
4116 - UK Chip
A0[
6
a
] A3
(top view)
A2 [
b
ii
] AH
Al [
10
] A5
♦I2.[
8
9
] *s
Ti He [
/ •
] &ND
PC
f
]CAS
w[
/
(o
]Q
RAS [
4
] Ab
4164 - 64 K Chip
A0[
5
] A3
(top view)
A^ [
b
H
] Al
A. [
7
] AS
♦5 [
8
]A7
Figure 2 - RAM Chip Pinouts
COt-\PON£MT
SIDE
Figure 3 - Component Side Modifications
I u
• luG CSI (new)
MS
f256/C /n Detail continued)
Pin 8 of the present RAMs is tied to the
+12V grid. Cut off the +12V supply, tie
the grid to +5V, and add all the leftover
capacitors for extra filtering.
Disconnect the WRB signal (U82 pin 5)
from U59 and connect it to the RAM
WRB grid directly. Separate U59 pins 11
and 10 and tie them to system PIO out-
puts A4 and A5.
Add extra bypass capacitors to the
+5V supply in the video section to as-
sure jitter free video, and replace the
RAMs.
The actual step-by-step changes
are as follows:
1. Remove the -5V filters: C14, 16, 18,
20; C25, 27, 29, 31; C40, 42, 44, 46; C55,
57, 59, 61; and C71, 73, 75, 77.
2. Remove and save the large -5V fil-
ters: C21, 38, 51, 68.
3. Reinstall C21, 38, 51, 68 in roughly
their same locations as follows: locating
the capacitor bodies on the ground
plane, attach the plus leads to the old
+12 (new +5) grid lines emerging from
Ul, 20, 26, and 39 (pin 8) by either tack-
ing to the lines or using vias, and then
tack the minus leads to the ground grid.
4. Isolate the +5 filters and new A7
nets by making the following cuts be-
tween:
Ui pin 9 and Ci for i=l, 2, 3, 4, 5, 6, 7, 8 (8
cuts)
Ui pin 9 and Ui+12 pin 9 for i=l, 2, 3, 4,
5, 6, 7, 8 (8 cuts)
Ui pin 9 and Ci+39 for i=39, 40, 41, 42,
43, 44, 45, 46 (8 cuts) (e.g. U39 p9 to C78,
U40 p9 to C79, etc)
5. Tie together the new A7 nets by
adding the following jumpers:
Ui pin 9 to Ui+1 pin 9 for i=l, 2, 3, 4, 5, 6,
7 (7 adds)
Ul pin 9 to ground (the uncut foil side of
CI)
Ui pin 9 to Ui+1 pin 9 for i=39, 40, 41, 42,
43, 44, 45 (7 adds).
6. On the component side, locate the
via by the pin 7 & 8 end of U56. Cut the
trace between that via and where it goes
under U57 (near pin 7). This isolates
WRB from U59 pins 10 and 11.
7. Locate and mark U59 (and pin 9 for
reference) on the foil side of the board.
Cut the trace between U59 pins 10 and
11, thus isolating those inputs.
8. On the foil side, cut the trace leav-
ing the U60 side of R12. Make the cut
where the line jogs (around 1/2" from
R12). This isolates the U59 driven WRB
signal from the RAM WRB net.
9. Follow the trace you just cut toward
the RAMs until you find the first via
(around the old location of C68). Solder
one end of a 33 ohm resistor in this via,
point the free end toward the CPU.
10. Connect one end of a jumper wire
to the free end of the 33 ohm resistor,
and connect the other end to the via de-
scribed in step 6 (find it again on the
component side and stick a 30 ga. wire
through it to locate it on the foil side).
Trim the resistor lead with the attached
jumper so that it doesn't short to any-
thing. This connects the WRB signal to
the RAM WRB net.
11. Run a jumper from U43 pin 9 to the
U60 side of R12. This ties the new ad-
dress selector bit to the RAM A7 grid.
12. Still on the foil side, locate Ulll,
the system PIO. Pin 10 is connected by a
component side trace to a via 1/4" from
the pin (toward crystal Y3). Cut the trace
from this via on the foil side, it goes to
the power connector.
13. Attach the following jumpers on
the foil side:
Ulll pin 9 (Bell) to U59 pin 10 (new A14)
Ulll pin 10 (Spare) to U59 pin 11 (new
A7).
14. Tie 10K pullups to these new U59
inputs. Find a place to put two 10K resis-
tors with one end of each tied to +5 and
the other end available on the foil side to
be jumpered to U59 pins 10 and 11.
15. On the foil side, cut the -5V power
supply trace near C67 next to where the
+ 12V supply trace j ogs . This disconnects
-5V from the RAM pin 1 net.
16. Tie the just-isolated RAM pin 1 net
HIGH by connecting it to the new +5
grid through a IK resistor and to ground
through a .1 uf capacitor. U39 pin 1 has 2
vias within 1/4" for one end of the resis-
tor, the other end can be tacked to the
new +5 trace coming from U26 pin 8.
The trace from U26 pin 1 has a nearby via
for one end of the capacitor, the other
end should be tacked to the ground
plane.
17. On the foil side, cut the main + 12V
power bus going to the RAMs up the
CPU/RAM edge of the board; make the
cut just inboard from TBI (main power
connector) pin 4, without disturbing the
trace going toward the I/O section.
(continued on page 8)
Micro Cornucopia, Number 12, June 1983
•ft* 4M*
if m mTmrm m m m "m f
The "SLICER" is a HIGH PERFORMANCE single board computer based on the
new, highly advanced Intel 80186 CPU. The board has these advanced features:
■ Full 8MHz 16-bit microprocessor hav-
ing complete software compatibility
with the 8086 and 8088
■ Two full function RS232C serial ports
with baud rates individually controlled
by software.
■ Baud rate for console port is acquired
automatically.
■ Floppy disk controller allows the com-
bination of 5 1 A and 8" disk drives,
single or double sided, single or double
density.
■ SASI port for hard disk controller with
data transfer rate of up to 2Mb per
second.
m Memory capacity of 256KB ram on
board plus up to 32KB of EPROM,
■ 90 line expansion interface with 20 bit
latched address bus, 16 bit data bus
and all important 80186 control signals.
A high performance ROM monitor is in-
cluded with all systems.
BIOS for CPIM86* operating system in-
cluded.
Po wer requiremen ts:
+ 5 volt, ± 5% at 3 ampere max.
+ 12 volt, ± 10% at 60 milliampere
max.
- 12 volt, ± 10% at 50 milliampere
max.
All this on a board the width of a 5 1 A "
drive and only 1 1 Vz inches long.
Sold in various kit forms from
$140-$895. Assembled and tested
$1,075. Quantity discounts available.
Prices valid through July.
Complete documentation included.
Available Now!
This system is marketed and supported exclusively by:
Note: New name, address and telephone number.
SLICER COMPUTER INC. 2543 Marshall St. N.E.
CT \C* r D SLICER COMPUTER INC. 2543 Marshall St. N
DLIv^LJV Minneapolis, MN 55418 phone (612) 788-9481
Mastercard, Visa, check, money order or C.O.D. orders accepted. Please allow 4-6 weeks for delivery.
*CP/M a trademark of Digital Research Inc.
LOW COST
DISK CONTROLLER
LESS THAN $10 COMPLETE
SAVE WEAR AND TEAR ON YOUR DISK DRIVES
AND FLOPPIES WITH THE MODEL 3801 ALL
SOLID STATE RELAY. SMALL ENOUGH TO PIT
EASILY INSIDE YOUR DISK DRIVE, THE 3801
CAN BE INSTALLED IN MINUTES. YOUR BIG
BOARD WILL THEN TURN YOUR DRIVES ON AND
OFF AUTOMATICALLY AS THEY ARE NEEDED.
FEATURES
* SMALL SIZE - 1.75 X 1.10 X
0.35
* FAST INSTALLATION - DIAGRAM
INCLUDED
* ZERO CROSSING - ELIMINATES
ALL SWITCHING NOISE
* TRIAC OUTPUT - NO MECHANICAL
PARTS
* DVDT FILTER - INCLUDED
* LOW COST - ONLY $8.80 EACH
* 1 YEAR WARRANTY
* 30 DAY MONEY BACK GUARANTEE
COMPANY OF CALIFORNIA
(711) 547-1316
CALIF. RES. ADD 6% SALES TAX
ADD $1.00 POSTAGE & HANDLING
HARD TO GET PARTS
The Easy Way
COM 8116
$12.50
CRYSTALS
13.89 MHz
3.00
20 MHz
3.00
5.0688 MHz
3.00
POWER CONNECTOR
3.00
RESISTOR PACKS
For the Pair
1.00
POSTAGE
2.00
DIGITAL RESEARCH
COMPUTERS
POLfax 401565
Garland, TX 75040
(214) 271-3538
COL
I
COL
COL
3
COL
8
US9 PIO
10 ~-> 1
11 «— IO
IH PiN CHIP
U 56
i WR
•
QC8
1
1
O
08
o^"~-— _
IO
\
o o
U20
o o
o o
o^ o
o ! o
UW6 \
)ces \
.'.--IV
U
VIDEO
SECTION
Figure 4 - Foil Side Modifications
OfeO
(256K In Detail continued)
With a short piece of 20 ga. wire,
jumper the just-cut end of the main
+12V supply trace to TBI pin 3 (+5
volts).
Roughly 3" from TBI, following the
power bus toward the RAMs, there is a
trace coming off the bus and going to a
via by C112:
Cut the trace between the bus and the
via, and run a jumper from the via to TBI
pin 4 (+12 volts).
If you had installed the RAM saver cir-
cuit, it is no longer needed and should be
removed (patch up the +12V foil).
18. On the foil side, tie the +5 power
supply to the old +12V by adding the
following jumpers: D /\
Ui pin 8 to Ci+JkTcut foil end (+5V side)
for i=39, 40, 41, 42, 43, 44, 45, 46 (8 adds)
19. On the foil side, tie the remaining
filters to the +5V supply by tacking short
jumpers from the cut foil end lead of CI,
2, 3, 4, 5, 6, 7, 8 to the old +12 (new +5)
bus that runs next to them along the card
edge.
20. To assure that the new demand
(and noise) on +5V does not affect the
video stability, add the following capaci-
tors to the ground plane (by tacking or
drilling) and vias in the +5 lines in the
following places:
By U12 pin 14: a 1-10 uf tantalum capaci-
tor (+ lead to +5V),
By U51 pin 16: a 1-10 uf tantalum capaci-
tor (+ lead to +5V),
By U64 pin 18: a 50-100 uf min. electro-
lytic (- to ground).
21. Recheck all your work, test for
shorts, and make sure the power sup-
plies and ground are not shorted togeth-
er. Look for solder blobs and splashes or
wire fragments. Reflow any cold solder
joints and clean up any resin deposits.
22. Pull out the 16K RAMs and care-
fully insert the 64K parts.
23. Update your Big Board documen-
tation (i.e. prints) to reflect any changes
you made.
Your board is now modified and ready
to go. Carefully apply power and go for
the magic prompt! If it doesn't work, re-
check your work and proceed as if bring-
ing up a new big board. You may have
blown out something else while doing
the modification. For related articles see
Micro Cornucopia issue 4, page 16, and
issue 9, page 8.
The list of parts needed to make the
change is as follows:
You need 32 64K RAMS (or 24 64K
RAMS and 8 compatible 16K RAMs).
The RAMs should be 200ns or better (es-
pecially if you intend to go to 4 MHz).
resistors:
1 — 33 ohm (anti-ring damper)
1 — IK ohm (net pullup)
2 — 10K ohm (input pullup)
capacitors:
1 — .luf disc
2 — 5 uf tantalum
1 — 100 uf electrolytic
Editor's note: This is the hardware portion
of this article. Next issue, we'll look at the
software ramifications (heh, heh) of these
mods. Art also included some really super in-
formation on correcting video shake for good.
(Issue 13 is already looking pretty lucky.)
8
Micro Cornucopia, Number 12, June 1983
NEW LOWER PRICES! NOW IN "UNKIT"* FORM TOO!
"BIG BOARD II"
4 MHz Z80-A SINGLE BOARD COMPUTER WITH "SASI"
HARD-DISK INTERFACE
$795 ASSEMBLED & TESTED $545 'UNKIT'
$245 PC BOARD WITH 16 PARTS
Jim Ferguson, the designer of the "Big Board" distributed by Digital
Research Computers, has produced a stunning new computer that
Cal-Tex Computers has been shipping for a year. Called "Big Board II", it
has the following features:
■ 4 MHz Z80-A CPU and Peripheral Chips
The new Ferguson computer runs at 4 MHz. Its Monitor code is lean, uses Mode 2
interrupts, and makes good use of the Z80-A DMA chip.
■ 64K Dynamic RAM + 4K Static CRT RAM +
24K E(E)PROM or Static RAM
"Big Board II" has three memory banks. The first memory bank has eight 4164 DRAMs
that provide 60K of user space and 4K of monitor space. The second memory bank has
two 2Kx8 SRAMs for the memory-mapped CRT display and space for six 2732AS, 2Kx8
static RAMs, or pin-compatible EEPROMS. The third memory bank is for RAM or ROM
added to the board via the STD bus. Whether bought as a bare board, an "unkit"*, or
assembled and tested, it comes with a 2732 EPROM containing Russell Smith's superb
Monitor.
■ Multiple-Density Controller for
SS/DS Floppy Disks
The new Cal-Tex single-board computer has a multiple-density disk controller. It can
use 1793 or 8877 controller chips since it generates the side signal with TTL parts. The
board has two connectors for disk signals, one with 34 pins for 5.25" drives, the other
with 50 pins for 8" drives.
■ Vastly Improved CRT Display
The new Ferguson SBC uses a 6845 CRT controller and SMC 8002 video attributes
controller to produce a display rivaling the display of quality terminals. There are three
display modes: Character, block-graphics, and line-graphics. The board emulates an
ADM-31 with 24 lines of 80 characters formed by a 7x9 dot matrix.
■ STD Bus
The new Ferguson computer has an STD Bus port for easy system expansion.
■ DMA
The new Ferguson computer has a Z80-A DMA chip that will allow byte-wise data
transfers at 500 KBytes per second and bit-serial transfers via the Z80-A SIO at 880 Kbits
per second with minimal processer overhead. When a hard-disc subsystem is added,
the DMA chip makes impressive disk performance possible.
SIZE: 8.75" x 15.5"
POWER: +5V @ 3A, +-12V @ 0.1A
■ "SASI" Interface for Winchester Disks
Our "Big Board II" implements the Host portion of the "Shugart Associates Systems
Interface." Adding a Winchester disk drive is no harder than attaching a floppy-disk
drive. A user simply 1 ) runs a fifty-conductor ribbon cable from a header on the board to
a Xebec controller that costs only $295 and implements the controller portion of the
SASI interface, 2) cables the controller to a Seagate Technology ST-506 hard disk or
one compatible with it, and 3) provides power for the controller-card and drive. Since
our CBIOS contains code for communicating with hard-disks, that's all a user has to do
to add a Winchester to a system!
■ Two Synchronous/Asynchronous Serial Ports
With a Z80-A SIO/O and a Z80-A CTC as a baud-rate generator, the new Ferguson
computer has two full RS232-C ports. It autobauds on both.
■ A Parallel Keyboard Port + Four Other Parallel
Ports for User I/O
The new Cal-Tex single-board computer has one parallel port for an ASCII keyboard^
and four others for user-defined I/O.
■ Two Z80-A CTCs = Eight Programmable Counters/Timers
The new Ferguson computer has two Z80-A CTCs. One is used to clock data into and
out of the Z80-A SIO/O, while the other is for systems and applications use.
■ PROM Programming Circuitry
The new Cal-Tex SBC has circuitry for programming 2716s, 2732(A)s. or pin-
combatible EEPROMs.
■ CP/M 2.2**
CP/M with Russell Smith's CBIOS for the new Cal-Tex computer is available for $150.
The CBIOS is available separately for $25.
* The "unkit" is a fully-socketed, wave-soldered "Big Board II". It requires
NO soldering. All an "unkit" purchaser must do is carefully insert the
prime ICs we supply in the proper sockets and systematically proceed to
bring up and test the board.
"CP M is a registered trademark of Digital Research.
CAL-TEX COMPUTERS, INC.
780 E. TRIMBLE ROAD #504 • SAN JOSE. CA 95131 • (408) 942-1424
Terms: Orders paid for with a cashier's check or bank card will be shipped within three
working days. Orders paid for with a personal check will be shipped within three weeks.
Add $5 for packing & shipping in North America.
Packet Radio
By Peter J. Eaton WB9FLW
35 Norspur, Route 4
Edwardsville, IL 62025
JKadio amateurs in Canada, Sweden,
and the U.S. have been experimenting
with packet radio, a system of computer-
based communications. This new mode
can provide high-speed communication
that is interference resistant and is effi-
cient use of the spectrum.
What is packet radio?
Packet radio is a communication of
digitally encoded data (similar to tele-
type and ASCII) that includes hand-
shaking and error detection. The error
checking is done by including a frame
check sequence (FCS) with each trans-
mission (called a packet of data). The re-
ceiver acknowledges an error-free pack-
et by sending back an acknowledge
(ACK) signal.
If the sending station does not receive
an ACK within a certain period of time, it
automatically retransmits the packet.
A packet also contains an address, so a
packet station will ignore any packets
not addressed to it. Since packets are
sent in short bursts, many stations can
use the same frequency without conflict.
On very busy frequencies you might no-
tice some delay in sending data or receiv-
ing an acknowledgement, but you never
hear the other stations.
Requirements
Each station has to have a terminal, a
terminal node controller (TNC), and an
amateur radio transceiver.
The terminal can be a simple dumb
terminal, a printing terminal, a personal
computer, or even a mainframe type sys-
tem.
Most terminals generate asynchro-
nous characters. These characters have 1
or more "marks" (binary l's) which indi-
cate where each character begins (start
bits) and ends (stop bits). The characters
are sent at a specific baud (bit) rate.
There is no set time interval between
characters.
The TNC
The terminal node controller (TNC) is
the heart of the system. It has an asyn-
chronous serial port which connects to
the terminal (etc.) and an additional port
which connects to the transceiver's mi-
crophone line, speaker line, and trans-
mit control line.
The TNC collects the data coming in
from the terminal, until it has enough for
a packet. It then attaches a header which
includes the address of the destination
and control information for the network,
and it attaches the error checksum and
flags to mark the beginning and end of
the packet.
The TNC then sends the packet out
through the transmitter at the packet
channel baud rate. Usually it produces
AFSK modulation, which means it sends
one tone for a mark and another for a
space.
The receiving TNC decodes the audio
tones (from the speaker line), removing
and checking the address information
and the checksum. If the packet is cor-
rectly addressed and correctly received
then it passes the information to the ter-
minal (at whatever baud rate is appropri-
ate for that terminal).
The modem part of the TNC translates
the tones into ones and zeros. Most
packet radio modems operate at 1200
baud, and the tones are 1200 Hz and 2200
Hz. This is the same pair of frequencies
used by the bell 202 (half-duplex) mo-
dem which is available as surplus.
The Transceiver
The transceiver (transmitter and re-
ceiver) usually operates on the amateur
radio 2 meter (144-148 MHz) band. The
main requirement is that the transceiver
be able to pass 2200 Hz audio tones ade-
quately. Most 2 meter rigs will do this.
Handling the Protocol
The functions of the TNC which
would be difficult to duplicate on a per-
sonal computer are the protocol decod-
ing/encoding and simultaneous opera-
tor control.
The protocol sets the contents of the
packet header and trailer so that the re-
ceiving TNCs know the purpose of the
packet. For instance, is the packet being
used to check into a net? Or is it part of a
communication with another station? Or
is it simply acknowledging receipt of an-
other packet? Meanwhile, the station
operator may want to interrupt the pro-
ceedings.
Obviously, a system running under a
BASIC interpreter would not keep up, so
we've had to write the software in as-
sembly language. If the TNC were re-
placed by personal computers, we
would have to write new software for
each different computer.
Since the TNC must be constantly lis-
tening to both ports while putting pack-
ets together or taking them apart, the
hardware of personal computers may
not even be capable of handling the task.
Editor's note: Peter is obviously not aware
of the incredible feats of engineering taken on
by inspired BB owners. The common ham
(amateur radio operator) with his hand-held
appliance (I have one too) won't know what
hit him if we turn the BB group loose on the
airwaves. (Legally, of course!)
Packet Details
A packet is the basic message unit. It
usually consists of text typed in by the
operator and sandwiched between the
header and the trailer.
During a typical QSO (conversation
on the air) a packet would be put togeth-
er and sent out each time the operator
ended a line by hitting a carriage return.
The length of the packet is limited to no
more than 128 characters. This limitation
helps a single user from hogging the fre-
quency as well as making sure that the
sending and receiving TNCs don't get
swamped.
The data inside the packet need not be
ASCII characters. They could be BCD,
EBCDIC, or even binary data such as
.COM files.
The TNC uses a bit-oriented protocol
called HDLC (high level data link con-
trol). This protocol was chosen because it
is supported by a single LSI communica-
tions chip, which simplifies both the
hardware and the software. Also, in this
mode, data is transferred faster since in-
dividual characters no longer need start
and stop bits in this synchronous mode.
See Figure 1. (Editor's note: the Z80 SIO
supports HDLC very nicely, handling the
CRC and flag generation. It also checks the
first byte of the address for a match. See a Z80
SIO manual for details of HDLC which is also
called SDLC.)
The address field contains routing in-
formation for the packet. This informa-
tion may include the destination station,
the originating station, and possibly,
some intermediate routing instructions.
10
Micro Cornucopia, Number 12, June 1983
Identification of the stations might be by
network address number or by amateur
call sign.
The control field describes the pur-
pose of the packet. It identifies packets
which are network check-ins or check-
outs, packet acknowledgements, or re-
quests for information from net control.
It may also contain a sequence number
for a multi-packet message which must
be received in the correct order.
The data field contains the message.
The FCS is just another name for a
CRC, a fancy checksum.
What is a packet network?
A local area packet network (LAN) is
made up of a net control station (station
node) and a number of individual sta-
tions (terminal nodes). The net may op-
erate through a digital repeater which
can be a single- frequency repeater or a
standard duplex repeater.
As operators sign on to the net, they
are assigned address codes by the net
control. An operator wanting to talk to
another station logged onto the net can
simply address his transmissions to that
station.
An operator can choose to listen in on
all transmissions or just those addressed
to him. Of course, he will only send ac-
knowledgements for transmissions di-
rected to him.
The operator who is acting as net con-
trol operates his station just like anyone
else; the special net control functions are
taken care of by his TNC.
Connecting LANs
Some stations will be able to access
more than one LAN. These stations
could be members of both groups and
serve as communications links through
which packets can move between nets.
Plus there are three other ways being
considered for transfer of data between
LANs.
1. TERRACON would be a high-
speed ground-based link using UHF and
microwave relays. It could handle most
packet radio communications in the U.S.
and Canada. It will probably be a few
years before this system becomes useful.
2. AMICON would be a satellite-
based utilizing one of the special services
channels on the AMS AT phase II-B satel-
lite. This system will allow intercon-
tinental linking with isolated areas
which would not be accessible by TER-
RACON.
3. SKIPCON is the projected high fre-
quency network. The nature of HF prop-
agation requires slower data rates (50 to
600 baud) and error correction as well as
error detection protocol. Experiments
with this long range mode began in 1981.
How to get started.
There are now two TNC designs. The
first TNC was designed by the Van-
couver (BC) Amateur Digital Communi-
cations Group and they sell a bare board
with instructions. They also sell a mo-
dem kit. This TNC is based on the 8085
and the 8273 HDLC controller. It in-
cludes 4K bytes of 2114 RAM and four
2708s.
The Tucson Amateur Packet Radio
Group is testing a second TNC design.
This TNC has the modem, radio inter-
face, serial and parallel terminal inter-
faces and power supply circuit on a sin-
gle board. It is based on a 6809 and can
contain up to 48K of RAM and ROM . The
1933 HDLC chip on this board is com-
patible with the 8273 chip used on the
Vancouver group's board.
Editor's note, I don't have the addresses of
the two clubs mentioned but hopefully I'll
have that information by the next issue. If
you can't wait, contact Peter or get on the air
and locate folks from these areas who could
tell you.
Figure 1 - Makeup of the HDLC Packet
FLAG
ADDRESS
CONTROL
DATA
FCS
FLAG
Complete
SASI Kit
for the
BB I
All the hardware you
need, plus, all new
Software to interface
your BB I to a hard disk
controller.
NOW ONLY
$99.95
BB II
Drive
Interface
This is the hardware and
software package you
need to run 5 1 /4" and 8"
floppies simultaneously.
ONLY
$29.95
Available from:
Andy Bakkers
De Gervelink 12
DeneKamp 7591 DT
The Netherlands
Or, if you come to the SOG
(July 30th and 31st), you'll
get a chance to meet Andy
and try out both packages.
(You could even take one
home!)
Micro Cornucopia, Number 12, June 1983
11
C'ing Clearly
Aztec CII Compiler Ver. 1.05
Review by Bill LaFay
1214 Westridge Circle
Lynchburg Va. 24502
I am new to the world of C program-
ming. I used to use BASIC for all my pro-
gram needs. BASIC was easy to learn
and use. C is quite different from BASIC
and not being familiar with structured
languages, I decided that the C I would
buy must follow "the book" (Kernighan
& Ritchie) religiously. Through the urg-
ing of a friend, I bought AZTEC C.
Overview
Aztec C comes in two flavors: Integer
and Floating Point. Two for the 8080 and
two for the Z80. It also comes with its
own assembler, linker and librarian.
These, according to the user manual, are
a sub-set of Microsoft's M80/L80. If you
have M80 & L80, you can use them along
with your personal external libraries.
The compiler is a one pass compiler so
all references must be forward. It has
switches which: allow the source text to
be added to the assembly language out-
put as comments; define the length of
expression lines in the source program
(default is 120), and define the size of in-
ternal work tables. The output of the
compiler is an 8080 assembly listing in
the case of the 8080 versions and ex-
panded 8080 for the Z80 versions (not
true Z80 mnemonics).
Strengths
1. Compiles for own assembler/linker or
for Microsoft's M80/L80.
2. Initializers on declarations.
3. Random access file I/O.
4. Very complete error message defini-
tions.
5. Compilation, assembly, and linking
under SUBMIT file.
6. Supports 16 significant digit floating
point arithmetic.
7. FP exponent range E+-128.
8. Dynamic storage allocation.
9. .MAC compiler output can be hand
optimized.
10. Structures, pointers, casts.
11. Long, Float, Unsigned, double,
static, register, extern.
Weaknesses
1. Calls must have same type & number
of arguments as the called function.
2. No FCALL function for calls to exist-
ing FORTRAN LIBRARY routines.
3. Internal floating point notation is not
12
compatible with the MICROSOFT FOR-
TRAN or BASCOM conventions.
4. No tracer option for single step de-
bugging. ZSID must be used on the
.COM file.
5. No built-in utility for easy debugging.
6. No code optimization option.
7. No bit fields.
8. No pipes.
Documentation
The manual is new with this version
and is chock full of information. It gives
good coverage of all facets of Aztec sys-
tem operation.
MANX SOFTWARE SYSTEMS sent
an update disk that included the needed
libraries called for by the linker. This
saved a lot of compiling, assembling etc.
The user's guide seems to contain the
information needed but it is "impossi-
ble" for the uninitiated. I've seen much
better and would hope the needed im-
provement will be made.
Ease of Use
The submit file that comes with the
package makes compiling, assembling,
and linking very easy. I use the CZII
floating point compiler with M80 & L80
and it works very nicely.
Code Size And Quality
The Aztec C is a single pass compiler
and does no optimizing but still gener-
ates good code. The CLIBZ80 library is
large and no doubt accounts for the large
object file size.
Conclusions
There were a number of problems
with the early versions of the floating
point compiler (CZII) but now things
seem to be in good shape. The people at
Manx have given me prompt and cour-
teous service. The compiler works like
the book (Kernighan & Ritchie) says and
has all the features except those indicat-
ed above. Would I buy it again if I had to
do it over? I think I would.
For the benchmark test, I used the
same program as shown on page 4 of
August 1982 Micro-Cornucopia. I also
am running a 4MHz Big Board.
Benchmark Results
4MHZ Z80 Bigboard
Compile Time 16 sec
Assembly Time(M80) 16 sec
Linker Time(L80) 51 sec
Run Time:
-original prog. 32 sec
-static variables 22 sec
-register int var. 22 sec
Object File Size 17K (. COM)
NOTE: I have written my own version
of the trig functions I needed. They are
written in Aztec C and are accurate to 9
significant digits which is fine for almost
all applications. These will work for Az-
tec C version 1.04 which doesn't have
them.
They should also work on any C com-
piler that handles double precision num-
bers. I have also interfaced Aztec C with
the MICROSOFT FORTRAN library.
This speeds up computations by a factor
of 3.
Editor's note: Any novice who is writing
trig functions has my vote for "novice of the
year." Also, version 1.05 not only adds such
things as IIO redirection, the scientific math
functions, scanf, and relative byte support for
unbuffered IIO — it also has a fancy new
manual. And still, it is available (to Micro C
readers only) at $149.00 Anyone interested
in Bill's scientific routines and FORTRAN
library interface should contact Micro C. If
you are interested we will put them together
as a user disk.
Manx Software Systems
PO Box 55
Shrewsbury NJ 07701
201-780-4004 ■ ■ ■
CP/M 2.2 License and disk for Scull-Tek Big Board $95.00
Reconfiguration of above for Ferguson Big Board or Xerox 820 S10.00
CP/M manuals $20.00
C-DIFF file compare utility for CP/M $29.95
With an assortment of public domain utilities to fill the disk.
Wabash 8 inch SSSD diskettes 10 for $30.00
plus $2 shipping per box of 10
CP/M Public Domain Software Collections
Add $2.00 each to copy CPMUG. RCPM or SIGM disks onto new disks.
Specify which disk numbers you want. There are over 200 disks full of
public domain software available in these three collections. The best way
to find out what is available is to order a box of 10 disks plus $20 for copying
and specify that you want the catalogs and abstracts, which will fill all ten.
then after you read the abstracts order the disks you have picked out.
Quantity discounts and custom CP M configurations available Send S1 for catalog
which describes the above and other items in more detail
WILCOX ■■ ENTERPRISES
P.O. BOX 395 • NAUVOO, ILLINOIS 62354 • (217) 453-2345
Illinois residents add 5% sales tax.
CP/M is a trademark of Digital Research. Inc.
riupi f^C||QC Tne nome for y° ur BIG BOARD that you will be
CINUUUOUnCproud of. With a POWER SUPPLY that will run
the BIG BOARD and two standard or slim-line eight inch drives. It
comes fully wired with all connectors and is pre-wired for disk
expansion. The BIG BOARD mounts on the inside of the top cover
allowing all cables to dress neatly to the rear of the cabnet and
to allow ease of access for repair.
The enclosure comes in single or double wide. The double
wide will fit both standard drives or (with the adaptor, $10)
the over sized Shugart SA 800-2, from Cascade Electronics, Inc.
Available without connectors and un-wired as a drive cabinet
or as a do-it-yourself enclosure for the BIG BOARD or other SBC.
STANDARD FEATURES INCLUDE
* Power supply
+5.0V @ AA w/OVP, +2AV @ 2.5A, ±12V @ 200mA
all voltages have over current prtection.
* Fan * Reset switch
* Key lock power switch * Bell circuit and speaker
* AC outlets, one switched * Solid state AC relay
* Composite video jack * Reverse video switch
* Disk drive exansion pre-wired (50 pin + DC + AC)
* Color- biege and chocolate * Optional- adapters & plates
* 6"H x 13"W x 16"D or 2A"W for the double wide.
1/pYP^APn The ^ ey ^oard was designed to complement the
IXbTDwMnU 'La Caja' enclosure in color, design and
function and to be 100% compatible with the BIG BOARD.
FEATURES
* 66 keys * two-key roll over
* ASCII 8, positive logic * Delayed negative strobe
* Sculptured key caps * Five user defined keys
* Power requirments- +5.0V (a 150mA, -12V 20mA
* Color, biege and chocolate * 1 . 5"-2 . 5"H x 13"W x 8"D
The box (La Caja)
single wide, wired S379
double wide, wired S399
single wide, un-wired S279
double wide, un-wired $299
adaptor for SA 800-2 S 10
shipping and handling S 10
DDIMTPD The BR0THER HR-15 daisy wheel printer is a
rrillN I EL II compact printer that will handle paper up Co
13.5 inches.
A variety of orerations have been added to increase clarity,
precision and to emphasize important points. The HR-15 Prints
super-script and sub-script characters with the ability to adjust
character spaces proportionally and provides automatic
underlining with either hold or red print. For ease of operation
both daisy wheel and ribbon are enclosed in casettes making
changing trouble free.
In closing, the BROTHER HR-15 makes an excllent choice for
word processing and general printing.
FEATURES
* 2K byte buffer
* Bold printing
* 13 cps
* Graphic printing
* Proportional
* Cassette type daisy wheel
RS-232C or CENTRONICS parallel
Bi-directional logic seeking head, 1/120, 15, 15, 10
positions per inch.
Bi-directional friction platen, 1/A8, 6, A, 3,
positions per inch.
Options- Tractor feed, Auto cut sheet feed
Color- biege * 6"H x 19.5"W x 13"D
KEY BOARD w/o cable $159
shipping and handling $ 5
PRINTER, Brother HR-15 $595
Bhipping and handling $ 10
POWER SUPPLY for the BIG BOARD (+5.0V @ AA w/OVP, +2AV @2 . 5A,
±12V @ 200mA). All supplys have over current prtection (A"H x 3"W
x I1"D, 6.5 lb)
Transformer for the BIG BOARD as above (3"H x 3"W x A"D, 5.5 lb)
ASTR0TR0NICS also sails disks, ribbons, daisy wheels and paper
POWER SUPPLY $ 95 +$5 S&H
TRANSFORMER $ 29 +$3 S&H
AstroTronics
MICROSYSTEMS
California Residents
Add 6% Tax
(714) 734-6006
1137 TOPAZ ST.
CORONA. CA 91720
CP/M EPROM PROGRAMMER
interfaces to BB1 parallel port
iilliSii||S|*ilSSlEi.
|§iPlllpil§y|^|l§|
ISlliIllli
sllflf
[Spill
MlIS
•» ~
SPECIAL INTRODUCTORY PRICE
features are: (offer expires Sept. 30,
- Program, Verify, Load, and check for Erased
Intel Eproms 2716, 2732(A), 2764, 27128
T.I. Eproms 2516, 2532, 2564
Xicor EEprom 281 6A
-16 k byte memory buffer allows you to work with up to
8-2716 EPROMS at the same time
- Upload and Download Intel Hex Files with the memory
buffer
- Edit the data in the memory buffer
- Define your own addresses for the memory buffer so you
never calculate where your data is in the memory buffer
- Complete screen error messages
- Software source included
- Menu driven
- Interfaces to most Z80 CP/M systems with parallel ports
and aTPA=100H
options (available later)
- EPROM Emulator
- Adapters for single chip processors
Requires +5 v. @ 300 ma., +25 V. @ 100 ma., and inter-
face cable
Software is delivered on a standard 8 inch SS SD floppy disk.
1983)
1 . Software and schematic
29.95
2. Bareboard and schematic
39.95
3. Software and bareboard
64.95
4. Software and kit (less ZIFS)
89.95
5. Software and full kit
114.95
6. Programmer A + T
129.95
plus shipping
5.00
Still available
BB1 1 software and source
(uses the BB11 for programming)
29.95
all prices shown are in US Funds
Allow 4-6 weeks for delivery
Send order to:
Biegun and Associates
P.O. Box 4071
Station "B"
Winnipeg, Manitoba
Canada R2W 5K8
Biegun & Associates
CP/M is a trademark of Digital Research, Inc.
Bringing Up The BB II
By Jim Showker
11174 Penrose #C
Sun Valley, CA 91352
Sometime during the first week of
December '82 1 sold my BB I and the next
day ordered a BB II bare board from Cal
Tex in San Jose. I had talked to them
twice in the previous month to confirm
that they could ship from stock immedi-
ately, since being without a computer at
home for any length of time makes me
feel semi-naked. I was concerned be-
cause I waited quite a while for my BB I.
However Cal Tex was temporarily out
of various parts the day I placed my or-
der. I received my bare board, a "hard to
get parts kit," and CBIOS on disk about
2 x /2 weeks later.
Assembly
I very carefully assembled and sol-
dered the sockets and components to the
board. I then cleaned the rosin off the
back of the board and over a period of
two days was able to find 10 errors in sol-
dering. There were 4 connections un-
soldered, 5 possible cold or otherwise
disreputable looking solder joints and 1
solder bridge.
After carefully installing all the IC's
and applying power to the board I was
quite happy indeed to hear, after about
two seconds, a loud beep from the
board. This meant that the CPU, memo-
ry, and I/O ports were probably working
correctly.
Debugging
I had no video, however, and was able
to quickly establish that the CRT section
was not working at all. There was a 16
MHz clock, but that was it. It didn't take
too long to establish that U45 was bad.
After replacing it, I still had no video. I
now had all the necessary video signals,
but no composite output. I figured that
the output transistor had been taken out
when U45 went. That was when my
troubles began.
I was now trouble shooting from the
schematics, of course. I pulled the video
output transistor, and put in a 2N2907
like it said on the schematic. (I didn't no-
tice that the component layout sheet list-
ed the same transistor as a 2N2222.)
I now had a completely inverted com-
posite video signal. I assumed the design
was faulty and eventually ended up de-
signing a composite video generator on
the "breadboard" portion of the PC
Board. Only recently did I notice the er-
ror and replace the 2N2907 with a
2N2222. This silly error probably cost me
25 hours.
Drives
I then hooked up the disk drives (2 an-
cient Siemens, that had worked per-
fectly on SD with the BB I). Installing the
CBIOS turned out to be quite easy, unex-
pectedly so. But, I could not format in
double density without LOTS of errors. I
got sidetracked with the schematics
again, thinking something was wrong
on the board as there are many hookups
that are not as shown.
After a few days I went out and bought
a new drive, to see if that could be the
problem. Being not a rich person, I
bought another $250 Siemens drive (a
mistake). The older ones had worked
fine for me on SD and these were speci-
fied for double density. Anything else I
could buy was $380 or more. I still had
the same problems with the format pro-
gram. Two weeks of hair pulling and
chin scratching followed.
On a Sunday, I went to my office and
disassembled the computer there (a cus-
tom installed rack mount S-100 System)
and brought home two Shugarts that I
knew worked fine on double density.
Voila, no more errors.
I resigned myself to spending $400 a
piece on drives and went back to Priority
1 to trade up or get my money back. They
convinced me to try another Siemens as
they said they were getting very few re-
turns. I took another one home and it
worked perfectly.
The next day I went to buy another, for
drive B:, and after hooking it up, it had
the same problems as the first. I ex-
changed it and the fourth one did not
work at all, either. It made horrible
clanking noises and wouldn't load the
head. I was able to fix it though and now
have two Siemens drives working reli-
ably. (Beware of Siemens drives.)
Modem
I recently tried to hook up my modem.
In the assembly portion of the manual
that came with the BB II there is a jumper
diagram for utilizing SIO A as the mo-
dem port. Elsewhere in the manual, un-
der a section called "BETTER BOARD
UPDATE" there is a list of jumpers for
configuring a modem that is the opposite
of that in the assembly manual. In the
very next paragraph after this list it
reads: "To connect a serial terminal to
the Better Board, install the Modem
jumpers. To connect the Better Board to a
modem, install the Terminal jumpers."
Confusing.
As usual, when I get confused about
configuring or don't quite understand
something, I look through my issues of
Micro C to see if I can find a reference. In
issue #9 there's a short article called
Talking Serially by David Thompson. All
became clear. Like most Big Board own-
ers, I am not an expert in this field; it's
my hobby. Without Micro C, I wouldn't
have had a BB I that worked and would
not have bought a BB II.
YAM and MODEM7 configured for
the BB I will not run on the BB II. The
port numbers are different. (User disk
#14 has BB II modem software.)
Documentation
Bill Siegmund apologized for the sche-
matics, said there would be new ones
soon. When? The documentation I re-
ceived has dates on it of 5/25/82 and 8/20/
82. Surely there's been enough time.
The BB I documentation was sparse,
but everything I needed was there.
There is no list of Disk Drive error codes,
there's no list of port numbers, and the
jumpering info for a modem or terminal
is confusing. A list of port numbers is in
the ROM listing, included on disk with
the system.
Bill was very helpful when I was trying
to solve the problem with my drives. He
spent a lot of time with me on the phone
and his willingness to help impressed
me.
Bad documentation is a very common
complaint, and perhaps I shouldn't ex-
pect too much with a computer kit that
sells for this amount of money, but I
would have saved at least 30 hours if the
schematics had been correct. The other
missing or incorrect info would be ap-
preciated also.
Monitor
My NEC 1201 monitor will sync up
(continued on page 26)
Micro Cornucopia, Number 12, June 1983
15
Pascal Procedures
By John Jones
6245 Columbia Ave
St Louis, MO 63139
Finally, after what seemed like an
endless wait, I got my copy of JRT PAS-
CAL V3.0. It seems that whatever other
problems they've solved, JRT Systems
still hasn't solved the slow shipment
problem. On the good side, my first im-
pression is that it was worth the wait.
This review will just hit the high
points since I haven't been able to com-
pletely "wring out" the new features.
Improvements
One of the major complaints with ear-
lier versions of the JRT compiler was that
it frequently would go "off in the weeds"
when it encountered errors in the
source. The new compiler seems to be
much more resistant to that. Listing con-
trol directives and options have been
added which allow page-formatted out-
put to the printer, disk file or console.
Frequently used routines can be inserted
as source with the %INCLUDE com-
mand.
Support for file (window) variables
through standard GET/PUT statements
has been added. Programs written for
another compiler will require fewer
changes for JRT.
Extensions
Standard PASCAL shows less flexibil-
ity for array handling than some other
languages since the size of all arrays
must be declared at compile time. JRT
V3.0 has added the ability to ALLO-
CATE array bounds at execution time, a
significant improvement. The use of dy-
namic arrays, though, is somewhat re-
stricted.
Utilities
Indexed file support (single key) is
provided as a set of external procedures.
The demo program in the manual runs
properly for me - but it is not very fast.
Number output formatting similar to
both BASIC'S "PRINT USING" and CO-
BOL's "PICTURE" is implemented as an
external function. High speed search of
memory data is also provided as an ex-
ternal function.
The external procedure source file
generator program, CRTMAP, lets you
format screen displays with simple, high
level commands.
The Manual
The User's Guide has been expanded
by about 50 percent. Most of the expan-
sion is coverage of the additional fea-
tures and utilities. However, there is a
new section on common problems
(many of which I had to discover on my
own with V2.1) and an expanded intro-
duction. Plus, the 16-page reference card
makes trips to the manual much less fre-
quent.
Overall, the package is quite im-
proved. All but one of the programs I've
been running under V2.1 compiled
without error on the first attempt. The
only apparent problem with the com-
piler I've found is that it doesn't seem
able to tell when it's out of memory.
The program mentioned above would
not compile correctly until portions had
been moved to external procedures. Be-
fore the program was trimmed down,
the compiler would drop back to CP/M
or even PFM without an error mes-
sage — frustrating.
In future articles I'll try to give more
details on various portions of the pack-
age as space and time permit.
Tutorial
This issue's PASCAL tutorial is on
loop and control structures. For all the
examples, where the word STATEMENT
is used, either a simple statement or a
compound statement within a BEGIN
. . . END construct can be used.
PASCAL provides three methods of
iteration or looping. See Figure 1.
Figure 7
FOR I := START TO ENDING DO
BEGIN
END;
FOR INDEX
STATEMENT;
»P» DOWNTO 'B' DO
These should look familiar to anyone
who has used BASIC or FORTRAN. The
FOR statement is a means to execute a
portion of a program a specific number
of times. Unlike BASIC, the loop control
limits are calculated before the loop is
entered so if START z ENDING the loop
is not executed even once.
The loop control variable, which must
be a type for which SUCC and PRED are
valid (integer, char, enumerated etc.),
cannot be modified within the loop.
Nothing equivalent to the STEP clause in
BASIC is available. See Figure 2.
Figure 2
WHILE B00LEAN_C0NDITI0N DO
STATEMENT;
WHILE NOT ( EOF UNFILE) ) DO
BEGIN
READ (INFILE; VARIABLE_LIST) ;
PROCESS (VARIABLE_LIST);
END;
The WHILE statement is used for
iteration with control at the beginning of
the loop. When CONDITION evaluates
to 'FALSE' the loop is not executed. See
Figure 3.
Figure 3
REPEAT
STATEMENT;
UNTIL CONDITION;
REPEAT
READ UNFILE; V_LIST);
PROCESS (V_LIST);
UNTIL EOF(INFILE);
The REPEAT statement is used for
looping when the end condition test is
needed at the end of the loop. For both
WHILE and REPEAT the boolean value
which terminates the loop MUST be ca-
pable of alteration within the loop. If it is
not, an infinite loop will result.
There are three basic methods avail-
able for controlling the execution of a
PASCAL program. The IF statement is
similar to IF constructs in other lan-
guages. See Figure 4.
Figure 4
IF B00LEAN_EXPRESSI0N
THEN STATEMENT!
ELSE STATEMENT2;
16
Micro Cornucopia, Number 12, June 1983
The THEN clause will be selected if the
BOOLEAN evaluates to TRUE and the
ELSE (which is optional) will be execu-
ted on FALSE. Note that no semicolon
follows the statement preceding the
ELSE. If it were present, the compiler
would interpret it as the end of the IF
statement, not desired in this case.
Multi-way branching is accomplished
with the CASE statement. See Figure 5.
CASE INPUT_CHAR OF
'A'.'BVC : STATEMENTS ;
'Z'.'X' : STATEMENT2;
'Q' : STATEMENT3;
'Y' : STATEMENTS
ELSE ; STATEMENTS;
END;
For most PASCALs, the case selector
must be an ordinal expression. The ELSE
is an extension (for JRT and others), oth-
er compilers have no provision for a non-
match or use the word OTHERWISE.
JRT PASCAL is unique in that expres-
sions may be used as case labels. For ex-
ample, see Figure 6.
Figure 6
CASE BOOLEAN OF
(SALARY > 0) AND (SALARY < 10000.0) :
TAX := 0.10 » SALARY;
(SALARY > 10000.0) AND (SALARY < 20000.0) :
TAX := 0.20 » SALARY;
(SALARY > 20000.0) AND (SALARY < 100000.0)
TAX := 0.30 * SALARY;
ELSE TAX := SALARY - (SALARY / 10.0);
END;
Figure 8
(* This type declaration is needed in the main program *)
type text_file = file of char; (*JRT does not recognize 'TEXT'*)
function get_string(var f:text_file; var line:string) : boolean;
const (* constants for normal line & file delimiters *)
cr = 13;
If = 10;
endfile = 26;
ch : char;
i : integer;
new_line : array [1. .256] of char;(* long enough for most *)
begin
new_line := • '; (* clear assembly variable *)
repeat (* read chars til first non-terminator *)
read(f ;ch) ;
until not ( ord(ch) in [cr f lf]);
i := 1;
(* now read characters until get terminator *)
while not ( ord(ch) in [cr,lf, endfile]) do
begin
new_line[i] := ch;
i := i + 1;
read(f ;ch) ;
end;
line := copy(new_line, 1 ,i-1 ); (* assign to dynamic string *)
get_string := ( ord(ch) = endfile ); (* then assign EOF *)
end;
Finally, PASCAL does allow the use of
GOTO. The destination statement must
have a label, and all label values must be
declared. See Figure 7.
PROGRAM XYZZY;
LABEL 10;
IF WIZARD THEN GOTO 10;
10: PERF0RM( MAGIC);
I avoid using GOTO statements but
am not adamant about it. You'll find that
in most cases, programs will be easier to
understand and follow without GO-
TO's.
String Handling
One of the criticisms of JRT PASCAL is
that it implements non-standard fea-
tures in a non-standard way. Leaving
the validity of the argument aside, one of
the problems with JRT's implementation
of the non-standard type STRING is that
string variables cannot be read from
files, only from the console.
The BOOLEAN function getstring
presented here can be used to read a dy-
namic string from a file. The file is as-
sumed to be a standard ASCII text file
with lines terminated with carriage re-
turn or linefeed (or both) and end-of-file
signalled with cntl-Z. The constants can
be changed if your operating system
uses different values. The file should be
RESET (opened) in binary format.
The function is equivalent to the state-
ment READLN (STRINGVAR); for a
console read and will return TRUE on
end-of-file. The function could be used
in any program where text data needs to
be manipulated on a line-by-line basis,
see Figure 8.
Micro Cornucopia, Number 12, June 1983
17
Overbeek Enterprises
OVERBEEK ENTERPRISES is rapidly establishing a broad selection of inexpensive CP/M programs. We will be adding
new selections continuously- as fast as we can bring them into the market, while making absolutely sure that each one is
a real bargain. Substantial quantity discounts are available. Our average time to process an order is 2 days. If for any
reason you cannot make one of our products run on your system, we will refund the purchase price.
>OQ 95
Menu-Plus
Menu
System
You've probably heard about the glories of menu driven
systems. This powerful package developed by Capacity
Inc. makes the ease of menu driven systems affordable
to any CP/M user. Menu-Plus allows rapid, easy
configuration of simple or hierarchical menus. You can
hide the complexities of CP/M and allow single
keystroke invocation of your programs. It's a user's
dream. Both beginners and experienced operators will
find Menu-Plus a significant enhancement. You do not
have to be a programmer to install or tailor Menu-Plus
on your system. In just a few minutes, you can easily
create whatever new menus you desire with a text
editor. Our competitors offer products in the $75-$1 50
range. We invite comparison of this product with any
other menu system in terms of features or user
friendliness. In terms of price there is no comparison.
95
29
WSMX80
Wordstar/Epson
Print Processor
Can you print these on your Epson?
,-2«t
R =
I2its2ne)~
t 3 /-c
M =
_ I**
i-.
a d>
WSMX80 has been created for WordStar users that
have an Epson MX-80 or MX-100 printer equipped
with either the Graftrax or the Graftrax Plus option. By
separating the printing function from WordStar, all of
the features of the printer can be used to full effect.
Now you can use alternate character sets, compressed
fonts, italics, and a variety of other features based on
the Graftrax capabilities. WSMX80 has been widely
used at the University of Kansas for over a year and
has proved to be an invaluable tool.
?2g95
Micro- WYL
Text
Editor
$2g95
Disk Inspector
Disk
Editor
Tired of trying to use ED under CP/M? Here are just a
few unsolicited quotes from our customers:
"I operate a software house in Central California and
have used a lot of text editors over the years. Micro-
WYL has to be one of the best I have ever used,
regardless of price."
"Micro- WYL is undoubtedly the hottest bargain on the
market."
"Thank you, thank you, thank you."
"This editor is perfect for writing in nearly any
programming language. [I] . . . have no hesitation in
recommending it to anyone whose requirements
match the capabilities of this inventive piece of
software." -From a review in Infoworld (11/15/82)
Now you can have the convenience of WYLBUR on
any Z80 CP/M system.
Have you ever been unable to read a file due to a bad
sector? Have you ever erased the wrong file? Disk
I nspector acts as a full-screen editor for diskettes. You
can simply watch as sectors are displayed on the
screen in both character and hex formats. When you
wish to make the display pause, touch the spacebar. If
you wish to alter a sector, it is a simple matter to move
the cursor over the appropriate character, alter it, and
have the sector rewritten.
Although Disk Inspector runs only on Z80 CP/M
systems, you can inspect and alter normal (non CP/M)
Apple diskettes, as well. The disk drives may be single
or double density, single or double sided.
Note: Disk Inspector requires an 80x24 screen on your CRT.
CP/M is a registered trademark of Digital Research, Inc.
WYLBUR is a registered trademark of The Board of Trustees of the
Leland Stanford Junior University
WordStar is a registered trademark of MicroPro International
□ 8" SSSD
□ Apple/Softcard
□ KAYPRO II 5"
□ NEC 5"
□ Zerox 820
Amount:
$29.95 for Menu Plus
$29.95 for WSMX80
$29.95 for Micro-WYL
Name
□ ALTOS Series 5
□ Televideo TS-802
□ Osborne
□ Superbrain
□ Heath/Magnolia
Northstar 5" DD
□ Advantage
□ Horizon
□ Morrow Micro
Decision
$29.95 for Disk Inspector.
$2 for postage & handling.
TOTAL _
Address.
City.
State.
Zip.
Make your check payable to:
Overbeek Enterprises
P.O. Box 726
Elgin, IL 60120
To order C.O.D. or with a MasterCard or Visa call
312-697-8420 between 9 am and 5 pm (CST)
'They want how much?!"
On Your Own
By Guest Columnist
Hampton Miller
Computer Consultant
PO Box 816
Carpinteria, CA 93013
few books are available to help you if
you are providing a service. I suppose
that this is the case because the books
wouldn't be very long.
Contract programming, for example,
requires no store front, no inventory,
and none of the other trappings of typi-
cal business. Your expertise is all the
ticket you need for this kind of self-em-
ployment.
Self-employment used to be the nor-
mal thing and people lived and died on
the basis of their own decisions and
"Acts of God." However, these days,
people figure it's best to be secure so
they attach themselves to a large organi-
zation. In fact, self- employment is so un-
usual now that we're called something
different — like "Entreprenuers" (which
is French for Broke).
Rules
Let's discuss some of the rules found
in various guides to self-employment.
All of them make sense and after I've
broken them (with painful results)
they've made even more sense.
1. There are many things you can do
for free — other people's work is not one
of them. Most people seem to believe
that "self-employed" means "unem-
ployed" and "independently wealthy."
Their interesting projects which do not
pay, DO NOT PAY! You will be very sad,
indeed, when the bills arrive.
2. Get paid. Some consultants are em-
barassed about arranging payment. If
you're one of them, change or get out.
You know you are worth it — if they
don't agree then you don't really want to
work for them.
Charging for time and materials
(T&M) can be a gold mine but most of my
clients have been burned badly this way.
So I propose T&M for the up-front anal-
ysis which establishes the milestones.
This way I root out all the necessary re-
sources in the company, get a good over-
all picture of the project and get paid for
doing it.
With the project clearly laid out, then
you and the client can more easily agree
on a reasonable fee and time schedule.
Be sure to set partial payments at the
milestones with a balloon at the end.
This way you can survive along the way
while the client still retains control (the
balloon) should he not be pleased with
the job. If the milestone payments are
enough to live on, then you can afford to
walk away from a really bad situation.
Be careful if you are performing a ser-
vice through a broker or service com-
pany. Specify that you get paid upon cli-
ent acceptance.. Otherwise, you might
wait two months for payment.
3. Don't let them make their prob-
lems your problems. Watch out for
"we're sorry but after paying all the fixed
costs, we don't have enough for you
right now" or the ever popular "we
should get some money real soon now."
Make it abundantly clear to them that
you are very much a fixed cost which
must be dealt with up front.
4. Put it in writing. You don't have to
have a full blown contract, but writing
out all the details as you understand
them makes it easy to discuss things
with the client. It's a lot more pleasant to
find misunderstandings early than after
you have spent months building some-
Canned Lightning For Your Big Board!
If you're hot for speed and have a standard BB with a parallel interface, flash on this:
ANYTHING CP/M DOES WITH A REGULAR DISK IT CAN DO UP TO 10 TIMES FASTER WITH dynaDisk.
ilynaDisk is a 256k RAM board that takes 5v at 1 A and plugs into your parallel interface (J5). It comes with auto-patching software
which makes it look like an 8" single density disk drive to CP/M. It uses 4164-type RAMs, regular TTL, and transfers data at
125-250 kbytes/sec. (regular floppy is 30 kb/s).
50 page manual (source included) & software (8" SS SD disk): $35.00
8V2 x 6V4 soldermasked double sided PC board: $60.00
ASSEMBLED & TESTED: we put it together for you, burn it in for 48 hrs. & test it: $495.00
Allow 4-6 wks for delivery. CA residents add sales tax.
Send check or money order today to: CP/ M is a trademark of Digital Research
thing. Of course, if the client agrees to all
the points, signs the document, and
then disregards portions — it's time to
find someone else.
5. Have more than one client. There
are three reasons for this.
First, it gives you a lot of freedom in
choosing what you want to work on (it's
easier to say no to an unpleasant project
if someone else has a project waiting).
Second, you can increase your pay by
letting clients bid against each other for
your time. Let them set your hourly rate.
Third, the IRS can make things pretty
tough if they think you are an employee
rather than an independent contractor.
If you have more than one client, they
can't complain.
6. Don't burn any bridges. Your best
future clients are your past clients as
long as you don't make waves, i.e. don't
say anything controversial such as pro-
moting self-employment to your clients'
employees. Just do the work, submit
your invoice and get out!
Editor's note:
Hampton called me the day he quit his 9 to
5 to begin consulting in earnest. He was ec-
static! Later he called looking for a shoulder to
cry on. He had set up milestones for a project
but wasn't going to be paid until he had fin-
ished (and part of it was taking longer than he
had figured). At that point I asked him to do
one of the "On Your Own Columns."
When he sent this article, he sent a real
bonus. In the margins were scrawled some
intriguing comments which I've taken the
liberty of excerpting:
"Things are going much better now with
money coming in at last! Last week we were
down to NO money, NO food, and NO work-
ing car (or gas) ."
"This is repeat (of) material (in Micro C)
but these few points make all the difference
between real success and failure. Paper suc-
cesses can get VERY hungry!"
"I'll be in touch and am looking forward to
the big whoop de doo!"
You'll all get a chance to meet Hampton
and his wife at the SOG.
L.A. Software
6708 Melrose
Los Angeles
California 90038
(213) 932-0817
Micro Cornucopia, Number 12, June 1983
19
FORTHwords
A Column by
Arne A . Henden 7415 Leahy Road
New Carrollton, MD 20784
(301) 552-1295
X his is going to be a fairly long col-
umn, covering the FORTH-83 Proposed
Standard, along with a FORTH applica-
tion. But first, news from the FORTH
world.
FORTH Vendor News
Laboratory Microsystems has released
their FORTH 2.0 for the Z-80. While 2.0
is not FORTH-79 standard, it has most of
the features of that standard, such as the
1024-byte blocks. The user's manual has
been expanded and reprinted on a daisy
wheel. The real advantage of 2.0 is that
Duncan has included a simple I/O-
driven multi-tasker, allowing ten back-
ground tasks and one foreground task.
The best news: the price remains the
same: $50 for a multitasking FORTH!
Unified Software Systems has added
hashed vocabularies in their latest re-
lease, making UNIFORTH the fastest
FORTH-79 system when it comes to
compilation. Readers who mention Mi-
cro Cornucopia are entitled to a 30% dis-
count on any UNIFORTH version.
FORTH-83
I've finally received the draft proposed
FORTH-83 standard. There are more
changes than I expected, and many of
the areas that were begging for stan-
dardization were omitted. Here are
some of the details.
All truth flags are either or all ones
(i.e., -1). This simple change causes all
kinds of problems! You can't perform
operations such as " 0= VAR +!" to in-
crement a variable by 1, and words such
as UNIFORTH's MATCH and CMPS
cannot be used as precursors to condi-
tional tests like IF and WHILE.
State smart words are removed. By
"state smart" I mean words that have
different actions depending on whether
FORTH encounters them during compi-
lation or execution. The primary exam-
ple of this is dot-quote (."). It has now
been replaced with two words: ." for
compilation mode, and .( for execution
mode. Tick (') has been replaced by ' for
execution and ['] for compilation, and
now leaves a word's code field address
(CFA) instead of its parameter field ad-
dress (PF A).
All arithmetic divide operations are
floored. This means that the result of
truncating -3.6 will be -4 under FORTH-
83, whereas it could have been -3 under
FORTH-79 if your system truncated
numbers toward zero.
Two words have their names changed
for consistency: U* becomes UM*; and
U/MOD becomes UM/MOD.
ROLL and PICK now have indices
from to n instead of from 1 to n; "0
PICK" is the same as DUP.
LEAVE has immediate action, instead
of just setting the DO-LOOP parameters
so that the next encounter of LOOP
would terminate.
NOT now performs a one's comple-
ment of the entire 16-bit value, thereby
replacing the current NOT and COM.
EXPECT no longer adds nulls to the
end of the input string (yea!) . A new var-
iable, SPAN, has been added to provide
the user with a count of the characters
actually entered with EXPECT. WORD
moves a packed string to the dictionary
and always adds a blank at the end
(FORTH-79 added the delimiter charac-
ter).
Other new words are: 2/ for an arith-
metic divide-by-2; D2/ provides the
same function for double precision inte-
gers. ABORT" prints the error message
following it (like .") and then aborts.
#TIB indicates how many characters are
present in the terminal input buffer.
CMOVE> is like UNIFORTH's
-CMOVE, moving a string starting at the
end of the string and working towards
lower memory. >BODY gives a word's
PFA from its CFA.
One unclear aspect of the proposal
concerns KEY and EMIT. Of course, 8-bit
characters are environmentally depend-
ent, and a transportable program should
only use 7-bit characters. However, the
proposal makes it sound like KEY and
EMIT can only work on 7-bit characters,
which would be a gross error.
Overall, the new standard is an im-
provement from FORTH-79, clarifying
and making definitions consistent. I per-
sonally don't like the removal of state-
smart words, because two words are re-
quired to do the work of one. I
particularly think the new truth flag defi-
nition is abysmal, and will cause a lot of
headaches in converting FORTH-79 pro-
grams over to the new standard.
The main question I have with the new
proposed standard is not what changes
were made, but with the areas they over-
looked: floating point, strings, data base
management, file systems, and multi-
programming. They didn't have to de-
fine the action of the words, just stan-
dardize the names of typical operations
in each area. By the time the next stand-
ard comes out, there will be such a prolif-
eration of extensions with differing
names and actions that it may become
impossible to standardize.
Accessing the Big Board Video RAM
If you've read the Big Board manuals,
you know that the lower 16K bytes of ad-
dress space are bank-switched to select
between EPROM/video RAM and pro-
gram RAM. This application shows how
you can gain access to the video RAM
from FORTH, and gives a screen dump
utility as an example.
The bank select is controlled by bit 7 of
the general purpose parallel port 1C
(hex). You set the bit to select video
RAM, and clear it to select program
RAM. Simple enough, right? The prob-
lem is that while video RAM is selected,
you cannot run any program that re-
quires the lower 16K bytes of program
space. That happens to be where the
FORTH address interpreter (NEXT) and
most of the primitives reside. What we
need to do is write a CODE word that
moves bytes from video RAM space into
program RAM space, and then store the
CODE word and text buffer somewhere
above the 16K lower limit.
The CODE word CRT >PROG shown
in screen 1 moves bytes from video RAM
to any other memory region. The inverse
operation is much harder because of the
cursor and character attributes, and is
left as an exercise for the reader.
CRT >PROG selects video RAM by set-
ting bit 7 (leaving bits 0-6 alone), moves
bytes, and then returns to program RAM
space.
The video RAM starts at 3000 (hex)
and continues for 3K bytes (24 lines of
128 characters, labelled through 23).
When first accessed, line of the screen
(top) is stored starting at 3000; line 1 at
3080, line 2 at 3100, etc. As you enter
lines, a carriage return moves you down
on the screen until the bottom line is
reached. The next carriage return causes
scrolling — the top line disappears, the
remaining 23 lines move up, and a blank
line with cursor appears at the bottom.
You could perform scrolling in soft-
ware by moving 23 lines of bytes starting
at 3080 down to 3000, and blanking the
line at 3A80. Instead, the Big Board uses
hardware assist with scrolling. A "regis-
ter" contains the RAM line which should
appear at the bottom of the screen (ini-
tially 23), and when decremented,
moves lines toward the top with the old
top line wrapping around to the bottom.
This movement only occurs in the video
m
Micro Cornucopia, Number 12, June 1983
generation; the RAM contents are not
changed. This means when the scroll
register contains 8, line 10 (hex) is at the
top (but stored at address 3800).
In screen 2 are the screen dump words
built upon the primitive video access
word, CRT>PROG. The word RA-
MADR performs a video line to starting
video RAM address translation through
the use of the scroll register contents.
PRINTLINE works exactly like TYPE, ex-
cept characters are sent to the printer in-
stead of the console. Finally, SCREEN-
DUMP performs the 24-line translation
and printing function.
Next Month
A new text book, And So FORTH, will
be reviewed (it looks good). I would like
to cover some more Epson applications.
How about some suggestions as to fu-
ture topics, folks? Enjoy the summer!
Reader Feedback from:
Raymond Buvel
Box 3071
Moscow, ID 83843
The following is a repair that should be
done to Arne's random number genera-
tor published in issue #10. I looked up
the algorithm in Knuth (so I could un-
derstand how it worked) and discovered
that the array indexing is off.
The program is supposed to imple-
ment the difference equation X(n) =(X(n-
24) + X(n-55)) mod m. where n > = 55
and m = 65536. In other words, un-
signed addition is used and the overflow
is ignored.
When Knuth presents the algorithm
for computing the above sequence he
starts with 1 while the arrays in FORTH
start with so the indexing must be
modified to work properly. The modifi-
cation in Figure 2 will correct the code.
IFORTH
Figure J - Accessing the Big Board Video RAM
SCR # 1
1 ( CODE word to access video RAM)
HEX
2
3
4
5
6
7
8
9
10
11
12
13
14
15
24 ARRAY TEXBUF
01 C CONSTANT VIDPORT
FF77 CONSTANT SCROLL
CODE CRT>PR0G ( srcadr dstadr #bytes ...move vid to RAM)
VIDPORT ) A IN,
80 OR,
A VIDPORT ) OUT,
BC POP,
DE POP,
HL POP,
LDIR,
07F AND,
A VIDPORT ) OUT,
NEXT, END-CODE
80-byte text buffer)
video bank-switching port)
adr of scroll register contents)
get current port contents)
set bit 7)
and turn on video RAM)
get byte count)
get prog RAM dest adr)
get video RAM source adr)
perform the move)
clear bit 7)
and ret to program space)
and also to FORTH)
16 DECIMAL — >
SCR
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 2
( Routine to dump CRT screen to printer) HEX
: RAMADR ( scrline vidadr ...perform translation)
17 SCROLL C§ - + 18 MOD 80 » 3000 + ;
: PRINTLINE ( adr cnt ...output line to printer only)
OVER + SWAP DO I C@ PREMIT LOOP 0D PREMIT 0A PREMIT ;
: SCREENDUMP ( ...dump screen to printer)
18 DO I RAMADR TEXBUF 48 CRT>PR0G TEXBUF 48
PRINTLINE LOOP ;
DECIMAL ;S
Review by Hampton Miller
PO Box 816
Carpinteria, CA 93013
An exciting new implementation of
Fig-FORTH is now available for the BB I.
It's called IFORTH (Idaho FORTH), and
in the Fig-FORTH tradition, it has been
placed in the public domain.
Whether it's booted from User Disk
#18 or run directly from ROM, this
FORTH replaces PFM, adding new capa-
bilities.
Any FORTH in ROM gives you the ad-
vantage of quick and easy access to all
parts of your system. In addition, the
IFORTH "copy" words are always avail-
able so you can switch back and forth
(pun?) between it and CP/M.
Replacing PFM
IFORTH totally replaces PFM whether
it is booted from disk or resident in four
ROMs. All of the usual PFM functions —
except the RAM test — are still available.
New commands include a disk copy
routine (which even works for single
drive systems) and a FORTH word
which compares two blocks of RAM.
Detailed instructions come with
IFORTH so you should have no trouble
incorporating any changes you have
made to PFM.
Comparing IFORTH and fig FORTH
IFORTH is really a fig FORTH in
which only the lowest level disk I/O
words are defined. For example, SEEK,
HOME, READ, WRITE, TRKREAD, and
TRKWRITE are available — while
BLOCK, BUFFER, LIST, and LOAD are
not. (You could easily add these, howev-
er.)
The absence of the usual FORTH
words used by a text editor, is partially
made up by IFORTH's ability to save and
restore compiled dictionaries from disk.
While a decompiler would really round
out this version, none is provided. (An
exercise left to the students?)
Figure 2 -
Random Number
Generator Correction
Change:
24 CONSTANT JINDEX
To:
23 CONSTANT JINDEX
And change the FORTH word RAND to:
RAND ( — N
Leaves 1 6-bit random number )
JINDEX RNUM § KINDEX RNUM §
JINDEX 0= IF 54 ELSE JINDEX 1- THEN
KINDEX 0= IF 54 ELSE KINDEX 1- THEN
DUP KINDEX RNUM !
JINDEX !
KINDEX !
Conclusion
This brief review cannot do justice to
the rich FORTH environment provided
by IFORTH. I feel it's the FORTH of
choice for the BB I if you are looking for a
solid foundation for building bigger and
better systems.
Watch for enhancements to this great
package here in the pages of Micro C.
Micro Cornucopia, Number 12, June 1983
21
WHAT'S NEW?
The thirteenth letter of the Greek alphabet is NU ;
The SCULL-TEK H19MK101 TERMINAL LOGIC BOARD is NEW!
S-100 OR STAND-ALONE MODELS
A 4 MHZ MICRO-PROCESSOR BASED CONTROL SYSTEM USING
STATE OF THE ART COMPONENTS
This board measures 5%" x 10" and uses less than 1 amp of 5 volts and around 30 milliamps
of +/- 1 2 volts
4 MHZ Z 80 based system
Supports up to 8 KB's of program storage
Allows display of 24 lines of 80 characters
Flicker free display of reverse video data
25th line setup programming
EIA RS-232-C compatible terminal interface
Programmable baud rate operation to 19.2 Kbaud
Supports HEATH H19 and DEC VT52 escape se-
quences
• Escape sequences include full cursor movement and editing functions
• Display memory supported by access arbitration circuitry preventing video noise on screen when
memory is accessed
• Reverse video attribute and special alternate character mode available on a per character basis
• Standard character generator provides 33 graphic HEATH SYSTEM H19 compatible symbols
• Bit 8 of incoming ASCII characters may be used to cause the character to address an alternate user
defined character generator
• Zilog SIO/DART serial device allows async communication or may be reprogrammed to communi-
cate in bit or byte sync modes
• Display signals: Composite video (1.5 volt P-P negative sync); Seperate sync and video outputs
(polarities selectable and widths programmable)
KEYBOARD INTERFACE:
• Standard RS 232 serial communication • Allows detachable keyboard
• Only 4 wires connect keyboard for communication
• Programmable keys reduce many multiple key WORSTAR* functions to a single key stroke
S-100 BOARD with assembly and operating instructions, firmware on 2732 EPROM $79.00
S-100 BOARD and TERMINAL PARTS KIT $184.00
STAND-ALONE BARE BOARD, assembly and operating instructions, firmware on 2732 EPROM $84.00
STAND-ALONE BOARD and TERMINAL PARTS with manual $179.00
STAND-ALONE POWER SUPPLY and TRANSFORMER $15.00
COMPUTER EQUIPMENT
MosterCord
vw
240 W. Market St. Box 589
Somonauk, Illinois 60552
815-498-2111
$2.00 Shipping
Registered Trademark : 'Digital Research
WHY BUY ROMAC'S SCULL-TEK COMPUTER?
It's as Fast or FASTER
It's more EXPANDABLE
It COSTS LESS
>
THAN MOST OTHER
SINGLE BOARD COMPUTERS
COMPLETE BOARD AND DISK DIAGNOSTICS ARE INCLUDED IN MONITOR
• 4 programmable timers • Memory mapping provides 64K for CP/M*
• Full 4 or 5 MHZ Z-80 MICRO-PROCESSOR with 64K dynamic RAM
• Complete (6K) BlOS/monitor-boots, runs CP/M*, version 2.2
• 50 pin expansion connector, (2) eight bit I/O ports and sense switch for expandability
• Floppy disk controller operates both 8" and mini floppy drives at the same time, including the
new megabyte 96TPI double sided disk drives.
^ ^ -Ej -Ej
s( fr «"6 I j fr 4116 J | fr 4-1 it, ||^ 4-116 1 (|=
♦ ft 4I " S l^4M6 ! f £ 4 "H j fr 4U6 | |
g( fr *"C J g fr 4116 J g ^T^-l IC J | $ 4116 j 03
• ^ 4 " 6 1^ 4116 j^fHC J^ 4116 J |5j
s ft 4 116 |S~4llfc [ g yr^Tl^ 4116 1 1)5
g ft 4116 [^~4T^~]^ 4 '" ) § » 4116 f g
S§ fr 4116 j | f 4M6 J @ 5~4H6. 4116 j (|:
* fo 4116 | ft 41 ,6 |g } 41.6 ]& 4//6 | ljj
-E3" -CO- -GE3-' -GO- W"
-4|B?1 j-G&- -^^ -^^'-^[^
**! jpr 9 fr is** I -qj 7400 IS'v^r 1 !
IS a| ^ Lsoo 1 S lsoo icgr-^^
kj Ly 1 ^ ' „, if """^m-.
fr LS "' 4 Ifr S74 H ^I f L$04 ]fr LS373 j
■ " ! JS T2>- 4 ' -fTTV J '
T7i~| || ^LSI32"Tft S47I,
53E0 12 fr ls " : ' 1 ? ■■-*"* j
I Foul ill. FLOPPY I~reHf/>ce Jl
' 1 1 11 11 1 1 iiii ii 1 mi l l m i'
I M HH
E^Hii- EUD IJZHJrCSsCEO r!Fi
fr SW^CHJ IO > LSI53| S^> US74 ^ ^55^ 5
I i ll .t*. rf «e^ J? -S- "*£-
^8IIS9S ~| 9 } LSIO | $ LS74 J } 7406 J
jx- -4§£ , I -nun j. -«■
C i ,$0000000000 |
>8ILS97 18, >"" ,1
1 ^— I jfci 0OODODO000s|
}8ILS95 1 7 } L5I38 | g.'? fr IS32 1 fr LS08 1 ^ 82B7
^ oooooooooo |j;|r t?rzrnrrsri
- pth-
«? LS "' I
r A £^~fe
BOARD, ASSEMBLY INSTRUCTIONS and BIOS $99.00
BOARD and COMPLETE PARTS KIT, 4MHZ $349.00
BOARD and COMPLETE PARTS KIT, 5 MHZ $375.00
COMBINATION SPECIAL: CP/M 2.2 WITH THE CP/M PRIMER by Stephen Murtha, SCULL-TEK
COMPUTER BO ARD AND COMPLETE PAR TS KIT $449.00
^ ^— ^— ■ ?— ^— 1 — . — B | IMI || || III
SCULL-TEK EPROM PROGRAMMER BOARD, assembly instructions with utility programs on floppy
disk $49.00
SCULL-TEK CENTRONIC PRINTER INTERFACE BOARD and assembly instructions $20.00
SCULL-TEK CENTRONIC PRINTER INTERFACE with COMPLETE BOARD PARTS KIT, $25.00
DISK MOTOR CONTROL BOARD and assembly instructions $15.00
f COMPUTER EQUIPMENT
240 W. Market St. Box 589
Somonauk, Illinois 60552
815-498-2111
$2.00 Shipping
Registered Trademark : 'Digital Research
KayPro Column
By David Thompson
JNIon Linear has had its share of
problems with drives. The first problems
they had, included the clock timing
problem (see the fix in the last KayPro
Column), and the Tandon drive's sen-
sitivity to an electrostatic field (the
Cathode Ray Tube).
Drive heat
They fixed the timing and improved
the shielding around the drives, but the
additional shielding appears to have cre-
ated a heat problem, especially on drive
A. I've talked to a number of owners
who have placed small fans behind their
drives to reduce the heat.
I got wind of the problem when I
picked up a new system from a local
dealer and found that it was generating
sector errors on drive A (the same mar-
ginal disk worked just fine in drive B and
in both drives of my older model).
I took the new system back to the deal-
er and we checked the disk in the only
other unit they had in stock. Both drives
of the other unit could read the disk just
fine for a few minutes, but soon its A
drive began to throw up on that one
weak sector. Well now, heat was ob-
viously contributing.
Chuck, the dealer's hardware expert,
had dissected large systems for years but
hadn't dug into a KayPro, so he wel-
comed a chance to jump in.
When I left he was on his way out to
purchase an alien wrench. It turns out,
to remove the drives you just remove the
alien screws from each side of the drive
housing, unplug the cables from the
back of each drive and then pull the
drives forward out the front of the cabi-
net. You don't remove the housing at all.
It wasn't long before Chuck was sur-
rounded by drives, and parts, and cables
Terminators
He found a manufacturing error. On
one system there were terminators on
both drives, on the other KayPro there
wasn't a terminator on either drive.
Well, now!
The terminator (in socket 2F on a Tan-
don drive) is simply a set of pull-up re-
sistors. These resistors make sure the
signal lines are high except when pulled
low by the drivers on the processor
Original System Clock
U66>
74-<fe4-
2_
4
5
MUX
CAS
C6 5b P F
-)| 1 — /vV-
- b7 u
74HC04-
>To§
board. Terminators are installed on the
last drive on the cable to reduce garbage
(ringing) on the line. If there are termina-
tors on more than one drive, it gets diffi-
cult for the system to pull the lines low.
A terminator is supposed to be in-
stalled on drive B but nowhere else, so
both systems were wrong (and there was
a difference of about 3,000 between their
serial numbers). How much the termina-
tor problems contributed to the errors, I
don't know, but it appears that they con-
tributed. We're back to checking for er-
rors, but so far things look better, much
better.
Tandon Alignment
I've gotten calls from individuals and
manufacturers who use Tandon drives
in their products. The consistent theme
of these calls is that about half of the re-
ceived drives don't meet Tandon's own
specs so they have to do a complete
alignment procedure before using them
in new equipment. Disk manufacturers
have been telling me the same thing
about all the drive manufacturers so Tan-
don is not the only one having problems.
After I ordered the OEM manual from
Tandon, I got a call from one of their
marketing types who was concerned
that I might publish something without
letting them read it first. Of course, if I
were selling 24,000 drives a month to
Non Linear, I'd be a little worried about
what got into the press. (And, of course,
my only reason for starting Micro C was
so I could become a corporate mouth-
piece.)
To their credit, Tandon shipped the
manual promptly and it's the best I've
seen. You can get the manual ($25) by
calling 213-993-6644 and telling them
you want to order the OEM manual for
the TM-100-1 drive (manual number
179022-001).
Speeding Things Up
The Kaypro can easily be converted to
4 or 5 MHz with just a few jumpers. The
best thing about this modification is that
the only fast parts needed are the moni-
tor ROM and the CPU. We tried a few
Mostek Z80- As which are only supposed
to be good to 4 MHz but half of them ran
at 5 MHz with no problems. However,
it's really safest to use a Z80B for either 4
or 5 MHz (heat really slows down Z80s
and things get quite warm in the Kay-
Pro).
First do the drive fix described in issue
#11 (Kaypro column). The 4MHz mod
assumes you've made this change and
it's not a bad idea anyway. If you have a
newer system, you'll find that this mod
has already been done (there will be
small wire- jumpers on U87).
CAS and MUXC must be moved down
a pin on the shift register in order for the
DRAM timing to be correct. To do this
you should unplug U66 and bend out
pins 4 and 5 so they won't go back into
the socket. Put U66 back in its socket and
connect the trace that used to go to pin 4
to pin 3, and connect the trace that used
to go to pin 5 to pin 4.
The next step is to bend out pin 4 from
U86. This is the 2.5 Mhz clock. 4 Mhz is
available on pin 6 of U87 and 5 Mhz is
available on pin 5 of U86. The clock of
your choice needs to be brought to the
forward end of R26 (i.e. the end which is
nearest the front of the KayPro).
You can use a single-pole-double-
throw switch to select between 2.5 Mhz
and one of the faster clocks. You can
mount the switch in one of the ventila-
tion slots on the back. The slots are just
the right width for the small toggle va-
riety so you don't need to modify the
cabinet at all.
The early versions of the disk format
and copy programs don't work with the
faster clock (which is probably why some
commercial mods go back to 2.5 MHz for
disk I/O). So you may need to slow
down the system once in a while.
If you want both fast speeds then you
need to use triple pole version or equiva-
lent. The difference between 4 and 5
MHz is not very obvious but the differ-
ence between 4 and 2.5 MHz is like night
24
Micro Cornucopia, Number 12, June 1983
High Speed System Clock
MUX
CAS
U6G
7?'fe4
s
4
5-
<>7
74-hcjH
>To §
and day. Note: You will usually need to
do a hardware reset when you change
speeds since the glitch usually sends the
system out to pasture.
The 4 MHz signal is not a true 50%
high/low waveform. It is 60% high and
40% low because it is generated by
dividing the 20 MHz crystal by 5. This
waveform isn't perfect but it has worked
well on my Big Board for two years now.
Even so, it's a good idea to use a Z80B
part just to be on the safe side. The 5
MHz signal is 50% high and low.
Now that I am used to a fast Kaypro,
the standard 2.5 MHz version seems to
crawl.
Deluxe Size KayPro Schematic
Non Linear has finally produced a
KayPro II schematic on a half-dozen
pages but it's easy to spend a half hour
trying to locate all the places a single sig-
nal goes.
So we have done a single-sheet sche-
matic (wall size) and we're finalizing a
theory of operation that's keyed to the
schematic.
Frank Guthrie did a super job with the
schematic layout and drawing. He or-
ganized the circuit into processor, video,
and I/O sections, and then drew the
whole thing in positive logic. In the proc-
ess, he found uncounted errors in Non
Linear's originals. (We ran out of hands
and toes.)
Anyway, there'll be no more search-
ing the "twisty maze of passages, all dif-
ferent," for the other end of a line.
Dana Cotant, who's just joined Micro
C's technical department (he IS the tech-
nical department), is doing the theory of
operation. He is doing detailed circuit
descriptions keyed to the schematic and
to block diagrams. If you are at all inter-
ested in what's going on inside the Kay-
Pro, this is for you. (See our KayPro ad in
this issue for price.)
KayPro User Disks
Dana and I have been modifying some
of the BB I software so it will run on the
KayPro (and vice versa). There are
enough differences between the KayPro
and the BB monitors that some software
needs futzing to move over. We've also
been making some of software we've re-
ceived for the KayPro available on the BB
I disks. Modem7+ for the BB I is an ex-
ample of this.
The KayPro disks are $12 instead of
$15 because they are cheaper and be-
cause they only hold 191K.
Eight Inch Drive
We've just received an announcement
of the Expander, an 8" floppy interface
for the KayPro. The interface lets you use
an 8" drive as drive C (241K single-den-
sity only). The original 5" drives contin-
ue to work as usual.
The Expander retails for $199.00 (not
including the 8" drive, power supply,
and cabinet). It's available from:
Auburn Computer Center
1265 Grass Valley Hwy
Auburn, CA 95603
916-885-1040
15 Megabytes on a KayPro II
You have to realize that I've never had
15 Megabytes of anything, so having
"drives A and B" with over 7 Meg each is
pretty unreal. The one I have is called the
Delphi and is manufactured by the Com-
puter Collaborative.
I heard about the drive from Wayne
Campeau at Anchor Computing in Seat-
tle. Anchor is already installing these
drives in KayPros and people have really
liked them.
The Winchester itself is a 19.4 Mega-
byte (unformatted) 5.25" unit manufac-
tured by International Memories Inc. It is
shock mounted and includes: thin-film
plated media, a dedicated area for the
heads during shipping, and heavy duty
head positioning. The folks at the Com-
puter Collaborative chose this unit be-
cause they wanted a hard disk that
would be rugged enough to be hauled
around with the KayPro. The drive
comes with a 2-year guarantee.
They added a Data Technology Corp
controller, a power supply, a fancy cabi-
net and made it run.
Installation is trivial. Unplug the Z80,
plug the SASI-like adaptor board into
the Z80 socket and plug the Z80 into the
adaptor. A ribbon cable runs out under
the lid to the Winchester. Then you boot
up their version of CP/M and you are on
your way.
The present manual is simply step-by-
step instructions on installation (along
with suggestions of things to check if it
doesn't come up) followed by the OEM
manuals for the controller and the Win-
chester. I'd like to see them add a com-
mented source of the CBIOS. (I'm not
your average KayPro owner.)
So far it has run flawlessly and has
made the KayPro really super for text
editing and software development. You
still have access to the original KayPro
drives as C and D for backing up data.
If you boot up your original KayPro
system disk, the 5" drives are back to be-
ing A and B and the system runs as
though it had never heard of the Delphi.
I have a preliminary version of the
Delphi. They are working on cutting the
costs of the cabinet, controller, and pow-
er supply by designing their own. If they
succeed, then they should be able to get
the price of the unit under $2,000 and
still maintain their high quality. (It looks
like they might just pull it off.) They are
also finishing up a version for the BB I.
The Delphi Winchester drive is avail-
able from:
Computer Collaborative Inc
6273 19th Ave NE
Seattle, WA 98115
206-524-5369
For Hardware fanatics
Those of you who want to get much
more intimate with your KayPro (maybe
"friendly" is a better word) — and much
more familiar with inner workings of
computers in general — should consider
building a Big Board.
You can order the documentation on
the Big Board for just $5.00 which in-
cludes schematics, construction instruc-
tions (step by step) and a good descrip-
tion of the system.
Micro Cornucopia, Number 12, June 1983
25
GET IN THE FAST LANE
WITHOUT BURNING YOUR WALLET
on a
U.S. ROBOTICS
1200 BAUD MODEM
Product: Features: Price: List 1-4 5+mix
Micro Link 1200: 1200 baud $449. .$320. .$305
Auto Link 1200: 1200 baud, auto answer $499. .$350. .$335
Auto Link 212A: 1200/300 baud, auto answer $549. .$390. .$370
Auto Dial 212A: 1200/300 baud, auto answer/dial. .$599. .$425. .$405
Password: Coat-pocketable Auto Dial 212A. . .$449. .$350. .$325
S-100: Auto Dial 212A on an S-100 card. .$449. .$350. .$325
Latest Technology-
-Fewer Parts Two Year Warranty
All units are direct connect full duplex 212A, with analog selftest,
DTR override and 9/10 bits/char. The first four have two RJ11C jacks,
status LED's and a metal case. Password has a smaller plastic case.
The last three are software compatible with the Hayes Smartmodems.
Cash price includes U. S. shipping; Visa/MC add 4%, COD add $6.00.
(&§)
Uidener Consulting
270 SE 15th #5
Hillsboro, OR 97123
(503) 648-0363
(Bringing Up the BB II continued)
with the higher horizontal rate with no
internal modifications. The CRT pro-
gramming in ROM is very bad though,
horizontal sync pulses actually cut off
the rightmost 6 or 7 characters. In the
manual there is a short series of port
plugs that will change the display (no ex-
planation of what's what though). On
my NEC monitor I get a slightly better
display by changing the 6f to 73 and the
18 to 19.
Conclusion
Once it has all gotten working, I'm
very happy with my BB II. If I had it to do
over, I would buy the thing assembled. I
do feel that the bad documentation is at
least partly responsible for the troubles I
had. The vastly increased speed, double
density, and 7X9 display are great im-
provements.
A UNIVERSAL TRANSLATOR?
Possibly. The XLT macro processor is a powerful utility
for translating from one language to another or exten-
ding the usefulness of a current language.
To translate, a file of definitions is read by XLT and com-
pared to the input text. A match causes the input text to
be replaced with the definition's contents.
XLT allows up to ten arguments in a definition,
arguments containing spaces or tabs, incremen-
ting/decrementing strings, a stack, and conditional text
replacement.
Included are definitions for translating Z80 to 8080
mnemonics and vice-versa, and definitions to imple-
ment CSAL, a C-structured assembly language. This
allows code like add a, (hi) to be written as a + = *hl.
XLT costs 29.95 plus 5.00 shipping and handling. For CP/M
2.2 8" single density Z80 disk systems.
Send check or money order to:
L.A. Software
6708 Melrose
Los Angeles
California 90038
213/932-0817
California residents add sales tax
CP/M is a trademark of Digital Research
26
Micro Cornucopia, Number 12, June 1983
WENT JDS
The following folks are reaching
you for only 20 cents per word. If
you would like to reach the same
audience, send your words and 20
cents for each to Micro Cornucopia.
Xerox
Xerox 820 Board, Power Supply, 12"
green CRT, Microswitch keyboard and
cable, all schematics, ROM source. No
enclosures. $450. Dual 8" Shugarts, en-
closure, all cables, Power supplies, fan,
circuit breakers, filters, room for 820 or
Big Board. $375. Spare 820, Power Sup-
ply, $285.
Harold Choate
415-641-5696
3360 Data Point terminals.
New condition. Only two available.
New keyboard with number pad
and special function keys. New
cases. RS232 compatible center
port. Maintenance manual. $300
each or $450 for both.
Bill Gardner
#4 Brookforest Court
Arden NC, 28704
704-684-4809
Contact
Want to contact other Big Board
owners in my area. Have BB with
Software Publisher's DD, 4 MHz,
and Applied I interface. Also BB II.
Want to share technical and pro-
gramming information.
Jim Holzman
Mountain TV Inc
2727 S College
Ft Collins CO 80525
303-226-6973
Keyboard
IBM PC-like keyboard from Key-
tronics for the Big Board. Uses serial
interface described in Micro C #10.
Connection via modular phone ca-
ble. Price $175, plus shipping. Call
for details evenings, 619-448-2527.
r
Especially for the KayPro
From Micro Cornucopia
Kay Pro Schematic
This is a complete schematic of the KayPro, logically laid out on a single D-size
sheet — no more searching to see where a signal goes or comes from. Even the
unused gates are shown.
It's drawn in positive logic, lines are labeled, and we've tossed in hours and
hours of careful checking for accuracy. Then we added a Theory of Operation
that's keyed to the schematic.
KayPro Schematic Package $20.00
KAYPRO II USERS DISKS
The following are full disks of software assembled specifically for the KayPro II.
Each program has a .DOC (documentation) file and many come with source.
KayPro Disk Kl - Modem software
This disk is absolutely priceless if you will be using a
modem to communicate with bulletin boards,
other micros or mainframes.
MODEMPAT. COM: Menu selection of baud
rate, bits/character, stop bits, & parity for serial
port.
MODEM7.COM: Very popular MODEM7
configured for KayPro.
MODEM7+.COM: This is MODEM7 &
MODEMPAT combined - you can communicate
with anything!
KMDM795.COM: Super-version of MODEM7 set
up for KayPro.
TERM.MAC: Commented disassembly of the
TERM program you get with your KayPro so you
can configure it for any interface.
SQ/USQ.COM: Programs to squeeze and
unsqueeze files for faster transfer.
KayPro Disk K2 - Utilities
Really oodles of spiffy little (and big) programs to
help you get full use of your KayPro. This 191 K is a
goldmine of problem solvers.
ZESOURCE.COM: A true Zilog format
disassembler for 8080 and Z80 object (.COM) files.
Now you can turn .COM files into .MAC files.
UNERA.COM: Simply enter' 'UNERA" followed
by the name of the file you just erased and presto,
the erased file is back! A lifesaver.
F1NDBD54.COM: Checks an entire disk, reports
bad sectors, and then creates a special file
containing those sectors. You save a bundle on
disks.
CAT2: This is a group of programs which create
and maintain a single directory of all the programs
you have on all your disks. Even keeps track of
which programs are backed up and which aren't.
UNSPOOL.COM: Use your KayPro II and print
files at the same time. Doesn't slow down system
response!
Plus many more:
DUMPX, DU-77, COMPARE, SUPERSUB,
FORMFEED, DIR-DUMP,... and all have
documentation on disk.
KayPro II Users Disks . . . $12.00 each ppd.
KayPro Disk K3 - Games
Note: this disk is sent in a plain, unmarked box to
protect you and your KayPro from video game
freaks.
PACMAN.COM: Despite the KayPro's lack of
graphics, this one looks and plays amazingly like
the real thing! Keep it hidden.
ZCHESS.COM: Chess with a 1-6 level look ahead.
OTHELLO.COM: You learn it in minutes, master
it in years.
BIO.COM: Generates custom graphic biorhythm
charts.
MM.COM: Master Mind.
WUMPUS.COM: The classic wumpus hunter's
game. Plus many more!
KayPro Disk K4 - Adventure
This disk contains one 191K game, Adventure.
ADV.COM: This is the latest, greatest, most
cussed adventure ever devised by half-mortals. This
is the 550-point version so the cave is greatly
expanded and the creatures are much smarter.
KayPro Disk K5 - MX-80 Graphics
A complete MX-80 graphics package including
example files.
KayPro Disk K6
Word Processing Utilities
A powerful line oriented text editor that looks like
Unix's EX, plus a scad of text utilities written in C
which handles pretty printing, shortening a file,
multiple space output, add tabs, remove trailing
whitespace, and more.
KayPro Disk K7
Small C Version 2 Compiler
This is a greatly extended version of Ron Cain's
original C compiler. Version 2 includes many more
expressions, a substantially extended library, and
much more. This disk contains the compiler,
documentation, and library.
KayPro Disk K8 - Small C Version 2 Source
More of Small C Version 2. This disk contains the
compiler, documentation, and the source of Small C
version 2. It compiles itself.
Micro Cornucopia
P.O. Box 223
Bend, OR 97709
(503) 382-8048
Micro Cornucopia, Number 12, June 1983
27
dBASE II
Review by Duane A. Huseby
1807 Andrea
Pasadena TX 77502
1 his article is for those of you who are
planning to purchase a database man-
agement language, (in particular dBase
II).
dBASE II is a relational database man-
agement system written in assembly lan-
guage for the 8080, 8085, and Z80 micro-
processor systems, and it runs under
CP/M. It is a product of Ashton-Tate,
Los Angeles, Ca. and sells for anywhere
from $399 to $700.
According to a recent survey by Soft-
ware News, nearly 40% of the respon-
dents using a database management sys-
tem were using dBASE II. The second
most popular database system was used
by only 8% of this group. Thirty three
percent of the respondents who were
considering the purchase of a database
management system in 1983 were plan-
ning to purchase dBASE II. All this indi-
cates the popularity of dBASE II.
My first exposure to dBASE II came af-
ter I had done some work with systems
like CALCSTAR and DATASTAR. I
found them to be good for many applica-
tions; however, I soon discovered that
these systems had limitations that made
some of my applications very difficult or
impossible.
Canned applications programs rarely
meet a buyer's needs. So, a programmer
has to modify the software (if it's possi-
ble to get the source.) dBASE II, on the
other hand, has all of the functions I
need.
Two Levels
The first is a basic level of capability
that the first time user will encounter.
This level is similiar to the spreadsheet
systems and is menu driven. The cre-
ation of the database structure is straight
forward and easy to do. The data entry
facilities are also easy to use unless your
database structure exceeds a dozen or so
fields.
If you are working with many fields
you will need to carefully organize the
data entry. Otherwise dBASE II's report
generator provides quick screen genera-
tion.
Secondly, dBASE II is a complete da-
tabase handling language that is ex-
tremely versatile and powerful. With
this language you have complete control
over data entry, manipulation, and re-
porting.
The capability to generate your own
unique application program (command
file) with dBASE II makes it a very pow-
erful system.
Expertise Required
dBASE II is not for just anyone (con-
trary to the claims made in the advertise-
ments). To fully implement the capabili-
ties of dBASE II, programming expertise
is required.
Several books are now on the market
to help the user implement dBASE II.
Fox and Geller is marketing programs
advertised to do the programming for
you and to debug the ones you write.
The University of Houston has a contin-
uing education class on dBASE II (costs
$300). Plus there are a number of other
programming aids not on the market.
No graphics
The most serious feature lacking in
dBASE II is graphics. Many of the appli-
cations for dBASE II are suited to the en-
hancement of reports that include bar
charts, pie charts, line graphs, and com-
bination piebar charts as produced by
dGRAPH from Fox and Geller. I don't
have dGRAPH yet; but, I intend to get it
soon.
dBase II, Another View
By David Thompson
Duane has touched on the primary
strength and problems of dBASE II. The
strength is its versatility, with just a few
critical limitations (the limits of 64 varia-
bles and 32 fields are the two primary
ones).
dBASE II forces you to write very
structured code which is really great,
plus, adding a field, or a new heading, or
whatever is a real joy.
However,
The primary reason dBASE II needs all
those aids is that it is a cluge. It has de-
veloped over many years, with a hodge
podge of new commands. Each com-
mand has its own peculiarities.
Some commands work with numeric
data, others with character data or logi-
cal data, and still others work with two
or three of the above. In many cases it is
not immediately obvious which works
with which.
Let's say you store characters in a vari-
able.
STORE "NEWNAME" TO TEMP
Now you can use TEMP in place of the
character string "NEWNAME".
STORE TEMP TO ANOTHERTEMP
Now ANOTHERTEMP contains the
characters "NEWNAME".
However, if you wanted to call a file
from the disk and you said:
USE TEMP
You'd get the file named "TEMP"
rather than the file named "NEW-
NAME". To use TEMP as a variable with
the USE command, you'd have to say:
USE &TEMP
Which turns TEMP into a macro. This
is just the tip of a very inconsistent ice-
berg. For instance, if you wanted to
check to see if a record has been deleted
you'd say:
IP
. then do something
And if you wanted to see if a record
had NOT been deleted you'd probably
say:
If .NOT. *
.... then do something
Unfortunately this sends my copy into
never-never land. The .NOT. operator is
supposed to work with any logical (true/
false) statement or value, but it will not
work with the "*" operator. There is ob-
viously something special about the way
the "*" was created but with all these
special cases the whole thing is impossi-
ble to document.
Ninety percent of the problems I have
had with dBASE II have been due to
these little surprises. I've even had two
identical lines of code, act in two com-
pletely different ways even though both
lines were in the same routine. Try de-
bugging that! I went nuts the first time it
happened! Now I'm a little more wary.
Since some dBASE commands are
sensitive to data types, you'd think that
you could specify the data type of the
variables, so you'd have some error
checking. You can't. Pascal with its rigid
data structure is a refreshing improve-
ment in this regard.
(continued on next page)
28
Micro Cornucopia, Number 12, June 1983
Superfile
Review by Rex Buddenberg
1910 Ash St
North Bend, OR 97459
Superfile is an electronic card file
style of program. It can perform the kind
of chore that used to be done with a big
tray of 3 x 5 cards with keywords and
pointers to the source files all manually
alphabetized.
The current edition of Superfile is
published by FYI, Inc., PO Box 10998
#615, Austin, TX 78766. The predeces-
sor program was published by a com-
pany called Island Cybernetics, which
apparently no longer exists (an order
sent to their old address came back to me
a couple months later — from the dead
letter office).
When I called them, I asked why they
were selling the same program at several
times the price that Island Cybernetics
had charged. According to the gentle-
man, the program was rewritten, an
auxiliary program was added and a com-
prehensive manual was added. At $200,
I felt a 30-day trial was justified. I still
have the program. While it certainly has
limitations, I have one good use fully im-
plemented now, and more possibilities
as time goes on. For me, the program is
worth the money.
Documentation.
The CPM-80 manuals are probably the
best examples of manuals written by the
people who wrote the software. They
don't have the perspective to write so the
rest of us can understand. Additionally,
they are earning their money being ge-
(dBase II, Another View continued)
ANewdBASE?
Ashton-Tate is circulating beta-test
copies of a totally new data-base lan-
guage. I hope they've kept the struc-
tured language approach and the easy to
read command style, but I hope they've
started over from scratch on the inside.
I have yet to see anything else on the
market that comes as close to meeting
my need for a versatile, powerful, quick
to write, easy to read, database handling
language as dBASE II. That is why
dBASE II is so popular. But when some-
thing better does come along, I'm going
to be first in line!
nius programmers, not writers. (CPM-
86 manuals are considerably better, by
the way.)
Superfile is one of the exceptions to
the rule. The manual is easy to read and
really helps you get the program up, in-
stalled, and working. It has an index.
With that and the separator tabs be-
tween chapters, I have had no trouble
finding information when I need it.
Superfile has an installation program
so you can tailor it to your terminal. It
supports both my Hazeltine terminal
and my Big Board video system (ADM-
3), so installation is a cinch.
Once you have gotten this far, you put
Superfile aside for the moment and get
out your favorite text editor (my Word-
Star works fine and Superfile handles
the D)ocument mode OK). Text files are
created with the delimiters specified in
the manual; this is the source informa-
tion in your data base. A rolodex type of
file entry follows with comments in the
brackets.
*C [this tells the system that this is
the Commencement of the entry]
Thompson/ Dave
Micro Cornucopia [the / will reverse
P.O. Box 223 names on command
Bend, OR 97709 for mailing labels]
* [this * optionally divides the source
text into two parts, useful for
mailing label applications... ]
Dave edits Micro C and is knowledgable about
Big Boards. His phone is 503-382-8048.
*K [this ends the free form text and
starts the list of K)ey words]
THOMPSON / BIG BOARD / EDITOR / BEND
*E [this EJnds an entry. The next
one starts with a new *C]
There is no theoretical limit to the
length of the entry. 250 keywords can be
accommodated per entry.
Superfile can accommodate up to 10
files of entries like the above and that
number can be expanded by using am-
biguous file names. The number of en-
tries is essentially unlimited, as the
source files can reside on any number of
disks. The number of keywords is lim-
ited by memory — 800 unique keywords
is the practical limit on a Big Board-sized
system.
Once you have your files all made up,
enter Superfile and create the keyword
index. The system is menu driven at this
point and is fairly easy to run. It will scan
each source file for the keywords and
create two new files containing a diction-
ary and an index. Then back to the
menu — keywords can be displayed in
alphabetical order. Partial matches can
be searched for as well.
Then you can search the data base it-
self by specifying any number of key-
words that the system will separate, on
your command with the the logical oper-
ators AND, OR or NOT. Then the sys-
tem goes out to the source files and ex-
tracts those entries that meet the
keyword search criteria. They can be dis-
played, printed, or routed to a disk file.
Abbreviated entries (everything above
the '*') can be output if your application
is, for instance, a mailing list. There are a
number of options, all fairly well ex-
plained in the manual.
The system will prompt you to change
disks if your data files are on multiple
disks. As the system is disk based, its
speed is limited to disk rates. In this re-
spect, a hard disk ought to really take off
and fly.
An Application
My current application contains mis-
cellaneous data on a large number of
boats and people. Each entry averages
around a half dozen lines and 5 key-
words. I am currently running 3 data
files of 5-10 pages and will probably dou-
ble that within a month. I am well over a
hundred keywords. Thus far, the system
has performed well. The one awkward
aspect is that any change in any of the
text files — updated data — requires rein-
dexing the entire system. This inhibits
interactive updating of the data base, but
with a little organization, you can live
with it.
Unlike data base systems written in
BASIC, Pascal or any of the specialized
data base languages such as DBASE, or
MUMPS, the Superfile system uses vari-
able length records. Your disk space is
not sucked up by vacant space from un-
filled or unused fields.
Support
At this writing, I cannot comment on
FYI's responsiveness toward repairing
bugs or answering customer questions; I
haven't found any serious bugs and the
manual is thorough enough that I have
been able to dope things out for myself.
Conclusion
If you need this kind of data system
and want to get it up and running with
little fuss, then I can recommend Super-
file as a program that works.
Superfile
$200.00
FYI Inc.
PO Box 10998 #615
Austin, Tx 78766
800-532-5033 Q E3 □
Micro Cornucopia, Number 12, June 1983
29
in
HUNTINGTON DATA SYSTEMS
Winchester Interface
for Big Board I
each $70
Features are:
• Interfaces easily to Western Digital's WD1002 Winchester disk controller for 2.5 MHz
Big Board I. Simply remove Z80 processor, insert daughter card, place Z80 on daughter
card, attach Winchester controller cable and Winchester controller.
• Format utility and install program for TM502 (source included)
• Schematic and all documentation
Coming soon:
Hard disk sub-system with sample BIOS
OEM/Dealers inquiries welcome
Terms: Add $2.00 domestic shipping/handling, $15.00 overseas. California residents add 6%. US funds only.
Order by check or money order. 30 day money back guarantee. Allow 4-6 weeks for delivery.
307 6th Street, Huntington Beach, California 92648 • (714) 960-7498
(Editorial continued)
UNIX
The word I hear is that MicroSoft is
working on a UNIX-like operating sys-
tem for the 8088/86.
It appears the vrs 3.0 will have some
UNIX facilities (I don't know which ones
yet) and hooks for many more. Vrs 4.0
will be a more complete (whatever that
means) UNIX environment. This is quite
interesting since the UNIX-like operat-
ing systems have been running on PDP-
11s and 68000s. Full-blown UNIX takes
up a gargantuan amount of RAM (256K
or more) so the MS folks may not be
keeping everything in RAM, who
knows. Anyway, by writing their own
version of UNIX, MicroSoft will avoid
paying huge per-copy royalties to Bell
Labs.
Meanwhile Bell Labs has been scurry-
ing around signing contracts with all the
chip manufacturers. They want to sup-
ply real UNIX for all the 16-bit process-
ors. Bill Randle brought back these tid-
bits from the UNIX convention in SF.
David Thompson
Editor & Publisher
TheSOG
We're making final plans for the
Semi Official Get-Together (SOG) and
we need some idea of who's planning to
come. So if you're even thinking of com-
ing, let us know as soon as possible.
Whitewater Preliminary
We'll kick off the SOG with a Friday
afternoon (July 29) soak and feed. You
can choose the excitement of rafting
some of the best white water in the West,
or you can put on your sunglasses and
broad-rimmed hat and relax in the easy
solitude of the slack water trip. Who
knows what wildlife you'll see while ly-
ing on your back with your eyes closed.
After the float trips everyone will
gather for a real western cookout com-
plete with some excellent guitar music.
The rafting, dinner, and transporta-
tion are being handled by Sun Country
Tours and they've really come up with
something spectacular for the SOG.
If you want to participate in the white
or slack water rafting (plus the dinner)
send $25.00 (per person) by July 7. (Or
you can call us by that date and put it on
your charge card.) Busses will pick us up
and take us out to the river at 3 pm sharp.
White water rafters should bring a
change of clothing, (dinner only, $10).
Warning, anyone caught discussing
computers during the white water run
will be tied to a rope and tossed over-
board. (The trout get really hungry in
these icy waters and trolling is legal.)
The Main Event
Of course, Saturday and Sunday (July
30 and 31) are the official SOG days.
There will be folks bringing new S ASI
interfaces for the BB I, Otto will be here
with the Slicer (80186 board), and we'll
have hard disk designers, consultants,
plus lots of other very special folk. (Like
you.)
Potluck
All of the Saturday and Sunday events
will take place right here at Micro C (1259
NW Iowa, Bend). The only charge for at-
tending the SOG is food. Please bring
potluck goodies (whatever is practical).
That way we can munch our way
through just about any computer prob-
lem or presentation imaginable.
30
Micro Cornucopia, Number 12, June 1983
WordStar, Volumes of Hints
By John S.Allen
1 his article is in two parts. First
there's a review of two useful books on
Wordstar. This is followed by some spe-
cial tips that will make this editor easier
to live with.
Books
Ettlin, Walter A.: WordStar Made Easy.
Berkeley, Osborne/McGraw-Hill. 128
pp., illustrated.
Naiman, Arthur: Introduction to Word-
Star. Berkeley, Paris, Dusseldorf; Sybex
Books. 202 pp., illustrated.
WordStar has a well-deserved reputa-
tion as an easy word processing program
to learn and use, with its on-screen help
menus and formatting; yet its manual,
like those of many other programs, is
more useful as a reference than as a
learning guide. These two books attempt
in rather different ways to fill the gap.
WordStar Made Easy
The Osborne book is a carefully
graded text with numerous exercises;
the title WordStar Made Easy is honest. It
is aimed mostly at secretaries or high
school business students, and contains
appropriate writing projects for this
group. The presentation is quite dry.
I began learning WordStar on this
book, and after three or four days I found
that it left out a substantial number of
WordStar's commands, including many
I was ready to use and which speeded
my editing considerably. Yet this book is
strong on formatting — in keeping with
its business orientation.
Introduction to Wordstar
This book, on the other hand, includes
almost all the commands. It describes
not only WordStar but also its compan-
ion programs MailMerge and SpellStar.
This book is aimed more at people
writing academic papers and books. In-
troduction to WordStar includes graded
exercises too, and is a good learning text,
but it's also a decent guide to the capabil-
ities of these programs. The book is fun
to read: the text and exercises are laced
with humor, and there are some pleas-
ant, silly cartoons in addition to the
down- to-business illustrations.
In General
You'll probably find yourself not do-
40 Rugg Road
Allston, MA 02134
ing the exercises in either book, beyond
the first one or two, unless there's noth-
ing you need to write — but then why
would you need WordStar? I found it
possible to learn WordStar easily enough
by looking up the commands as I worked
on my own writing projects.
User-developed hints can be an in-
valuable supplement to the program's
manual. In non-formatting subjects, the
Naiman book has more such hints than
the Osborne book so I would recom-
mend this book first to Micro Cornuco-
pia readers.
Wordstar Tricks
As you get more familiar with Word-
Star, you will discover many tricks to
make it work more efficiently.
For example, WordStar spends most
of its time updating the onscreen text
display. However, the display takes sec-
ond priority to input from the keyboard.
When using repeated formatting or
search and replace commands, a key-
board auto-repeat can make WordStar
blaze through many paragraphs of text,
even though WordStar's own repeat fea-
ture would take minutes to execute the
same thing. The slower WordStar repeat
feature is, however, very useful if you
have to proofread as you go.
Hints
1. Get rid of the main help menu as
soon as you don't need it — after two or
three days. It uses one-third of the
screen, it really limits the amount of text
you see at one time. Also, upward scroll-
ing becomes much faster when you dis-
card the menu.
2. Type Control- O H at the beginning
of a writing or editing session to turn off
Wordstar's hyphen-help feature. This
feature greatly slows down formatting; it
stops wherever you might want to insert
a hyphen, instead of formatting a whole
paragraph at once.
If you'll be using search strings of
more than one word, turn off the auto-
justification feature so extra spaces be-
tween words don't confuse the search
subroutine. Use these functions, if you
wish, only for the final formatting of a
file after you're done editing.
3. If you know what command you
want, there is usually no need to wait for
a secondary help menu or the prompt to
appear on the screen before finishing the
sequence of keystrokes for the com-
mand. Just keep typing. The command
will execute anyway — and much faster.
In a few cases, the command will not ex-
ecute, but no serious harm will be done.
4. WordStar likes to move forward
rather than backward in the text (it being
more forward than backward). This is
true in many ways.
For example, WordStar has no left
word delete command, and scrolling
backwards is much slower than scrolling
forwards (if you remove the main help
menu).
So, as you type and edit, let errors and
odd-length lines stand, then move the
cursor back to the beginning of your file
and proofread as you read through to the
end. After all changes have been made,
then format the paragraphs, again going
from beginning to end.
5. The computer isn't a typewriter
with typebars that jam. Assuming that
your keyboard has n-key rollover, you
can press two keys at once to execute two
commands: for example cntl-Z and X for
an upwards line scroll while keeping the
cursor at the same place on the screen.
6. Print function toggles such as Con-
trol-P B for boldface can be inserted into
search strings by leaving off the P. For
example, type just Control-B. In other
words, type them as they appear on the
screen. This lets you check that you've
terminated these commands so long
stretches of your printout don't inadver-
tently end up in boldface or other special
print styles.
The exception is Control-P S for un-
derlining, which has another, special
meaning in a search string. However,
Control-S can be escaped into a replace
string (see the WordStar manual for de-
tails). So use another symbol for under-
lining, check it, and then replace it with
Control-S. Control-N in a search string
will find the return character at the end
of each line— useful in changing be-
tween single and double spacing.
7. WordStar has many editing com-
mands using the control key in combina-
tion with other keys at the left side of the
keyboard.
Since most keyboards are supplied
with a control key only at the left side,
these commands require you to move
your right hand to the left, out of touch-
typing position. When I enabled the op-
tional auto-repeat on my Maxi-Switch
keyboard, the repeat key at the lower
right was disabled; so I hard- wire paral-
leled it with the control key. Instant
speedup! BBS
Micro Cornucopia, Number 12, June 1983
31
TWO WAYS TO ENHANCE YOUR BIGBOARD'S CAPABILITIES:
#1 DUAL DENSITY #2 CO-POWER-88
HARDWARE
• A daughter board that plugs into the 1771
socket. With this board the system employs
automatic density select.
• You can run 5 1 /4" drives by following the
simple steps outlined in the manual. A 50-34
pin disk drive adapter board is included with
5 1 /4" orders.
SOFTWARE
• Choose 2.5 MHz or 4 MHz software, for 5 1 /4"
or 8" drives. Also select software for single
or for double-sided drives.
• 8" users have up to 674k bytes of user storage
per disk (per side). 5 1 /4" users have up to 185k
bytes of user storage per disk (per side).
• Dual Density software includes:
- DDINIT. COM:.a double density disk initializa-
tion and verification program. Options:
- 8 formats.
- Format an entire disk or just system tracks.
- Selection of sector skew.
- Option to verify.
- Choice of drive to be used.
- Has a default which chooses the format that
gives the most disk space.
- DDSYSGEN. COM: a double density sysgen
program with three options:
1) Read double density system tracks into
memory.
2) Write double density system tracks from
memory to a double density disk.
3) Generate a double density system disk
complete with printer driver. This process
uses your single density CP/M disk, the
SWP distribution disk, and a blank disk.
Five serial printer drivers and a parallel
driver are included, and there is an option
to install a user-written driver. All drivers
can be modified.
- DDCOPY. COM: a double density copy
program that copies all files from a source
disk to a destination disk.
• Being a dual density system, the computer
automatically distinguishes between single
and double density disks. Densities may be
mixed.
SPGC/AL
HARDWARE
• A powerful 16-bit 8088 coprocessor.
• Available in three RAM sizes: 64k, 128k
and 256k.
• Consists of two main boards, the Z80 adapter
board and the main processor board. The Z80
adapter board plugs into the Bigboard Z80
socket. A ribbon cable connects the Z80
adapter board to the main processor board.
The main processor board holds 128k of RAM.
An additional 128k RAM is available using an
add-on RAM card.
SOFTWARE
• Runs CP/M-86 or MSDOS. CP/M-86 is
compatible with CP/M 2.2. Its command
files have .CMD as the extent, making it
possible for CP/M-86 and CP/M 2.2 files
to co-exist on the same disk (CP/M 2.2
command files have .COM as the extent).
MSDOS is the operating system of the
IBM-PC. IBM-PC MSDOS programs are
compatible with the CO-POWER-88 MSDOS.
• Simple commands move the user between
the Z80|CP/M2.2 system and the 8088|CP/M-86,
MSDOS system.
• The RAM of CO-POWER-88 can be used as a
"memory" ("M") disk drive for CP/M 2.2.
Programs can be compiled in M, then saved
to disk, decreasing job time by avoiding
disk access time.
PRICING:
*64k CO-POWER-88 $ 699.95
*1 28k CO-POWER-88 799.95
256k CO-POWER-88 . . . 1 049.95
256k CO-POWER-88 with CP/M-86 . . . 1250.00
CP/M-86 for CO-POWER-88 250.00
MSDOS for CO-POWER-88 —CALL —
*Add-on RAM cards are available. Call.
+CO-POWER-88 is available for nearly all
Z80 or 8080 computers using CP/M 2.2.
CP/M and CP/M-86 are trademarks of Digital Research, Inc. MSDOS is a trademark of
Microsoft. IBM-PC is a trademark of IBM. Z-80 is a trademark of Zilog.
SOFTWARE PUBLISHERS, INC.
2500 E. Randol Mill Rd., Suite 125 Arlington, TX 76011 (817) 469-1181
Microwyl, a Line Editor
Review by David Thompson
I haven't used a line editor for over a
year now (ed.com on the BB and EX on a
PDP-11) and using this type of editor
definitely feels strange. However, if I
had to go back to a line editor, I definitely
would pick the Microwyl over the editor
on the "11" and over the impossible line
editor which comes with CP/M.
Microwyl is definitely easier to learn
and use than either of the others. The
manual is not fancy but it is clear and
straightforward, as is the editor.
As with any line editor, you have to
select a line by number and list it by typ-
ing something like "LIST 100." This
would list the 10th line in the file because
the line numbers normally increment by
10's (like BASIC).
Weaknesses
Microwyl requires you to have an
available line number for inserting a new
line. So, you can insert up to 9 new lines
between each old line before having to
renumber the file (unless you set a larger
line number step) . I find that to be a bit of
a handicap because it forces me to keep
track of how many lines I've already in-
serted. Also, the line number and mode
indication take up half a dozen columns
on the left hand side of the screen. When
I was using the 132-column terminal on
the PDP-11, I didn't miss the wasted
space but with the 80-column display it
means that lines can't get much longer
than 70 characters before they get split
by the PFM monitor.
Microwyl does not automatically re-
name the old file as .bak when you
"SAVE" or "RESAVE" the file you are
working on. You have the option of re-
naming the old file while you are in the
editor or giving your newly edited file a
new filename when saving it.
Finally, it is still a line editor. You still
have to specify line numbers or ranges
rather than simply scrolling or stepping
by screen through a file. When I was us-
ing only line editors, that didn't seem to
be too much of a problem. Plus, this edi-
tor makes looking through the file rela-
tively painless — but after using a screen
peflSys
Are you signing your name with an X
because spelling doesn't come easily?
Then you need SpellSys!
With this full-feature package, you can
write prose with the pros. SpellSys fea-
tures a 42,000 word dictionary and all
the bells and whistles of those expensive
checkers— including rhyming, crossword
search, letter unscrambling, etc.
SpellSys is made up of a group of indiv-
idual programs which you can use toge-
ther or separately. With SpellSys you can
setup and maintain your own custom
dictionary (in addition to the main dic-
tionary). These are real dictionaries, not
hash tables, so you edit or remove words
from your own dictionary at will.
IT'S EASY TO USE!
Just enter "SPELLSYS", select which
disks you'll use, and file you're checking.
Then SpellSys takes over. Everything is
self-prompting— so sit back and relax.
Word Review Operations
C . . show Context in file
L . . Lookup word in dictionary
M . . Misspelled (correct file to )
D . . put4n user Dictionary
I . . Ignore
N . . Next word
P . . Previous word
E . . Exit review
? . . (or any other key) displays menu
ORDER AT NO RISK!
Check out the manual and if you don't
agree that SpellSys is a super bargain,
just return the package with the disk un-
opened within 30 days and we'll refund
your money.
SPELLSYS $29.95 ppd. in US & Can
Other Foreign add $5.00
Requires 32K CP/M*
Formats: 8" SS SD or
5" SS DD for KayPro, Xerox,
Osborne, Morrow, Superbrain.
*CP/M is a trademark of Digital Research
P.O. Box 65 Bend, OR 97709
MC (503) 382-8048 Visa
Micro Cornucopia, Number 12, June 1983
editor for a while it definitely feels cum-
bersome to go back. It takes more key-
strokes to move about and edit a file us-
ing a line editor than most screen
editors.
Strengths
Editing a line with Microwyl is almost
as easy as editing with a full screen edi-
tor. When you are on a line in "Modify"
mode you can use the space bar and the
backspace key to move your cursor. You
then hit "I" for insertion, "R" for replace
(typeover), or "D" to delete.
Files do not appear to contain any ex-
tra garbage — so assemblers, compilers,
and other editors should have no trouble
with the files. Line numbers are dis-
played during editing only and are not
stored with the text.
Again the editor is very easy to learn,
easier than most screen editors and infi-
nitely easier than ed.com.
It has a fast, powerful "CHANGE"
command. You can change anything to
just about anything and it will show you
the changes as they are being done. You
can specify which column(s) you want
changed in which lines, plus more. You
cannot, however, change a carriage re-
turn to a space in order to patch together
short lines.
You can insert control characters (just
about anything except carriage return
and tab) into a line just by typing them
in. No muss, no fuss.
Conclusion.
If you are still using ed.com and want
something much easier that isn't going
to cost you an arm and a leg, then this is
definitely an option. In fact, the change
command is so powerful and easy to use,
that you could probably get $29. 95 worth
out of this command alone if your screen
editor is somewhat limited in that area.
Plus, if you need to insert control charac-
ters for your printer, or whatever, Micro-
wyl makes it trivial.
However, for standard text entry and
editing, I'm really convinced that there is
no substitute for an editor with full
screen editing. Micro-WYL - $29.95
Overbeek Enterprises
P.O. Box 726
Elgin, IL 60120
■ ■ ■
33
XEROX
820
CABLES
XEROX 820 cable harness
assemblies for:
J 5 - Power
J6 - Monitor Power
J7 - Monitor Signal
- Ground Connector
All cables have Xerox speci-
fied AmP connectors on one
end. The other end is open.
Schematics of cables
included
$20.00 per set
ppd. U.S.
10 - DEC VT 20's
Video screen
Basic ASCII keyboard
Set up for 820-1 boards
Includes power supply
$250 each + shipping (30 lbs.)
FULL SET
XEROX 820
SCHEMATICS
$5.00
NUF Computer Co., Inc.
99 Pennsylvania Ave.
Nexton, MA 02164
(617)964-8041
VISA & MASTERCARD
ACCEPTED
A Two-Faced Drive for the BB I
By Craig A Bergman
Xhe following program will let you
use a double sided drive as a single drive
rather than as two drives. Thus, a double
sided drive containing a double sided
disk will give you 494K. With a single
sided disk you get the standard 241K. A
simple cntl-C allows you to change back
and forth between types of disk.
You need a. double-sided drive with a
negative logic side select line. Jumper
the Big Board user-defined bit in the sys-
tem port (TBI pin 8) to the side select pin
onjl.
Double Side Format Procedure
Use FORMAT3 from user disk 1 and
format side 1 normally. Then load FOR-
MATS, hit reset, and type the following:
<cr>
o1d,cf<cr>
o1d,08<cr>
o1c,4c<cr>
g100<cr>
Then load the double sided disk and an-
swer the drive question with:
A<cr>
Here I get a "wrong, try again" so I type
A<cr>
At this point it goes ahead and formats
side 2. Once it is through, be sure to hit
the reset button and then reboot.
SYSGEN Procedure
Put a standard SSSD disk in the drive,
boot the system, and call SYSGEN. Then
type:
A<cr>
<cr>
Reset, then
type
<cr>
*
m2074<cr>
00
1a
cO
00
00
04
20
Of
00
00
02
. f 6
00
00
<space>
It
I
g100<cr>
26 James St
Binghamton, NY 13903
Now install the double-
sided disk and type:
<cr>
A<cr>
<cr>
You will now have a disk which will
boot and warm-boot. The allocation
units (or blocks) are 2K (16 sectors) in-
stead of the standard IK (8 sectors). CP/
M's STAT accurately reports the remain-
ing space, but XDIR does not. Copying
from the single sided environment into
the double sided environment is still a
pain (involving reset and warm boot and
reset and goto 0100), but I hope to fix that
with a short goto program.
One final note of caution: I have not
done anything with the drive DPH's for
drives 2 and up and I believe also that the
CHKO space at EC09 must be expanded
from 16 bytes to 32 bytes. This is no prob-
lem with one drive because it is OK to let
it spill over into drive 2's ALL1 space.
PS: A. ASM can be assembled by CP/
M's ASM but don't use LOAD to get a
.COM file. Instead use:
DDT A. HEX
med00,ed72,0128<cr>
*c
SAVE 1 A.C0M<cr>
This will give you the proper A. COM
file.
34
Micro Cornucopia, Number 12, June 1983
Double-Sided Drive Program
PROGRAM A. ASM
ROUTINE FOR SS AND DS DISK ENVIRONMENTS
CRAIG A. BERGMAN 18 DEC 82
MOVE DOUBLE SIDED DISK PARAMETER BLOCK AND PROGRAM FROM
0128H TO EDOOH
ORG 100H
LXI H.128H ;FROM 0128H
LXI D.OEDOOH ;TO EDOOH
LXI B.75H ;MOVE 75H BYTES
DB OEDH,OB0H ;Z80 LDIR INSTRUCTION
; REESTABLISH SINGLE SIDED DISK PARAMETER BLOCK IN BIOS IN
;CASE THE SYSTEM WAS COLD-BOOTED FROM A DOUBLE SIDED DISK
LXI H.119H ;FROM 0119H
LXI D.OE8FHH ;TO E8F4
LXI B,15 ;MOVE 15 DEC BYTES
DB OEDH.OBOH ;Z80 LDIR INSTRUCTION
JMP START ;JUMP AROUND SUBROUTINES
; SINGLE SIDED DISK PARAMETER BLOCK
DB 26,0,3,7,0,242,0,63,0
DB OCOH, 0,16, 0,2,0
;RE-ORG THE ASSEMBLER AT EDOO WHERE THE FOLLOWING STUFF
;WILL RESIDE
ORG OEDOOH
; DOUBLE SIDED DISK PARAMETER BLOCK
DPB: DB 26,0,4,15,0,246,0,127,0
DB OCOH, 0,32, 0,2, 0,0
SUBROUTINE TO SENSE WHETHER A SINGLE OR DOUBLE SIDED
DISK IS IN THE DRIVE AND PUT THE RIGHT VECTOR INTO
DRIVE DPHTAB AT E90DH
SENSE:
SSID:
FIN:
IN
ANI
OUT
CALL
CALL
JNZ
LXI
JMP
LXI
SHLD
IN
ORI
OUT
RET
1CH
OEFH
1CH
0F7A8H
OF6E9H
SSID
H.DPB
FIN
;SET SIDE B
;CALL PAUSE
;CALL HOME
;SS DISK
;DS DISK
;DS DPB
H,0E8F4H;SS DPB
0E90DH
1CH
10H
1CH ;SET SIDE A
; SUBROUTINE TO SET SIDE (A OR B) AND TRACK NUMBER (0-76)
;FROM INPUT TRACK NUMBER (0-153)
A,C ;GET TRACK NO.
H,0EB42H;SAVE
M,A
77 ;0VER 76?
1CH
SIDA
OEFH
1CH
A,C
77
DON
10H
1CH
A,C
C,A
;JUMP IF NO
;SET SIDE B
;SIDE B TRK NO.
;SET SIDE A
; TRACK IN C
SEL: MOV
LXI
MOV
CPI
IN
JC
ANI
OUT
MOV
SBI
JMP
SIDA: ORI
OUT
MOV
DON: MOV
RET
;THE FOLLOWING 4 LINES CHANGE THE FIRST 4 BYTES OF THE
;BIOS SEEK ROUTINE TO CAUSE IT TO CALL SUBROUTINE
;SEL (ABOVE)
START: LXI H.OCDOOH
SHLD 0E98CH ;SET "NOP, CALL"
LXI H.SEL
SHLD 0E98EH ;SET SEL ADDR
;THE FOLLOWING 2 LINES CHANGE THE JUMP TO CCP AT THE
;END OF WARM BOOT TO JUMP TO CON (BELOW)
LXI H,CON
SHLD 0E89BH ;SET CON JMP ADDR
THE FOLLOWING 4 LINES MAKE THE USER DIFINED BIT ON THE
SYSTEM PORT OPERATE AS AN OUTPUT BIT (PFM INITIALIZES IT
AS AN INPUT BIT)
MVI A,OCFH
OUT 1DH ;SET BIT MODE
MVI A,08H
OUT 1DH ;ONLY BIT 3 IN
;WHEN THIS PROGRAM IS EXECUTED, IT WILL END BY FORCING A
;WARM BOOT
JMP ;JUMP TO WARM BOOT
;AT THE END OF WARM BOOT, SUBROUTINE SENSE IS CALLED
; BEFORE JUMPING TO CCP
CON: CALL SENSE
JMP 0D200H ;JMP TO CCP
END
Micro Cornucopia, Number .12, June 1983
MOM of pROM
With MOM of pROM your BIGBOARD II becomes a
development system that can fully utilize the prom
programming circuitry of your BIGBOARD II.
Menu driven Load, Test, Program, Edit, Move, Verify,
Compute, Read, Write, and Select commands are included.
The unique Program command allows execution of a user
configured "Sequence Module." No software modifications
are needed to handle new memory chips! Sequence
Modules can be configured for any chips that are physically
compatible with the BIGBOARD II, including EEPROMS!!
Configurability provides flexibility
"&"*"*■■*"*■*****
Only $29.00
**********
Includes 8 inch SS/SD diskette, documentation,
domestic shipping
Foreign add $5.00, Texas residents add 6% sales tax
Installed for BB II on-board terminal
Send check or money order today TO:
Industrial Software
19623 Autumn Creek
Humble, Texas 77346
(713) 852-8499 evenings
* BIGBOARD II is a Trademark of
CAL-TEX COMPUTERS INC.
&
UNIVERSAL
ENCLOSURE
12" Green Ball Brothers monitor
with enclosure measuring 19" x
16.5" x 14". Room inside to mount
a Ferguson single board computer
or small SS-50.S-100 system.
(Power supply available, see be-
low.) Requires +15 volts DC. @
1 .5 amps, noncomposite (separate
sync) input. A sync separator
schematic is available. It is also
possible to mount a single 8" disk
drive or two of the new slim line 8"
disk drives in this enclosure. All
units are used, and have been
100% tested.
Shipping weight 35# $65.00
ASCII Keyboard (used) with enclosure to match above monitor. 77 keys, 7
lighted pushbuttons, on/off sw. Requires 5 volts DC. Schematic included. In-
cludes shift, tab, control and cursor control keys. Size; 19 x 4 x 5 1 /2.
Shipping weight 8# $35.00
Modular power supply (missing regulator
card) fits inside above monitor enclosure.
Includes large transformer that outputs
+8.5 volts @ 17 amps, +/-18 volts @1.5
amps each, +15 volts @ 1.5 amps (for
monitor), three large capacitors (1-18kuf,
2-8kuf), 1-30 amp, 2-3 amp bridge rec-
tifiers. The transformer and rectifiers/
capacitors make a perfect unregulated
SS-50/S-1 00 power supply. The schematic
for the regulator card is available.
Shipping weight 25# $25.00
D & W ASSOCIATES
PO Box 60, Rome NY 13440
(315) 339-2232 or 337-7968
Please call either number evenings only
ALL ITEMS
SENT VIA UPS COD
r
Especially For The Big Board
USERS DISK #1
1-Two fast disk copiers
2-The manual for Small C+
3-Crowe Z80 Assembler
4-Two disk formatters
5-Modem7
6-Othello
7-Serial print routine-Port B
USERS DISK #2
1-Two single disk drive copy programs,
both with source
2-Crowe Z80 Assembler source
3-New Crowe.COM file, debugged version
4-New CBIOS with parallel print driver &
other extensions for CP/M 1 .4 & 2.2
5-Disk mapper with source
USERS DISK #3
1-EPROM burning software for BB I
2-Reset bit 7 (unWordStar a file)
3-Disk file CRC checker
4-New fast copy program & source
5-DU77, disk inspector/editor
6-FINDBAD, isolates bad disk sectors
7-Print fancy page headings
USERS DISK §4
1-CBIOS, custom bios for Tandon drives
2-ZCPR, dynamite CCP checks drive A for
missing .COM files; improved commands
3-ZCPRBLOC, identifies CCP location
USERS DISK #5
1-CAT, disk cataloging routines
2-Modem7 for Port A
3-Modem7 for Port B
4-PACMAN, the arcade game
5-FAST, buffers the disk to speed up
assemblies
6-NOLOCK, removes BB I shift lock
7-VERIFY, cleanup & verify a flaky disk
8-DUMPX, enhanced for BB I
9-UNLOAD, create .HEX file from .COM file
(503) 382-8048
USERS DISK #6
1-REZ, 8080/Z80 disassembler, TDL
mnemonics
2-PRINTPRN, prints Crowe listings
3-RUNPAC, run-time utility package for
8080 assembly language programs.
Has 51 functions. Includes source which
assembles under ASM.
USERS DISK §1
1-CHNGPFM, PFM monitor mods
2-TERM, terminal routines let you set up
BB as simple terminal, as a file receiver,
or as a file sender.
3-Checkbook balancing package
4-Disk Utilities - copy to memory, from
memory, and dump.
USERS DISK #8
1-BDSCIO, custom BDSC I/O for BB I
(both .h and .c)
2-YAM, Yet Another Modem program in
source & .COM form. Turns BB into
paging intelligent terminal, complete with
printer interface, baud rates to 9600.
3-ROFF, text formatter
4-SIGNS, prints large block letters
USERS DISK #9
1-ADVENTURE, expanded 550 pt version
2-Key board translation program
3-CBlOS, serial & parallel printer interface
4-EPROM programming package for BB II,
for 2732s only
USERS DISK #10 - Lots of Disk Utilities
1 -REBOOT, sets up the CP/M auto load
2-SWEEP, directory /file transfer routine
3-A, Lets BB I recognize a double sided drive
as one drive with 494K of usable space
4-FIX, super disk utility, does everything,
much easier to use than DU77
5-Compare files routine
6-UNERA, retrieve erased files
7-FIND, check all drives on system for a file
8-MENU, menu program for CP/M
9-NEWCAT, enhanced disk catalog program
10-Single drive copy program that does track
by track copies rather than file by file
11 -Extended CRC checker, creates file &
checks file
12-Super disk formatter program for BB I
USERS DISK #1 1 - Printer Utilities
1-Microline 92 printer routine
2-Graphics display package for MX-80 with
Graftrax, very fancy
3-Epson MX80 setup for BB I with 59.5K
CP/M
4-Epson MX8 setup for any CP/M, lets
you set print modes.
5-Micro Tek print driver, Ports A & B
USERS DISK #1 2 - Games for BB I
1 -A LI ENS, a fast, exciting arcade game
2-ZCHESS, chess with a 1-6 level look ahead
3-MasterMind, match wits with the computer
4-BIO, Biorythm charts complete with
graphics on the BB I
5-LIFE, so fast it's real animation!
6-CRAPS, see how much you'd lose in Vegas
7-WUMPUS, a caver's delight, kill the
Wumpus or be killed
8-PRESSUP, similar to Othello
9-Games, 7 games in one program, includes
blackjack, maze, and animal
All Users Disks $15.00 each (US,Can,Mex) $20.00 each (other foreign)
All The Users Disks Contain Documentation On Disk In .DOC Files.
OTHER GOODIES
Screen Editor in Small C $39.00 $44.00
A simple but full-function screen text editor plus a text format-
ter, all written in Small C by Edward Ream. This package in-
cludes the editor and formatter . COM files setup for the Big
Board, Small C itself, and source code for all. With the docu-
mentation this is over 400K on a flippy disk. Edward is selling
this package for $50, you can buy it from us for $39 (and Ed
gets a royalty). Where else can you get an editor, a formatter, a
C compiler, and source for all, for under $40?
Your choice of a user's disk or the deluxe char-
FREE acter ROM free if you send an article or
software and a ROM or extra disk.
V.
US,CAN,MEX Other Foreign
Your Fortune in the Microcomputer
Business $26.45 $36.45
This is the best, most complete collection of "working for
yourself" information I've found (and I've heard nothing but
good comments from those who have received it). This two-
volume set is a perfect for those blustery fall evenings when
you snuggle up in front of the fire and dream of great riches.
MORE ROMS
Fast monitor ROMs for speed freaks and our famous 'better
than Texas' character ROM (V2.3) for screen freaks.
Fast Monitor ROM $25.00 $30.00
Version 2.3 Char ROM $25.00 $30.00
• Send Big Board number with ROM orders.
• Monitor & char. ROMs $5.00 each if you send a fast ROM
and a stamped, self-addressed return envelope.
■MICRO CORNUCOPIA 'P.O. Box 223 • Bend, Oregon • 97709
r
From Micro Cornucopia
"\
USERS DISK #13 - General Utilities, BB I
1-ZZSOURCE, disassembles to real Zilog
mnemonics
2-EX1 4, superset of submit or supersub
3-MOVPATCH, lets you use MOVECPM on
other copies of CP/M
4-XMON, 3K expanded BB I monitor, use
in ROM or as overlay
5-CURSOR, prompts you for cursor char
you want
6-UMPIRE, very fancy RAM test
7-ZSIDFIX, display improvement for ZSID
8-PIPPAT, modify PIP so you can reset
system from within PIP
9-@, Lets you use the BB as a calculator,
including HEX
10-SORT, sort package written in C80.
USERS DISK #14- BB II Software
1-PR032, latest 2732 reader & programmer
2-SMODEM2, lets BB II talk to Hayes
Smartmodem
3-GRAFDEMO, demonstrates BB II graphics
(in BASIC)
4-ATTRTEST, demonstrates BB II graphics
(in JRT Pascal)
5-INITSIO, initializes port B for 300 or
1200 baud
6-MENU, displays menu of .COM files, enter
number to run file
7-SETCLK, sets realtime clock built into BB II
8-PRINT2, modified print which accesses
BB II clock
9-BOX, draws a thin line box on screen
determined by HL and BC
10-ALIENS, space invaders arcade game
11-LISTSET, printer interface, auto-enables
RTS, ignores DCD.
USERS DISK #15 - Word Processing
1-EDIT, very fancy line editor which almost
looks identical to EX (Unix). Includes
help menu, programmable key, and full
manual on disk
2-TED, simple minded line editor, easy to
learn & use. Very fast.
3-TTYPE, typing training program written
in BASIC
4-TINYPLAN, very simple-minded spread-
sheet. Whets your appetite for a fancy one.
5-C80 Text Utilities
6-CHOP, cuts off file after N bytes
7-ENTAB, replace spaces with tabs where
possible
8-MS, double or triple spaces a file to output
9-RTW, removes trailing spaces from file
10-TRUNC, truncates each line to specified
length
1 1-WRAP, wraps at column 80, plus pretty
pretty printing, page #s ...
REMEMBER
FREE Users Disks in exchange
for submitted software or articles
USERS DISK #16 - BB I Modem Software
1-RCPM27, list of U.S. bulletin boards
2-SMODEM, interfaces BB I with Hayes
Smartmodem
3-PLINK66, easy to use with non-CP/M host,
for port A
4-BBPAT, menu selection of BAUD rate,
bits/char, parity, & stop bits
5-MODEM7+, Modem7 plus BBPAT, lets
you talk to anything from port A
USERS DISK #1 7 - Small C version 2
SMALLC2, this substantially expanded ver-
sion of Small C now includes for, goto, la-
bel, switch (case); external declarations; new
preprocessor commands; expanded I/O incl-
udes redirection; initializers; plus 12 new ex-
pressions. The I/O and runtime libraries have
been greatly expanded (including printf).
Source & documentation on one full disk.
USERS DISK #18- FORTH
I FORTH, this is Idaho FORTH which can
be burned into ROM or loaded from disk. It
replaces the PFM monitor & handles all the
monitor functions. See issue #11 FORTH
column for more info about I FORTH and
this disk.
^
USERS DISK #19 - BB I Double Density
New BB I Monitor, BIOS, Character ROM,
Winchester interface, ZCPR, and formatter
from Trevor Marshall. See BB 1 expansion
article in Issue #11.
All Users Disks $15.00 each (US,Can,M ex) $20.00 each (other foreign)
All The Users Disks Contain Documentation On Disk In .DOC Files.
BACK
ISSUES
$3.00 each
US,CAN,MEX
$5.00 each
Other Foreign
ISSUE NO. 1 (8/81)
Power Supply
RAM Protection
Video Wiggle
Vi PFM.PRN
1 6 pages
ISSUE NO. 2((10/81)
Parallel Print Driver
Drive Motor Control
Shugart Jumpers
Program Storage Above PFM
Vi PFM.PRN
1 6 pages
ISSUE NO. 3(12/81)
4 MHz Mods
Configuring Modem 7
Safer Formatter
Reverse Video Cursor
FORTHwords begins
1 6 pages
ISSUE NO. 4 (2/82)
Keyboard Translation
More 4 MHz Mods
Modems, Lync, and SIOs
Undoing CP/M ERASE
Keyboard Encoder
20 pages
ISSUE NO. 5 (4/82)
Word Processing
Two Great Spells
Two Text Editors
Double Density Review
Scribble, a Formatter
20 pages
V.
ISSUE NO. 6(6/82)
BB I EPROM Programmer
Customize Your Chars
Double Density Update
Self-Loading ROM
Terminal in FORTH
24 pages
ISSUE NO. 7 (8/82)
6 Reviews of C
Adding 6K of RAM
Viewing 50 Hz
On Your Own begins
24 pages
ISSUE NO. 8(10/82)
Drive Maintenance
Interfacing Drives
Installing a New BIOS
Flippy Floppies
C'ing Clearly begins
Xerox 820 begins
28 pages
ISSUE NO. 9 (12/82)
BB II EPROM Program
Relocating Your CP/M
Serial Print Driver
Big Board I Fixes
Bringing Up WordStar
Cheap RAM Disk
32 pages
ISSUE NO. 10(2/83)
Saving a Flaky Disk
Hooking Wini to BB II
The Disk Inspector
JRT Fix
Serial Keyboard Interface
Pascal Procedures begins
36 pages
ISSUE NO. 11 (4/83)
BB I Expansions
BB II Details
Dyna, RAM Disk Review
Easier Reverse Video Cursor
PlannerCalc Review
KayPro Column begins
36 pages
•MICRO CORNUCOPIA • P.O. Box 223 • Bend, Oregon • 97709-
TECHNICS!. TIPS
6 by 10 Dot Matrix for BB I
Through a little experimentation, I
discovered how to make the character
generator display the entire 6 X 10 dot
matrix. I swapped around the signals
which blank the character generator so
that the 9th and 10th horizontal traces
select address line A-10 in the character
ROM.
Pin 8 of U22 is active during the 9th
and 10th horizontal lines on each charac-
ter. This signal (SC3), usually turns off
the character ROM (U73 pin 18). Hor-
izontal retrace (U60 pin 8), also blanks
the screen by selecting the blank half of
the ROM during horizontal retrace.
Vertical retrace (U37 pin 6) is the third
blanking control. It controls the output
enable pin (U73 pin 20) on the character
ROM.
So, with all this in mind, I have made
the following modifications to my char-
acter generator:
1. Remove U60, bend out pin 8 and re-
place it.
2. Remove U25, bend out pin 5 and re-
place it.
3. Cut the trace between U37 pin 6 and
U73 pin 20 (careful, don't cut any other
runs).
4. Jumper U25 pin 5 (the PC board) to
U66 pin 9.
5. Jumper U66 pin 8 to U73 pin 19.
6. Jumper U60 pin 9 to U73 pin 20.
7. Jumper U25 pin 5 (bent out pin) to U37
pin 6.
I invert SC3 so that this modified video
generator will be compatible with the
original character ROM.
With the above modifications, your
character generator can control all ten
horizontal lines. If you want to control
the 6th horizontal dot between each
character, note that it is controlled by pin
12 of U75 (normally tied high). To get
mastery of this lone haranger do the fol-
lowing:
1. Cut the trace between U75 pin 12 and
+5V.
2. Jumper U75 pin 12 to U74 pin 10.
3. Jumper U74 pin 11 to U73 pin 15.
Now you have full control of the video
bits. You can create a custom PROM with
5 by 9 characters, and if you substitute a
2732, you could add an additional 64
graphics characters such as the TRS-80
blocks.
Maybe I'm just lazy, but I'm inclined
to leave the ROM to you. However, if we
use data bit 7 (high bit) to address the
graphics part of a 2732, then we have to
come up with a new way to implement a
cursor.
John J Phillips
Attorney At Law
Suite 222
Park-Cherry Building
114 East Park
Olathe, Kansas 66061
1 1 VAC
DISK
DRIVES
PHENI*
(7)-DC+<7)
PHENIX
DISK
CONTROLLER
-J-5V DC
pin \(o
BB II Drive Motor Control
If you have a BB II and want your drive
motors to time out, check out the follow-
ing.
Pin 16 (motor/not) on the mini-floppy
header (J6) is grounded whenever a
drive is accessed and stays low for about
thirty seconds following completion of
drive access. The line is able to sink
about 5 milliamps which is adequate for
most solid state relays.
We used a Phenix solid state relay (see
advertisement) and had it installed in
about 5 minutes. Just connect the minus
input of the solid state relay (or your
homebrew circuit) to J6 pin 16 and the
plus input to +5V. Then connect the AC
output in series with one side of the AC
supply.
Dana Cotant
Micro C Technical Dept.
More 5 MHz
I am running 5 MHz now and the im-
provement is really noticeable, especial-
ly when compared to 2.5 MHz. During
the conversion I noticed that:
1. My 2716-1's are barely making it.
Often they won't restart the system once
they are warm. I have had better luck
with hand-selected Intel parts. I'm going
to switch to using half of a 2732A-2 (200
ns).
2. Change the CTC initialization at
F119H from 93 (decimal) to 186 (decimal)
so the interrupts will remain 1 second.
3. Shift the Auto Baud routine's
(F0CBH) table down one byte. This will
correct for the doubled clock rate.
4. If you are using a PROM program-
mer, remember to adjust the pulse tim-
ing or you will underburn all your
PROMs (they'll barely get warm).
5. Forget PACMAN, it's just too fast!
Installing ZCPR . . .
Based on the calls I've been getting it
seems that a lot of people are wasting a
lot of time installing CBIOS's and ZCPR
into their systems (incorrect assemblers
and difficulty with printer drivers etc.).
I've installed CP/M for about 25 folks
already and can do it in my sleep, so the
following offer.
1. Send a disk with CP/M on the sys-
tem tracks, SYSGEN, and a complete
description of your printer (parallel, se-
rial, bits/char, stop bits, baud, whether
handshake is needed . . . ).
2. Send a stamped, self addressed,
package that I can return the disk in
(makes turnaround days instead of
weeks). I'll return the disk with two ver-
sion of CP/M, one with the new CBIOS,
and one with ZCPR, complete with
source/doc files.
3. The catch. You'll also have to send
along a spare disk of software for me to
play with. I'll forward the best of this to
Micro C for everyone to share. If you
really can't come up with a disk of inter-
esting software, send $15 and I'll install
CP/M for you and send you some of my
favorites that you can play with.
Now that's the cheapest custom pro-
gramming in history.
Gary Kaufman
2001 Hamilton St Box 87
Philadelphia, PA 19138
215-496-0687
38
Micro Cornucopia, Number 12, June 1983
owe FORM 1
Micro C works because it is a central information exchange for
the doers in this crazy industry. So we encourage you to share
your trials and tribulations. That way we can invent new
wheels rather than redoing the old ones over and over.
What kind of exciting adventure (misadventure) are you
working on?
What kinds of information do you need right now?
Quantity
Description
Price Each
Total
U.S.
Can & Mex
Other Foreign
USER'S DISKS— 8" SSSD, CP/M
#'s
$15
$15
$20
BACK ISSUES
#'s
$3
$3
$5
SUBSCRIPTION (1 year— 6 issues)
□ New □ Renewal
□ $16 (Bulk)
□ $20 (1st Class)
□ $20
(Air Mail)
□ $26
(Air Mail)
OTHER ITEMS:
Prices inclu
□ Check or
(US fund
de media, package, 1st Class postage (Air Mail for O
money order enclosed
s only, payable on a US bank)
ther Foreign)
Make checks
MICRO COR
payable to:
NUCOPIA
TOTAL
ENCLOSED
Card No -
□ Visa □ MasterCard
Exp.
Signature
NAME
PHONE (?)
ADDRESS
CITY
STATE
ZIP
I
MICRO CORNUCOPIA 'P.O. Box 223 • Bend, Oregon • 97709
(503) 382-8048
USERS DISK #1
1-Two fast disk copiers
2-The manual for Small C+
3-Crowe Z80 Assembler
4-Two disk formatters
5-Modem7
6-Othello
7-Serial print routine-Port B
USERS DISK #2
1-Two single disk drive copy programs,
both with source
2-Crowe Z80 Assembler source
3-New Crowe.COM file, debugged version
4-New CBIOS with parallel print driver &
other extensions for CP/M 1.4 & 2.2
5-Disk mapper with source
USERS DISK #3
1-EPROM burning software for BB I
2-Reset bit 7 (unWordStar a file)
3-Disk file CRC checker
4-New fast copy program & source
5-DU77,disk inspector/editor
6-FINDBAD, isolates bad disk sectors
7-Print fancy page headings
USERS DISK #4
1-CBIOS, custom bios for Tandon drives
2-ZCPR, dynamite CCP checks drive A for
missing .COM files; improved commands
3-ZCPRBLOC, identifies CCP location
USERS DISK #5
1-CAT, disk cataloging routines
2-Modem7 for Port A
3-Modem7 for Port B
4-PACMAN, the arcade game
5-FAST, buffers the disk to speed up
assemblies
6-NOLOCK, removes BB I shift lock
7-VERIFY, cleanup & verify a flaky disk
8-DUMPX, enhanced for BB I
9-UNLOAD, create .HEX file from .COM file
USERS DISK #6
1-REZ, 8080/Z80 disassembler, TDL
mnemonics
2-PRINTPRN, prints Crowe listings
3-RUNPAC, run-time utility package for
8080 assembly language programs.
Has 51 functions. Includes source which
assembles under ASM.
USERS DISK #7
1-CHNGPFM, PFM monitor mods
2-TERM, terminal routines let you set up
BB as simple terminal, as a file receiver,
or as a file sender.
3-Checkbook balancing package
4-Disk Utilities - copy to memory, from
memory, and dump.
USERS DISK #8
1-BDSCIO, custom BDSC I/O for BB I
(both .h and .c)
2-YAM, Yet Another Modem program in
source & .COM form. Turns BB into
paging intelligent terminal, complete with
printer interface, baud rates to 9600.
3-ROFF, text formatter
4-SIGNS, prints large block letters
BIG BOARD USERS DISKS
$15.00 each
(US, Can, Mex)
$20.00 each
(Other Foreign)
USERS DISK #9
1-ADVENTURE, expanded 550 pt version
2-Keyboard translation program
3-CBlOS, serial & parallel printer interface
4-EPROM programming package for BB II,
for 2732s only
USERS DISK #1 - Lots of Disk Utilities
1 -REBOOT, sets up the CP/M auto load
2-SWEEP, directory /file transfer routine
3-A, Lets BB I recognize a double sided drive
as one drive with 494K of usable space
4-FIX, super disk utility, does everything,
much easier to use than DU77
5-Compare files routine
6-UNERA, retrieve erased files
7-FIND, check all drives on system for a file
8-MENU, menu program for CP/M
9-NEWCAT, enhanced disk catalog program
10-Single drive copy program that does track
by track copies rather than file by file
1 1-Extended CRC checker, creates file &
checks file
12-Super disk formatter program for BB I
USERS DISK #1 1 - Printer Utilities
1-Microline 92 printer routine
2-Graphics display package for MX-80 with
Graftrax, very fancy
3-Epson MX80 setup for BB I with 59.5K
CP/M
4-Epson MX8 setup for any CP/M, lets
you set print modes.
5-Micro Tek print driver, Ports A & B
USERS DISK #12 - Games for BB I
1-ALIENS, a fast, exciting arcade game
2-ZCHESS, chess with a 1-6 level look ahead
3-MasterMind, match wits with the computer
4-BIO, Biorythm charts complete with
graphics on the BB I
5-LIFE, so fast it's real animation!
6-CRAPS, see how much you'd lose in Vegas
7-WUMPUS, a caver's delight, kill the
Wumpus or be killed
8-PRESSUP, similar to Othello
9-Games, 7 games in one program, includes
blackjack, maze, and animal
USERS DISK #1 3 - General Utilities, BB I
1-ZZSOURCE, disassembles to real Zilog
mnemonics
2-EX1 4, superset of submit or supersub
3-MOVPATCH, lets you use MOVECPM on
other copies of CP/M
4-XMON, 3K expanded BB I monitor, use
in ROM or as overlay
5-CURSOR, prompts you for cursor char
you want
6-UMPI RE, very fancy RAM test
7-ZSIDFIX, display improvement for ZSID
8-PIPPAT, modify PIP so you can reset
system from within PIP
9-@, Lets you use the BB as a calculator,
including HEX
10-SORT, sort package written in C80.
USERS DISK #14- BB II Software
1-PR032, latest 2732 reader & programmer
2-SMODEM2, lets BB II talk to Hayes
Smartmodem
3-GRAFDEMO, demonstrates BB II graphics
(in BASIC)
4-ATTRTEST, demonstrates BB II graphics
(in JRT Pascal)
5-INITSIO, initializes port B for 300 or
1200 baud
6-MENU, displays menu of .COM files, enter
number to run file
7-SETCLK, sets realtime clock built into BB I
8-PRINT2, modified print which accesses
BB II clock
9-BOX, draws a thin line box on screen
determined by HL and BC
10-ALIENS, space invaders arcade game
11-LISTSET, printer interface, auto-enables
RTS, ignores DCD.
USERS DISK #15 - Word Processing
1-EDIT, very fancy line editor which almost
looks identical to EX (Unix). Includes
help menu, programmable key, and full
manual on disk
2-TED, simple minded line editor, easy to
learn & use. Very fast.
3-TTYPE, typing training program written
in BASIC
4-TINYPLAN, very simple-minded spread-
sheet. Whets your appetite for a fancy one.
5-C80 Text Utilities
6-CHOP, cuts off file after N bytes
7-ENTAB, replace spaces with tabs where
possible
8-MS, double or triple spaces a file to output
9-RTW, removes trailing spaces from file
10-TRUNC, truncates each line to specified
length
1 1-WRAP, wraps at column 80, plus pretty
pretty printing, page #s ...
USERS DISK #1 6 - BB I Modem Software
1-RCPM27, list of U.S. bulletin boards
2-SMODEM, interfaces BB I with Hayes
Smartmodem
3-PLINK66, easy to use with non-CP/M host,
for port A
4-BBPAT, menu selection of BAUD rate,
bits/char, parity, & stop bits
5-MODEM7+, Modem7 plus BBPAT, lets
you talk to anything from port A
USERS DISK #17- Small C version 2
SMALLC2, this substantially expanded ver-
sion of Small C now includes for, goto, la-
bel, switch (case); external declarations; new
preprocessor commands; expanded I/O incl-
udes redirection; initializers; plus 1 2 new ex-
pressions. The I/O and runtime libraries have
been greatly expanded (including printf).
Source & documentation on one full disk.
USERS DISK #18- FORTH
IFORTH, this is Idaho FORTH which can
be burned into ROM or loaded from disk. It
replaces the PFM monitor & handles all the
monitor functions.
USERS DISK #19 - BB I Double Density
New BB I Monitor, BIOS, Character ROM,
Winchester interface, ZCPR, and formatter
from Trevor Marshall. See BB I expansion
article in Issue #11.
FOR 'MOST EVERY' RS-232 TEST YOU HAVE
THE ROMAC LINE \S CHECK WILL DO IT!
Tri-color LED's, mounted nearest the source signal, clearly display activity, polarity and validity
of seven of the most commonly used RS-232 signals.
TD, RD, RTS, CTS, DSR, DSD and DTR. A switch reverses TD (pin 2) and RD (pin 3)
Versatility is provided by either standard wire-connect or printed circuit mount DB-25 connectors
which can be soldered to the board.
• A convenient RS-232 tester by using standard wire type connectors
• An easy to use monitor for a data set or computer port by using PC board connectors mounted to
the back
• A parallel connector to a communication port by using both types of DB-25 connectors
PC BOARD with instructions $7.50
BOARD and PARTS KIT: Includes 7 tri-color LED's, 7 resistors, male and female DB-25 connectors and
switch $25.00
COMPUTER EQUIPMENT
240 W. Market St. Box 589
Somonauk, Illinois 60552
815^98-2111 $2.00 Shipping
[-~
«S4
Full implementation of "C" with standard floating
point, library, and I/O subroutines. UNIX VER 7
compatible. Produces relocatable 8080 (optional 0Z80)
assembler code. Relocating assembler and linker
supplied with package or use Microsoft M80 and L80,
SID/ZSID debugger interface. FAST COMPILATION
AND EXECUTION.
AZTEC CM FOR CP/M $199
(Special price for Micro C subscribers $149)
MANX
software systems
"^^ Box 55, Shrewsbury, N.J. 07701
(201) 780-4004
Also available for Apple DOS, HDOS, CP/M-86, PC-DOS
P -o
o b
One of the finest implementations of the FORTH language.
Field tested and reliable, UNIFORTH is available for Z-80
and most 16-bit systems using 8" disk drives.
As a task, UNIFORTH is compatible with and supports all
features and file types of the CP/M, CDOS, MS-DOS and DEC
operating systems. As an operating system, UNIFORTH will
function "stand-alone" on most commercial microcomputers.
The FORTH-79 Standard language has been extended with
over 500 new words that provide full-screen and line-oriented
editors, array and string handling, enhanced disk and terminal
I/O, and an excellent assembler. Detailed reference manuals
supply complete documentation for programming and system
operation, in an easy-to-understand, conversational style using
numerous examples.
Optional features include an excellent floating-point package
with all transcendental functions (logs, tangents, etc.), the
MetaFORTH cross-compiler, printer plotting and CP/M file
transfer utilities, astronomical and amateur radio applica-
tions, etc.
Compare these features with any other FORTH on the market:
• Speed and efficiency
• Variety of options
• Ease of use
• Quality of documentation
You'll find UNIFORTH is superior.
Prices start at $35. Call or write for our free brochure.
Unified Software Systems
P.O. Box 2644, New Carrollton, MD 20784, (301) 552-1295
n
£w
3 W
. OT C
2. «
«■ 3
P O
LKRAT
POSTA<
PAID
*■ &
►^
« w
~j
w