Skip to main content

Full text of "Micro Cornucopia (June 1983)"

See other formats


$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