0 24” 14357'
August 1984
RANDOM NUMBERS ON THE IBM PC
RASM-86 AND MASM COMPARED
IBM COMMUNICATIONS SOFTWARE
EXPLORING DOS 2.0 MEMORY
MOUSE POP-UP MENUS
MICROSOFT MOUSE MENU
MOUSE SYSTEMS DESIGNER
POP-UP MENUS
TRILLIAN VISUALL
MOUSE POP-UP
MENUS TESTED
AND REVIEWED
IBM’S CLUSTER
For Quality Color Graphics
From Start Tb Finish.
Start with Quadcolor Fcolor graphics
adapter board
Quadcolor is the only color graphics adapter
board your IBM PC or XT will ever
need. To begin, snap Quadcolor I
into your PC to drive any type
color monitor. You get 32K of
memory for up to 16 active video
pages in the 40-column text
mode. Or 8 pages in 80-column.
That’s twice what other popular
cards offer. Switch to graphics
mode and create two complete
screen pages in memory. Plus, you’ll get two
true colors in high resolution.
Grow with Quadcolor II™
Quadcolor II expands your capabilities with features
like a full 16 color high resolution mode and an
amazing 136 color medium resolution mode.
And it comes complete with BAS1CQ the soft- capabilities. When you’re in the mood for fun
ware package that enhances IBM’s own BAS1CA and games, Quadcolor II even has a game port.
Choose Quadjet™for your color
graphics hard copy
Quadjet inkjet printer takes all your ideas and
puts them down on paper—or transparencies.
So business, scientific and engineering applica¬
tions are clearer and more meaningful. And it
includes an easy-to-use software package which
allows you to get down to business right away.
Quadjet uses plain paper or clay coated paper for
the ultimate in quality color printing. You can
print black, red, green, yellow, cyan, blue or
magenta in text as well as graphics. Including
standard and enlarged characters
with true descenders.
A word about
compatibility.
A standard
centronics
parallel
interface
makes
Quadjet
compatible with
your IBM PC, XT or Apple
computer. And because it works with
Fingerprint board, printing anything that’s on
Apple’s screen is as easy as pushing a button. Quadjet doesn’t
stop there. It’s also compatible with Lotus 1-2-3 plus many
other business graphics software packages.
Picture Quadchrome ™as your high resolution color monitor
Quadchrome II is Quadram's latest RGB color monitor with a bigger, better 14" diagonal screen.
It delivers up to 640 x 240 resolution with 80 characters by 25 lines. It’s sharp, clear screen is
perfect for all your business needs. \Aford processing. Accounting. You name it.
Whatis more, you'll love the colors. You can display up to 16
different colors at once. It’s just what you
need to add that extra flair to all your
graphics work.
Monitoring your choices
The original Quadchrome 1 is
still available. It delivers up to
690 x 480 in interlaced
mode, with the same sharp
image and the same colors.
Only this time you’ll get it on
a 12" diagonal, non-glare
screen. Of course, both
Quadchrome 1 and II are FCC
and UL approved. And for
the best monochrome
monitor around, there’s
Quadram’s Amberchrome.
The new amber monochrome
monitor for the IBM PC.
Look for this seal. It’s your
assurance that you’re
buying the best in personal
computer enhancements.
With Quadram, creating colorful business presentation graphics couldn’t be easier. Our
Quadcolor color graphics adapter board, Quadjet inkjet printer and Quadchrome color monitor
all work together to deliver the finest in color and graphics. When you’ve got one, you’ll want
them all for the best color graphics you can find.
QUADRAM
' J An Intelligent Systems Company
INTERNATIONAL OFFICES
Interquadram Ltd. 442 Bath Road, Slough, England SL16BB
Tel: 6286-63865 Tlx: 847155 Auriema G Interquadram GmbH
Fasanenweg 7,6092 Kelsterbach, West Germany Tel: 6107-3089
Tlx: 417770 Seva G Interquadram s.a.r.l. 41, Rue Ybry, 92522 Neuilly
Tel: 758-1240 Tlx: 630842 Iso Bur Chevco Computing 6581 Kitimat
Road, Mississauga, Ontario, Canada L5N-2X5 Tel: 416-821-7600
4355 International Blvd./Norcross, Ga. 30093
(404) 923-6666/TWX 810-766-4915 (QUADRAM NCRS) CIRCLE NO. 191 ON READER SERVICE CARD
IBM* PC XT are registered trademarks of International Business Machines Corporation. APPLE' is a registered trademark of Apple Computers. Inc. 1-2-3 and Lotus
are trademarks of Lotus Development Corporation, c Copyright 1984 Quadram Corporation. All rights reserved. FingerPrint and Thirdware are registered trademarks of
Precision Software, Inc.
Sales Revenue
QUADJET
QUMXHHONEII'
Quadram Has
Created The
Perfect Color
Scheme...
What’s supporting
your IBM PC ?
W 1 ',v ■.'#
The Information Interface
The First Information Management
System That Takes Your P.C.
Seriously.
Combines, in a single integrated
system, all of the historically separate
functions of database manager, report
generator, query language, forms
facility, database definition, data
dictionary, and programming
language. /^5(l
The first commercially available
Information Management System
which uses the Entity Relationship
Model of Data. It captures not only
data, but also the way in which it is
structured. Generates information
applications as much as 20 times
faster than conventional methods.
CIRCLE NO. 148 ON READER SERVICE CARD
FOR USE ON IBM PC® & XT®,
1 785 Woodward Drive
Ottawa, Ontario K2C 0R1
(613)727-1397
ZANTHE
INFORMATION INC.
HYPERION®, COLUMBIA®,
EAGLE®, COMPAQ®, CORONA®
AND RAINBOW®.
In the Hard Disk Jungle
Tallgrass Clears
A Path *
In today's hard disk jungle, Tallgrass clears
a path by offering high performance, integrated
mass storage solutions for the IBM® PC/XT, the
T.I. Professional and related computers.
TALLGRASS INNOVATIVE FEATURES
MASS STORAGE SYSTEMS with formatted
HardFile™ capacities of 6, 12, 20, 35 and 70 Mb,
all with built-in tape backup.
CONVENIENT INTEGRAL TAPE BACKUP
SYSTEM allows rapid tape "image” streaming,
or incremental file-by-file backup and restore on
ANSI standard inexpensive data cartridges,
instead of the usual floppies, video cassettes, or
low-capacity removable Winchester devices.
NETWORK READY and fully compatible with
networks such as PCnet®and EtherShare™
HIGH RELIABILITY with dual directory and
read-after-write verify options. A dedicated
landing zone, where the read/write heads reside
when the disk is idle, provides data protection
during powerdowns and transportation.
Follow the Tallgrass path to your local computer
dealer and watch your personal computer transform
into a powerful data processing system.
Available from COMPUTERLAND® Entre®
Computer Centers, MicroAge® Computer Stores
and other participating computer dealers.
New!
IBM-XT Cartridge
Tape Backup
World Headquarters: Tallgrass Technologies Corp. /11100 W. 82nd St.
Overland Park, KS 66214/913/492-6002/Telex: 215406 TBYT UR
Canadian Headquarters: Tallgrass Technologies (Canada), 1775 Meyerside Drive
Mississauga, Ontario, Canada L4V 1H2/416/673-3244
European Distributor: CPS Computer Group, LTD
Birmingham, England B276BH/(021) 7073866
Australian Headquarters: Tallgrass Technolgies (Australia)/Five Dock Plaza,
Suite 12/50 Great North Road/Five Dock/Sydney, N.S.W. 2046/(02) 712-2010
CIRCLE NO. 234 ON READER SERVICE CARD
Tallgrass
Technologies
Corporation
IBM' is a registered trademark of International Business Machines Corp. PCnet* is a trademark of Orchid Technology EtherShare ■' is a registered trademark of 3Com Corp
FoiriBM' PERSONAL COMPUTER USERS
n
n
N
J — _
OURNAL
JJ
Articles
Volume 2, Number 2
August 1984
CONTROLLING INPUT USING INKEY$
NELSON FORD / lust another INKEY routine? No, this is the ultimate INKEY that allows
programmers to increase the control and flexibility of their programs 3 2
MANAGING MEMORY
WILLIAM J. REDMOND / A step-by-step journey through DOS 2.0 reveals how DOS
accomplishes one of its most important tasks: managing the PCs memory 42
CLUSTERS OF WRATH
SUSAN GLINERT-COLE / IBM's contribution to the arena of inexpensive multi-user
environments turns out to be an unimpressive first crop
64
POP(UP) GOES THE MOUSE MENU
JULIE A. ANDERSON / Three mouse menu software packages, from Mouse Systems,
Trillian, and Microsoft, pop up on our screens for evaluation
74
RANDOM NUMBER GENERATORS
PAUL F. HULTQUIST / BASIC programs that improve upon the PCs somewhat limited
ability to produce random number sequences
86
PC POWER-UP ERROR CODES
JACK WRIGHT / A quick explanation of the strange beeps and cryptic error codes that
occur when the PC fails its power-up diagnostics 115
RASMATAZZ WITHOUT THE JAZZ
CHRIS DUNFORD / IBM's MASM gets some speedy competition from DRI's RASM-86,
but the old, feature-laden Macro Assembler is still the only choice 120
ACS OR PCM: THE BETTER TO COMMUNICATE WITH
AUGIE HANSEN / A comparative review of two communications packages from IBM
finds that their effectiveness all depends on what tasks they must tackle 155
Departments Tech Notebooks Products
Directions 5
Letters 14
Newsline 28
Legal Brief 181
Book Reviews 187
Tech Releases 193
Calendar 208
21: A Fix for DOS
Users with
NIX Habits 73
22: Patchwork 113
Tech Book 199
Tech Mart 203
Product Index 204
Advertisers Index 206
August 1984
3
CHAIRMAN
OF THE BOARDS
Introducing data acquisition and
process control for your IBM PC
Be the computer automation hero
in your organization. With TAURUS
BOARD — the newest of the single
board plug-in systems for factory
and laboratory automation.
This input/ output performer
can easily harness the power of
your IBM PC or XT into affordable
data acquisition and sophis¬
ticated process control. Sensing
and controlling voltages, cur¬
rents and temperatures to improve
productivity and efficiency.
TAURUS BOARD can handle
16 analog inputs and 2 analog
outputs with a 12-bit resolution
plus 16 digital I/O signals and 4
event counters. What’s more,
it’s as easy to program as it is to
install. Our T-SOFT software
package provides complete sup¬
port for BASIC programmers
including engineering unit conver¬
sion and thermocouple linear¬
ization.
TAURUS
COMPUTER
PRODUCTS
INC.
TAURUS BOARD comes complete
with a signal termination panel,
interconnecting ribbon cables and
installation, technical and pro¬
gramming information. And Taurus
backs all this up with a compre¬
hensive customer support and
warranty program.
Get the technical details, configu¬
ration options and competitive
prices on TAURUS BOARD and
the rest of our fine team of indus¬
trial process control and labora¬
tory research products for IBM
and other personal computers.
Give us a call today and let’s
discuss your specific applica¬
tions. Automation and control
were never this easy, this affordable.
TAURUS BOARD and T-SOFT are trademarks of
Taurus Computer Products Inc.
IBM is a registered trademark of International Busi¬
ness Machines Corporation.
340 Commercial St 1755 Woodward Dr
Manchester
NH 03101
United States
(603) 623-7505
Ottawa, Ontario
Canada K2C 0P9
(613) 226-5361
Telex 053-3577
CIRCLE NO. 225 ON READER SERVICE CARD
*
Annin L-:-""
•jrfnsiiij :Wi
: K
u : j'
jam* 5-; £. 3 ^:::- ■$
::::::-,V-’... .payi» :
- - •■a is \«5*sf A.'V\k
*■" 25 2 2 f J :wL::::- T - 3 lP
i h< 'ZP.-si m
rnmmmmmm ■
Ft*'
//// tzvrfm
M* min
r-.V
'■<? jo I IdBDC6G
I:::::::-
ryo
C\
iJb .
, .
V
* * *'*•**
TOURNA
VOL. 2 , NO. 2
Publisher
Jeff Weiner
Editorial
Editor: Will Fastie
Managing Editor: MARfORY SPRAYCAR
Technical Editors: Julie Anderson,
Susan Glinert-Cole
Senior Copy Editor: Susan Holly
Copy Editor: Barbara Tilly
Contributing Editors: Ray Duncan, Richard
Foard, Arthur A. Gleckler, Augie Hansen,
Thomas V. Hoffmann, Sol Libes, William H.
Murray, Max Stul Oppenheimer
Editorial Secretary: Diana L. Carey
Editorial Assistant: Carole Autenzio
Art & Production
Art Director: Nancy Lepow
Assistant Art Director: Jane Frey
Art Assistant: Sandra Ray
Advertising Sales
Advertising Director: Newt Barrett
Advertising Coordinator: SHERYL PANZER
District Managers: Rita Burke, Ian Smith- East
Coast,- Caroline Anderson- Midwest; Ted Bahr,
Harriet Rogers— West Coast
Account Sales Manager: Pauline Scherer
Account Representatives: Steve Cannon— East
Coast; John Grogan- Midwest; Bill Bush,
Arlene Steadman- West Coast
Circulation
Subscription Director: Chet Klimuszko, Direct
Mail Manager: Eric A. Bernhard, Renewal
and Billing Manager: Shane Boel
Consumer Computers & Electronics
Magazine Division
President: Larry Sporn
Vice President, Marketing: J. Scott Briggs
Vice President, Circulation: Carole Mandel
Vice President, General Manager: Eileen G.
Markowitz
Vice President, Licensing and Special Projects: Jerry
Schneider
Vice President, Creative Services: Herbert Stern
Creative Director: Peter J. Blank
Editorial Director: Jonathan D. Lazarus
Marketing Manager: Ronni Sonnenberg
Ziff-Davis Publishing
President, Richard P. Friese,- President, Consumer Magazine
Division, ALBERT S. TRAINA; Executive Vice President, Market¬
ing and Circulation, PAUL H. Chook ; Senior Vice President,
Phillip T. Heffernan ; Senior Vice President, Sidney Holtz,-
Senior Vice President, Edward D. Muhlfeld ; Senior Vice Pres¬
ident, Philip Sine ; Vice President, Baird Davis,- Vice President,
GEORGE MORRISSEY; Vice President, RORY PARISI; Vice President,
William L. Phillips; Treasurer, Selwyn Taubman, Secretary,
Bertram A. Abrams
PC Tech Journal (ISSN 0738-0194) is published 12 times a year,
$29.97 for one year, $52.97 for two years, $69.97 for three years.
Additional postage $12 for Canada St Foreign by Ziff-Davis
Publishing Company, One Park Avenue, New York, N.Y.
10016. Application for Second-Class Postage Rates pending at
New York, NY 10001. POSTMASTER: Send address changes or
subscription inquiries to PC Tech Journal, P.O. Box 2968,
Boulder, CO 80321.
Business Offices: Advertising, One Park Avenue, New
York, NY 10016. 212-725-7947. Subscription inquiries to PC
TECH JOURNAL, P.O. Box 2968, Boulder, CO 80321.
Subscription service: 212-725-3628. Back issues, send $7.00/copy
to PC TECH JOURNAL. Box CN 1914, Morristown, NJ 07960.
Editorial Office: PC TECH JOURNAL, The World Trade
Center, Suite 211, Baltimore, MD 21202. 301-576-0770. The
Source ID STY682. CompuServe 74156, 2365.
PC Tech Journal is an independent journal, not affiliated in any
way with International Business Machines Corporation. IBM is
a registered trademark of International Business Machines Corp.
Entire contents Copyright ® 1984 Ziff-Davis Publishing
Company. All rights reserved; reproduction in whole or in part
without permission is prohibited. Contact Jean Lamensdorf,
Manager, Reprints/Rights & Permissions. BPA membership
(Selected Market Audit Division) applied for October 1983.
DIRECTIONS Will Fastie
Mice Are Nice
... but performance is the key
T o mouse or not to mouse? That
has become one of the burning
questions in the continuing saga of
the man-machine interface.
Mice have been with us for
about 20 years. Credit is usually
given to Doug Englebart at SRI,
who invented a mechanical mouse
driven by wheels. Since then, there
have been a number of innovations,
including the replacement of the
wheels with a single ball bearing
and, more recently, the develop¬
ment of optical mice. In the late
1970s, mice began to creep into the
collective consciousness of the com¬
puter industry, and by the early
1980s more than one mouse was
available commercially.
Two events were probably re¬
sponsible for making the mouse so
highly visible and of such wide¬
spread general interest. The first
was Xerox's announcement of the
Star, an icon-based system with a
high-resolution graphics display
and, of course, a mouse. The ma¬
chine was slick and sexy, and it
drew crowds whenever it was dis¬
played. But if the first event was
like a stick of dynamite, the second
was an atom bomb: Apple an¬
nounced Macintosh, complete with
a mouse as a standard feature.
But that's strange. Mice for the
PC and other computers became
available and affordable long before
Mac was announced. What was it
about Mac that made mice so vis¬
ible, attractive, and desirable?
The answer is simple: Mac¬
Paint. A simple answer, yes, but a
most important one to understand.
MacPaint
What this Mac program did was to
demonstrate for the first time a
clear, utilitarian reason to use a
mouse. MacPaint and the mouse are
just made for each other,- it's a bril¬
liant combination. And the market¬
ing folks at Apple think so too :
MacPaint is selling its fair share of
Macs, all by itself. I won't bore you
with the details, but if you want a
good time, call your local Apple
dealer and get a Mac demo.
As for the importance of Mac¬
Paint on Macintosh, we'll return to
that issue in a minute.
Are Mice Good
for Anything?
Now that mice are so visible and
are attracting even the mass-market
consumer, the controversy over
their usefulness has become some¬
thing just short of violent.
On the one hand, Apple and
others are arguing that a mouse
makes it possible and simple to
point at things and that this makes
a computer easy to approach (be¬
cause we already know how to
point) and to use (because we are
such expert pointers, having had
years of prior experience). This is a
strong argument. To be convinced
of this, just watch as a neophyte
marches through the 10-minute
Mac tutorial, gains confidence, then
operates one of the Mac programs
with moderate, if hesitant, facility.
On the other hand, many
people, especially those in the text¬
processing industry or those selling
computers without mice, argue that I
many of the tasks for which a com¬
puter is used are text- or number-
oriented. In other words, typing is
still essential and the mouse is no
help at all. Furthermore, some ar¬
gue that a mouse in such circum¬
stances is actually detrimental, be¬
cause to activate a mouse-driven
function the user must remove at
least one hand from the keyboard
and place it on the mouse,- such a
move, they argue, is a distraction.
These points are well taken.
Is a mouse good for anything?
My answer is yes. I think a mouse
is perfect for two types of activities.
First, it is terrific for graphics appli¬
cations as long as the resolution is
not very high. The moderate reso¬
lutions of the PC and the somewhat
greater resolution of the Mac are
manageable,- the MacPaint software
provides a zoom that allows dot-by¬
dot precision. Again, a MacPaint
demonstration should remove any
doubts that anyone might harbor
about this assertion.
I refer to the second activity as
marking, and I define it as the act
of identifying for the computer a
"thing" upon which you would
like the program to act. In a graph¬
ics application, for example, you
might want a region tiled with a
pattern or a section erased. You
might identify the endpoints of a
line or the corners of a box to be
drawn. In a text application, you
might mark words, sentences, para¬
graphs, or arbitrary blocks of text
for removal, relocation, or special
formatting such as underlining,
bold, or italics. In a spreadsheet,
August 1984
5
DIRECTIONS
you might mark areas that need
copying or recalculation.
Nothing can beat the mouse for
marking. This is almost a certainty
for graphics applications, although
other devices (joysticks, digitizers,
trackballs) have been used for many
years with much success. It is less
obvious with text applications, but I
think mice have equal application
here as well.
Menus
There is one area in which I doubt
that mice are effective, and it hap¬
pens to be the one use for which
they have been most highly touted:
pop-up/pull-down menus.
Menus are highly desirable in a
complex system that is used by a
novice. Once the novice is trained,
however, menus tend to slow
things down. Many people have
said that the use of a mouse avoids
this problem, but here, for the first
time in the controversy, I strongly
disagree. And it is here that we can
begin to see some of the problems
associated with mice.
Unlike the keyboard, which is
a collection of discrete buttons in
well-defined and regular positions
(let's talk about the slash key some
other time, folks), the mouse is al¬
most an analog device. It is easy to
train yourself to home in on a con¬
trol key combination and eventu¬
ally to be able to do so without
looking. If you are a touch typist,
such training is even easier. With a
mouse, however, you have to grasp
the mouse, move the cursor to an
appropriate position, and press a
button. Simple? Yes, but it requires
one thing that use of the keyboard
does not: eye-hand coordination.
I know what you're thinking.
"We do that all the time! Piece of
cake!" Well, I'm sorry, but you
don't. Sure, if you are moving the
cursor under the letters in a sen¬
tence it helps if you coordinate the
activity visually. But there are
many times when you quickly
assess how many positions you have
to move and then count them out
without having to look. Try it
sometime. Do you really watch to
see if the cursor moves left three
columns on the spreadsheet, or do
you just instantly, almost without
thinking, smash the left arrow key?
And consider menus. Most
well-built menu systems offer ex¬
pert options that allow the user to
invoke the menu with a single key¬
stroke, spy the selection desired,
and then, usually without looking,
strike the next key to get the de¬
sired effect. That's why expert
WordStar users can make things
happen so quickly. In fact, even
though its choices for keys are com¬
pletely obscure, WordStar has some
well-considered human factors.
How about the mouse? Can you
count? No. It is imperative that you
be looking all the time to verify
that the movement of the cursor
matches your intentions. Can you
just pick off a menu selection?
Nope. Again, you must carefully
coordinate your hand movement
with visual feedback to move the
cursor to the right place on the list
of choices. In short, the process is
slow and tiring for the long haul.
"But wait a minute, Will. If
it's okay for marking, why not for
selecting?" The answer is simple.
Selecting requires precision move¬
ments at every step,- marking re¬
quires precision only at the begin¬
ning and end. No other technology
I know (at the price, that is) offers
the combination of precision and
speed that marking requires.
Performance
One other consideration that will
make or break mice has little or
nothing to do with the mouse itself.
For ultimate acceptance, a pro¬
gram using mice must make the
mouse perform well. For one thing,
the cursor must be rock-steady if
the mouse is not moving, and mi¬
nor oscillations must be dampened
or filtered out. For another, the cur¬
sor must move smoothly and with
sufficient resolution that any point
passed (for example, on a curve) can
register. The cursor must never lag
behind the mouse, so the driver
software must be able to get the
mouse movement to the cursor-up¬
date routine instantly. Finally, the
cursor must move in real time, re¬
gardless of the state of the applica¬
tion program.
Performance and responsiveness
that meet these criteria will make
mice an accepted peripheral on
small computers, even when they
are used in conjunction with text or
numeric applications.
You can get in touch with the edi¬
torial office of PC Tech Journal (in
Baltimore) via The Source or Com¬
puServe. Absolutely no advertising
or subscription business is con¬
ducted through these services!
The Source: STY682
CompuServe .- 74156,2365
We consider messages received
through these services as letters for
publication unless they indicate
otherwise. Mark mail as PRIVATE
if you do not wish publication.
—WE
6
PC Tech Journal
Mainframe Quality FORTRAN-^
Symbolic High-Level Debugging
... Complete Development Packages
Genesis Microsystems has the complete solution for all your 8086-family development needs:
FORTRAN 86
PASCAL 86
FORTRAN-77
• Ideal for porting mainframe FORTRAN programs.
• Arrays larger than 64K fully supported.
• Use 8087 for 100X floating point improvement. Produces in-line 8087 code.
• Meets the full ANSI FORTRAN-77 subset specification—no surprises.
• Link to MS-DOS EXE file or locate for burning PROMS for a target system.
GeneScope® Debugger
• Debug with GeneScope, our full-screen, symbolic, high level debugger. It features line
numbers, public and internal symbols, macros, help, program patching, and viewing your
source or listing while debugging. GeneScope saves your program’s display so you can debug
full-screen and graphics applications.
• GeneScope supports our languages and most other MS-DOS languages.
Other Products
• Quality PLM86, PASCAL, C86, and ASM86 from Intel also
available. All produce in-line 8087 code and debug
symbols for GeneScope; most support new 80186 in¬
structions. In-circuit emulation for 8086, 8088, 80186
and 80188 coming soon.
Run on IBM-PC, XT, Compaq, TI Professional, DEC Rain¬
bow, or IBM compatibles with 192K memory.
196 Castro Street, Mountain View, CA 94041
(415) 964-9001 Telex: 4998093 GENMS UI
CIRCLE NO. 142 ON READER SERVICE CARD
INTERNATIONAL DISTRIBUTORS • Instrumatic: Deutschland-Munchen, Tel. 89/85 20 63 • Espana-Madrid, Tel. 1/250 25 77-Malaga, Tel. 5/221 38 98 • Schwelz-Rueschlikon, Tel. 1/724 14 10-Geneve, Tel. 022/36 08 30
• United Kingdom—High Wycombe, Tel. 494 450 336 • Israel—Savyon: Micro-Bit, Tel. 03-380098 • Japan—Tokyo: Asahi Business Consultant Co., Tel (03) 543-3161; Showa System Laboratory, Tel. (03) 361-7131.
What do you get when you cross
1200 baud, free on-line time,
and extra features at a price Hayes
can’t match?
Shopping for a modem
doesn’t have to be a riddle. A
tedious sifting through claims
and counterclaims. A quest
for the best that raises more
questions than it answers.
The new MultiModem,
from Multi-Tech Systems,
gives you the right answers
from the start. The answers to
all your questions about what
a first-rate intelligent modem
should do for you.
Data Transmission
Speed?
The MultiModem gives
you a choice—either 1200 or
300 bits per second. 1200 for
fast, efficient communications
and lower long-distance
charges. Like when you’re
downloading data from the
corporate computer, or swap¬
ping files with a friend across
the country. 300 bps for your
less demanding applications,
like checking out bulletin
boards, playing games, or
having on-line keyboard
conversations.
Free On-Line Time?
With the MultiModem you
get CompuServe’s DemoPak
—a free two-hour demonstra¬
tion of their service, and up to
seven more free hours of on¬
line time if vou subscribe. You
also get a $50 usage credit
from NewsNet, a service
which lets you tap into 150
different specialized business
newsletters.
Intelligence? Extra
Features?
Of course, the Multi-
Modem automatically dials,
answers, and disconnects.
But it does a few extra things
too, things the Hayes Smart-
modem 1200™ doesn’t. Like
recognize dial tones and busy
signals, so the MultiModem
will automatically redial, or
automatically try a different
number. And it remembers
phone numbers too, up to six
of them, in its battery-backed
memory.
Trademarks— MultiModem. MultiCom PC: Multi-Tech
Systems. Inc —CompuServe: CompuServe Information
Services, anH&RBlock company—NewsNet: NewsNet.
tnc.—Smartmodem: Hayes Microcomputer Products.
Inc —Crosstalk: Microstul. Inc —Data Capture: Southeast¬
ern Software — PC-Talk III: FreewarelThe Headlands Press.
MultiModem.
Hayes-compatibility?
Yes, the MultiModem is
Hayes-compatible. (Most soft¬
ware requires modems that
are.) That means the Multi-
Modem will run with popular
communications programs
like Crosstalk XVI, Data
Capture, PC-Talk III, our own
MultiCom PC, and dozens of
others.
What About Price?
At $549, the MultiModem
retails for $150 less than the
Smartmodem™. You get
Hayes-compatibility and so
much more—for so much
less.
What do you get when
you cross all these things?
The MultiModem. From Multi-
Tech Systems—a company
that’s been making top-quality
modems for over thirteen
years.
Isn’t this the answer
you’ve been looking for?
CIRCLE NO. 204 ON READER SERVICE CARD
For the name of your
local distributor, write to
Multi-Tech Systems, Inc.
82 Second Avenue S.E.
New Brighton, Minnesota 55112.
Or call us at (612) 631-3550.
Multi lech A
Systems
The right answer every time.
The new HERCULES
Cote Card
gives you the
parallel port
IBM foigot-for 4 more.
And it fits into the XT’s short slot.
The new Hercules Color Card gives you these five important
features in a color graphics card.
1. A parallel printer port. If you buy IBM’s color card, you
won’t get a parallel port for a printer. Ugh. You’ve just wasted a
valuable slot for an extra printer card.
2. It’s short. Our new Color Card uses advanced gate array
technology to reduce the chip count by 30 and use less than half the
board space IBM does. Which makes the new Hercules Color Card
perfect for the short slot in an XT.
3. Fully IBM compatible. Any program that runs on IBM’s
color card will run on the new Hercules Color Card. With RGB or
composite video, any IBM compatible monitor will work too.
4. Hercules Graphics Card compatible. If you have a Hercules
Graphics Card (model GB101 or later), or plan to buy one, an
ingenious software switch on our new Color Card allows both cards
to be kept in the system at the same time.
5. Low price. At a suggested list price of $245, the new
Hercules Color Card has all these features for only $1 more than
IBM’s color card.
Call for our free information kit. See why the
company that made the first graphics card for
the IBM PC still makes the best.
Hercules. We’re
strong on graphics.
800 255 5550 Ext. 423
Address: Hercules, 2550 Ninth St, Berkeley, CA 94710 Ph: 415 540-6000 Telex; 754063 Features: 2 year warranty Foreign distributors:
Compuserve/Canada; Reflex/U.K.; Computer 2000/W. Germany; Edisoft/France; Source Ware/Australia. Trademarks/Owners: Hercules/Hercules
Computer Technology; IBM/International Business Machines.
This price comparison is based on the Suggested List Price as of2.22.84 for the IBM Color Graphics Adapter.
Here are two beautiful ways to get small
computers on line with the mainframe
quickly, easily and economically—yours
from DCA, home of the industry’s first co¬
axial cable links between small computers
and IBM 3270 networks.
IRMAis the Decision Support Interface™that gets IBM Personal Computers and IBM
PC XTs into the 3270 mainstream via direct attachment to 3274 or 3276 controllers.
IRMA, IRMALINE, and Decision Support Interface are trademarks of Digital Communications Associates, Inc.
IRMA and IRMALINE.
Ilie DCA family connections that help
small computers think big.
MAIN
FRAME
3705 r0^-fS-
IBM
3274
<
IBM
cr
PC
3!?“
L-
<
IBM
DC
PC
IRMALINE does the same for remote IBM PCs, IBM PC XTs, Apple Lisas and DEC
Rainbows, among others, with just a local phone call to a nearby 3270 controller.
Both can go to work literally minutes out of the box. Both provide mainframe data
access, selection and storage, and data communication back to the mainframe.
Put first things first. Find out more about the DCA first family of 3270 micro/main¬
frame connections. For information, write DCA, 303 Technology Park,
Norcross, Georgia 30092. Phone (404) 448-1400, TLX 26133 3 ■
DCA ATL. Or call us toll-free (800) 241-IRMA.
The new home of IRMA, IRMALINE and the rest of the TAC family.
Digital Communications Associates. Inc
CIRCLE NO. 444 ON READER SERVICE CARD
IBM PC and IBM PC XT are trademarks of International Business Machines Corporation. Apple and Lisa are trademarks of Apple Computer, Inc. Rainbow is a trademark of Digital Equipment Corporation
get the results you
of us, you bought
r IBM PC/XT to
a few simple
But with the
e, the PC can
demand:
Mainframe-quality solutions
for your PC
With MDBS III and your PC, you
can build mainframe-quality
application systems. Integrated
accounting systems. Order entry.
MRP. Job costing. Library
management. Banking. Logistics.
To name a few.
MDBS III is the most advanced data
base management system running
under PCDOS, MSDOS, CP/M-86
and MP/M-86. In fact, many have
said it’s the only authentic DBMS
available on 8 and 16 bit
microcomputers. MDBS III provides
many facilities otherwise available
only on mainframe DBMSs.
MDBS III allows application
developers to define data base
structures in the most natural and
logical way, without resorting to
redundancy to describe data
relationships. Its truly innovative data
structuring capabilities surpass but
also accommodate the older
relational, hierarchical and
CODASYL-network architectures.
That means power for your PC and
flexibility for you.
How to get the most from
your PC
Get MDBS III and get more of what
• Post-relational, extended network
modeling of real-world data
relationships for truly integrated
application systems
• English-like non-procedural query
language for spur of the moment
questions
• Report generator for quickly
specifying customized reports
• Automatic guarantees of data and
relationship integrity
• Recovery and restart capabilities for
physical data protection
• Active and passive locking down to
the record level, supporting up to 127
simultaneous users
• Redundancy and chaining
eliminated, plus full data compression
for optimum efficiency
• Data independence for easy
maintenance
• Compatibility with all major
programming languages for flexibility
and convenience
• Encryption and access protection
down to the field level for
unparalleled data security
• Fine-tuning features for optimizing
performance
• Compatibility with SCREEN
MASTER, the PC’s most
comprehensive screen management
system
• Interface to Knowledge Man, the
first system to integrate third
generation spreadsheet and relational
data management
So if you want to improve your
productivity and your PC’s
capabilities, get MDBS III.
u
De
Re
Call 800-323-3629 today.
Please send me the following:
□ Set(s) of documentation, including
MDBS III manual and Data Base Primer
and Guide for $90.00 each plus $10.00
shipping and handling per set.* (Regular
price is $100.00)
□ Set(s) of “How to Evaluate and Select
a DBMS” for $5.00 plus $1.00 shipping
and handling.*
□ Professional Training Course Information.
□ Please have a MDBS/Application
Development Products Account
Representative contact me. __ _
□ MDBS III information.
♦Prices subject to change without notice.
Illinois residents please add 6% sales tax.
Name_
Company_
Address_
City_
State _ Zip_
Card No. -
Expiration Date
Bank No. if MC
Signature_
© Mi
V'
Phone ( )_
We accept VISA, MASTERCARD and
American Express _
SFBT7XX
Micro Data Base Systems, Inc.
Application Development
Products
(312) 981-9200
85 W. Algonquin Road-Suite 400
Arlington Heights, IL 60005
MDBS III. KnowledgeMan and SCREEN MASTER arc trademarks
of Micro Data Base Systems, Inc.; PCDOS. and PC/XT are
trademarks of IBM.; MSDOS is a trademark of MICROSOFT.;
CP/M-86 and MP/M-86 are trademarks of Digital Research.
I
I
I
-I
CIRCLE NO. 118 ON READER SERVICE CARD
FOR THE IBM® PC, IBM - XT. COMPAQ™
CORONA™ CORONA™ PORTABLE. LEADING EDGE,' 5 EAGLE PC.* TAVA.™
We’ve turned
hard disk storage into
an affordable reality.
Half-height
5 Mbyte removable
hard disk system.
Allows easy primary
or backup storage
through inter¬
changeable disks.
floppy disk system.
Coming Soon
Half-height streamer
tape system. Ideal data
backup system for
large-scale
storage.
$1095
Half-height 10
Mbyte internal hard
disk system.
$895 i V- mm. Half-height external
hard disk system (10,
20, or 33 Mbyte). Also
accommodates
half-height backup
system.
$1295-$2295
Kamerman Labs combines the speed and storage capacity
of hard disk technology with prices you can’t afford to pass up.
technology without the excessive
costs.
Tested and formatted.
All Kamerman Labs systems have
been thoroughly tested and formatted
before delivery.
Full warranty and technical
support.
Lower prices than ever. Kamerman Labs backs all its prod-
Because you deal directly with
Kamerman Labs, we offer you re¬
markably low prices. Finally, you can
realize the full benefits of hard disk
A dramatic leap in performance for
your personal computer.
Even the smallest Kamerman Labs
hard disk unit gives you 30 times the
storage capacity of a typical floppy
disk. Sophisticated business and pro¬
fessional data storage requirements
can now be handled with ease.
Better yet, you can access data up
to 10 times faster than with floppies.
Spend more time working and less
time waiting.
And it’s easy to use. Kamerman
Labs lets you boot directly off the hard
disk, just like the IBM XT.
A complete backup solution.
Backup of hard disk data is a critical
requirement in many microcomputer
applications, so Kamerman Labs
offers several reliable and cost-
effective backup devices that are fully
compatible with our hard disk units.
IBM is a registered trademark of International Business
Machines Corp.
Compaq is a trademark of Compaq Computer Corp.
Corona is a trademark of Corona Data Systems.
Leading Edge is a registered trademark of Leading Edge
Products. Inc.
Eagle is a registered trademark of Eagle Computers.
TAVA is a trademark of TAVA Corporation.
Kamerman
ucts with a full one-year warranty on
both parts and labor. Plus you get
prompt technical support through a
toll-free hotline number.
To order, call toll-free
800-522-2237.
In Oregon, Hawaii and Alaska call
503-626-6877.
All Kamerman Labs units come in either internal or external
configurations.
Labs
8054 S.W. Nimbus, Bldg. 6, Beaverton, Or 97005
Phone 503-626-6877
CIRCLE NO. 101 ON READER SERVICE CARD
PORTABLE'S COMPLAINT
I purchased an IBM PC Portable and
had to return it because of its limita¬
tions. IBM states that the following op¬
tions, if used, must reside in slot num¬
ber two: 64/256K memory expansion
option; IBM PC cluster adapter,- expan¬
sion unit 001 hard disk.
Therefore, if you want the hard
disk you cannot have more than 256K
of memory, i.e., no PC/IX UNIX or
any program using more than 256K.
The IBM Product Center refunded my
money and I have ordered a PC/XT.
Peter A. Hanson
Arlington, TX
The Best of Timers
I am writing to thank Bob Smith and
Tom Puckett for their wonderful arti¬
cle, "Life in the Fast Lane" (April 1984,
page 62). Like me, hundreds of others
should find useful applications for the
technique the article explained so well.
After all, time is one of the fundamen¬
tal units of measure.
The technique the authors de¬
scribed served me well in the following
application. I needed a way to produce
a repetitive event at a smooth rate of
once every one-hundreth of a second.
Using only the BIOS timer it was not
possible to repeat the event smoothly
because of the lower resolution of the
timer. Using the low-order extension
from the programmable interval timer,
it was possible to regulate repetitive
events even at speeds nearing CPU ex¬
ecution speeds.
The alternative method of using
carefully designed delay loops for tim¬
ing purposes has a number of disadvan¬
tages. The two main ones are the
inability to do any other useful work
while the delay loop is executing, and
the fact that external interruptions take
time, too, and cause the delay loop to
delay longer than expected.
This timing technique is going to
remain near the top of my program¬
ming toolbox. Thank you for bringing
it to all of us.
Robert B. Stam
Jackson, MS
The Facts on muLISP
In "The PC Speaks LISP" (William G.
Wong, April 1984, page 112), there are
several factual errors:
-muLISP runs not only under PC-
DOS but on any computer running the
MS-DOS operating system (for example,
Zenith Z-100, TI Professional, Compaq,
etc.). However, muLISP does not run
under CP/M-86 as stated in the article.
-D-code reduces the size of user-
defined muLISP functions by 50 to 60
percent (making them more than twice
as dense as a linked list) rather than
"by 20 to 35 percent" as stated in "The
PC Speaks LISP."
-muLISP uses two stacks (a vari¬
able stack and a control stack) rather
than three. The control stack uses the
8086/88 hardware stack to store refer¬
ences to d-code and return addresses.
Albert D. Rich
Applied logician
The Soft Warehouse
Honolulu, HI
Mr. Rich also pointed out in his letter
that the correct address for The Soft
Warehouse is P.O. Box 11174, Honolulu,
HI 96828; and for Microsoft, 10700
Northup Way, Bellevue, WA 98009. He
further observed that the current ver¬
sion of muLISP resolves many of the de¬
ficiencies described in the article. The
newer version, muLISP-83, will be con¬
sidered for review at a later date.
Mouse Tale Revised
The Mouse Systems software reviewed
in "A Tale of Two Mice" (Jeff Dunte-
mann, April 1984, page 150), was ver¬
sion 2.0A. We released a new version,
3.0 on February 15, 1984. Some prob¬
lems mentioned in the review were
fixed in the new version.
The reported difficulties with some
asynchronous communications adapters
have been addressed with the new re¬
lease of the mouse software. We are
now able to work with more PC system
configurations containing nonstandard
communications ports or modem cards.
We have been unable to test the new
software on an Ultraboard, but we be¬
lieve that even if the Ultraboard port
does not work as a mouse port, another
port in such a system will work as ei¬
ther COM1: or COM2:.
The jumpy cursor problem in the
Microsoft Mouse emulator, MSMOUSE,
has been fixed. We have not had a
problem with high-resolution mode.
There was some confusion about
the Microsoft and Lattice C compiler
interface information for MouseWin-
dow being available by request from us.
The interface information is for
MSMOUSE and is included in the cur¬
rent manual. Users with earlier ver¬
sions of the product can get the infor¬
mation from us at no charge.
We released a new version of
MouseWindow, 2.0, in April. One new
feature of MouseWindow is language
support for the Microsoft and Lattice C
compilers. Numerous other features
have been added, including automatic
cursor tracking, event queue processing,
color support, and additional graphics
adapter support.
The problem of garbage appearing
on the screen while moving the mouse
in WordStar is a WordStar "feature."
WordStar apparently cannot handle
large amounts of repeated cursor move-
14
PC Tech Journal
Do it yourself!
When developing effective applications
for the PC is a matter you want to take
into your own hands, first get your
hands on the APL^PLUS®/PC System
from STSC. This unique application de¬
velopment tool gives you the power to
deliver totally integrated, highly efficient
solutions to problems that conventional
software simply can’t handle.
The APL^PLUS/PC System is the
most advanced application development
system available today And it includes
enhancements for the professional,
hobbyist, or novice programmer.
—Advanced screen management
facility with windowing and scrolling
features.
—Complete on-line HELP facility for
novice users.
—Powerful communication capability
for moving data between computers.
—Comprehensive color graphics
capability ; and much more.
Because of the efficiency of the
APL^PLUS/PC System, you can devel¬
op programs 4 to 10 times faster than
with conventional languages like BASIC
or FORTRAN. And the system can be
integrated with other applications
you’ve already bought, or used to link
those that aren’t speaking to each other.
It doesn’t demand that you abandon
those skills you’ve learned or the soft¬
ware you’ve come to love. But it does
enhance your programming power, so
you can do what you do even better!
Get the advanced capabilities of the
APL^PLUS/PC System foronly $595.00,
a valuable investment when you can have
things done your own special way. To
order the APL^PLUS/PC System see
your local dealer or contact STSC, Inc.,
(800) 592-0050, 2115 East Jefferson
Street, Rockville, Maryland 20852,
(301) 984-5030 (Call collect).
CIRCLE NO. 208 ON READER SERVICE CARD
STSC
A Contel Company
The APL^PLUS/PC System runs on the IBM PC with 192
KB of RAM. as well as on a number of compatible ma¬
chines.
APL-A-PLUS is a service mark and trademark of STSC, Inc.,
registered in the United States Patent and Trademark Office
and in certain other countries.
PROGRAMMER’S
DEVELOPMENT TOOLS
AND ACCESSORIES
IBM Personal Computer
Language and Utility Specialists
OPERATING SYSTEMS:
UnX-ll IDS Requires 10 MB hard disk. $895 CALL
Concurrent DOS DRI New 350 CALL
X-shell SDC UNIX enhancement for PC-DOS 225 205
Concurrent CP/M-86 DRI Multitasking 350 249
(Call for CP/M-86 products)
LANGUAGES:
Lattice C. Compiler New LOW Price $500 299
PASCAL Compiler Microsoft 350 255
Pascal MT + for PCDOS DRI 600 409
ADA + Tools Janus 700 499
C-86 Computer Innovations SALE 395 299
DeSmet C Compiler with Debugger 159 145
BASIC Compiler Microsoft 395 275
Professional BASIC Morgan Computing 345 295
Level II Cobol DRI 1600 1189
Fortran Compiler Microsoft 350 249
Assembler Plus Tools DRI 200 159
*** STSC APL*Plus/PC ***
We can support you!
Complete demonstration package with
diskette for $5, refundable with purchase.
Total APL system including character
generator chip.
Manufacturer List $595 Our Price $540
Break Free of BASIC’s 64k Workspace
Limitations Without CHAINING.
**** APC MEGABASIC ****
Extend BASIC addressable workspace
to 1 Megabyte.
Extremely fast run-time semi-compiler.
Manufacturer List $400 Our Price $349
30 Day Money Back Guarantee!
Translator for PC BASIC to MEGABASIC
available.
UTILITIES:
CodeSmith-86 Debugger Visual Age $145 129
Profiler DWB & Associates New 175 149
Btrieve SoftCraft 245 205
Windows For C by Creative Solutions 150 119
Translator APC PC-BASiC-to-MEGA BASIC 195 175
0PT-TECH Sort High Performance Utility 99 87
C Functions Lib. by Greenleaf Software 175 159
AKA ALIAS Soft Shell Technology 60 57
Float-87 8087 Software Support 125 110
Panel Screen Design/Editing 350 299
C-Food Smorgasbord 150 119
Halo Color Graphic Utilities by Lattice 200 159
Plink-86 Overlay Linkage Editor 395 315
MetaWINDOW LISA-Like Windows for PC 150 139
PROGRAM EDITORS:
Pmate Phoenix Programmer's must! $ 225 175
micro/SPF Digital Research 450 359
VEDIT CompuView 150 119
CALL FOR~LOW~lPRICES
ON OTHER PRODUCTS
Quantity Discounts Available!
■^ST Mi Visa/MC
H SiiB NO EXTRA CHARGE
Account is charged when order is shipped
For orders call:
1-800-336-1166
Programmer’s Connection
O 281 Martinel Drive
* - Kent, Ohio 44240
(216) 678-4301 (In Ohio)
“Programmers Serving Programmers”
LETTERS
ment. The mouse software can generate
keystrokes faster than the "auto-repeat"
feature of the standard IBM keyboard
handler. We are investigating ways to
provide the option of limiting the
mouse keyboard input rate in order to
work better with WordStar and other
programs that cannot handle high vol¬
umes of keyboard type-ahead.
Eileen S. Milligan
Customer Service Manager
Mouse Systems
Santa Clara, CA
Thanks for your recent article "A Tale
of Two Mice," which was of great in¬
terest to us at LOGITECH. I would like
to commend you on several points and
correct you on one or two others.
I appreciated your enthusiasm
about the mouse, which is the easiest
input device to use and the most effi¬
cient way to position the pointer on the
screen. I also appreciated your observa¬
tion that Microsoft should be the stan¬
dard for mouse interface software. We
agree and have developed a driver for
our mice that makes them completely
Microsoft-compatible.
I must take issue with your de¬
scription of the Microsoft Mouse, how¬
ever. You describe a mouse that uses
mechanical tracking and optical decod¬
ing—a perfect description of the opto¬
mechanical LOGIMOUSE. Microsoft's
mouse is electromechanical, a disadvan¬
tage for both wear and tear and resolu¬
tion. The optomechanical LOGIMOUSE
mouse can be guaranteed for more than
three times the mileage and more than
twice the resolution of any other mouse
on the market.
You describe the Xerox mouse as
looking "complicated and fragile" in¬
side. Please look inside our mouse. We
are proud of how elegantly simple and
rugged it is inside and out.
Thanks again for your article. We
will look forward to more mouse news
from you in the future.
Pierluigi Zappacosta
President
LOGITECH, Inc.
Redwood City, CA
Disk Drive Dilemma
As a charter subscriber to PC Tech Jour¬
nal and a long-time IBM PC owner, I
am now faced with the necessity of re¬
placing the single-sided disk drives in
my unit with double-sided ones. In the
process of deciding how to do this I
made a surprising discovery.
Apparently the major manufactur¬
ers of floppy disk drives have never ad¬
vertised in any of the half-dozen com¬
puter magazines I receive, nor have
their products ever appeared in new
product announcements. I have spent
several hours searching for mailing ad¬
dresses for Tandon, Teac, and Panasonic
without finding any. They also do not
appear in my National Directory of Ad¬
dresses and Telephone Numbers or the
Industrial Research and Development
Telephone Directory.
The nearest computer dealer from
here is a 60-mile round trip or a $2 toll
call, so I depend on magazines and mail
order. The mail-order houses' advertise¬
ments list a bewildering variety of part
numbers with no descriptions, and the
girls at the 800 numbers know nothing
about what they mean. I haven't seen
any detailed articles on the selection
and replacement of PC disk drives.
It seems that you could provide a
real service to your readers if you
would: (1) publish articles devoted to
the disk drive replacement problems
that must affect thousands of people
who purchased the original IBM
complement of equipment; (2) publish a
personal computer industry directory
with names, addresses, and telephone
numbers of all major suppliers of PC-
related equipment so people like me
can write for detailed product descrip¬
tions and catalogues.
I am sure many of your readers
would find this information useful.
Michael W. Csontos
Lima, NY
The manufacturers of diskette drives
usually do not advertise their wares di¬
rectly. Instead, third-party distributors
make the products available. You will
find a number of such companies repre¬
sented in the advertisements in this
issue of PC Tech Journal.
A number of buying guides have
been published, including our own PC:
The Buyers Guide. You can get your
own for $7.95 (plus $1 shipping and
handling, $13 outside the U.S.). You
will find it in many book and computer
stores, or write PC: The Buyers Guide,
P.O. Box 555, Morris Plains NJ 07950.
—WF
"Missed the Mark, Chaps"
I read your magazine here in the good
old U.K. with the greatest of interest, as
we have nothing to match it for in-
depth technical content about all things
related to the IBM PC. It was therefore
with great amusement that I read your
comments on the micro market in the
U.K. ("The Tech Journal Newsline,"
PC Tech Journal
CIRCLE NO. 226 ON READER SERVICE CARD
Can Your Word Processor
It can if you have
WordPerfect!
Try this test. While using
your favorite word
processor, put the c
in the middle of a
paragraph, turn
insert on,
and type.
Surprisingly,
very few of the
leading word
processors can keep
up with 70, 60, or even 50
words per minute. WordPerfect
keeps up easily at speeds well
above 100*.
Delays are very frustrating, and
frustration can easily lower the
quality of your writing.
Try WordPerfect.
Keep Up With Your 100
WPM Typist?
Now, maybe this doesn’t matter
to you, because you don’t type
100 or even 50 WPM. But you
still don’t want to wait forever to
go to the beginning of your
document, go to page 5, save
your document, or add a
paragraph.
At SSI anything less than fast is
unacceptable. And not just
because time is money, or
because wasting time is foolish.
You’ll love it-
not only for the
features we’ve b
but also for the
delays we left
out.
*Based on tests performed
an IBM PC
CIRCLE NO. 263 ON READER SERVICE CARD
SATELLITE SOFTWARE INTERNATIONAL
288 WEST CENTER STREET, OREM, UTAH 84057 (801) 224-4000 TELEX 820-618
Treasure Chest of Software
jrCaptain and IstMATE
TEGVMR
the power behind the PC™
with Tecmar’s Captain,
multifunction boards
Your PC can finally do all those wonderful things you’ve
dreamed about — with the Treasure Chest of Software.
Eliminate the need for many desk top accessories when you
discover Tecmar’s new easy to use software technology.
With the press of a key you access many Treasure Chest
programs without having to exit from a program you are
now using. This Treasure Chest of Software gives your PC
more power for:
Information Management
•Calculator
•Sorting Program
•Electronic Rolodex*
•Mailing List
•Electronic Notepad
• Forms Generator - create
letters, labels & reports
Time Management
• Appointment Alert
•Calendar Generator
•Automatic Time and Date
System Improvements
•Background Printing - frees
PC for other work
•Disk Simulator in RAM •Rolodex is a trademark of The Rolodex Corp.
You’ll never want to turn your computer off once you ex¬
perience the ease of use, efficiency and enjoyment of the
Treasure Chest of Software.
Hardware Diagnostics
•Memory Diagnostics
•Printer Diagnostics
•Clock-Calendar Diagnostics
Information Security
•Confidential File Coding
Use at Home
•Checkbook Balancer
•Inventory Management
•Banner Generator - prints
letters 4.5 inches tall
•Tic-Tac-Toe
•and more !
INTRODUCTORY OFFER
For the IBM PC: Captain & IstMATE
• 0 to 384 KBytes of Memory on • Clock-Calendar with battery
the Captain Board • Serial Communications Port
• 0 to 256 KBytes of Memory on • Parallel Printer Port
the IstMATE Board • Treasure Chest of Software
for the PQ'r: theJrCaptain
• 0 to 128 KBytes of Memory • Clock-Calendar with battery
• Upgrade to 512 KBytes with • Parallel Printer Port
addition of jrCadet Board • Treasure Chest of Software
Tecmar, Inc. 6225 Cochran Road Solon (Cleveland), Ohio 44139-3377
Phone:(216)349-0600 Telex:466692
CIRCLE NO. 154 ON READER SERVICE CARD
All The Power & Performance You Can Handle
In One Exceptional Multi-Function Board.
W hen it comes to getting more usable features, greater
performance, and better benefits into—and out of—
your IBM Personal Computer... Rio Plus II is the very
best multi-function board you can buy. Why? Because
the Rio Plus II includes the very best
features of two power-packed
multi-function boards (the Rio
Plus, and Super Rio)—conveniently
built into one. Without a bet, the
Rio Plus II offers the most complete
one slot answer to your need for
greater memory and additional
ports.
"Pack" The Odds In Your Favor
Now, you can have almost everything you want or need.
All in one slot. Rio Plus II gives you: One or two serial ports;
a parallel port; an IBM compatible game port; the ‘PC
Accelerator' software (offering emulation of two RAM disks
and a parallel print buffer); a battery operated clock calendar
(remembers date/time even with PC turned off); and
additional memory of up to 384K.
Using the RS-232C serial ports, you can easily connect
mice, modems, plotters, (serial) printers, or other necessary
peripherals. With the parallel port, youll be able to operate
any IBM compatible (parallel) printer, or SASI (Shugart
Associates Standard Interface) hard disk
controller. And courtesy of the PC Accelerator™,
you get printer buffering and RAM disks which
can even survive a warm boot. (For example, do
an ordinary reset, and all the data entered on
both RAM disks will still be there. Every time.)
The Winning Combination
Rio Plus II is totally software compatible with
IBM’s hardware adapter boards. And, the Rio Plus
II saves you time, money, slots... and hassle.
Youll have additional memory and functions
available— exactly when you need them. At a
price that’s very competitive. And just think what you can do
with all the other slots.
Rio Plus II. The only (card) game in town that consistently
lets you win big. See your local dealer for the inside story. Or
call or write STB Systems, Inc., 601 North Glenville,
Richardson, Texas 75081 (214) 234-8750.
CIRCLE NO. 200 ON READER SERVICE CARD
STB Systems, Inc.
Expanding Microcomputing
IBM PC, XT are registered trademarks of International Business Machines Corporation.
PC Accelerator is a registered trademark of ResiCorp.
LETTERS
Sol Libes, March 1984, page 28). I am
afraid that, although you get top marks
for most areas, you missed the mark by
a long way in this short article.
Yes, IBM PCs are primarily sold to
the business user. No, they are not all
used as terminals to large mainframes
(some are). Most are used with produc¬
tivity software such as Lotus 1 -2-3, Mul¬
tiplan, and Multimate, or in small com¬
panies for sales ledgers, etc.
No, the Sirius machine (Victor
9000) is not the most popular desktop
system. That place is almost certainly
occupied by the IBM PC. The reason it
is reported otherwise is that only sales
via retail outlets other than IBM retail
centres are included in published fig¬
ures, which exclude all sales via IBM's
VPA program and via IBM retail cen¬
tres—a substantial number of the total
IBM PC sales in this country.
Yes, we have active PC User
Groups, the largest of which has active
branches all over the country.
Yes, most of the packaged general
application software is U.S.-produced
(most U.K. software tends to be vertical
market packages). No, it does not take
typically six months before packages be¬
come available,- the mainline software
tends to hit our shore within a month
of it being actually available in the U.S.
(a la Lotus, Microsoft, Ashton-Tate, Mi¬
crorim, MicroPro). I stress the actually
available software as there seems a ten¬
dency in the U.S. to pre-advertise soft¬
ware heavily. The only notable excep¬
tion to this availability is IBM itself.
Of all the statements in this arti¬
cle, the most misleading was that the
Apple /// is more popular than the Ap¬
ple He. You obviously have not talked
to Apple on this one (or if you have
they gave you the wrong information).
The Apple He outsells the Apple ///
by at least fifty to one.
I hope that this letter is taken the
way it is meant. It is just that there ap¬
pears to be an epidemic of articles in
U.S. magazines stating how backward
in the micro field we are in the U.K.
C. Budgen
P&P Micro Distributors
London, England
San Jose, CA
Mathematical Notes
Upon reading Michael Linley's reply
(February 1984, page 22) to Amr Raz-
zak's letter (November/December 1983,
page 26) complaining about the hexa¬
decimal notation used in "The IBM
Color/Graphics Adapter" (Thomas V.
Hoffman, July/August 1983, page 26), I
KEYSWAP, =PROKEY*
+10 NEW FUNCTIONS
\
KEYSWAP is the most advanced Macro Processor
available for the IBM PC* * - including ALL of
PROKEY’s* functions and many more!
KEYSWAP creates yet another dimension in
USER FRIENDLINESS.
In addition to the standard
macro features, the user can:
Create custom Help Menus that can
be recalled from within any program.
Create “lessons” that can be played back at
variable speed for tutorial or demo purposes
Create AND MODIFY macros at ANY time without
affecting the applications program
Create a single macro definition as large as 64K
Redefine ANY keys (i.e. shift) or define ANY macro
character
IMAGINE: automatic time and date display; fixed
and variable definition fields; audible feedback on
toggle keys; alternate cursor control selection; and
many more features!
KEYSWAP - State of the Art keyboard utility software.
PRICE
$119.00 (Money back guarantee)
MA res add 5% sis tx
FOR ORDERS OR INFO CALL OR WRITE
(Call for special introductory offer)
RICKERDATA
PO BOX 998 MELROSE, MA 02176(617) 662-0856
MC & VISA ACCEPTED
•Registered Trademark RoseSoft * ‘Registered Trademark IBM
CIRCLE NO. 150 ON READER SERVICE CARD
August 1984
21
SOFTWARE DEVELOPERS
LESS THAN $400 WILL TURN
YOUR PC INTO A POWERFUL
DEVELOPMENT WORKSTATION.
Until now, software developers who
wanted the power of high-priced develop¬
ment systems had to pay a high price for it.
There was no choice.
Now, there’s a solution.. .whether you’re
developing programs to run on minicom¬
puters or micros, and regardless of what
target operating system you’re using.
If an IBM® PC, PC XT™, or compatible is
part of your development environment, the
uNETix Software Development ToolKit will
increase your productivity.
LANTECH SYSTEMS has put an end to
the “no choice” problem with a collection
of powerful software products which make
your PC a versatile, but low cost develop¬
ment workstation.
The uNETix Software Development Tool-
Kit contains:
• uNETix SFS —the powerful multi-tasking,
UNIX™ compatible operating system,
which is at the heart of the LANTECH
SYSTEMS product line. The unique “Win¬
dow Management” feature provided with
uNETix allows easy integration of applica¬
tions software and permits data to be
moved between various window processes
(such as the Emulator or Editor described
below).
• VT100® Terminal Emulator (VTTY) —
permits up-loading and down-loading of
data between your PC and a larger mini
or mainframe computer. This function, of
course, means that larger-scale develop¬
ment tasks can be run on more powerful
machines, while permitting you to pro¬
cess other tasks locally.
• TEXT EDITOR — allows powerful, full¬
screen editing at the workstation level or
you can use your familiar mainframe edi¬
tor through the terminal emulator. Several
popular editors are available.
The LANTECH SYSTEMS uNETix Soft¬
ware Development ToolKit is the solution to
your software development needs, at an
affordable price of $399. Quantity discounts
are available.
Optional Lattice® C Compilers are avail¬
able from LANTECH SYSTEMS to develop
programs locally to run under uNETix, or
PC DOS™. Programs developed for uNETix
can, of course, be easily ported to other
UNIX environments. Lattice C Cross Com¬
pilers are also available for a variety of
minicomputers.
To order your ToolKit, or to get more in¬
formation contact:
LANTnMSH SYSTEMS
INCORPORATED
9635 WENDELL ROAD, DALLAS, TEXAS 75243
(214) 340-4932 EX. 200
uNETix is a trademark of Lantech Systems, Inc. IBM is a registered trademark of International Business Machines. UNIX is a trademark of Bell Laboratories, AT&T Technologies. VT100 is a trademark of Digital
Equipment Corp. Lattice is a registered trademark of Lattice, Inc. PC DOS is a trademark of International Business Machines. XT is a trademark of International Business Machines. Minimum system configuration is
IBM PC with 512K RAM, monochrome or color display. RS232 port required for VT100 connection.
CIRCLE NO. 185 ON READER SERVICE CARD
Your IBM PC Or XT Graphics Are Only
As Good As What's Under The Hood.
Get Smooth Clean Performance With Graphix Plus II™.
Single Board Support Of Both Color And Monochrome Display.
W hen it comes to color/graphics adapter boards, your
IBM Personal Computer—and you—deserve only the
best. That’s why Graphix Plus II gives you
outstanding graphics.. .and a whole lot
more. With Graphix Plus II, you’ll get
50% faster, flicker-free scrolling over
IBM’s color/graphics board. And, the
Graphix Plus II is the only product on
the market which provides dual monitor
support for both RGB color and
monochrome graphics on a single board.
It gives you full screen (640 x 352)
monochrome graphics and high
resolution color graphics with the appropriate
software. When two monitors are used, Graphix
Plus II automatically shifts to the appropriate screen.
Luxury Items Are Standard Equipment
With the Graphix Plus II, you’ll be glad to know extra
conveniences come standard. For example, you get a
parallel printer port which allows you to hook up any IBM
compatible printer or SASI compatible hard disk controller.
Our ‘PC Accelerator’™ software is included which gives you
the use of two RAM disks and a print buffer. Plus, you
can access the screen RAM with absolutely no “snow” or
flashing. Graphix Plus II also provides
—- true gray scale display on composite
video monitors, a light pen interface,
32K display RAM (text and graphics
modes), compatibility with Lotus
1-2-3™ and other popular software
packages. And much more. A battery
operated clock calendar is available as
an option.
Puts You In The Driver's Seat
Graphix Plus II fits easily in any
expansion slot inside your PC. And when you power up,
you’ll see the same high-powered quality you’ve come to
expect from your machine. Incredibly smooth, versatile
performance. From start to finish.
Graphix Plus II. So good, so reasonably priced, you might
say ...we’ve outclassed the competition. See your local
dealer for all the details. Or call or write STB Systems,
Inc., 601 North Glenville, Richardson, Texas 75081
(214) 234-8750.
m
m
STB Systems, Inc.
IBM PC, XT are registered trademarks of International Business Machines Corporation.
Lotus 1-2-3 is a registered trademark of Lotus Development Corporation.
CIRCLE NO. 199 ON READER SERVICE CARD
Expanding Microcomputing
PC Accelerator is a registered trademark of ResiCorp.
& New Release 1.8 — SOLID GOLD
CodeSmith* m -86
|B: fabcode COM 1
■CodeSmith-86 1
Also runs on some IBM-PC Compatibles
1138
AX=8086
BX=0000
CX=0000
OX
|SS=1983l
DS=1984|
ES=1985|
|CS=200lf
IP=0001
0000
53
SI I0JNIT:
PUSH
0001
9BDEC2
FA00P
0004
BB3100
MOV
0007
803E5E-
Efl
CMP
OOOC
7305
JAE
000E
BB0100
MOV
0011
EB02 __
JMP
0013
F2AD WB1
TRASH.IT:
REPNZ
0015
LONG LABELS.
_ ARE.OK
0015
8DA063-
LEA
0019
240C
AND
001B
45
DB
BX ;TAG A LINE
ST[2],ST
BX,Offset VECTOR_TABLE_2
DOS .VERSION _NUM,’2’ BREAKPOINT SET
TRASH.IT
BX,Offset VECT0R.TABLE.1
Short LONG.LABELS.ARE.OK.AS.YOO.LIKE
STOSW ;ST0P 777th TIME
BP.WIERD.CODE + 2LDI]
AL,00011100B
69
;CHANGE RADIX
D0S.VERSI0N
1:0050 4'
1:0060 2(
1:0070 2(
1:0080 2(
MEMORY
Absolute Address=03C9E S egment:Offset=Q3C4:OQ5E
2 |
ASCII SUPPORT
— CodeSmith-86
MAKES DEBUGGING
A BLAST!
It’s here—THE Multi-Window Interactive Debugger that’s STATE-OF-THE-ART.
• Scroll Up/Down thru full-screen disassemblies & memory dumps
• Load and Write Commands much easier, more powerful than DEBUG’s
• “Snapshot” a complete debugging state onto disk-resume later
• True passpoints and execution path counters
SCREENSAVE mode saves and restores user’s graphic display when breakpoint hit
^assemble selected ranges of memory code to disk—compatible with IBM Assembler
Stop on data Read/Write or memory range access
Hot-Line technical support
The Professional’s Choice— CodeSmith-86
Multiple copies purchased by:
Lotus Development Corp., MicroPro, VisiCorp, IBM.
\ Requires MS-DOS &160K RAM.
\ OEM and dealer inquiries invited.
VISUAL AG€
642 N. Larchmont Blvd. • Los Angeles, CA 90004
CIRCLE NO. 140 ON READER SERVICE CARD
CodeSmith, TM International Arrangements, Inc.
MS, TM Microsoft Corp.
IBM, TM International Business Machines Corp.
BELLESOFT HAS CHANGED THE
WAY PROGRAMMERS WORK:
PASCAL, C & ADA
COMPUTER AIDED PROGRAMMING
The Bellesoft Entry System for Programs (ESP) has changed
the way programmers will work in the future by putting computer
aided programming (CAP) at their fingertips.
What word-processing programs did for writing text, Bellesoft
has now done for generating programs: putting the computer to
work to create a whole new way of writing software.
Bellesoft’s ESP speeds up software development by up to
50%, produces better programs and reduces debugging time. ESP
improves programming in five significant ways:
1. On-Line Syntax Checking. ESP is more than a very smart
editor: it automatically checks your program for correct
syntax as you enter or change it.
2 . On-Line Formatting. ESP automatically provides a correct
and consistent format, critical for program maintainability.
3 . Context-Sensitive Abbreviations. ESP builds program
structures or skeletons with a single keystroke, provides
correct keywords and punctuation, and saves up to half your
typing time.
4 . Program Editing. ESP manipulates program structures
correctly with a single keystroke, allows you to delete or move
statements easily.
5 . On-Line Programming Help. ESP provides menus of correct
program components and correct syntax as an aid to faster
programming.
ESP is now available to computer manufacturers for inclusion
in their software packages; to distributors and dealers for resale; to
universities and schools as an aid to teaching programming; and to
programmers who want to cut their work in half while writing
better programs. Call Marlene Samuel, Marketing, at (206) 828-7282.
IBM PC single user Pascal license $249, C license $349. Quantity and site
discounts are available. To order, call
LIFEBOAT, 1-800-847-7078.
CIRCLE NO. 114 ON READER SERVICE CARD
THE FIRST NAME IN PROGRAMMING PRODUCTIVITY
2820 Northup Way, Bellevue, WA 98004, 206/828-7282
LETTERS
went back and read the original letter
and noticed something interesting. Your
reply to Razzak's letter stated that you
use the notation of whichever computer
language is used by the article because
there is no "standard" notation.
There is a standard notation for
nondecimal numbers. In mathematics,
such a number is written with a sub¬
script numeral including the correct
base. So a binary number would be
written with a subscript 2, an octal
number would be written with a sub¬
script 8, and a hexadecimal number
with a subscript 16. And, of course,
when mixing bases, a decimal number
can be written with a subscript 10 to
avoid confusion. Example:
1111010100 2 = 1724 8 = 980 10 =3D4 16
Christopher Wesling
San Francisco, CA
Yes, subscripts are the mathematical
way. But our use of that convention
might seem to confuse because it is not
a notation that can be programmed.
That's why we choose to use the lan¬
guage notation, cryptic as it might be in
some cases.
-WF
Debugging Time
Great special section on debugging in
the May issue. For years I have been a
professional debugger and enjoyed read¬
ing about this often neglected subject. I
especially liked "Debugging" (Will
Fastie, May 1984, page 5)—as always,
entertaining reading.
As the author of a new debugging
tool just reaching the micro software
market, I have had occasion to consider
many of the points covered in the de¬
bugging section. I paid special attention
to "Time on Your Hands" (Bob Smith
and Tom Puckett, May 1984, page 146).
Since this particular problem area seems
to interest so many people, I included a
short discussion of it in the Theory of
Operations section of the manual for
PC-TEST (my contribution to the art of
debugging the PC), and I include it
here for publication.
The Timer Bug
A note here on the widely discussed
"timer bug" from which the original DOS
debugger suffers. The problem lies in the
architecture of the 8088 and can best be
explained by single-stepping an INT in¬
struction. The "timer" problem and the ac¬
tions of the 8088 when single-stepping an
INT instruction are one and the same: the
number and the priority of the interrupt
requests that the 8088 has pending.
The INT instruction causes the asser¬
tion of an interrupt request (just like the
timer). If the TRAP FLAG is on during the
execution of the INT instruction, it also
causes assertion of an interrupt request for
Single Step, which is of higher priority
than the first one. Two sets of registers and
flags are pushed onto the stack, one point¬
ing at the instruction after the INT in¬
struction (this entry has the TRAP FLAG
on) and one pointing at the first instruc¬
tion of the interrupt routine for that partic¬
ular interrupt type (the instruction pointed
to by that particular interrupt vector).
The result of this is that the highest
priority interrupt routine (Single Step) is in
control of the machine, and the next high¬
est is on the stack ready for execution
when the current routine executes IRET.
One fix for this problem, published in a
popular PC magazine, suggests checking
the 8259 status register. This works fine on
a machine which uses standard IBM equip¬
ment but can still fail with some vendors'
implementations of clock cards and inter¬
rupt priorities. An alternative and more re¬
liable fix (with the luxury of source code
availability) is to check the stack contents
for the location of the TRAP FLAG.
If the problem-causing sequence has
occurred, the last entry on the stack will
not have the TRAP FLAG on, and it is
then up to the debugger to determine if it
has just single-stepped an INT or IRET in¬
struction or if other hardware requested
the interrupt (if so, it must be serviced be¬
fore the single-step via an immediate
IRET). If the interrupt is from the execu¬
tion of an INT instruction, the TRAP
FLAG deeper on the stack must be turned
off to prevent extraneous single-step inter¬
rupts later, on exit from the single-stepped
interrupt routine (the original DOS debug¬
ger also suffers from this problem). Copy¬
right Armand J. Minnie. 1984
Armand J. Minnie
San Jose, CA
The Hidden Path
The letter to the editor entitled "Where
Were We?" (February 1984, page 22)
contained a very interesting routine,
"PWD." After assembling, linking, and
creating a .COM file on my G disk (de¬
fault), I typed in PWD. Sure enough,
the message that came back was G/.
Next I created several directories
/ALPHA/BETA/DELTA, and made
DELTA the current directory. Then I
typed in PWD and waited for some¬
thing to happen. To my surprise the
message this time was BAD COM¬
MAND OR FILE NAME.
It seems that Bruce Kvam (the
writer of the letter) neglected to tell us
about the PATH command that we
must use to get PWD to work. After go¬
ing back to the root directory, I edited
my AUTOEXEC.BAT file to add the
line PATH G/ and went back to
DELTA. This time PWD worked like a
charm, responding with the message
G/ALPHA-/BETA/DELTA.
I feel strongly that Mr. Kvam
should have described the need to use
the PATH command, for without it
PWD is really useless. In addition, I
feel even more strongly about the fail¬
ure of your technical editors to check
out that what you publish works, and
in this specific case to correct Mr.
Kvam's omission.
Everything considered, you publish
an excellent magazine that I find more
useful than your heftier competition.
George Shulha
Tampa, FL
Printing APL
Characters
Your Letters section of the June 1984 is¬
sue of PC Tech Journal calls attention to
the difficulty of getting a full APL
character set for non-IBM printers
("Patch to AP80.COM," page 21). For
$100, SYMBIOTICS can furnish an ex¬
tended character set APL EPROM with
translation tables for the Epson MX-100
that will function with both IM and
STSC (Scientific Time Share Corp.) im¬
plementations of APL. Interested per¬
sons may call or write SYMBIOTICS for
details at 431 Mishler Road, Mogadore,
OH 44260; 216-699-4978.
W.E. Claxton
SYMBIOTICS
Mogadore, OH
Thank you for your questions and com¬
ments. We appreciate all of them—com¬
plimentary and critical. Please address
editorial correspondence to PC Tech
Journal, Suite 211, World Trade Center,
Baltimore, MD 21202, or contact us
through CompuServe, 74156, 2365, or
The Source, STY682. Be sure to include
your name and address.
26
PC Tech Journal
COHERENT™ IS SUPERIOR TO UNIX*
AND IT’S AVAILABLE TODAY
ON THE IBM PC.
Mark Williams Company hasn’t just taken a mini-computer
operating system, like UNIX, and ported it to the PC. We
wrote COHERENT ourselves. We were able to bring UNIX
capability to the PC with the PC in mind, making it the most
efficient personal computer work station available at an
unbelievable price.
For the first time you get a multi-user, multitasking operating
system on your IBM PC. Because COHERENT is UNIX-
compatible, UNIX software will run on the PC under
COHERENT.
The software system includes a C-compiler and over 100 utili¬
ties, all for $500. Similar environments cost thousands more.
COHERENT on the IBM PC requires a hard disk and 256K
memory. It’s available on the IBM XT, and Tecmar, Davong
and Corvus hard disks.
Available now. For additional information, call or write,
Mark Williams Company
1430 West Wrightwood, Chicago, Illinois 60614
312/472-6659
il
Mark
Williams
Company
COHERENT is a trademark of Mark Williams Company.
♦UNIX is as trademark of Bell Laboratories:
CIRCLE NO. 186 ON READER SERVICE CARD
Sol Libes
Random Rumors
and Gossip
It is expected that AT&T
soon will announce its IBM
PC-compatible desktop com¬
puter, which will
ities. Rather than try to mar¬
ket the machine itself, the
company is expected to enter
into an OEM arrangement.
Compaq Computer
Corp. has indicated that it
expects a decrease in earn¬
ings for the second quarter of
1984. Mitsubishi, which
computers recently intro¬
duced by AT&T. The first
system is expected to use the
80186 microprocessor and to
have 256K of memory, a
10-Mb hard disk drive, and
support for high-resolution
graphics. It might run a new
version of PC/DOS.
be an upgraded version of
the Olivetti system, using an
8-Mhz 8086 and 512K of
RAM. An XT version should
contain a 10-Mb Winchester
and dual slim-line drives,
and the basic system should
contain serial and parallel
ports, calendar/clock, disk
controller, and seven ex¬
pansion slots. In addition, it
is expected to have better
graphics than the IBM ma¬
chine. AT&T is expected to
sell the machine through
Bell System stores and at
least one chain of computer
stores. Rumors continue that
this fall IBM will announce
a lap-sized, portable, battery-
operated version of the PC
that may contain a display
that has 24 lines by 80 char¬
acters. National Semi¬
conductor is said to be
readying an IBM-PC com¬
patible in both desktop and
lap-sized portable versions,
with special graphics capabil-
private-labels IBM com¬
patibles for Sperry and Lead¬
ing Edge Products, has indi¬
cated that it plans to begin
selling PC compatibles in the
U.S. under its own name.
IBM "BC" Rumors
There are rumors that IBM
will shortly announce three
new "Business Computer"
("BC") systems based on the
new Intel 80186 and 80286
microprocessors. The systems
are expected to be sold
through IBM's Value Added
Resellers (VARs), and they
should use either Microsoft's
multi-user/multi-processing
XENIX operating system or a
new operating system that
will be written by IBM.
The systems appear to
be designed to compete with
the new 3B series of micro-
The second system is
expected to use the 80286
8-Mhz microprocessor and to
have a cache memory sys¬
tem, virtually unlimited
hard disk capacity, 512K of
memory, and the ability to
handle up to 16 users. The
operating system used on
this system is expected to be
an upgraded version of
XENIX, with windowing ca¬
pability and a PC/DOS emu¬
lator that will allow the ex¬
ecution of most PC software.
The machine is expected to
be used as a file server in a
local area network for PCs,
using Microsoft's MS-Net
version of MS/PC-DOS.
It is anticipated that the
third system will use a pro¬
prietary 32-bit microproces¬
sor that was developed by
IBM in Austin, Texas. Main¬
frame software environ¬
ments, such as VM (Virtual
Memory), supposedly will be
supported. This system is ex¬
pected to act as a cluster con¬
troller for SNA devices.
IBM's scientific instru¬
ments division may soon un¬
veil a new version of the
Microsoft XENIX operating
system for its CS9000,
68000-based office system.
This new operating system
should provide enhanced
graphics with features such
as icons and windows.
CEEC Charges IBM
Stifles Competition
The Commission of the
European Economic Commu¬
nity is expected shortly to
charge IBM with abusing its
dominant market position in
Europe and trying to stifle
competition. The CEEC rep¬
resents the 10-member Euro¬
pean Common Market.
It is estimated that IBM
currently controls about 40
percent of the European
computer market in general
and an even greater percent¬
age of the market in West
Germany and Italy. The
Common Market computer
companies complain that
IBM has refused to provide
them with information nec¬
essary to link peripheral
equipment and software with
new IBM products. Because
equipment is introduced and
orders taken many months
before delivery, these compa¬
nies must wait until they
can actually get their hands
on the equipment before
they can begin their designs.
As a result, they lose a year
or more in getting their
products to market. Then, as
soon as they get their equip¬
ment on the market, IBM in¬
troduces new products.
The CEEC is expected to
levy sanctions against IBM
in the form of a fine or a re-
28
PC Tech Journal
ILLUSTRATION • DAVID POVILAITIS
ILLUSTRATION • MARC TAFFET
THE TECH JOURNAL
NEWSLINE
News, views, and gossip on the IBM
and IBM-like marketplace
quirement that IBM disclose
necessary information. IBM
has been attempting for sev¬
eral months to negotiate a
settlement with the CEEC,
but has had no success. This
problem is expected to alter
IBM's selling tactics in
Europe significantly.
IBM PC Shortage
is Ended
IBM dealers report that the
supply of IBM PCs and XTs
has caught up with demand.
Dealers say that the number
of machines they can order
is no longer being regulated
by IBM, and most dealers
have machines in stock. The
result is an upsurge in dis¬
counts given on PCs, XTs,
and their compatibles. Even
the IBM PC portable, which
IBM began shipping in
April, is already being dis¬
counted by many dealers.
The PC/r, whose sales have
proved a bit disappointing,
has been heavily discounted
by dealers since it became
available in February.
Another result of the in¬
crease in the supply of PCs
and XTs is that some autho¬
rized IBM retailers, VARs,
and Value Added Dealers
(VADs) are dumping systems
to unauthorized dealers and
discounters. The authorized
sellers invariably have to pay
interest on systems that have
been in their stock for over
30 days. In addition, they
have to fulfill purchasing
quotas with IBM. To avoid
this situation, at the end
of the month dealers will
dump their inventory to
unauthorized dealers at
substantial discounts.
These unauthorized
dealers are always low-bud¬
get retail or mail-order opera¬
tions that provide little, if
any, support and can there¬
fore afford to discount the
systems. IBM, unlike Apple,
has chosen to ignore this
''gray" market and thereby
appears to be encouraging it.
dBASE III
After 22 months, Ashton¬
Tate has announced dBASE
III for the 16-bit world. The
product will be available ini¬
tially for the IBM PC or XT
with at least 256K and two
floppies or a fixed disk.
dBASE III removes many of
the limitations of dBASE II.
Files can now have up to
2 billion records, limited
only by the individual com¬
puter systems. Each record
can have 128 fields, and 10
files can be opened at once.
Although dBASE III has
been redesigned from the
ground up and written in C,
many familiar dBASE II
commands are still present.
Features include the ability
to establish relations between
files, full-screen report gener¬
ation, and mailing label capa¬
bility,- in addition, new
memo fields can hold vari¬
able-length text of up to 4K
bytes. Performance has been
improved with notably faster
sorting and indexing. A
dBASE Assistant provides a
command-assistance mode
that can be turned off once
the user is familiar with
dBASE III operations. dBASE
III is priced at $695, and the
price of dBASE II has been
reduced to $495.
The dBASE aftermarket
is still alive and well. Fox
and Geller announced the
availability of Quickcode III,
dUTIL III, and dGRAPH III.
Other vendors are expected
to follow with updated ver¬
sions of their dBASE II en¬
hancement programs.
3270-PC Popular
There is an increasing num¬
ber of reports that the 3270
version of the PC is achiev¬
ing a success in large corpo¬
rations that use IBM main¬
frames; the reports also indi¬
cate that IBM has stepped up
29
THE TECH JOURNAL
NEWSUNE
nounced experimental 72K,
288K, and 512K RAM chips,
none of which has gone into
production. IBM has not said
whether it actually plans to
produce the 1-Mb chip. Fur¬
ther, it should be noted
that at the International
Solid States Circuits Con¬
ference held last Febru¬
ary, Fiitachi, Fujitsu, NEC,
and NTT released details
bn their 1-megabyte experi¬
mental RAM chips.
production significantly to
meet the demand. Digital
Research, Inc. has an¬
nounced that it will make
available its entire line of
languages to run on the sys¬
tem, and there are rumors
that DRI is also working on
a new operating system for
the 3270 that will allow
CP/M, UNIX System V, and
MS/DOS software to be run
and that will also furnish lo¬
cal area networking and so¬
phisticated graphics support.
The XT/370, however,
which was introduced at the
same time, appears to be lag¬
ging in popularity. Part of
the problem seems to be late
deliveries caused by produc¬
tion bottlenecks. Although
the XT/370 was announced
in late November 1983, IBM
did not begin shipping sys¬
tems until early May.
IBM Announces New
Research Successes
At the IEEE-Intermag confer¬
ence held in April, IBM re¬
searchers reported that they
are working on a new type
of magnetic recording head
that will permit magnetic
disk storage up to six times
denser than current heads
will allow. The head inte¬
grates thin film coils to write
data on the disk and high-
sensitivity, solid-state sensors
to read the data. This work
is still considered to be in a
early research stage, and it
will be some time before the
technology will be ready for
possible use in disk drives.
Researchers working at
IBM's Essex Junction, Ver¬
mont, facility have an¬
nounced development of a
dynamic RAM chip with a
capacity of 1 megabit. The
chip operates on 5 volts and
uses essentially the same
technology as is used in the
64K RAM chip that is cur¬
rently in production.
It is interesting to note
that during the past two
years IBM has also an¬
Random News Bits
IBM announced that its net
income for the first quarter
of 1984 rose 23 percent to a
record $1.2 billion. Gross
business was up 15.7 percent
to $9.6 billion. PC business
currently accounts for an
estimated 13 percent of the
company's revenues, or
about $1.25 billion. Lotus
Development Corpora¬
tion reported a first-quarter
net income of $7.5 million
on $28.3 million sales—
how's that for profit? Lotus is
reported to have shipped al¬
most 120,000 copies of Lotus
1-2-3 in the first quarter.
Quotation of the
Month
John R. Opel, Chairman of
IBM Corporation: "It [the
PC/r] has not been as success¬
ful as I would like."
<
H
g
<
Z
o
H
<
PC
30
PC Tech Journal
ILLUSTRATION • DAVID POVILAITIS
This is THE PASCAL COMPILER
You’ve Been Hearing About
"It’s almost certainly better
than IBM’s Pascal for the PC. ..
Recommended.”
Jerry Pournelle
Byte , May 1984
$ 49.95
RSION 2.
"If you don’t have CP/M [for
your Apple], Turbo Pascal is
reason enough to buy it.”
Cary Hara
Softdlk Apple, May 1984
If you have the slightest
Bruce
Than You’ve Heard!
• Windowing (IBM PC, XT, jr. or true compatibles)
• Color, Sound and Graphics Support (IBM PC, XT, jr. or true compatibles)
• Optional 8087 Support (available at an additional charge)
• Automatic Overlays
• A Full-Screen Editor that’s even better than ever
• Full Heap Management—via dispose procedure
• Full Support of Operating System Facilities
• No license fees. You can sell the programs you write with Turbo Pascal without extra cost.
Yes. We still include Microcalc ... the sample spreadsheet written with Turbo Pascal. You can study the
source code to learn how a spreadsheet is written . . . it’s right on the disk* And, if you’re running Turbo
Pascal with the 8087 option, you’ll never have seen a spreadsheet calculate this fast before!
*Except Commodore 64 CP/M.
f m
-If
• **?
Order Your Copy of TURBO PASCAL® VERSION 2.0 Today
For VISA and MasterCard orders call toll free: 1-800-227-2400 x968
In California: 1-800-772-2666 x968
Jlinesopen_24 hrs/7 days a week) Dealer &. Distributor Inquiries Welcome 408-438-8400
Choose One (please add $5.00 for ship¬
ping and handling for U.S. orders. Shipped
UPS)
-Turbo Pascal 2.0 $49.95 + $5.00
-Turbo Pascal with 8087 support
$89.95 4- $5.00
-Update (1.0 to 2.0) Must be accom¬
panied by the original master $29.95
+ $5.00
-Update (1.0 to 8087) Must be
accompanied by the original master
$69.95 + $5.00
Check _
VISA _
Card #:
Money Order
Master Card _
Exp. date:
My system is: 8 bit _ 16 bit _
Operating System: CP/M 80_
CP/M 86_ MS DOS_ PC DOS .
Computer:
I ») BORlflflD
>)) INTERNATIONAL
Disk Format:
Please be sure model number & format are correct.
Name: _
Address:
Borland International
4113 Scotts Valley Drive
Scotts Valley, California 95066
TELEX: 172373
City/State/Zip:
Telephone: __
California residents add 6% sales tax. Outside U.S.A. add $15.00 (If
outside of U.S.A. payment must be by bank draft payable in the U.S.
and in U.S. dollars.) Sorry, no C.O.D. or Purchase Orders.
CONTROLLING
INPUT
USING INKEYS
A useful, adaptable routine for BASIC programs
Nelson Ford
A n INKEY routine is one that
controls keyboard input into a
program by using the INKEYS func¬
tion instead of the INPUT or LINE
INPUT commands. The sole reason
for using this approach is that the
INPUT command will accept and
print any key that is pressed, which
can sometimes cause problems. If
the user accidentally enters "End"
when he meant to enter "1," the
cursor on the screen will obediently
move to the end of the line.
When INKEYS is used, the re¬
sult of the key press is not automati¬
cally sent to the screen,- thus, that
result can be tested before it is
Nelson Ford is Director of Reporting and
Forecasting Systems for Daniel Industries , Inc.
He is the author of Business Graphics for the
IBM PC and of the disk file catalog DISKCAT.
32
PC Tech Journal
INKEYS
printed. INKEYS can be used not
only to filter out keys that are de¬
structive to the screen layout but
also to check that the key falls
within an acceptable range of keys,
to see if a function key or other spe¬
cial key has been pressed, and to
take special action if it is necessary.
This function can also be used to
read a key press, translate the key to
another key defined on a look-up ta¬
ble, and send the translated value to
the screen for display.
Running the Program
The program in listing 1 first pre¬
sents a menu on the screen with a
flashing cursor prompting the user
to enter a number from the menu.
If no number is entered, nothing
happens. If "1" is pressed, a data
entry form with fields labeled
Name, Address, City, State, and Zip
is displayed. A highlighted field ap¬
pears next to the Name field. If the
user enters a name in this field, the
highlighted area moves to the next
field for the address to be entered.
Errors in previous fields can be
corrected by using the cursor direc¬
tion keys. If a state or zip code is
entered that the program does not
recognize, the highlighted area will
not move on until the entry has
been corrected. Letters entered for
the state display are displayed as
upper-case, no matter how Caps
Lock is toggled. Only the characters
"0" through "9" are accepted as in¬
put in the Zip field.
Program Framework
Listing 1 is an example of a program
that would be used to enter data in
a data base. Lines 10-60 define vari¬
ables for use by the program. FG
and BG are used to control the fore¬
ground and background colors. The
numbers in line 60 are the ASCII
codes for the second character of the
two-character code that is returned
by INKEYS when a special key is
pressed. A special key is a function
key, cursor key, shift tab key, or
any key combination using the Ctrl
August 1984
Most Program Editors
Are Shockingly Primitive.
Use Pmate™ once, and you’ll
never go back to an ordinary
text editor again. Pmate is more
than a powerful programmer’s
text processor. It’s an inter¬
pretive language especially
designed for customizing text
processing and editing.
Just like other powerful edi¬
tors, Pmate* features full-screen
single-key editing, automatic
disk buffering, ten auxiliary
buffers, horizontal and vertical
scrolling, plus a "garbage
stack” buffer for retrieval of
deleted strings. But, that’s just
for openers.
What really separates Pmate
from the rest is macro magic. A
built-in macro language with
over 120 commands and single¬
keystroke "Instant Commands”
to handle multiple command
sequences. So powerful, you
can “customize” keyboard
and command structure to
match your exact needs.
Get automatic comments on
code. Delete comments. Check
syntax. Translate code from
one language to another. Set
up menus. Help screens. You
name it.
And, Pmate has its own set
of variables, if-then statements,
iterative loops, numeric calcu¬
lations, a hex to decimal and
decimal to hex mode, binary
conversion, and a trace mode.
You can even build your own
application program right
inside your text processor.
So, why work with primitive
tools any longer than you have
to? Pmate by Phoenix. $225.
Call (800)344-7200, or write.
Phoenix Computer Products Corporation
1416 Providence Highway, Suite 220
Norwood, MA 02062
In Massachusetts (6171 769-7020
* Pmate is designed for microcomputers using the Intel 8086 family of
processors, and running MS-DOS™ A custom version is available for
the IBM PC, Tl Professional, Wang Professional, DEC Rainbow,
and Z80 running under CP/M™
Pmate is a trademark of Phoenix Software Associates Ltd.
MS-DOS is a trademark of Microsoft Corporation. CP/M is a trademark of Digital Research, Inc.
CIRCLE NO. 143 ON READER SERVICE CARD
INKEY$
or Alt key. The codes for these keys
are given in the BASIC manual at
the end of Appendix G. The actual
INKEYS routine is in lines 120-620.
The remainder of the program,
starting at line 670, is a sample ap¬
plication designed to demonstrate
the INKEYS routine.
Walking Through
the Code
In lines 700-750, a menu is printed
on the screen. At line 760, the cur¬
sor is located at the point where the
programmer wants the prompt to
appear. The variable FL (Field
Length) is set to 301, ACCEPTS is
defined as "123" (acceptable input),
and control is turned over to the IN¬
KEY routine. Line 120 initializes
the variables used in the INKEY
routine. The variable INS.LENGTH
keeps track of how many characters
have been entered. CURSOR.POS
keeps track of where the cursor is in
Z NKEYS can be used not
oniy to filter out keys
that are destructive to
the screen layout but also
to check that the key falls
within an acceptable range
o/ keys, to see ij_ a function
key or other special key has
been pressed, and to take
special action ifnecessaiy.
the string of characters entered.
This is necessary because the user
can press the cursor keys to go back
and edit the entry.
In the next line, the variable
CURSOR.START is set up to keep
track of the location of the start of
the field on the screen. Because in¬
put is limited to the current screen
line, it is not necessary to keep
track of the line number. Line 140
divides FL (which was set to 301) by
100 and truncates the decimals,
leaving three (FIX(301/100)=3) and
assigns this value to the variable
name CHAR.ACCEPT.CODE,
which will be used later to test the
keys pressed. The next line rede¬
fines FL as the actual field length
(301 - 3*100 = 1).
No prompt was specified, so
line 170 is skipped. In line 180, the
foreground and background colors
are reversed. When the INKEY rou¬
tine returns to control, the input is
contained in the variable INS. Line
160 initializes INS to a string of
blank spaces. When the INS is
printed (line 190) with the colors re¬
versed, a highlighted area the
length of FL appears. Line 210
causes the program to wait for a key
to be pressed and assigns the key
press to the variable NS. If the
length of NS is greater than one,
the program knows a special key
was pressed; lines 240 through 330
analyze and act upon the key press.
This section of code is used in this
program for editing the entry. If the
programmer does not want this fea¬
ture, he can omit this section.
For right now, we will assume
that "1" was pressed on the menu,
so NS = 1. The length of NS is 1,
so the program is directed to line
350, which tests to see if the Esc
key was pressed. If the variable
CURSOR.POS is greater than the
maximum number of characters
specified in FL, the only input that
can be accepted at this point—after
the program has tested for cursor
keys and the Esc key—is the Enter
key or the Backspace key. In this
example, the variable CURSOR.POS
still has the value 1, which was as¬
signed to it in line 120, and FL is
also 1, so we can continue.
The CHAR.ACCEPT.CODE
was calculated to be 3 ; therefore,
line 390 says that NS must be a
character in the ACCEPTS variable
that was defined earlier as "123" by
the main program. NS is such a
character, so the program now
branches to line 500, which uses
the MIDS function to put the key
that was pressed into INS and
which directs the program to line
550. (INSERT is toggled on and off
in line 270. I'll look at that later.)
Skipping line 550 for right now,
we see that NS is printed, CUR-
SOR.POS and INS.LENGTH are
incremented, and the program
branches back to line 190 to pick up
another key press. This time the
user presses Enter. The program
flows to line 420 and gets redirected
to line 600, which reprints the en¬
try with the colors set back to nor¬
mal. At this point, if the entry is
shorter than the maximum field
length, the trailing blanks are
chopped off, unless line 610 has
been removed.
Now control is passed back to
the main program, and no further
input testing is needed. INS must be
a "1," "2," or "3." Since "1" was en¬
tered in this instance, the program
branches to line 1000.
One More Time
Line 1090 positions the cursor, as¬
signs a maximum field length of 25
with no character acceptance code
(any input is valid), and defines the
prompt as NAMS(I). When the pro¬
gram is first started, the variable
NAMS(I) (where 1= 1) is a null
string, so there is no prompt. Let's
pretend that we loaded an entry
from a disk file, and NAMS(I) con¬
tains a name that is now assigned to
PROMPTS. Having set up the vari¬
ables, the program returns to the
INKEY routine.
If the first key pressed is an
"A," the program flows to line 380
(CHAR.ACCEPT.CODE = 0) and
then to 500 and on to 550. When a
prompt appears, as it does in this ex¬
ample, the program must try to de¬
termine if the user wants to edit the
prompted entry or type in a new
one. Keep in mind that if a cursor
key had been pressed to move into
the field in order to make a cor¬
rection, the cursor positioning
would have bypassed line 550. This
line of code is only reached when a
34
PC Tech Journal
character is being entered. There¬
fore, if the user is still at the begin¬
ning of the field and is entering a
character, he is probably entering a
new name rather than editing an
old one. So this line blanks out the
field in addition to the variable INS.
Processing a Cursor Key
If the user entered the characters
"Jogson" and wanted to go back and
change the "g" to an "h," he would
press the left cursor key, which
causes NS to be a two-character
code with the second character hav¬
ing an ASCII value of 75. At line
250, if the variable CURSOR.POS is
greater than 1, it is decremented
and the program goes back for an¬
other key press. The user keeps
pressing the left cursor until it
moves back to the "g" ; he then
presses "h." The program flows to
line 500 and the MIDS function re¬
places the "g" with the "h."
To insert an "n" at this point,
the user presses the Ins key, which
causes line 270 to toggle the IN¬
SERT variable to YES. The LO¬
CATE,,,4, 7 makes the cursor look
like it does in BASIC when the user
is in the insert mode. When the
"n" key is pressed and the program
gets to line 500, the MIDS function
is not used. Line 510 checks to
make sure that the user is not try¬
ing to insert characters when the in¬
put is already equal to the maxi¬
mum field length. Line 520 cuts
open INS and inserts the character.
Other Special Keys
Line 260 handles the Del key by
cutting the character being deleted
from INS and adding a blank space
at the end. Line 280 reacts to the
Home key being pressed by chang¬
ing CURSOR.POS to 1. Line 290 de¬
letes the end of the entry, starting
at the current CURSOR.POS. Line
300 increments CURSOR.POS (lim¬
ited to the field length) when the
right cursor key is pressed. Finally,
line 310 moves the cursor to the
end of the entry.
August 1984
Squeezing
A Large Program Into
A Small Memory Space?
It’s time you got Plink86™ the
overlay linkage editor that’s
bringing modular programming
to Intel 8086-based micros.
With Plink86,* you can write a
program as large and complex
as you want and not worry about
whether it will fit within available
memory constraints. You can
divide your program into any
number of tree-structured over¬
lay areas. 4095 by 32 deep.
Work on modules individually.
Then link them into executable
files. All without making changes
to your source program
modules.
Use the same module in dif¬
ferent programs. Experiment
with changes to the overlay
structure of an existing program.
Use one overlay to access code
and data in other overlays.
Plink86 is a two-pass linkage
editor that links modules cre¬
ated by the Microsoft assembler
or any of Microsoft’s 8086 com¬
pilers. Plink86 also works with
other popular languages, like
Lattice C, C86, or mbp/COBOL.
And supports symbolic debug¬
ging with Phoenix’ Pfix86 Plus™
Plink86 includes its own ob¬
ject module library manager -
Plib86™ - that lets you build
libraries from scratch. Add or
delete modules from existing
libraries... Merge libraries...
Or produce cross-reference
listings.
Why squeeze any more than
you have to? Plink86 by Phoenix.
$395. Call (1) 800-344-7200.
Or, write.
0 ^
Phoenix Software Associates Ltd.
1420 Providence Highway Suite 260
Norwood, MA 02062
In Massachusetts (6171 769-7020
*Plink86 will run under PC DOS, MS-DOS™ or CP/M™-86.
Plink86, Pfix86 Plus and Plib86 are trademarks of Phoenix Software Associates Ltd.
MS-DOS is a trademark of Microsoft Corporation. CP/M is a trademark of Digital Research, Inc.
CIRCLE NO. 144 ON READER SERVICE CARD
Considering Tape
For Backup Storage?
There was a time when tape was the way to store backup
data from your hard disk. It was fine for archives, but not
when you wanted your data live and on-line. Today’s busi¬
ness pharaoh can have his data on-line and backups,
too—with 5 or 10 megabyte removable cartridge hard disk
systems from Micro-Design.
Single-function tape backup units can’t come close to
matching the versatility and cost-effectiveness of hard disk
cartridges; you get backup capabilities PLUS the benefit of
having another full 5 or 10 megabytes of on-line data
access.
Unlimited Expansion. NO more erasing old data to
increase space on your hard disk. Fact is, there’s no limit
to the amount of off-line storage you can add.
Our DATA Series 5 and 10 megabyte cartridge hard disks
are external drives available in removable only, or paired
with 10, 20, or 33 megabyte fixed drives. Our SQ Series
features 5 megabyte cartridge drives, in matching exter¬
nal cases or ready for internal installation. All are 100% com¬
patible with the IBM-PC, XT, and work-alikes, with no
software modifications needed. You can even boot from
the hard disk.
Use hard disk cartridges the same way you use a floppy
disk system. Just switch them out as needed—one car¬
tridge for wordprocessing, another for accounting, and an¬
other for backup storage. Add additional cartridges when¬
ever you like.
Don’t let single-function hard disk and tape units send your
asp up the Nile. Ask your local computer dealer about
Micro-Design’s versatile hard disk cartridge units. Or. call
us for details on our full product line and ordering informa¬
tion. Dealer inquiries invited.
We’ve got a complete line of mass storage
devices, including floppy drives. Prices start as
low as $1549 for a 20 megabyte fixed hard disk
drive. Call for our FREE catalog today!
One year warranty. Network compatible. Backup utility software included
with 2 drive systems.
Micro-Design
Making The Most of Your Micro.
CIRCLE NO. 246 ON READER SERVICE CARD
Call Toll FREE 1-800-531-5002.
In Texas, call 512-441-7890.
6301 B Manchaca Rd.. Austin. TX 78745
Fast. Cartridges run as fast, or faster, than
fixed hard disk drives. A 5 mega¬
byte backup takes only a few
minutes, using Micro-Design’s
backup utility software.
Switching out cartridges
takes just a few seconds.
Convenient and
Secure. It'S easy to
lock-up sensitive files
—just remove the car¬
tridge and put it somewhere safe. If you share a computer
with others, everyone can have their own cartridge. Or, have
a home cartridge and a business cartridge for use with your
portable computer.
IBM® International Business Machines.
INKEY$
If the key pressed has not been
handled by one of these lines, it
must be analyzed by the main pro¬
gram. Therefore, MOVE.IT is set to
7
have seen some other
wise very good pro¬
grams that make it pos¬
sible for the user to inadver-
tently destroy the screen
layout or that make it diffir
cuh for the user to go back
and correct entries.
true (the value of the key pressed
was assigned to the variable KY in
line 240), and the routine returns to
the main program.
For example, pressing the up
cursor key will cause MOVE.IT to
be set to YES, and a return will be
done. In line 1140, the program
moves back to the preceding field so
the user can change the entry. In
line 1100, the program assumes that
the user wants the prior entry, since
there are no prior fields. By testing
the value of KY, the user could add
different instructions for each possi¬
ble special key, such as PgUp,
PgDn, FI, Cursor Down, etc.
Just Another INKEY
Routine?
INKEY routines are as common as
dust, but I feel that this one has
some good features not commonly
found in such routines. Still, I can
almost guarantee that most pro¬
grammers will want to modify it for
their own use. In fact, I frequently
modify it for different applications.
As a software reviewer, I have
seen otherwise good programs that
permit the user to inadvertently
destroy the screen layout or that
make it difficult for him to go back
and correct entries. This routine
should give programmers some ideas
for building both control and flexi¬
bility into programs.
August 1984
Still Fixing Bugs
The Hard Wry?
,<T Jl'
Ready to take the sting out of
debugging? You can with
Pfix86™ and Pfix86 Plus™, the
most advanced dynamic and
symbolic debuggers on the
market today for PC DOS and
MS-DOS™ programmers.
What other debugger offers
you an adjustable multiple-
window display so you can view
program code and data, break¬
point settings, current machine
register and stack contents all
at the same time? And, an in¬
line assembler so you can make
program corrections directly in
assembly language. Plus, pow¬
erful breakpoint features that
allow you to run a program at
full speed until a loop has been
performed 100 times, or have
the program automatically jump
to a temporary patch area.
Or maybe you’re tired of
searching through endless piles
of listings for errors? With Pfix86
Plus you won’t have to. You can
locate instruction and data by
the symbolic name and using
the symbolic address. Handle
larger, overlayed programs
with ease. And, Pfix86 Plus is
designed to work with our
Plink86™ linkage editor.
But that’s not all. With a single
keystroke you can trace an in¬
struction and the action will be
immediately reflected in code,
data, stack, and register win¬
dows. Pressing a different key
will elicit a special trace mode
that executes call and loop
instructions at full speed, as
though only a single instruction
were being executed.
And you get an easily acces¬
sible menu that makes the
power of our debuggers instant¬
ly available to the new user, but
won’t inhibit the practiced user.
So, why struggle with bugs?
Pfix86 by Phoenix. Pfix86 $195.
Pfix86 Plus $395.
Call (1) 800-344-7200, or write.
Phoenix Software Associates Ltd.
1420 Providence Highway Suite 260
Norwood, MA 02062
In Massachusetts 16171 769-7020
Pfix86, Pfix86 Plus and Plink 861are trademarks of Phoenix Software Associates Ltd.
MS-DOS is a trademark of Microsoft Corporation
CIRCLE NO. 145 ON READER SERVICE CARD
Professional BASIC ™ cuts your
program debugging time in half.
Or your money back.
Personal Com¬
puter. (If expan¬
sion boards are
used, that means
up to 640K.) Now
you can create and
run programs almost as big as your
imagination—and talent.
The 8087 Connection. Accurate,
High-Speed Math.
Professional
BASIC was de¬
signed to use the ultra¬
fast 8087 math coprocessor.
The 8087 allows floating-point
math operations to be performed
with lightning speed. Professional
BASIC enables you to fully utilize
the 8087—to dramatically acceler¬
ate execution of programs involving
complex floating-point computa¬
tions. (8087 coprocessor optional.)
Read What The Experts Say.
“This version of BASIC sets new
256 K
640 K
standards for
usability and ‘user
friendliness’.” “Morgan’s
product supports, in an unprec¬
edented way, the visualization of
program execution.’’
April 1984
Byte Magazine
“The real magic of Profes¬
sional BASIC is its wealth
of‘windows’ into an ex¬
ecuting program. ” “I’m
frankly amazed. My hat
is off to Dr. Bennett...
An elegant piece of cod-
‘ ig indeed.”
Februaiy 1984
Personal ComputerAge
“This version of the
language sets new stan¬
dards ...” “The user interface...
is unbeatable for program develop¬
ment. ’’ “... You owe it to yourself to
pick up the phone and order a copy
of Professional Basic.”
June 1984
Dr. Dobb's Journal
n ntroducing Professional
BASIC™. A powerful new
BASIC programming language that
can help you debug, or learn—and
then master—the language. Profes¬
sional BASIC can actually double
your programming efficiency. Or
your money back. *
What You See Is What You Get.
Because Professional BASIC has a
sophisticated window-oriented
system environment—containing
more than a dozen visualization
and debugging screens—you see
clearly and precisely the execution
of your program. Line by line pro¬
gram execution unfolds via a dy¬
namic program trace... showing
changes in variables or array ele¬
ments ... or the progress of FOR/
NEXT loops or GOSUBS. Using Pro¬
fessional BASIC, even beginning
programmers will be able to pro¬
duce code quicker, with far less
frustration.
Now, Access All The Memory Of
Your PC.
Professional BASIC can use all of
the mem¬
ory avail¬
able in
your IBM
64 K
Makes Learning The BASICs
A Snap.
Learn more about the BASIC lan¬
guage ... in significantly less time.
With Professional BASIC there are
over 18 different ways to view your
program as it operates, step by step.
On a split screen display you
see, on one side, a dynamic
display
executing
program’s
code... on
the
other
side you
actually see
changes in variables
as they occur.
PROFESSIONAL BASIC
SPECIFICATIONS
IBM PC or XT™, Compaq™, or
100% compatibles.
DOS 2.x operating system.
1 Double-sided disk drive.
256K RAM minimum (384K
recommended)
8087 Chip optional
Ask your local dealer for a
demonstration, or call or write
Morgan Computing Co., Inc. at
10400 N. Central Expressway,
Suite 210, Dallas, Texas 75231
(214/739-5895). Suggested re¬
tail is $345.00. (Dealer inquiries
welcome.) Demo disk is $5.00
(includes demo on TRACE86™
and TED™).
•Sole remedy for failure of product to double your
debugging speed is return of full purchase price. To
obtain a refund you must act within thirty (30)
days of purchase (i.e.. return both product and
original sales receipt) and have completed and filed
all warranty registrations with MCC. Further, you
must reaffirm you have not copied the product
or violated any copyright of MCC. Contact
MCC for additional information. Offer expires
November 1, 1984.
Morgan Computing Co., Inc.
Software Designed
By Professionals.
For Professionals.
CIRCLE NO. 135 ON READER SERVICE CARD
INKEY$
Listing 1 INKEY.BAS
580 IF CURSOR.POS > INS.LENGTH THEN INS.LENGTH - CURSOR.POS - 1
590 IF FL > 1 THEN 190
10 DEFINT A-Z: SCREEN 0,0,0,0: WIUIH ou
15 FG-7: BF-0: COLOR FG.BG: CLS
600 COLOR FG.BG: LOCATE, CURSOR.START, 0, 7: PRINT IN*;
610 IN* - LEFT*(IN*. INS.LENGTH): INSERT - NO
620 RETURN
20 OEF SEG: POKE 106,0
30 YES * NOT NO: NO = NOT YES
40 ESC * 27: ESC* * CHR*(ESC)
670 '
680 ' main menu:
690 '
45 ENTR* - CHR$(13)
50 BACKSPACE* = CHR*(8)
60 LF.CURSOR-75: RT.CURSOR-77
700 CLS
710 LOCATE 4,33: PRINT " MAIN MENU "
720 LOCATE 10,33: PRINT "1 Enter Data"
65 END.KEY-79: INS.KEY-82: OEL.KEY-83
66 HOME-71: CTRL.END-117
70 GOTO 700
730 LOCATE 11,33: PRINT "2 Print Reports"
740 LOCATE 12,33: PRINT "3 Save Data"
750 LOCATE 14,33: PRINT " SELECT "
90 '
91 " " inkey routine''''
92 '
100 'FL is the field length, passed
760 LOCATE 14,33: FL = 101: GOSUB 100
770 IF IN* < "1" OR IN* > "3" THEN 760
780 ON VAL(IN*) GOTO 1000, 2000, 3000
990 '
105 'to this routine by the main program.
110 *
120 INS.LENGTH » 0: CURSOR.POS * 1
1000 'enter data:
1010 '
1020 CLS: LOCATE 4,35: PRINT "DATA ENTRY": 1-1
125 SOUND 80, .03: MOVE.IT = NO: KY - 0
130 CURSOR.START - POS(O)
140 CHAR.ACCEPT.CODE = FIX( FL / 100 )
1030 LOCATE 10,20: PRINT "NAME: " NAM*(I)
1040 LOCATE 12,20: PRINT "ADDRESS: " ADDR*(I)
1050 LOCATE 14,20: PRINT "CITY: " CITY*(I)
150 FL - FL - CHAR.ACCEPT.C0DE*100
160 IN* « SPACE *(FL)
170 IF PROMPT*<>""
1060 LOCATE 16,20: PRINT "STATE: " STATE*(I)
1070 LOCATE 16,40: PRINT "ZIP: H ZIP*(I)
1079 '
THEN IN*-LEFT*(PROMPT*+SPACE*(FL),FL)
175 INS.LENGTH»LEN(PROMPT*): PROMPT*-""
180 COLOR BG,FG
1080 'name:
1090 LOCATE 10,30: FL = 25: PROMPT* = NAM*(I): GOSUB 100
1095 IF IN* = ESC* THEN 700
190 LOCATE, CURSOR.START, 1: PRINT IN*;
200 LOCATE, CURSOR.START + CURSOR.POS - l
210 N* - INKEY*: IF N* - "" THEN 210
1100 IF MOVE.IT THEN IF I > 1 THEN I - I - 1: GOTO 1030
1110 NAM *(I) - IN*
1120 'addr:
220 IF LEN(N*) - 1 THEN 350
230 ' Lines 240 thru 330 check for special keys.
235 'You can omit this section if you do not need
1130 LOCATE 12,30: FL = 20: PROMPT* = ADDR*(I): GOSUB 100
1140 IF MOVE.IT THEN 1090
1150 ADDR*(I) = IN*
236 'this function.
240 KY - ASC( RIGHT*(N*,1) )
245 ' check for edit keys:
1160 'city:
1170 LOCATE 14,30: FL - 15: PROMPT* = CITY*(I): GOSUB 100
1180 IF MOVE.IT THEN 1130
250 IF KY-LF.CURSOR THEN IF CURSOR.P0S>1
THEN CURSOR.POS»CURSOR.POS-1:GOTO 200 ELSE 320
260 IF KY-OEL.KEY
1190 CITY*(I) = IN*
1200 'state:
1210 LOCATE 16,30: FL = 202: PROMPT* = STATE*(I): GOSUB 100
THEN IN*-LEFT*(IN*. CURSOR.POS-1) + RIGHT*!IN*,FL-CURSOR.POS)+"
INS.LENGTH - INS.LENGTH - 1: GOTO 190
270 IF KY-INS.KEY THEN IF INSERT-NO THEN INSERT-YES
1220 IF MOVE.IT THEN 1170
1230 STATES*="OK TX AL GA FL AZ SC MI-
1240 LOCATE 18,30
275 LOCATE,,,4,7: GOTO 190 ELSE INSERT-NO: LOCATE,,,7: G0T0210
280 IF KY = HOME THEN CURSOR.POS = 1: GOTO 200
290 IF KY - CTRL.END THEN IN* = LEFT*(IN*.CURSOR.POS-1) +
1250 IF INSTR(STATES*, IN*) = 0 THEN PRINT "INVALID STATE": GOTO 1210
ELSE PRINT SPACE*(13)
1260 STATE *(I) = IN*
SPACE*(FL - CURSOR.POS + 1): INS.LENGTH = CURSOR.POS - 1: GOTO 190
300 IF KY- RT.CURSOR THEN CURSOR.POS « CURSOR.POS -
(CURSOR.POS < INS.LENGTH): GOTO 200
1270 'zip
1280 LOCATE 16,47: FL » 105: PROMPT* - ZIP*(I): GOSUB 100
1290 IF MOVE.IT THEN 1210
310 IF KY = END.KEY THEN CURSOR.POS - INS.LENGTH + 1: GOTO 200
320 MOVE.IT = YES
330 GOTO 600 'not an edit key, but Is a special key: end input.
1300 LOtATE 18,46
1310 IF VAL(IN*)<30000 OR VAL(IN*)>89999! THEN PRINT"INVALID ZIP":
GOTO 1280: ELSE PRINT SPACE*(11)
340 '
350 IF N* = ESC* THEN KY » ESC: IN*-N*: GOTO 320
360 IF CURSOR.POS - 1 THEN IF N* - OR N* = "+" THEN IN* - N*:
1320 ZIP*(I) - IN*
1330 'loop:
1340 I - I + 1
COLOR FG.BG:LOCATE,,0: RETURN
370 IF CURSOR.POS > FL THEN 420
380 IF CHAR.ACCEPT.CODE - 0 AND N* >- " " AND N* <- "z" THEN 500
390 IF CHAR.ACCEPT.CODE = 1 AND N* >- "0" AND N* <- "9" THEN 500
1350 GOTO 1030
2000 '
2010 GOTO 700
3000 '
400 IF CHAR.ACCEPT.CODE « 2 THEN IF N* >- " " AND N* <- "a" THEN 500
ELSE IF N* >» "a" AND N* <» "z" THEN N* - CHR*(ASC(N*)-32):
GOTO 500
3010 GOTO 700
410 'IF CHAR.ACCEPT.CODE-3 THEN IF MID*(ACCEPT*,CURSOR.POS,1) * ? THEN ..
420 IF N* - ENTR* THEN 600
430 IF N* <> BACKSPACE* OR CURSOR.POS = 1 THEN 210
440 '
450 IN* * LEFT*(IN*, CURSOR.P0S-2) +RIGHT*(IN*, FL -CURSOR.POS+D+" "
460 INS.LENGTH * INS.LENGTH -1
470 CURSOR.POS * CURSOR.POS -1
480 GOTO 190
490 '
500 IF NOT INSERT THEN MIO*(IN*, CURSOR.POS, 1) - N*: GOTO 550
510 IF INS.LENGTH >= FL THEN 210
520 IN*- LEFT*(LEFT*(IN*,CURSOR.POS-1)+N*+RIGHT*(IN*.FL-CURSOR.POS+l),FL)
530 CURSOR.POS - CURSOR.POS + 1: INS.LENGTH = INS.LENGTH + 1
540 GOTO 190
550 IF CURSOR.POS = 1 THEN IN* = N* + SPACE*(FL - 1): PRINT IN*;:
LOCATE, CURSOR.START: INS.LENGTH « 1
560 PRINT N*;
570 CURSOR.POS « CURSOR.POS + 1
August 1984
39
PC BRAND HAS UNBEATABLE
C has rapidly become the language of
choice for serious software devel¬
opers. The language of maximum
portability across the spectrum of
today’s personal computers. The
language which will most rapidly adapt
to tomorrow’s machines. The companion
language to Unix™, the operating
system destined for predominance.
Major companies such as Microsoft and
Micropro know this. They have switched
to C for their applications development.
How ready are you for the future?
PC Brand has the complete line of
today's finest professional C tools. Not
just the finest compiler, but libraries for
graphics and screen design, overlay
linkers, and program editors acclaimed
as the best of their kind. It is a complete
workshop of craftsman’s tools which will
turn you into a C professional in a hurry;
capital equipment which will pay back
your investment many times over.
Take the time to read this advertise¬
ment. You are sure to see the competi¬
tive edge these products will deliver.
LATTICE C
The Preeminent 16-bit C Compiler
Y
ou can find a more economic way to
learn C, but if your interest is
program development, Lattice C™ is the
unparalleled choice. Byte said "the
Lattice C compiler produces remark¬
able code .. .outstanding in terms of
both execution speed and code com¬
pactness”. After reviewing nine
compilers for the PC, the PC Tech Journal
unequivocally declared Lattice C "best
for software development... it compiles
fast and produces fast programs".
Lattice C is a full implementation of
Kernighan and Ritchie, not a subset, and
even offers extra features such as nested
comments, 39-character variable names
and extra compile time checks for some
of C’s subtler errors. The compiler
comes with a full library of I/O routines
which implement under MS™-DOS most
of the Unix-compatible standards
described by Kernighan and Ritchie.
HALO
A Spectacular Graphics Extension to Lattice C
PMATE
The Programmer’s
Word Processor
P mate was designed for program¬
mers. We’ll wager that you cannot
find a programmer who has discovered
Pmate and moved on to something else.
Pmate is a full screen editor with ten
auxiliary buffers for squirreling away
pieces of text until needed. It uses single
key commands to move the cursor, or
text, or insert or delete, or rescue sev¬
eral thousand characters of deleted text.
It has a format mode for tab setting or
wraparound and shaping when it’s time
to write documentation. Pmate lets you
assign chains of commands or strings of
text to single keys: one keystroke could set
up the entire shell of a new C function,
for example.
Pmate has variables, if-then state¬
ments, loops. It calculates, and converts
decimal to hex to binary and back. You
can write compact programs (called
"macros") to delete comments, for exam¬
ple, or check syntax, or process long
sequences of commands. Macros can al¬
phabetize lists, do row and column math,
perform a series of operations on multi¬
ple files, even summon other macros.
Put another way, Pmate is a text editor
with its own built-in interpretive lan¬
guage. A language you can use to com¬
pletely customize this text editor to your
fancy. Possibly the most artful, ingenious
program you have ever seen.
Product Code: S0600 Our Price:
Suggested Retail: $225.00 *175.00
H alo™ will astound you. It provides a
complete library of graphic func¬
tions which can be linked with your Lat¬
tice programs to create full-color charts,
graphs, simulations, even animation.
Over 100 commands-are at your
disposal, including plot, line, arc, box,
circle, plus single commands to produce
bar graphs and pie charts. Pattern-fill
and dithering commands give your
graphics impressive texture and color
mixes, rubber-banding draws shapes for
interactive users, area moves produce
animation, fill and flood commands paint
areas. The newest version allows you to
define your own world coordinate
scheme, divide the screen into
"viewports" (windows), and scale
graphic figures automatically.
It’s a long list of capabilities which
make for an extraordinarily powerful
product. In fact, Halo is so good that
manufacturers of graphics boards and
systems are adopting it as a standard
graphics language. So it can bridge your
application to other systems. CAD-CAM
developers, especially, have embraced
its device-independent approach for
maximal portability.
Halo is a dazzling demonstration of
why C has become the language of
choice among programming profes¬
sionals: its function library architecture
means you can tremendously enhance
your firepower by acquiring libraries of
software like Halo with dramatic
economy of time and money.
Requires IBM monochrome or color
graphics card or equivalents.
Product Code: S0300 Our Price:
Suggested Price: $200.00 *125.00
Lattice C runs on virtually any com¬
puter using an 8086 or 8088 microproces¬
sor, and we carry two versions for either
PC-DOS™ or CP/M-86™. Create your
source files with any word processor or
text editor like Edlin or our Pmate™ and
Lattice C will compile them into Intel
8086 object module format ready for
linking with other modules by linkers
such as DOS’ Link or our Plink86™.
Lattice C offers a choice of four mem¬
ory models which allow the program
designer to choose the right combination
of efficiency and size for an application:
a range between 64K and a full mega¬
byte for program and data area size.
The documentation, which Byte says
"sets such a high standard of excellence
that others don’t even come close",
features sample source programs and
covers the interface to assembly
language and machine dependencies.
C’s structured approach encourages
development of tight, fail-safe functions
which can be counted on to return
reliable results every time. Local
variables unknown outside of functions
to safeguard against collision. Extremely
powerful nested expressions which
produce elegant, concise code.
Requires 128K RAM.
For PC-DOS: Product Code: S0100
For CP/M-86: Product Code: S0120 Our Price:
Suggested Price: $500.00 *295.00
PLINK86
Overlay Linkage to Expand
S oftware is becoming ever more
sophisticated, which means more
complex programs requiring large
chunks of memory. But if you use extra
memory, if you count on users to have
expanded RAM, you will forego sales to
those who do not.
Plink86 is the answer. It takes on the
job of shoe-horning large programs into
small memory. First, Plink86 acts as an
alternative to DOS’ Link. For a language
like C which encourages design of sep¬
arately compiled object modules in the
Microsoft relocatable format, Plink86
pulls modules together into single com¬
piled programs. But Plink86’s overlay
power is what has gained it a reputation
as a miracle worker. It binds into the
compiled program its overlay manager
which knows how to swap modules of
your large linked program between disk
and memory, so that each can temporar¬
ily occupy the same memory space.
Unlike other linkers, the overlay
manager acts on its own, needing no
calls from the source program. Instead,
Plink86’s straightforward overlay
description language allows you to
describe your overlay structure in one
place in your program — a structure
FOR V PROFESSIONALS
Equip Your Workbench with Our
Precision Quality Craftsman' Tools
C-FOOD SMORGASBORD
A Menu of Difficult to Prepare C Fun ctions
All products operate on the IBM PC or
PC/XT under PC-DOS and require no
more than 64K of RAM unless indicated.
Prices, terms and specifications
subject to change without notice.
C is a language of function libraries:
sturdy routines which your
application can effortlessly reference to
get the job done. But someone has to
write them. It would take months to
concoct and perfect the complex and
useful servings which have been
prepared for you and thoroughly tested
in C Food Smorgasbord™.
Decimal Arithmetic: Functions to
perform operations on binary-coded
decimal (BCD) numbers of up to sixteen
significant digits. Includes trigonometric
and logarithmic functions, powers,
conversions to strings, and much more.
Level 0 I/O Functions: Enable you to
perform direct I/O operations for
screen, keyboard, printer, and
asynchronous port with no dependence
on higher I/O functions to minimize
memory usage and maximize speed.
IBM™ PC BIOS Interface Access:
Allows you to get at the basic I/O
services in the ROM BIOS not available
through the normal operating system to
get and set the video mode, cursor
position, color and screen attributes,
Your Art of the Possible
permitting up to 4,095 overlays stacked
32 deep. And you don't have to re¬
compile to re-arrange the structure.
Plink86 is a two pass linkage editor. On
the first reading it determines all mod¬
ules which need loading, to insure
greater flexibility in assigning memory
segment addresses before the disk file
is created on the second pass. It can
even sub-divide its linked output into
multiple files for programs which must
span more than one disk.
But most of all it sets you free to write
the comprehensive code today’s users
have come to expect without sacrifices to
memory constraints.
Product Code: S0500 Our Price:
Suggested Price: $395.00 *315.00
keyboard shift, scrolling, printer channel
and port status.
TIP, the terminal independence
package: Lets you easily move programs
to computers with different types of
terminals.
There is a basket of delicacies beyond
this brief list; a cornucopia to sample,
any one of which will save valuable time
and pay back far more than C-Food
Smorgasbord’s overall price.
Product Code: S0200 Our Price:
Suggested Price: $150.00 $115 on
Prices do not include shipping and
handling.
You may freely use these products to
create software applications for re-sale
without additional licenses or royalty pay¬
ments, provided your applications are not
wholly or substantially replications of the
products themselves.
Unix: TM Bell Laboratories / Lattice C and C-Food
Smorgasbord: TM Lattice Inc. / MS: TM Microsoft Inc.
/ Halo: TM Media Cybernetics / IBM: TM
International Business Machines / Float87: TM
Microfloat / Panel: TM Roundhill Computer Systems
Ltd. / Plink86 and Pmate: TM Phoenix Software /
CP/M-86: TM Digital Research
PANEL
Are You Still Coding Hand-Made Data Entry Screens?
D esigning custom screens is intricate,
time-consuming, and costly. It can
make you the loser in competitive
bidding. It can add weeks, even months
to bringing your product to market.
But not when you use Panel™. Put
Panel to work and you hire a superpro¬
grammer for the minimum wage. Telling
Panel your screen design is like using a
word processor. You can add, move,
copy, delete, and reshape fields with
single key commands. The result?
Finished C program code with field
descriptors, color and highlighting, input
editing by type of field, help keys, and
warning messages.
Panel can also create a terminal
selection program customized for your
application, and gives you a utility to
quickly test your finished screens. It
even includes a multi-key data file
maintenance program which interacts
with the screen you design. All the tools
you need to generate code for the
trickier aspects of your application, or
even to create stand alone data entry
and retrieval products without any
programming.
Panel routines are powerful. Unlike so
many programs which make error
correction difficult once a field is
departed, Panel gives the user full field-
to-field movement for editing, and
overtype or insert/delete within fields.
A truly superior productivity tool
every developer should have.
Product Code: S0400 Our Price:
Suggested Price: $295.00
*235.00
FLOAT-87
Software Support for
the 8087Math Chip
F loat-87 1,151 is a library of floating-point
math routines which are merged into
a Lattice C interface library. The rou¬
tines handle all arithmetic functions and
the most frequently used transcendental
or trigonometric functions, and pass all
numbers to the 8087 to take advantage of
its 80-bit data format.
Putting Float-87 to work with an 8087
can increase the speed of floating-point
calculations by 40 times or more — and
with greatly expanded accuracy. If you
or your customers have an Intel 8087
math processor chip on board, this
software will switch on its afterburners.
Product Code: S0700
Suggested Retail: $125.00
Our Price:
* 100.00
CIRCLE NO. 170 ON READER SERVICE CARD
You won’t find an offer like this
elsewhere: Exceptional prices
and software fully supported by a
knowledgeable staff specializing
in ’C’ and companion tools.
1-800-PC BRAND
That's l-(800) 722-7263. In NY State call (212) 410-4001.
Charge your purchase to MasterCard or Visa.
Or mail your order and check to
PC Brand, P.O. Box 474, New York, N.Y. 10028
© 1984 PC Brand
PC Brand and Craftsman
are trademarks of PC Brand
Tech Journal
William Redmond is a software analyst for the Legislative Service Bureau of Michigan. He
has worked in data processing for 15 years and with micros for 2 years.
MANAGING
MEMORY
A guided tour of DOS 2.0 memory management
William J. Redmond
Fundamentals
Three categories of memory are in¬
side the PC. The first type is ROM
(or read-only memory), which con¬
tains the BIOS (BASIC I/O System)
routines, system-initialization rou¬
tines, and the cassette BASIC inter¬
preter. The other two categories of
memory—planar memory and I/O
channel memory—are contained in
RAM (random-access memory) and
are intended for use by the operat¬
ing system of the PC and by the
user. Planar comes from the Latin
word planus, which means level or
flat. The word is used by computer
technicians to refer to the main sys¬
tem board in the IBM PC. (This
board is also commonly referred to
as the mother board.)
The original PC allows for four
rows, or banks, of RAM. Each bank
contains 16K bytes with a parity bit.
With the four banks filled, there¬
fore, the original PC has a planar
memory of 64K bytes. The newer
board for the IBM PC utilizes the
same four rows of chips, but the
256K memory chips are used in
place of the 16K chips, allowing a
maximum obtainable memory on
the planar board of 256K bytes.
In either case, once the planar
board is fully populated (that is, the
O ne of the major advantages of
the PC's 16-bit 8088 micro¬
processor is that it can address a
megabyte of internal memory. This
capability has allowed the develop¬
ment of word processing, spread¬
sheet, graphics, and data base pro¬
grams (among others) with features
that only a few years ago were
limited to large mainframe com¬
puters. As new releases of
PC- DOS have become
more and more sophis¬
ticated, it has be¬
come necessary and
desirable to increase the
amount of memory avail¬
able to the user.
For me, this was no prob¬
lem. I purchased an IBM PC back in
the days of DOS 1.0. It contained
64K of user memory, which was, of
course, not enough, since I wanted
to use the Macro Assembler (requir¬
ing 96K). I therefore bought a
multifunction expansion board, al¬
lowing me to increase the memory
on my system from 64K to 320K.
With that expansion board,
however, my system took 52 sec¬
onds—it seemed like a .lifetime — to
go through its initialization routines
from a power-up. I began to re¬
search a solution to my problem.
August 1984
43
Memory
maximum memory is installed on
the board), if more RAM is desired,
it is necessary to use an input/out¬
put expansion slot and install one of
the many^available memory expan¬
sion cards. The memory con¬
tained on these expansion boards is
called I/O channel memory.
For purposes of clarity, the fol¬
lowing discussion of switch settings
will refer to the old-style planar
board with 16K RAM chips. On the
planar board are two switches (SW1
and SW2) that are used to designate
the amount of planar and I/O chan¬
nel memory present in any particu¬
lar PC configuration. The values of
these switches are used by the ini¬
tialization routines in ROM to de¬
termine how much user memory
(RAM) exists in the system. (See the
Options section of the Guide to Op¬
erations to set these switches.)
Two toggle switches on SW1 in¬
dicate how much planar memory
exists in increments of 16K. These
two toggles may contain a binary
value of 0 through 3, indicating
16K, 32K, 48K, or 64K.
SW2, on the other hand, uses
four toggle switches (binary values
0 through 15) to designate how
much I/O channel memory exists
on the PC in increments of 32K.
Each 16K-byte block of memory
is written with a data pattern, then
read back and verified. Five data
patterns (11111111, 01010101,
10101010, 0000001,and 00000000)
are processed for every byte of
memory. Given the amount of code
that is executed to perform these
tests, it takes about 2 seconds to ini¬
tialize 16K bytes. A 64K-byte sys¬
tem will use about 8 seconds to ini¬
tialize and verify all of the memory
on the planar board.
While checking for data mis¬
match during this process, the
memory test routines also check to
see if parity errors have occurred.
Each byte of memory contains 8 bits
and a parity bit. The memory-write
logic of the PC always records an
odd number of "on" bits for each
byte that is stored. If the number of
"on" bits is even, the parity bit is
set on to make the number of "on"
bits odd for this byte. When data
are read from memory, the mem¬
ory-read logic checks to make sure
that there is an odd number of "on"
bits in each byte. If this is not true,
a parity error is indicated.
Port 62H is the port address of
SW2, which is used to indicate how
much I/O channel memory exists.
Bits 7 and 8 of this port are used by
the planar board and memory ex¬
pansion boards to indicate a parity
O nce the planar
memory has been
verified , the initial¬
ization routines check to
see if the phinar board is
fully populated, so, the
mput/output channel
memory is then tested in
the same fashion as is the
planar board memory.
error. Bit 7 is used for the parity
check indicator for the I/O channel,
and bit 8 is used for that indicator
for the planar board.
Once the planar memory has
been verified, the initialization rou¬
tines check to see if the planar
board is fully populated. If so, the
I/O channel memory is then tested
in the same way the planar board
memory was tested.
If a parity error or data mis¬
match occurs during the verifi¬
cation process, the monitor is reset
to 40x25 video mode and an error
message and memory address are
displayed, along with one long and
one short system beep. (Note: If the
first 16K of planar memory fails ini¬
tialization, no message is generated,
and the processor simply halts.)
It is also useful to know that if
a parity error occurs after system
initialization, the monitor will dis¬
play "Parity Check 1" for a parity
error on the planar board and "Par¬
ity Check 2" for one on an I/O
channel memory expansion board.
Once all this initialization has
been successful, the amount of user
memory (planar board, plus I/O
channel if the planar board is fully
populated) is stored in a variable lo¬
cated in a fixed location at 40:13 in
memory. This variable is called
MEMORY.SIZE (see page A-2 in the
original Technical Reference and
page A-3 in version 2-2). The total
amount of I/O memory is then
stored in the IO_RAM_SIZE vari¬
able, located at 40:15 in memory.
The values stored in the variables
represent the number of kilobytes
of memory,- a value of hexadecimal
140 thus indicates 320 bytes.
Methods of Memory
Management
During DOS initialization, the value
in the MEMORY_SIZE variable is
used to inform DOS how much
total memory is present. This is im¬
portant because DOS is responsible
for memory management.
Memory management refers to
the process of allocating mem¬
ory areas for use by programs and
freeing those same memory areas
when their use is no longer re¬
quired. This includes assigning
space for the COMMAND processor
and all programs executed by COM¬
MAND or any other program.
DOS 1.0 and 1.1. Versions 1.0 and
1.1 of DOS used a simplistic mem¬
ory management scheme that was
sufficient for the single-user, single¬
task systems that these versions
were. The value of MEMORY_SIZE
at 40:13 was captured locally in
COMMAND'S permanently resi¬
dent portion, located just above
DOS. The offset of this variable in
DOS Li's COMMAND code seg¬
ment is CS:452. Whenever a mem¬
ory area was required for DOS 1.1,
all available user memory was allo¬
cated by the user program itself;
DOS was not directly involved.
44
PC Tech Journal
With PC TURBO...Speed Wins the Race.
In business, success comes to those who
win the race against deadlines and competi¬
tion.The IBM™ PC is a great tool, but valuable
time can be wasted waiting for it to recalcu¬
late spreadsheets, retrieve data, or execute
the newer and more complex software pack¬
ages. PCturbo,™ new from Orchid, can help
you win and enjoy the fruits of success.
PCturbo is the ultimate IBM PC produc¬
tivity enhancement. It boosts the execution
speed of your PC so you can get more done
in less time. And it's transparent to existing
programs such as WordStar,™ Lotus 1-2-3,™
and dBase II™ So, with PCturbo, your PC
looks and acts the same as before; it just
runs faster.
Who needs PCturbo? Anyone who ever
waits for their PC to finish executing so they
can run something else. Programmers wait¬
ing for compilers to finish before testing a
new feature. Businessmen waiting for a data
base to retrieve account information. Word
processors waiting for the spelling checker
to finish before printing.
PCturbo does more than just speed up the
PC. It extends the life of slower, older pro-
ORCHID
ORCHID TECHNOLOGY
47790 Westinghouse Drive
Fremont, CA 94539
(415) 490-8586 Telex: 709289
grams. It provides a base for new sophisti¬
cated software. And it protects your PC
investment. You get your work done quicker
and decisions made sooner. The very reasons
you got a computer in the first place. Write
or call for more information.
TECHNICAL DETAILS:
Hardware
■ One slot plug-in board with high-speed 16-
bit processor (8086 or 80186)
■ Up to 640K on-board memory for a maxi¬
mum of 1.28 Mbytes total PC memory.
■ Simple “one step” installation.
Software
■ Runs IBM PC-DOS 2.0/1 on either the IBM
PC or XT.
■ Provides disk caching, RAM disk using avail¬
able PC memory up to 640 Kbytes.
■ Concurrent program execution available
soon.
Corporation. WordStar is a trademark of MicroPro.
PCturbo is a trademark of Orchid Technology. IBM PC and XT are trademarks of International Business Machines
Lotus 1-2-3 is a trademark of Lotus Development Corporation. dBase II is a trademark of Ashton-Tate.
CIRCLE NO. 180 ON READER SERVICE CARD
'—-\
WHY FORTH ?
• Genuinely Interactive
(BASIC is much less interactive)
• Encourages Modular Programs
(inefficiency and cluttered syntax
hamper effective modularization in
compiled languages)
• Fast Execution
(not even C is faster)
• Amazingly Compact Code
• Fast Program Development
• Easy Peripherals Interfacing
H /4orth
• Fully Optimized & Tested for:
IBM-PC IBM-XT IBM-JR
COMPAQ EAGLE-PC-2
TANDY 2000 LEADING EDGE
and all MSDOS compatibles
• Graphics - line, rectangle, block
• Music - foreground and
background
• Scaled decimal floating point
• Includes Forth-79 and Forth-83
• Full Support for DOS Files,
Standard Screens and Random
access DOS Screen Files
• Full Use of 8088 Instructions
(not limited 8080 conversion subset
of transported versions)
• Separate Segments for Code,
Stack, Vocabularies, and Defini¬
tion Lists - multiple sets
possible
• Segment Management Support
• Full Megabyte - programs
or data
• Coprocessor Support
• Multi-task, Multi-user
Compatible
• Automatic Optimizer
(no assembler knowledge needed)
• Full Assembler
(interactive, easy to use & learn)
• Compare - BYTE Sieve
Benchmark jan83
HS/FORTH 47 sec BASIC 2000 sec
w/AUTOOPT 9 sec Assembler 5 sec
other Forths (mostly 64k) 70-140 sec
PS You don’t have to understand
this ad to love programming in
HS/FORTH!
HS/FORTH with AUTO-OPT &
MICRO-ASM $220.
!!S Visa Mastercard
Add $10. shipping and handling
HARVARD
SOFTWORKS
PO BOX 339
HARVARD, MA 01451
(617) 456-3021
___ J
Memory
DOS 2.0. Version 2.0 of DOS drasti¬
cally changed the concept of mem¬
ory management on the IBM PC.
Rather than treating user memory
as one giant entry, DOS 2.0 intro¬
duced memory control blocks as a
means of allocating and de-allocat¬
ing memory for programs. This type
of memory use control is necessary
if the IBM PC disk operating system
is to evolve into a multi-tasking
operating system. (All indications
are that DOS 3.0 will support multi¬
tasking on the PC.)
The memory control block is
made up of 16 bytes (one paragraph)
of data that immediately precede an
allocated memory area. In DOS 2.0,
not all 16 bytes are actually used.
The functions of those that are used
can be found in table 1. (A bit of
trivia: in table 1, notice that the let¬
ters "M" and "Z" indicate logical
ends of a chain of memory links.
Note also that the first two letters of
an EXE file that has been linked are
"MZ." It seems more than just a
little coincidental that the man who
is most responsible for DOS 2.0 is
named Mark Zbikowski.)
Added Functions. Three new
functions were added to DOS 2.0 to
deal with these memory control
blocks and to allocate and de-allo-
cate memory for programs:
48 Allocate memory
49 Free allocated memory
4A Modify allocated memory
blocks
The first function links
through all memory control blocks
starting at the memory address
stored in DB:[10C] (which contains
the address of the first memory con¬
trol block) until it finds an available
area that is large enough to satisfy
the allocation request. Once it finds
such an area, it builds an "in-use"
memory control block and links it
into the chain of memory control
blocks through memory.
If no area is large enough for
the allocation request, an error 8 is
returned in AL to indicate insuffi¬
cient memory. If, during the process
of linking through memory control
blocks, a block is found that does
not contain "M" or "Z" as the first
byte, an error 7 is returned in AL to
indicate that the memory control
blocks have been destroyed.
The purpose of the function
that frees allocated memory is to
mark a previously in-use memory
control block to indicate that the
memory area that follows is now
available. This is done by storing
zeros in the word at offset 1 in the
memory control block.
The third new function, which
modifies allocated memory blocks,
changes the size of an in-use mem¬
ory area (if possible). This may in¬
volve "growing" or "shrinking" the
existing in-use area. (In the initial
release of DOS 2.0, it appears that
this DOS function will only
"shrink" a memory area.)
Table 1: Functions of Memory Control Block Byi
1
p
Ivt
p
1
T ‘ ilnr*
Use
-1
YP
0
iffset
rj
n
A/f"
ro
f-T-i/7 Inert r\no it
V
yte
U
H
M
used in all memory c
mp.mnrv
:om
,LU1 UlUl
✓AO
uALc/ji/l
_!
_i
l_
Z"
!_-|
j.c used to indicate that this is the last memory control
block
V
VOIC
1_
1
-2
0
indicates an available area
I-
E
ton-
zerc
)
indicates an in-use a
rea (points back to the program
seg -
... ~-
|
ment prefix)
V
VOTC
l
|4
—
indicates size of this
area (in paragraphs)
and
is used
! foi
j
linking through memory areas
( -
CIRCLE NO. 222 ON READER SERVICE CARD
PC Tech Journal
PCnet from OtdiidTechnology
fm The Most Advanced, Affordable Way to
Transformer Personal Computers into a Fully
Integrated,High-Speed Local Area Network.
DISKLESS
CAPABILITY
• With remote
boot option,
PC without
diskette drive
automatically
downloads
DOS from disk
server at
power up
PRINTER SHARING
• Non-dedicated printer
server on any PC
RAM DISK
• Provides faster
access than hard disk
and diskette drive
EACH DISK/FILE
SERVER
• Up to 16 public and
private volumes
• More than one
private/public read
write volume for
each PC
DISK CACHING
• Improved speed in
accessing data normally
on the disk drive
PCnetTALK
• Send
message/
Hard Disk
IBM™ PCs. Take your choice.
$495 per node when purchased as a
stand-alone.
$395 per node when purchased with
BLOSSOM (384K RAM, Clock, IO)
Orchid, the creator of PCnet, has made
high-performance local area networking
affordable to all PC users. Contact your
local dealer or Orchid today to unlock the
power of your IBM PC and find out more
about our full line of products.
PCnet— Stand-alone Network Board
PCnetPlusRam— PCnet + 256KRAM
PCnetBlossom 1 - PCnet + 384K RAM +
Serial Port + Parallel Port + Clock Calendar
Blossom— New Generation Multifunction
Board
PC turbo— The Ultimate IBM PC
productivity enhancement board
IBM PC is a registered trademark of International Business Machine Corporation.
PCnet, PCnetPlusRam, PCnetBlossom, Blossom and PCturbo are all trademarks of Orchid Technology.
CIRCLE NO. 192 ON READER SERVICE CARD
ORCHID
ORCHID TECHNOLOGY
47790 Westinghouse Drive
Fremont, CA 94539
(415) 490-8586 Telex: 709289
Memory
TALL TREE
SYSTEMS
INTRODUCING
JRAM-2
THE ONLY
TWO MEGABYTE
MULTIFUNCTION
BOARD
Break through the 640K-byte memory
barrier! Put two MEGABYTES of
RAM plus all the most popular I/O
functions—serial ports, parallel ports,
and clock/calendar—in a single PC
slot! Includes JETDRIVE RAM disk
and JSPOOL printspooler.
JRAM-2 OPTIONS
JRAM-2 OK.$219
JRAM-2 OK, Clock/Cal.$299
JRAM-2 OK, Serial, Parallel
ports, Clock/Cal.$399
JRAM-2 OK, Two Serial ports .. .$349
JRAM-2 OK, Two Serial ports,
Clock/Cal.$399
JRAM-C (For Columbia PC)
OK, Clock/Cal.$249
MEMORY
64K chips $50/Bank
256K chips $500/Bank
DOS 2.0, 2.1 SOFTWARE
JETDRIVE.$60
WINDRIVE.$60
JFORMAT-2.$60
JSPOOL.$60
TALL TREE SYSTEMS
1032 ELWELL COURT, SUITE 124
PALO ALTO, CA 94303
(415) 964-1980
Memory Links
Linking through the memory con¬
trol blocks is relatively easy. Start
with the address of the first mem¬
ory control block, which depends
on the version of DOS being run,
whether a fixed disk is installed,
and whether a PC jr is being used. In
DOS 2.0, the pointer is located at ad¬
dress DB:10C ; for DOS 2.1 it is
found at DB:178. Add 80H to each
of these addresses if a hard disk is
installed, and add 70H if a PC jr is
being used. The final address points
to the paragraph in memory that
contains a memory control block. If
the word located at byte offset 3 in
this memory control block is added
to the address of the memory con¬
trol block, and if 1 is then added to
that (to compensate for the size of
the memory control block itself),
the address will be that of the next
memory control block (see figure 1).
This adding process continues
until the byte at offset zero in the
memory control block equals a "Z."
In this "ending" memory control
block, the word at offset 3 in the
block indicates the number of para¬
graphs that remain in user memory.
When DOS initializes, this "end of
user memory" reflects the amount
of memory that is indicated by the
planar board switches.
Listing 1, MEMINIT.ASM, uses
the above information to determine
the amount of user memory avail¬
able, then adjusts the memory con¬
trol blocks to reflect the addition of
this memory. With this program, it
is possible to set the switches to in¬
dicate a small amount of memory
(so that power-on memory diagnos¬
tics run quickly) but still be able to
use all the user memory installed
on the PC. Using MEMINIT, my
system, with 320K user memory,
powers up in 15 seconds (including
the execution of MEMINIT).
The switches on the planar
board are set up to indicate that 80K
of user memory exists (even though
there is actually 320K). This in¬
cludes 48K on the planar board and
32K on the I/O channel. If the sys¬
tem has any I/O channel memory
and parity is not disabled, a parity
check is generated by the board
when the system is powered up.
This causes the memory test rou¬
tines to sense a parity error during
initialization of the planar board,
and the system will halt with no
error messages generated.
If the user specifies that some
I/O channel memory exists, the ini¬
tialization routines perform one 16K
write operation to the expansion
memory, but since the planar board
is not fully populated according to
the switches, the I/O expansion
memory is never tested later. This
one-time write operation effectively
resets the parity check indicator, al¬
lowing initialization of the 48K on
the planar board to finish normally.
Now when the system powers up,
the ROM routines recognize 48K of
user memory (enough for DOS 2.0
to be loaded without any problem).
If it is necessary that more than
48K be recognized (either because
some program contains its own boot¬
able operating system or because de¬
vice drivers are loaded prior to the
completion of DOS initialization),
the required minimum amount may
be specified on the planar board
switches. Remember that each 16K
specified adds another 2 seconds to
the initialization time.
How MEMINIT Works
Once DOS is initialized, MEMINIT
may be executed to configure the
user memory correctly on the sys¬
tem. The first function of
MEMINIT is to determine the
physical amount of user memory in¬
stalled on the PC. This is accom¬
plished by starting at the end of
memory (as indicated by the planar
board switches) and writing the seg¬
ment number into that memory
word. That word is then read back.
If it contains the same data that
were written, the program assumes
that the memory exists and it,
therefore, continues to run.
48
PC Tech Journal
Something Totally New in Applications Software From Borland,
Hie Folks Who Make Turbo Pascal.© I
im m
If you’ve ever found yourself searching
for a calculator or a notepad when
you’ve got a computer right in front of
you, then you know why we came up
with Sidekick®.
WHETHER YOU’RE RUNNING
1-2-3, WORDSTAR,
dUBASEH OR WHATEVER . . .
JUST A KEYSTROKE
AND A SIDEKICK
WINDOW OPENS ...
® A CALCULATOR
• A NOTEPAD
• AN APPOINTMENT
CALENDAR
• AN AUTO DIALER
• AN ASCII TABLE
• AND MUCH MORE
ALL AT ONCE ... OR ONE AT
ATIME. ANYWHERE ON
THE SCREEN YOU LIKE.
ANOTHER KEYSTROKE,
AND YOU’RE RIGHT
WHERE YOU LEFT OFF
IN YOUR ORIGINAL
PROGRAM!
(you never really left!)
Something brand new. Crafted in Assembly
language as carefully as Borland’s famous ftirbo
Pascal®, so that it’s lightning-fast and as compact as
only Borland knows how to make it! With a notepad
that has a full-screen editor that saves your notes to disk.
You can even swap information back and forth between
your applications software and your Sidekick®.
Suppose you’re working with a spreadsheet, and you
suddenly have an important idea. Just hit the button, a
window opens, you write the note and hit the button
again. You’re right back where you left off in the
spreadsheet.
Available only for the IBM PC, XT, jr. and Compatibles.
Need to make a phone call? Whether the number is in
an existing database, your own Sidekick phone directory,
or you’ve just typed it on the screen ... . . put the cursor
next to the number, hit the keystroke, and Sidekick dials
for you!*
There’s lots more, too. You can move the Sidekick
windows anywhere on the screen you like. And you can
have as many on screen at a time as you need.
We designed it because we needed it. If you’ve ever
been writing a report and needed to do a quick calcu¬
lation, or jot down a note, then you understand why.
’Only with Hayes Smartmodem and compatibles.
YOB CAN ORDER YOBR COPY OF SIDEKICK® TODAY!
For Visa and MasterCard orders call Toll Free 1-800-227-2400 ext 953 in California 1-800-772-2606 ext 953
(lines open 24 hours, 7 days a week) Dealer and Distributor Inquiries Welcome 408-438-8400
' SIDEKICK $49.95
(plus $5.00 shipping and handling
• Shipped UPS)
Check □ Money Order □
VISA □ MasterCard □
C Card * / . _ ■
lixf)iratioriJDate '_
Please be sure your computer is an IBM PC, XT, jr., or true compatible!
NAME ____ ■
ADDRESS _ . _ H
CITY/STATE/ZIP .
TELEPHONE _
jj>) BORlAflD
D) INTERNATIONAL
California residents add 6% sales tax. Outside U.S.A. add $15.00. (If outside of
U.S.A. payment must be b.y bank draft payable in the U.S. and in U.S. dollars.) Sorry,
no C.O.D. or Purchase Orders.
Borland International
4113 Scotts Valley Drive
Scotts Valley, California 1
TELEX:172373
The new IBM DisplayWrite
here. Spread the word.
In 1980, IBM introduced the Display writer System.
Today, its become the best-selling stand-alone text processor
in the world. One reason for this success is the Display writers
function-rich software.
If you’re looking for software like that, but working
on an IBM personal computer, you don’t have to look any further.
Because the IBM DisplayWrite Series is here.
And it will put many of the features and capabilities of a
dedicated word processor to work for you when you’re writing.
It runs in the family.
\bu’ll find two word processing programs in this series:
There’s DisplayWrite 1, for IBM personal computers — including
PCjr. And DisplayWrite 2, with added functions for your PC,
PC/XT or Portable PC.
You’ll also find DisplayWrite Legal, a dictionary of about
16,000 words that a lawyer might need to check.
And you’ll find DisplayComm, which lets your IBM PC
send and receive text to and from other IBM PCs. If you’re
writing at the office, this program could also let you send text
to an IBM Displaywriter down the hall. (From there, it could be
sent on to an IBM host computer for distribution.)
Some words on high function.
The DisplayWrite word processing programs give you the
time-saving features you’d expect from IBM. Justified margins,
centered lines and pagination, for example. You’ll even have
prompts and messages to help guide you along.
But there are also some features in DisplayWrite 2 you
might not expect. Like easy column formatting, four-function
math capability plus a spelling checker based on a dictionary of
about 100,000 words.
\et the biggest surprise of all may be the price*
DisplayWrite 1,** $95. DisplayWrite 2, $299. DisplayWrite
Legal, $165. DisplayComm, $375.
Where you can find allfour.
Get more information about the IBM DisplayWrite Series at
your authorized IBM Personal Computer dealer or IBM Product
Center. To find one near you, call 800-447-4700. In Alaska or
Hawaii, 800-447-0890.
Stop there first and get the last word.
Personal Computer Software
CIRCLE NO. 152 ON READER SERVICE CARD
Memory
□ PACK 1: Building Blocks 1
250 Functions: DOS,
Printer, Video, Asynch
Object
$99
Source
$149
□ PACK 2: Database
100 Functions: B-Trees,
Variable Records
Object
$149
Source
$Call
□ PACK 3: Communications
135 Functions: Smart-
modeirT, Xon/Xoff,
Modem-7, X-Modem
Object
$149
Source
$Call
□ PACK 4: Building Blocks II
100 Functions: Dates,
Text Windows,
Data Compression
Object
$129
Source
$Call
□ PACK 5: Mathematics 1
35 Functions: Log, Trig,
Square Root
Object
$99
Source
$Call
□ PACK 6: Utilities 1
35 Functions: Archive, DIR
Manipulation
Object
$99
Source
$Call
NOTE: Above Packs for Lattice"- 1 Compiler on
IBM PC/XT ,M
To Follow: Graphics, Advanced Math, Other
Compilers and Hardware
Prices above for single user, multi user
license available
Credit cards accepted ($7.00 handling/Mass.
add 5%)
gH ■ SOFTWARE
“ _ ttORizons
J ■ inc.
165 Bedford Street
Burlington, Mass. 01803
(617) 273-4711
This loop keeps checking mem¬
ory at each 16K boundary until the
data read do not equal the data writ¬
ten or until the top of user memory
(640K) is reached. The newfound
memory is initialized to a value of
hexadecimal 0. When the memory
is read back, no false parity errors
occur since BIOS did not initially
touch these memory words. At pow¬
er-up all memory locations contain
a binary value of zero with a parity
bit also equal to zero, which will
generate a parity error and cause the
system to halt if a memory location
is read before it is written. To avoid
this, MEMINIT writes to all new
memory but does not verify it as
BIOS initialization does. This is
where the speed is gained.
At this point, the program
knows exactly how much user
memory is available to the PC. It
must then tell DOS that this new
memory exists. This is done in two
ways, depending on the DOS ver¬
sion. In DOS 1.1, the memory size
variable is located in COMMAND'S
code segment, which resides just
above DOS in low memory. The off¬
set of the memory size variable that
is in COMMAND'S code segment is
hexadecimal 452.
Locating COMMAND'S code
segment (in order to fix up this
memory size variable) is slightly
tricky. When MEMINIT is exe¬
cuted, the program segment prefix
indicates a terminate address for the
program. This address, CS-.IP, points
CIRCLE NO. 175 ON READER SERVICE CARD
PC Tech Journal
Concise structure and fast exe-
cution make C the ideal language
for applications and system-level
programming.
And compared with other MS™
DOS C compilers, Microsoft® C
consistently produces the fastest
executable code.
It supports the full C language
and includes an extensive library
of subroutines that implement
most UNIX™compatible functions.
Small, medium, compact, and
large memory models give you
flexibility in selecting the address-
ing requirements of your software.
Programs can be designed to make
MICROSOFT, effective use of
The High Performance Software tilG HVHllSDlC
memory of your computer, up to
one megabyte.
Microsoft C Compiler provides
you with a complete development
system including the compiler,
run time library, linker and library
manager, and full support of
*Price exclusive of handling and Washington State sales tax.
Microsoft is a registered trademark and MS is a trademark of Microsoft
UNIX is a trademark of Bell Laboratories.
** Reprinted with permission. BYTE Magazine, August ’83.
MS-DOS 2.0 directory structure
(pathnames) and I/O redirection.
How do programmers feel
about Microsoft C?
“In the top category for its quick
compile and execution time, small
incremental code, best documen¬
tation, and consistent reliability!’**
—Ralph Phraner, BYTE Magazine
“Best for software development’.’
—Bill Hunt, PC Tech Journal
“Produces good, tight-running
programs’.’
—Peter Norton, Softalk
Call 800-426-9400 to order
the raging C* $500?
In Washington State, call 206-
828-8088. Ask for operator C5,
who will rush you your order,
send you more information, or
give you the name of your nearest
dealer to see Microsoft C in action.
Corporation.
Programmers: Save time &
money. Write better programs.
THE PROGRAMMER'S SHOP helps you find products,
services and support - at good prices. We provide:
• Free product literature • Over 300 products
• Product comparisons • Newsletters
AND: • Bulletin Board • Special disk formats • Good prices • Rush orders
• Volume purchasing help • VISA/MC, COD, POs • Programmer's Referral List
• Special Reports • Find a publisher • Tech help • "Pioneer Program"
Save effort and frustration - find what you need.
UNIX for the IBM PC
Consider UNIX for PRODUCTIVITY - the alternatives:
COHERENT by Williams $500
COHERENT by NCI 695
IDRIS by Whitesmiths 695
QNX by Quantum 650
VENIX by Venturecom/Unisource 800
XENIX by MicroSoft/Santa Cruz 1350
Developing for MSDOS? Real Time? Call for details, to compare, to learn about
compatible computers, benchmarks, speedup hardware. (Others
are coming.) Ask about languages, business software supported.
For a catalog, comparisons, prices, or for an info packet on AI, or
Editors, "C", BASIC, PASCAL, FORTRAN, or COBOL — or just for
straight answers —
Call 800-421-8006
THE PROGRAMMERS SHOP
128-PRockland Street, Hanover, MA02339
Mass: 800-442-8070 or 617-826-7531
[piaoiLOO-as""
Learn Fast,
Experiment
1 or 2 pages of PROLOG would
require 10 or 15 pages in "C."
Be familiar in one evening. In a few
days enhance artificial intelligence
programs included like:
• an Expert System
• Natural Language
Intro price: $125 for PCDOS,
CPM-86.
Full Refund if not satisfied.
SOLUTION SYSTEMS™
45-PAccord Park, Norwell, MA 02061
617-871-5435
(g manga? ,m
UNIX-like Utilities for
C Programming
Save time when working with
your C programs. Full source lets
you modify, helps you learn.
Utilities included: compare files
(DIFF), cross reference variables
(CCREF), examine flow of
functions (FCHART), search for
patterns (GREP). Others check
syntax, print your way, more.
$135 for MSDOS, CPM-86 or CPM80.
SOLUTION SYSTEMS™
45-PAccord Park, Norwell, MA02061
617-871-5435
Memory
to the resident portion of COM¬
MAND. By storing the CS portion
of this address the program can lo¬
cate and fix up the memory size
variable that is stored there.
DOS 2.0, however, does not
simply store the memory size in one
of COMMAND'S variables. Instead,
memory links (like those described
in this article) are constructed
through memory. The last memory
link constructed is an available link
and defines the number of para¬
graphs of user memory existing
beyond its own memory address. To
modify this value (so that the addi¬
tional user memory will be recog¬
nized and used by DOS) the pro¬
gram must chain through the mem¬
ory links until the last link is
reached. This is done in the subrou¬
tine called UPDATE.MEMORY.
CONTROL.WORDS.
This routine starts at the mem¬
ory control words immediately pre¬
ceding the program segment prefix.
It links through the memory con¬
trol blocks until the ending block is
found (byte zero of the block equals
a "Z"). The new memory size is
then converted to paragraphs, after
which the distance from the ending
memory control block to the new
end of memory is calculated. This
new value is stored in the ending
memory control block.
The only task remaining to do
is display the results of MEMINIT's
operation. Three values are re¬
ported: the initial memory size en¬
countered in 40:13 (which is initial¬
ized by the hardware switches); the
total amount of memory added by
MEMINIT; and the new total mem¬
ory storage used. Notice that if
CHKDSK is run after MEMINIT is
executed, the new memory is added
and is now recognized by DOS.
Knowing how DOS handles
memory management will not
make anyone a DOS expert, but it is
useful and satisfying to understand
what is one of the most important
features of any operating system.
54
CIRCLE NO. 239 ON READER SERVICE CARD
PC Tech Journal
tVRK'iouS
FORTRAN.
Microsoft® FORTRAN crunches
numbers with a vengeance!
It combines fast and efficient
native code compilation with
built-in 8087 coprocessor support.
The result? Mini and mainframe
performance from your MS™ DOS
micro.
Based on the 77 standard,
Microsoft FORTRAN supports
extensive statements and data
types—including complex num¬
bers and IEEE single and double¬
precision floating point accuracy.
Support for large arrays (greater
than 64K bytes), separate module
MICROSOFT, compilation,
The High Performance Software 9.110. OVClTHyS,
allow you to create very large
programs—up to one megabyte,
with access to more than 65
thousand records in a file as large
as four gigabytes.
How do programmers feel
about Microsoft FORTRAN?
“The first FORTRAN compiler
that takes advantage of the full
addressing capability of the 8088
and the power of the 8087!’
—Jack Wilschke, Softalk
“We decided to use the
Microsoft FORTRAN Compiler
for its INTEGER 4 capability
and the flexibility of its 8087
implementation!’
—Charlie Huizena <Sc
Chip Barnaky, PC World
Call 800-426-9400 to order
the ferocious FORTRAN*
$350?
In Washington State, call 206-
828-8088. Ask for operator C4,
who will rush you your order,
send you more information, or
give you the name of your nearest
dealer to see Microsoft FORTRAN
in action.
*Price exclusive of handling and Washington State sales tax.
Microsoft is a registered trademark and MS is a trademark of Microsoft Corporation.
IBM PC
For information inter¬
change, backup and archi¬
val storage, IBEX offers a
9-track, IBM format-com¬
patible V/magnetic tape
subsystem for the IBM PC,
featuring:
■ 42 M-Bytes on a single
reel.
■ Automatic loading.
■ IBM format 1600 cpi.
■ Software for PC-DOS,
MS-DOS or CPM-86.
Write, phone or TWX
for information |||||||||in jjjjM|j
IBEX COMPUTER CORP.
20741 Marilla St.
Chatsworth, CA 91311
(213) 709-8100
TWX: 910-493-2071
CIRCLE NO. 124 ON READER SERVICE CARD
IBM PC SYMBOLIC DEBUGGER
• Watch highlighted changes on dynamic display
• Alter registers, flags, and memory
• Display dataas decimal or hex or character
• Scroll through so u rce I i st i n g
• Single-step program being debugged
• Execute procedures at normal speed
• Go to breakpoint at normal speed
• Interrupt execution on checkpoint conditions
• Use symbols and 8086 addressing modes
Requires:
IBM PC or PC/XT. PC/DOS 1.1 or 2 0. 64K RAM
IBM Assembler, Color or Monochrome Adapter
rffl RDT
Software
BUGSCREEN™
ONLY $95
Demo $7
Memory
Listing 1 MEMINIT.ASM
page 60,132
title 'MEMINIT - Obtain all available user memory*
subttl ‘Version 1.0 October, 1983*
stack SEGMENT para stack 'STACK'
db 16 dup('stack 'i
stack ENOS
data SEGMENT at 40H
org 13H
memory_size dw
io_ram_size dw
data ENDS
code SEGMENT byte
assume cs:code,ds:code,ss:stack
original memory size dw ?
original io memory dw ?
additional memory dw ?
starting memory block dw ?
all sizes stored in 'K' bytes
location of program's PSP
command proc PSP dw ?
location of command’s PSP
(PSP=program segment prefix)
crlf db 10,13,'V
msgl db 'Original memory used:'
msgldata db ' K bytes*'
msg2 db ' Total memory added:'
msg2data db ' K bytes*'
msg3 db ’ Total memory:'
msg3data db ' K bytes*'
heading db 10,13,'MEMINIT - Version 1.00’,10,13
db 10,13,'*'
.RADIX 16
dosfunction MACRO funct1on_number
mov ah,function_number
int 21
endm
print MACRO msg, msgdata
mov bx,offset msgdata
call convert_to_ascii
mov dx,offset msg
dosfunction 9
mov dx,offset crlf
dosfunction 9
endm
convert to
ascii PROC
far
; convert to ascii converts a binary number
; in AX
to ascii display characters
push
dx
; save register values
push
si
mov
cx ,6
; initialize destination with spaces
fill_buff:
mov
byte ptr [bx],' '
inc
bx
loop
fill buff
mov
si.OA
do divide:
sub
dx.dx
div
si
; divide AX by 10
add
dx, '0'
; convert remainder to ASCII digit
dec
bx
mov
[bx],dl
; store this char in the string
Inc
cs
; count converted character
or
ax,ax
; all done?
jnz
do divide
; no: get next digit
; DOS data segment in low memory
; total memory size (K bytes)
; memory in 1/0 channel (K bytes)
Box 96634 • Weathe r f o r d. O K 73O96 • (405) 772- 1 821
56
CIRCLE NO. 147 ON READER SERVICE CARD
PC Tech Journal
NWATKJN
TALKS BUSINESS
Introducing the LSI Cat Communication
System ™with the Hayes compatible 300/1200
Smart- CatPluS m modem.
novation
ATION
NOVATION
novation
No more wondering what goes with
what. Here’s the best modem and the best
software for your specific computer—all in
one package.
Will your computer take an internal
modem? Or do you prefer a stand-alone?
And which operating system do you need—
CP/M, CP/M-86, PC-DOS, MS-DOS?
The Cat System includes them all.
And no compromises.
The quality starts with our new Smart-
Cat PLUS modem. There is absolutely
nothing else to equal it on the market. You
get faster more accurate dialing. Automatic
self-testing of the full communications cir¬
cuit. State-of-the-art advanced LSI circuitry.
And more. It is simply the best there is.
CIRCLE NO. 103 ON READER SERVICE CARD
The software is MITE™ —menu-driven,
easy-to-use, remarkably powerful. It gives you
error-free data communications and instant
access to Dow Jones, CompuServe and the like.
With the Cat System everything you get
is the best of everything—that includes the
best price. Suggested retail: $499.
See your dealer. He has them right now.
Seven models covering the IBM-PCs and
their bok-ahkes, DEC Rainbow, KAYPRO and
their operating systems. More models to come.
Novation, Inc., Box2875
20409 Prairie Street, Chatsworth, CA 91311
(800) 423-5419 • In California: (818) 996-5060
NOVATION
novation
carom ns.*:** s\s*nw
Summertime, and
SOFTWARE
ApTec (for color Prism Printers)
Rainbow Writer Color Text Formatter . . .$119.
Rainbow Writer Screen Grabber.69.
Ashton Tate
dBase II. 289.
Friday!. 169.
Best Programs
PC/Personal Finance Program.65.
PC/Professional Finance Program II .... 169.
PC/Fixed Asset System. 297.
PC/Tax Cut .175.
Bible Research
THE WORD (KJV Bible - 7 disks) .145.
Bruce & James
WordVision . 39.
Continental
Home Accountant Plus.89.
FCM (was First Class Mail) .79.
UltraFile (file/report/graph) .109.
Digital Research
CP/M-86 . 39.
Dr. LOGO.69.
Financier
Financier II (was Personal Series) .115.
Financier Tax Series.97.
Funk Software
Sideways.45.
IUS
EasyWriter I System
Easy Writer I, Easy Speller I, Easy Mailer I ..159.
EasyWriter II System
EasyWriter II, Easy Speller II, Easy Mailer II . .195.
Accounts Receivable. 295.
Accounts Payable . 295.
General Ledger. 295.
Inventory. 295.
Order Entry. 295.
Package Price for any three above . 859.
Payroll. 359.
Lifetree
Volkswriter.115.
Volkswriter International.135.
Volkswriter Deluxe (with TextMerge) .175.
Lotus Development
J \-2-3 (version 1 A) .call
Micropro
WordStar & Propak come with quick lesson
CAI training disk and tutorial disk
WordStar 3.3 . 235.
ProPak (WordStar/MailMerge/
CorrectStar/StarIndex) .369.
Microrim
R:base 4000 . see special
Extended Report Writer. see special
Clout. see special
Microsoft
Multiplan (Version 1.1) .139.
Microsoft Word (ver 1.1) 239.
Microsoft Word with mouse (ver 1.1) .... 289.
Microstuf
Crosstalk XVI.105.
Transporter (includes Crosstalk) .169.
PCsoftware
PCrayon (create in full color) .34.
Executive Picture Show .139.
CREATABASE .59.
PC Connection
Software Special
through July 31, 1984
MICRORIM
R:Base 4000 (new version 1.1)
• Fully relational database
• 1 billion record capability
• Improved programming capability...
. $299.
Extended Report Writer
• Expands report capabilities of stan¬
dard report writer
• Allows full captions, headlines, and
page breaks. $85.
Clout
• Permits you to query database in
plain English. $125.
Peachtree
PeachPak Series 4 (G/L, A/R, A/P)
new version, IBM manuals .$195.
PeachText 5000 (with ATI Training) .195.
Peter Norton
Norton Utilities.55.
Satellite Software
WordPerfect.call 4
Software Arts
TKISolver . 269.
Financial Management Pack.85.
Mechanical Engineering Pack.85.
Software Publishing
PFS/File. 89.
PFS/Graph .89.
PFS/Write.89.
PFS/Report.79.
Softword Systems
Multimate (w/spell checker) .call
Sorcim
Supercalc II.149.
Supercalc III . 199.
Virtual Combinatics
Micro Cookbook .29.
Warner Software
The Desk Organizer w/1 yr.free updates 197.
TRAINING
ATI
How to use Lotus 1-2-3. 55.
How to use Wordstar (vol 1 & 2) . 55.
How to use dBase II (vol 1 & 2) . 55.
How to use EasyWriter II. 55.
How to use Multiplan. 55.
How to use Your IBM-PC. 55.
How to use MultiMate. 55.
How to use Microsoft Word. 55.
How to use PC DOS.— 55.
How to use TK! Solver. 55.
Individual Software
The Instructor. 35.
Professor DOS. 47.
Tutorial Set (both items above) . 75.
Professor Pixel. 47.
Typing Instructor. 39.
Lightning Software
Master Type. 35.
EDUCATIONAL
Davidson
Speed Reader II (high school & co/lege)$4 9.
Math Blaster (grades 1-6) . 35.
Word Attack (grades 4-12) . 35.
Additional Data Disks for other ages are
available for Speed Reader II and Word Attack
at $15. each
FriendlySoft
FriendlyWare/PC Introductory Set . 35.
Stone (requires graphics board)
Great graphics and sound
My Letters, Numbers, & Words (ages 1
to 5) . 29.
Kids Stuff (ages 3 to 8) . 29.
Across the U.S.A. (ages 5 & up) . 22.
GAMES
Atarisoft
Centipede . 29.
Pac Man . 29.
Dig Dug . 29.
Defender . 29.
Donkey Kong . 29.
Blue Giant
Hoser . 25.
Broderbund
Apple Panic . 23.
Lode Runner . 25.
EPYX/Automated Simulations
Crush, Crumble & Chomp . 23.
Star Warrior . 27.
Rescue at Rigel . 23.
Temple of Apshai . 27.
FriendlySoft
FriendlyWare/PC Arcade . 35.
Funtastic
Snack Attack II (a favorite) . 27.
Cosmic Crusader (as good as above). 27.
Big Top (climb to new levels) . 29.
Master Miner (1 or 2 players) . 29.
Hayden Software
Sargon III . 35.
Microsoft
Flight Simulator (new ver.) . 35.
Orion
J-Bird . 29.
PC-MAN . 27.
Paratrooper . 25.
Pits & Stones . 29.
Sierra/On-Line
Frogger . 27.
Crossfire (keyboard or joystick) . 23.
Ulysses and the Golden Fleece. 27.
Sir-Tech
Wizardry . 42.
Sublogic
Night Mission Pinball. 29.
HARDWARE
AST Research (For IBM-PC or XT)
All AST Boards come with SuperDrive.
SuperSpool, and one year warranty.
SixPakPlus 64k upgradeable to 384k, with
clock calendar, serial and parallel ports
(game port optional) . 269
DEFECTIVE SOFTWARE REPLACED IMMEDIATELY DEFECTIVE HARDWARE REPLACED OR REPAIRED AT OUR DISCRETION. SOME ITEMS HAVE WARRANTIES UP 'l O FIVE YEARS
COPYRIGHT MICRO CONNECTION, INC. 1984. ALL ITEMS SUBJECT TO AVAILABILITY. PRICES SUBJECT TO CHANGE WITHOUT NOTICE IBM IS A REGISTERED TRADEMARK OF IBM CORP
MICRO CONNECTION IS A TRADEMARK OF MICRO CONNECTION. INC. PC CONNECTION IS A REGISTERED TRADEMARK
computing is easy
MegaPlus II 64k upgradeable to 256k (or
more witn MegaPak) with clock calendar
and serial port (parallel, game, or second
serial port optional) . $269.
MegaPak 128k (not upgradeable) . call
MegaPak 256k . call
I/O Plus II with clock calendar and serial
port (parallel, game, or second serial
port optional) . 129.
Parallel, Game, or second Serial Port
for any AST board (specify board) . 39.
Connectall connector bracket (PC only) . 19.
AST-5251 . 559.
AST-3780 . 649.
MonographPlus with clock calendar, serial &
parallel ports . 429.
Amdek
Video 300G Monitor (green) . 149.
Video 300A Monitor (amber) . 159.
Video 31OA Monitor (amber) . 179.
Color II RGB Monitor . 399.
MAI Board (color & monochrome) .... 399.
CompuCable
Plastic Keyboard & Drive Covers Set... 17.
IBM Mono Screen Enhancement . 17.
Printer to IBM Cable (specify printer ) ... 32.
Smartmodem to IBM Cable . 25.
Curtis
Low Profile Tilt & Swivel Pedestal
(for any monitor) . 44.
PC Pedestal (for IBM Mono or Color )... 55.
PGS or Cuadchrome display adapter _ 9.
System Stand (holds PC vertically) . 21.
Extension Cables for IBM Mono Display. 40.
Keyboard Extension Cable (3 to 9 feet). 32.
AC Plug Adapter (any monitor to your PC) 8.
Epson
RX-80 with GRAFTRAX-Plus. call
RX-80 F fT with GRAFTRAX-Plus. call
FX-80 with GRAFTRAX-Plus. call
RX-100 with GRAFTRAX-Plus. call
FX-100 with GRAFTRAX-Plus. call
LO 1500 (letter quality dot matrix) . call
Printer to IBM Cable (specify printer )... 32.
Hayes
Smartmodem 300. 209.
Smartmodem 1200. 489.
Smartmodem 1200B (w/Smartcom II) . 409.
Smartcom II. 99.
Compucable's Smartmodem-to-IBM
Cable . 25.
Hercules Computer
Hercules Graphics Card (parallel port) . 339.
Hercules Color Card (parallel port ).... 179.
Graph-X Software. 42
IDS
Prism 80 Printer (with all four options) . 1397.
Prism 132 Printer (with all four options) 1597.
Prism to IBM Parallel Cable. 32.
Koala
Koala Touch Tablet with software
(connects to game port) . 89.
Kraft
Joystick. 39.
Game Paddles (pair) . 29.
PC Connection
Hardware Special
through July 31, 1984
TEAC
Half Height Disk Drive 5 y 4 “ (FD-55B)
• Double Sided/Double Density
• Formats 320k w/DOS 1.1
• Formats 360k w/DOS 2.0 & DOS 2.1
• Fully IBM-PC (and XT) compatible
• Preconfigured for Drive A or Drive B
• Step by step installation instructions
supplied
• Covered by 1 year manufacturers
warranty .$165.
Free mounting oracket & y power cable with
each pair purchased.
LIFE IN THE PC FAST LANE
Our goal is to have what you want when you
want it. On those rare occasions when we tell
you we’re out of stock, it means one of several
things. The manufacturer is out of stock. A
new, favorable review has created heavy de¬
mand. An announced product is still unavail¬
able. Or, an updated version of the product is
on the way, and we have no intention of selling
an about-to-be-obsolete product (even if it
means losing a sale). Whatever the reason,
rest assured we'll give as firm an availability
date as possible.
OUR POLICY
• We accept VISA and MASTERCARD.
• No surcharge added for charge cards
•Your card is not charged until we ship.
• No sales tax.
•All shipments insured; no additional charge.
•Allow 1 wk. for personal & co. checks to clear.
• COD max. $500. Cash or certified check.
• 120 day guarantee on all products.*
•To order, call us anytime Monday thru Friday
9:00 to 9:00, or Saturday 9:00 to 5:30.
SHIPPING
Continental US: For monitors, printers, and
drives, add 2% to all orders. For all other items,
add $2 per order for UPS surface, $3 per order
for UPS 2nd-Day-Air. We particularly
recommend 2nd-Day-Air if you live west of the
Mississippi or south of Virginia. In most cases it
will only add $1 to your cost and will save you
up to four days on delivery time. UPS Next Day
Air also available Outside Continental US:
We add freight charges to credit card pur¬
chases. For prepayment, call 603/446-3383
for information.
1 - 800 / 243-8088
PC Connection 275T
6 Mill St., Marlow, NH 03456
603/446-3383
For the IBM-PC Exclusively.
CIRCLE NO. 182 ON READER SERVICE CARD
Maynard Electronics
Floppy Drive Controller.$165.
Internal Hard Disk (10 Meg), WS-1 Controller
& ROM for PC mother board. 989.
Internal Hard Disk (10 Meg), WS-2 Controller
& ROM for PC mother board. 1169.
Mouse Systems
PC Mouse (w/software & desk pad)... 197.
NEC
Spinwriter 3550 (IBM-PC compatible) . 1679.
Spinwriter 2050 (3550’s little brother).. 869.
Paradise Systems
MultiDisplay Card (color & monochrome) 379.
Plantronics/Frederick
COLORPLUS (now w/Color Magic) _ call
Princeton Graphics
HX-12 RGB monitor (690 x 240)) . call
SR-12 RGB monitor (690 x 480) . call
MAX-12 Amber monochrome monitor.. call
Quadram
We are a full line Quadram Dealer
New Expanded Quadboard 64k
expandable to 384k, with clock calendar,
parallel, serial & game port, I/O bracket,
and Quadmaster software. 269.
Microfazer Printer Buffer (parallel) w/copy
MP 64 (64k) upgradable to 512k . 197.
Quadcolor I. 197.
Ouadcoior II upgrade (musthave
Quadcolor I) 219.
Quadchrome RGB Monitor. 497.
Quadlink (allows you to run most Apple II
programs directly on your IBM-PC or XT) 459.
Quadisk (various sizes to 72 meg) . call
Silver Reed (letter quality, 132 column)
Silver Reed EXP 550 Printer (16 CPS). 549.
Silver Reed EXP 770 Printer (30 CPS). 889.
TG
Joystick. 45.
USI (monitors for graphics board)
Pi-2 Monitor (12" green, with cable)... 119.
Pi-3 Monitor (12" amber, with cable) .. 129.
DRIVES
All drives are completely pre-tested. Specify
Drive A or Drive B for your PC. Comes with
complete step by step installation instructions.
Drives are 320K/360K.
Tandon
TM 100-2 (5 W) full-height drive (DS,DD) 229.
TEAC
FD-55B (5 W) half-height drive (DS,DD)
Free y cable & bracket with each pair
. see special
MEMORY
64k Memorv Uograde Set for IBM-PC or
XT system board. 59.
64k Memorv Uograde Set for any memory
board specify make of board . 59.
Install memory upgrades & run diagnostics
at time of board purchase only . 10.
H«TSOFTPRODUCTSINC
A subsidiary of the University of Waterloo
Announces
a full screen editor and a family
of language interpreters for the
IBM Personal Computer
For further information contact:
WATSOFT Products Inc. (519) 886-3700
158 University Ave. Telex No.: 06-955458
Waterloo, Ontario-
N2L 3E9
CIRCLE NO. 228 ON READER SERVICE CARD
MicroScript $149
Customizable Text Formatter
generic markup (GML compatible)
multiline headers, footers, and footnotes
automatic widow and orphan suppression
automatic section numbering
automatic bullet, number, and definition lists
floating and inline figures
left, center, right, or justify text alignment
left and right indention with delay and duration
bold, underscore, and generic attributes
macros and symbols
multiple input files of unlimited size
format preview
table of contents, index
multiple columns
conditional processing
all printers
MicroEd $99
Customizable Full Screen Editor
full cursor control by character, word, or line
position to top or bottom of window or file
scroll by line or window
global or selective find and replace
delete by character, word, line, or block
read external files into current file
copy, move, and write blocks of text
insert, overlay, wordwrap, split, or join
all cursor addressable VDTs
all commands mapped in profile
Postpaid within U.S. & Canada, outside U.S. add $ 5 , CA residents add 6V2%
8" SS/SD CP/M-86*, 8" SS/SD CP/M-68K*, 5.25" SS/DD PC-D0S7
MicroType ™
6531 Crown Blvd., Suite 3A, San Jose, CA 95120
(408) 997-5026
• CP/M-86, CP/M-68K, are trademarks ot Digital Research, PC-DOS is a trademark of IBM Corporation.
VISA
Master
Card
CIRCLE NO. 198 ON READER SERVICE CARD
Memory
pop
si ;
Restore registers
pop
dx
ret
•
and exit
convert to ascii ENDP
update memory control words PROC far
assume cs:code,ds:data,ss:stack
PUMI
eb
push
ds
mov
ax,data ;
Set up DS to reference DOS
mov
ds,ax ;
variables in low memory
mov
ax,starting memory block
dec
ax
AX points to memory control block
starting at that spot, look for
the end of the memory links
( byte zero = *Z' )
find ending
link:
mov
es,ax ;
set up address of mem control blk
cmp
byte ptr es:[0],5AH ;
Is this the ending link?
jz
found the link
add
ax,es:[3] ;
1 ink to next area
inc
ax
jmp
find ending link
found the link: ;
now update length field of this
last mem control block to
include the additional memory
mov
bx,memory size
mov
cl,6
shl
bx.cl ;
, convert to K bytes
sub
bx.ax
dec
bx
mov
es:[3] ,bx
pop
ds ;
, restore registers
pop
es
cl c
; indicate normal return (no error)
ret
update memory control words ENDP
memory size
initialize PROC far
assume
ds:code,cs:code,es:data,ss:
: stack
mov
cs:starting memory block,ds
push
ds
sub
ax,ax
push
ax
mov
ax,code
mov
ds.ax
mov
dx ,es:[OC]
COMMAND'S program segment prefix
mov
command proc PSP.dx
which we will use to fix up
DOS release 1.1
mov
dx,offset heading
; put out introductory heading
dosfunction 9
mov
bx .data
get ROM-initialized
mov
es.bx
memory size
mov
ax.memory size
specifications
mov
original memory size,ax
mov
bx,io ram size
mov
original io memory,bx
mov
cl ,6
shl
ax,cl
; convert from K bytes
mov
bx ,0
memory loop:
cmp
ax ,0a000
; check if greater than
je
initialize memory
; 640K ..if so then end
60
PC Tech Journal
Imagine being able to connect your PCs
simply and inexpensively into a true
full-function local area network.
Now you can . . . with 10-NET, a com¬
plete package designed so that you can
easily install, learn and use it immediately. Everything
you need to connect one PC into the network is included.
10-NET is uniquely different from other LAN
products in that it requires no dedicated hardware to
serve the rest of the network. It is a truly distributed
system where your resources may be shared, including
expensive hardware and application programs.
You can also share as much or as little data as you
wish, with total data integrity and selective security.
You get built-in extras, too: like electronic mail;
calendar; “Chat,” a user-to-user communication facility;
printer spooling; and “News,” a bulletin board function
for network users.
And, you can create a
multi-user DBMS with
unbelievable power and
flexibility when you use
10-NET with 10-BASE, a
powerful, easy-to-use
DBMS designed specifi¬
cally to work with 10-NET.
Invest in 10-NET now.
You can start simple, and
expand as your business
grows. And, at $695* you
won’t find better perfor¬
mance or value, anywhere.
Ask your software dealer
10-NET, or call 1-800-
1010 (1-800-782-1010 in
Ohio), and start getting
real work done.
Dealer inquiries welcome.
*suggested retail
10-NET SPECIFICATIONS
HARDWARE:
PC plug-in circuit card, tap box, and
cable to connect them
Type: Carrier Sense Multiple Access
with collision avoidance
Speed: 1.0 million bits per second
Distance: up to 3,000 ft. between
repeaters
SOFTWARE:
Share any DOS-supported hardware
device
No dedicated server required
Concurrency control—implicit & explicit
Security—User, File, Node ID
Ethernet compatibility—addressing &
message format
SYSTEM REQUIREMENTS:
• IBM PC, XT or compatible
• PC-DOS 2.0
• 128K RAM
• One or more disk drives
• A cursor addressable monitor
• Media: simple twisted pair wire
Specifications subject to change without notice.
FOX RESEARCH
A subsidiary of ComGen Technology, Inc.
CIRCLE NO. 138
ON READER SERVICE CARD
START NETWORKING NOW —Write for more information, or fill
in and attach this to your business card or letterhead.
Send more product I I Have a sales |—| Send a dealer kit
information L_J representative call I I
Send 10-NET. I need - units. (NOTE: you need one unit for
each PC you wish to network.) Here’s my P.O. Number.
I understand Fox will invoice me for $695 per unit plus shipping,
handling and tax (where applicable).
Send to: Fox Research, Inc., Attn: National Sales Manager,
7005 Corporate Way, Dayton, Ohio 45459.
PCTJ 8/84
10-NET takes the
work out of networking.
Everything you need is in the box.
Memory
mov ds,ax
call update memory control words ; routine for DOS 2.0
mov [bx],ax ;
write segment # into byte
mov cx,[bx] ;
read segment # from byte
jmp display results
cmp ax,cx ;
if equal..memory exists
jne initialize memory ;
else no more user memory
modify D0S1:
add ax,400 ;
increment segment # by 16K
push ds
jmp memory loop ;
and try some more
mov dx,command proc PSP ; get ready to store new
mov ds,dx ; memory size in COMMAND'S
initialize memory: ;
write data into memory so that
mov dx,memory size ; stored variable.
;
parity errors do no occur upon
mov cl, 6
;
access of new memory
shl dx,cl
mov ds:[452] ,dx ; location of memory size on
mov bx,memory size
pop ds ; 00S release 1.1
mov cl ,6
shl bx,cT
display results:
push ax
save the value for AX containing
mov ax,original memory size
pop dx
the new top of memory.
print msgl.msgldata
mov ax,0
cld
set direction=forward
mov ax,additional memory
print msg2,msg2data
store initial value:
mov ax,memory size
cmp bx.dx
print msg3,msg3data
je end of user memory
go through newly allocated mem
mov es.bx
and write a pattern of X'0000'
exit:
mov cx,03fff
into each word. This will protect
ret
mov di,0
against a fatal parity error later
rep stosw
when mem is read without being
memory size initialize ENDP
add bx,400
written.(Done 16K bytes at a time.)
jmp store initial value
code ENDS
end of user memory:
END memory size initialize
push dx
; restore the value for AX
pop ax
mov cl ,6
convert from bytes to
shr ax,cl
K bytes
mov bx.code
calculate changed memory
mov ds,bx
sizes and ..
mov bx.data
mov es.bx
mov memory size,ax
; store back ..
sub ax,original memory size
; into DOS variables
mov additional memory,ax
add ax,original io memory
mov io ram size,ax
rlnc f iinr f i nn If)
; check DOS version
□ 05 T uni L lull Ju
cmp al,00
je modify D0S1
; pre 2.0 DOS...handle special
___
- - Know Thy PC! ^
Are you writing programs in BASIC or Pascal? The popular Peeks
to Pokes has a disk with 58 programs and a 38-page manual that
helps you get ‘underneath the covers’ of the PC. Learn how to use
PEEK, POKE, INP, OUT, and DOS/BIOS function calls to do
what you want, fast! Do you want to perform functions not
available from BASIC or Pascal? It’s all explained in the manual
and demonstrated in the sample programs. Source code included!
Want to know more? The Inside Ttack! is a collection of advanced
utilities for the PC programmer. It contains a disk with 61 pro¬
grams, a 42-page manual, and a fold-out memory map that helps
you get better performance from the PC. With this package you can
give your programs assembler-assisted speed from high-level lan¬
guages, get control over memory, customize and control the PC,
and more. Some programs require DOS 2.00. Source code included!
Peeks to Pokes shows you how to:
• Access the system’s configuration
• Unprotect BASIC programs
• Scroll part or all of the screen
• Access the file directory
• Logically swap printers
• Read and change the keyboard
• Find more Peeks and Pokes
• And much more... for only $30.00
The Inside Track! shows you how to:
• Read/write files as fast as DOS
• Display data on the screen faster
• Reserve memory for your use
• Copy memory to another location
• Copy-protect your programs
• Load large programs faster
• Control the keyboard settings
• And much more... for only $45.00
MasterCard and VISA accepted. Shipping charges: $2.50 per order for UPS; $2.50 per item for First Class Mail to USA and
Canada; $6.00 per item for Air Mail outside USA and Canada. Dealer inquiries invited.
Data Base Decisions • 14 Bonnie Lane • Atlanta, GA 30328 • 404/256-3860
CIRCLE NO. 137 ON READER SERVICE CARD
62
X-NET Local Area Network
Broadens The Horizons Of All IBM PC's;
X-NET: The affordable LAN that runs
MBSI Accounting Software, Database, Electronic Mail
and over 1,000 multi-user application packages.
Here are some of the reasons your company needs X-NET
Local Area Network:
1. READY ACCESS TO ALL
INFORMATION • With X-NET, any computer can get
information from any other computer on the network. This
means more than one operator can be entering orders,
invoicing, changing inventory ... all at the same time! But
where security is needed, you can keep any file private while
still within the network.
2. YOU CAN START SMALL ... Even if you
have as few as two PC’s, you’ll have a system that is easily
expandable and will grow with your company.
3. ...OR GET BIGGER. X-NET grows as you grow,
networks up to 255 PC’s, and best of all, expansion is so
simple, you can do it yourself.
4. MBSI ACCOUNTING SOFTWARE.
X-NET’s software includes Accounts Receivable, General
Ledger, Accounts Payable, Order Entry, Inventory Control
and Payroll. You can still use your Spread Sheet and Word
Processing software, but now much more effectively because
your computer power is tied together.
5. MULTI-USER DATABASE PACKAGE.
Now even non-programmers can create network databases
(with access security) in minutes.
6. COBOL PROGRAMS • Over a thousand
multi-user application programs designed for large computers
now run on PC’s networked with X-NET.
7. ELECTRONIC MAIL. X-MAIL gives you instant,
infallible, confidential mail delivery in-house, and works
24 hours a day and has total recall!
8. AFFORDABILITY. X-NET offers more value for
less money to any company doing computing on any level.
And the software is priced comparably to what others are
charging for no-growth single-user software.
9. NO COSTLY CENTRAL FILE SERVER.
X-NET eliminates the need of having an expensive computer
to act as a Central File Server, something other networks
require.
10. SHARE YOUR PERIPHERALS. No longer
does each of your computers need its own set of peripherals.
Any computer on X-NET is linked to your printers, plotters,
disk-drives, etc. A huge money-saver!
*X-NET also operates on IBM PC compatibles.
CIRCLE NO. 184 ON READER SERVICE CARD
Call your local dealer or XCOMP today.
*
XCOMP
XCOMP, Inc.
3554 Ruffin Road South
San Diego, CA 92123-2502
619-573-0077
TELEX:182786
IBM is a registered trademark ot International Business Machines Corporation. MBSI is a registered trademark and division ot RealWorld
Corp. X-NET is a trademark ot XCOMP, INC.
© 1984 XCOMP, INC.
Susan Glinert- Cole
enters the networking
epstakes with the Cluster.
3 n the planet Earth, the philo¬
sophy of networking began when
some pundit invented the maxim,
"Two heads are better than one." On a
more galactic scale, readers of science
fiction are familiar with a collective
intelligence composed of individual
sentient units that can share their
mental wealth. The majority of net¬
works are designed to emulate the gal¬
actic model: all nodes are created
but by sharing resources, they
able to blend their individualities
into a greater whole.
IBM's first entry into the network
community is based firmly on the
more restrictive Earth model: a group
of heads can exchange information to a
minor extent, but they decline to par¬
ticipate in a cosmic oneness.
IBM is purposely not calling the
Cluster a network. The primary intent
of this product is to permit informa¬
tion transfer between PCs, PC/XTs,
PC Portables, and PC/rs, while allow-
A.UGUST 1984
65
Cluster
ing them to share a fixed disk in a
limited manner. Up to 64 machines
can be linked into a Cluster, but
only one can be a disk server. File
and message transfer can be per¬
formed whether or not the disk
server is included in the Cluster.
I/O requests at the server
station have a higher priority than
do remote requests. Although the
shared station can also be used as a
workstation, it is suggested by IBM
that such use be kept to a minimum
during periods of intensive remote
input/output. IBM also recom¬
mends that the fixed disk serve only
as a program repository. Individual
stations should download all of the
desired software and execute pro¬
grams locally in order to to maxi¬
mize throughput in the Cluster.
Each IBM PC, Portable, or
PC/XT in the Cluster requires one
disk drive (at least one of the PCs or
PC/XTs in the Cluster must have a
double-sided drive), DOS 2.1, 128K,
and an 80-column display. The
ROM BIOS module for the IBM PCs
in the Cluster must be dated
10/27/82 or later ; the manual pro¬
vides a small BASIC program that
will print this date to the display.
The BIOS date, however, is not a
consideration for the PC/XT, Porta¬
ble, or PC/r, because all of their
ROMs postdate this 10/27/82 dead¬
line. The disk server can be either a
PC with an expansion chassis or a
PC/XT with 256K of memory and
one double-sided disk drive.
Each PC/r in the Cluster must
have at least 128K of memory and
an 80-column display. The power
supply on the PC/r is inadequate to
support the Cluster attachment un¬
less the system urdf is stripped of
the internal modem, the disk drive,
and the parallel printer attachment.
Even if these restrictions are re¬
moved (IBM has stated that it in¬
tends to do this), it should be em¬
phasized here that programs that
cannot be run on a stand-alone PC/r,
for whatever reason, will not run on
a clustered machine either.
Photo 1: Cluster Components
The Cluster configuration is a
linear bus with a data transmission
speed of 375K bits per second. The
access method is Carrier Sense Mul¬
tiple Access with Collision Avoid¬
ance (CSMA/CA). Stations are
linked with 75-ohm coaxial cable.
The maximum trunk cable length
is 1,000 meters; the cable drop
length (length from main cable to
computer) can be up to 5 meters.
T he choice of costly
coaxial cablefor a
low-cost network is
especially curious in view
of lBMs announcement of
a cable scheme for its pro¬
jected local area network,
which will use inexpensive
twisted pair wire.
Drop cables are attached to the
trunk line with T-connectors,
which must be terminated at each
end of the Cluster. BNC connectors
are used to link the drop cable to
the adapter card at each station. The
choice of costly coaxial cable for a
low-cost network is curious in view
of IBM's announcement of a cabling
system for its projected local area
network, which will use inexpen¬
sive twisted pair wire.
The Cluster can be used with
four IBM communications pro¬
grams: the Asynchronous Commu¬
nications Support, version 2.0; Bi¬
nary Synchronous 3270 Emulation,-
SNA 3270 Emulation and RJE Sup¬
port; and the IBM 3101 Emulation
program. A machine must have at
least 256K of memory to use these
programs with the Cluster. A patch
to the SNA 3270 program, provided
in the documentation, is required.
The Cluster is not necessarily
compatible with IBM software,- IBM
makes no promises about software
that it has not tested and approved
for use within the Cluster. A list of
programs that will run is available
from IBM dealers,- at the time of
this writing, however, the list was
far from extensive. Whether or not
a particular application will run in
the Cluster requires a more complex
answer than just a simple yes or no.
This is well illustrated by the fact
that the list contains 45 programs
and 17 qualifying footnotes.
Programs compiled with the
IBM BASIC compiler will not run
in the Cluster environment. IBM
blames the problem on the compiler
and provides a free patch for it. The
BASIC program needs to be recom¬
piled and relinked with a new
library before it can operate in the
Cluster. The patch, however, will
not help customers who have pur¬
chased application programs com¬
piled elsewhere unless a recompiled
version has been obtained. Users
should be sure to check the vendor
documentation carefully.
Other programs can be run
from a local disk drive but cannot
be run from the shared fixed disk.
These products include Multiplan
1.10, EasyWriter 1.10, Dow Jones
Reporter 1.0, VisiCalc 1.2, pfs:RE-
PORT 1.05, and pfsTILE 1.05.
Although the minimum mem¬
ory configuration for a Clustered
machine is 128K, the Cluster soft¬
ware occupies between 20K to 40K,
which considerably reduces the
amount of memory available for ap¬
plication programs. Some programs
that require a minimum of 128K to
run (dBASE II, for example) are
barely functional in a minimally
66
PC Tech Journal
configured machine. The situation
is even more severe with the PC/r,
because the video buffer takes be¬
tween 4K (for black-and-white text
mode) to 32K (for four-color, high-
resolution graphics mode), leaving
about 30K to 50K for programs. Us¬
ers should remember to take these
factors into account before trying to
run programs in the Cluster.
instructions. Altogether, the litera¬
ture fills the standard half-sized
binder to overflowing.
If the size of the documentation
is formidable, the presentation is
perhaps even more frightening, es¬
pecially for beginners. There is no
handy user's guide or command
summary reference card. Instead,
user and Cluster installation infor-
be disconnected from the disk drive,
and the printer sidecar must be re¬
moved. The instructions for per¬
forming these tasks were clear, and
no problems were encountered dur¬
ing hardware installation.
Each node in the Cluster must
be assigned a unique address from 0
to 63. Physical assignment is done
by setting switches 1 through 6 on
Table 1 .• Cluster Diskette Contents
A. Remote Station Diskette
IT.COM The Information Transfer program
loader
VM.COM Public Volume Manager program
TBL.SYS Internal use file for the Information
Transfer program containing station
options and drive access information
PLLSCR.COM Screen text progam used by IT.COM,
DC.COM, AND VM.COM
PDT.COM Information Transfer program
CONFIG.SYS This is originally the file REMOTE; it
is renamed to CONFIG.SYS by CCOPY
MSG.SYS An internal use file for the Information
Transfer program,- used for messages
PCMDP.COM Protocol command processor used at a
remote station
B. Disk Server Diskette
DC.COM
CONFIG.SYS
DSERVER.TAB
PCMDISK.COM
PUBLIC.COM
Disk Configurator program
This file is found on the Cluster
diskette as DISK and must be renamed
when copied to the fixed disk
Contains the disk server station index
Protocol command processor for the
disk server station
I/O driver loaded at reset time
C. Remote System Volume
FCONFIG.SYS This file is found on the Cluster disk¬
ette as RIPL. It is renamed during the
creation of the Remote System Volume.
RIPLPGM.COM Resident program that uses the Remote
System Reset Volume at the disk server
station
System Set-up
The equipment needed to set up a
Cluster station must be bought
piecemeal (see photo 1). Each station
must purchase a software "license"
for $92 and a Cluster adapter for
$340 ($400 for the PC/r). A cable
kit, costing $110, is needed for
every two machines. Any necessary
ROM updates are provided free
with the Cluster. The cost for a PC,
Portable, or PC/XT station is $487; a
PC/r station is $547.
The documentation is organized
into four "manuals/' Introduction,
Disk Server Guide, Public Volume
Manager Guide, and Information
Transfer Program Guide. The Clus¬
ter controller board comes with two
separate manuals: an installation
guide and an updated diagnostics
diskette—with documentation—
which includes a test for the Clus¬
ter Adapter. The ROM BIOS Update
Kit also contains its own installation
mation is mixed together, making it
difficult to find information on a
particular subject.
The writing style is not aimed
at the computer novice either. Some
sections of the manual are sterling
examples of obfuscating technical
language. In fact, the installation in¬
structions were so confusing that
the software set-up was successfully
completed only after closing the
book and pursuing a trial and error
course. This was quite a shock, con¬
sidering the technical accuracy and
detail that is usually provided by
IBM in its documentation.
Fiardware installation involves
changing the ROM if required, set¬
ting two sets of DIP switches on the
adapter cards, plugging the card into
each computer (or attaching the
sidecar for a PC/r), and attaching the
cables. All PC/rs must be stripped of
the internal modem and diskette
controller, the power supply must
the first switch block to reflect the
binary representation of the address.
Switch 8 on the SW-1 is set ON if
the station will boot remotely from
the fixed disk. It is possible to have
one PC, PC/XT, or Portable com¬
puter tied to four Clusters at once.
Switch block 2, switches 1 through
4, assign the adapter card a number
from one to four. If the adapter is
the only one present, it must be set
to adapter number 1. As soon as the
switches are properly set, the adapt¬
er card can be installed in any slot
in the PC. The PC/r Cluster Attach¬
ment, like the printer adapter, is
connected to the right side of the
system unit. PC/r participation is
limited to only one Cluster.
The integrity of the Cluster, as
well as of the cabling and adapter
boards, can be tested with the up¬
dated diagnostics diskette, or, in the
case of the PC/r, the new diagnostics
included in the adapter ROM.
August 1984
67
Cluster
Software Installation
The steps involved in setting up the
Cluster software are: installing the
Cluster software on the disk server,
configuring the fixed disk at the
disk server, and making a boot
diskette for each computer in the
Cluster with a floppy disk drive.
The batch file CCOPY is used
to make diskettes for those remote
stations that will be booting lo¬
cally. Table 1 shows the files placed
onto the station diskette.
The DSCOPY.BAT file creates a
similar diskette for the disk server
station (which is useless, because
the Cluster files must be on the
fixed disk drive), optionally creates
the Remote System Volume on the
hard disk, and transfers the appro¬
priate files there. It does not leave
any other relevant Cluster files on
the fixed disk, even though the doc¬
umentation implies that it does. In¬
stead, it creates a temporary direc¬
tory on the fixed disk, copies the
files from the Cluster disk there,
transfers these files to the floppy
back-up, creates a Remote Rest
back-up diskette if desired, and, fi¬
nally, removes the directory. The
Cluster programs have to be copied
onto the fixed disk manually using
the COPY command.
In addition to PLLSCR.COM,
IT.COM, MSG.SYS, TBL.SYS, and
PDT.COM, several additional files
must be on the Disk Server (see ta¬
ble 1). If there are stations that will
boot remotely from the fixed disk,
the remote system volume at the
disk server must contain the files
shown in the last section of table 1.
The software installation pro¬
cess is complicated by very poor
documentation. It would appear
from the manual that the two batch
files, called CCOPY.BAT and
DSCOPY.BAT, would do all of the
work required to produce station
diskettes and to set up the appro¬
priate volumes on the fixed disk.
There are problems with these files,
however. For example, in order to
put files on the fixed disk, the user
Figure I .• Cluster Disk Server Structure
must format and carefully label four
diskettes. This seems reasonable, ex¬
cept that the manual and the batch
files do not use these names consist¬
ently in the prompts. The batch
nother complaint
concerns an aes -
thetic issue that is
important to well-organ¬
ized peoplemany ofthe
Cluster files must reside in
the root volume o/ the fixed,
disk, making a mess out o/
a neatly structured hier-
archical file scheme.
files copy files from the A: drive to
the C: drive. The user receives in¬
structions to place diskettes (the
names of which do not agree with
the aforementioned labels) into the
B: drive; files are then transferred to
B: and erased on G.
The reason for all this grinding
and whirring is that the user is pre¬
sumed to have only one disk drive;
although the documentation never
says so explicitly, IBM assumes that
the disk server will be installed
only on a PC/XT. The installation
instructions lead one to believe that
the Cluster does not even support
the IBM PC and expansion chassis
configuration, which would prob¬
ably have two floppy disk drives.
Another complaint concerns an
aesthetic issue that is important to
well-organized people: many of the
Cluster files must reside in the root
volume of the fixed disk, making a
mess of a neatly structured hierar¬
chical file scheme.
Once the programs have been
properly apportioned on the fixed
and floppy diskettes, the fixed disk
must be divided into volumes with
the Disk Configurator program,
DC.COM. Like the other two Clus¬
ter programs (the Public Volume
Manager and the Information
Transfer program), the Disk Config¬
urator program is entirely menu-
driven and easy to use.
For the purposes of the Cluster,
the fixed disk is divided into four
areas, all of which are created with
the Disk Configurator (see figure 1).
The only input required for volume
creation is volume size in 34K byte
blocks. If space is available, the vol¬
ume is created; otherwise an error
message is generated.
The first area, called the public
volume , contains files that are acces¬
sible by all the stations in the Clus¬
ter. Only one public volume is per¬
mitted in the Cluster. All stations
68
PC Tech Journal
can read and copy files from the
public volume, but only the Cluster
Manager is permitted to write to it.
Therefore, programs that need to
open files where their system files
are located cannot be executed from
the public volume.
The public volume must be
created first and must contain at
least two 34K byte blocks. The Disk
Configurator will copy Cluster files
into the public volume at the time
of creation if requested to do so.
Another area of the disk con¬
tains the private volumes; each
station, except the disk server itself,
is allowed to own one private vol¬
ume, which is used as an extra disk
drive from the remote machine.
The private volumes are created by
making an entry in the disk server
station index that contains the sta¬
tion name, station number, and the
size of the private volume. Each sta¬
tion is given access to the public
and private volumes by specifying
the appropriate permissions in the
disk server station index.
The fixed disk can contain an
optional area, the remote reset vol¬
ume. System files, Cluster program
software, and other applications can
be placed here to enable a remote
station to boot directly from the
shared fixed disk. This volume can
contain an application program that
is automatically executed from an
AUTOEXEC.BAT file on start-up.
The size of the remote reset volume
cannot, however, exceed the capac¬
ity of a dual-sided diskette. This is
because of the way the volume is
initially created by the batch file
DSCOPY.BAT. All files that are to
be put into the remote reset volume
are placed onto a floppy diskette,
and when the volume is created,
these files are copied from the
floppy to the fixed disk. The remote
reset volume is not only write-pro¬
tected but is also created with no
extra bytes. Thus, in order to add
anything to it, it is necessary to shut
down the Cluster, erase the current
remote reset volume, recreate it
with the new files, and then bring
the Cluster back up.
The fourth area of the disk is
unassigned to a volume and can be
used by the disk server station.
Once the fixed disk has been
configured, the Disk Configurator
program is used for maintenance
and for altering Cluster parameters:
the public volume size can be
changed or the entire volume
erased, the remote reset volume can
be erased, the disk server station in¬
dex can be edited, a new private vol¬
ume can be added, and private vol¬
ume access can be changed. These
functions are all available from the
Disk Configurator's main menu.
The Public Volume Manager
program is used to copy files to and
erase files from the public volume.
It is executed from the one station
designated in the Disk Configurator
program as the public volume man¬
ager, which can be any station ex¬
cept the disk server. The program is
invoked by typing VM at the cor¬
rect station. The options that are
permitted with the Public Volume
Manager Program are:
1. display the disk server index
2. copy a private volume file to
the public volume
3. copy a disk server file to the
public volume
4. copy a file from the public
manager station to the public
volume
5. erase a file from the public
volume
6. make a directory path on the
public volume
7. remove a directory path from
the public volume
Both the Disk Configurator and
the Public Volume Manager are
used to copy files to volumes. Be¬
cause they both change the Cluster
volume environment, all Cluster
nodes should be rebooted after the
desired changes have been made.
The Information Transfer pro¬
gram is central to the Cluster oper¬
ation. It allows computers to send
and receive messages, transmit and
download files between computers,
display directories of other stations,
change the station options, and edit
a station index. Thus, although a
station can access the public, pri-
B oth the Disk Confix
motor and the Public
Volume Manager are
used to copy files to vol¬
umes. Because they both
change the cluster volume
environment, all cluster
nodes should be rebooted
after the desired changes
have been made.
vate, and remote volumes on the
shared disk without installing the
Information Transfer program
(these volumes being in essence
"local drives"), the Public Volume
Manager program, which transfers
files between stations, can be run
only when the Information Trans¬
fer program has been loaded. The
Public Volume Manager program is
entirely menu-driven and self-expla¬
natory in operation.
Clusters without a disk server
cannot have any volumes, but they
can still transfer information be¬
tween stations with the Information
Transfer program. Messages and
files can be sent and received, and
directories at the remote stations
can be listed if READ permission
has been given.
Messages of up to eight lines, or
512 bytes, can be sent to other
stations by selecting the SEND
MESSAGE option. An editing screen
appears, and the name of the recip¬
ient is entered. The user has two op¬
tions: send to a station (or an alter¬
nate if the first station does not
reply) or send to all stations (broad¬
cast). The message is then typed
into the eight-line field. There is no
word wrapping, unless one counts
the interesting behavior if the eight-
AUGUST 1984
69
Cluster
line maximum is exceeded: the
message wraps to the rest of the
fields on the screen. A carriage re¬
turn terminates the message, which
is then sent to the selected recip¬
ient. A status message will appear
on the screen, informing the sender
that the message has been sent,
could not be sent, has been sent to
an alternate station, or has been sent
to all stations.
The last message sent can be
called up, re-edited, and sent again
if desired. A station must be active
on the link to receive the message,
but the Information Transfer Pro¬
gram does not have to be running.
When a message is received at a sta¬
tion, the computer will beep.
A message file can be examined
by selecting option 2 (DISPLAY OR
ERASE MESSAGES) on the Infor¬
mation Transfer program's main
menu. From the secondary menu,
the user is able to display the mes¬
sage log; page through messages in¬
clusively, by date or station; erase
messages,- and free erased message
space for other system uses.
Sending a file to a station re¬
quires that the user have write ac¬
cess to that station. The process is
accomplished by selecting the
SEND FILE option at the main
menu. Similarly, receiving a file or
reading a station's directory requires
read access to that node. Getting a
file or directory is done by selecting
the appropriate options.
Only one file at a time can be
sent or received with the Infor¬
mation Transfer program. The only
way to transfer a group of files is to
bring down all stations on the clus¬
ter, execute the Public Volume
Manager at the correct station, copy
the set of files from a diskette (or
the Volume Manager's private vol¬
ume) into the public volume, bring
the Cluster back up, go to the re¬
ceiving station, and transfer the files
from the public volume into that
station's private volume with the
DOS COPY command. In a real-life
networked environment, such a pro-
Table 2 . Benchmarks, BUFFERS=4
BENCHMARK TESTS
IBM Cluster
PC-DOS
1 user
1 user
1 user
2 users
2 users
buffers=4
2.0
Disk
Portable
PC/r
Portable
PC/r
Server
I/O BENCHMARKS
(in seconds)
random access
0:06
0:06
1:20
1:33
2:21
2:21
sequential read/write
0:29
0:45
2:16
2:48
3:03
3:03
sequential read
0:14
0:14
0:23
0:40
0:26
0:44
dBASE sort, 1 key
0:40
0:44
1:24
2:16
1:37
2:20
dBASE Index, 1 key
0:29
0:34
2:35
2:58
4:25
4:27
dBASE Index, 2 keys
0:29
0:34
2:44
3:01
4:23
4:35
WORD PROCESSOR
BENCHMARKS
Word Perfect:
load wp from hard disk
0:04
0:06
0:20
0:18
0:34
0:28
load wp from floppy
0:14
0:12
0:11
ft
*
*
disk
exit wp (to hard disk)
0:01
0:03
0:02
0:06
0:04
0:07
load file from floppy
0:04
0:03
0:04
*
*
ft
save file to floppy
0:18
0:20
0:19
*
*
ft
load file from hard disk
0:02
0:02
0:08
0:27
0:20
0:30
save file to hard disk
0:15
0:16
0:22
1:39
0:33
1:45
WordStar:
load wp from hard disk
0:06
0:06
0:11
0:16
0:15
0:18
load wp from floppy
0:07
0:08
0:08
*
*
ft
disk
exit wp (to hard disk)
0
0
0
0:04
0
0:02
load file from floppy
0,03
0:10
0:04
ft
*
ft
save file to floppy
0:32
0:34
0:32
ft
*
ft
load file from hard disk
0:03
0:04
0:07
0:11
0:10
0:13
save file to hard disk
0:10
0:10
0:25
1:19
0:42
0:45
cedure is unlikely to be used: carry¬
ing a diskette from station to station
is clearly simpler (except to PC/r).
Option 6 lets a station change
the drive access permissions for
other computers in the Cluster,
change the drive for the station's in¬
ternal use file, or toggle the bell off.
The station index, which
equates a name to a station number,
can be edited and displayed by se¬
lecting option 7. A station can be
added to or deleted from the station
index, and the name associated with
a station number can be altered.
Instead of providing an integral
facility for sharing a printer within
the Cluster, IBM has chosen to rely
on an inconvenient process de¬
scribed in an appendix. The printer
to be "shared" should not be at¬
tached to the disk server, as this
would degrade Cluster performance.
The station with the printer must
give public write access to one of its
drives and install the DOS print
spooler PRINT.COM. If another sta¬
tion wants to print a document, it
sends the file, with a .PRT exten¬
sion, to the shared disk drive. When
the operator at the printer station is
in the mood to print the files, a
simple BASIC program, provided
with the Cluster software, is used to
send the .PRT files to the spooler
and then erase them.
System developers are provided
with an assembly language interface
for the Cluster program. Application
programs can gain access to the
Cluster software to copy files from a
station and to send files and mes¬
sages to a station. To call the inter¬
face the following sequence is used:
• A parameter control block
(PCB) is set up with the ap-
70
PC Tech Journal
Table 3 . Benchmarks , BUFFERS=90
BENCHMARK TESTS
IBM Cluster
PC-DOS
1 user
1 user
1 user
2 users
2 users
buffers=90
2.0
Disk
Server
Portable
PC/r
Portable
PC/r
I/O BENCHMARKS
(in seconds)
random access
0=06
0:07
0:40
1,16
1:06
1:06
sequential read/write
0:29
0:32
1,11
2:27
1,18
1,48
sequential read
0:14
0,14
0:22
0:41
0:25
0:45
dBASE sort, 1 key
0:40
0:43
1:06
2,12
1:09
1:54
dBASE Index, 1 key
0,29
0:30
1:33
2:44
2:13
2:23
dBASE Index, 2 keys
0:29
0:30
1,35
2:48
2,11
2:26
WORD PROCESSOR
BENCHMARKS
Word Perfect:
load wp from hard disk
0:04
0:05
0:19
0:17
0:33
0:30
load wp from floppy
0:14
0:11
0:11
*
*
*
disk
exit wp (to hard disk)
0,01
0:02
0:02
0:03
0:02
0:03
load file from floppy
0:04
0:03
0:04
*
*
save file to floppy
0:18
0:20
0:19
*
*
*
load file from hard disk
0:02
0:01
0:08
0:25
0:17
0:26
save file to hard disk
0:15
0:17
0:25
1:38
0:29
1:30
WordStar:
load wp from hard disk
0:06
0:05
0:11
0:16
0:16
0:27
load wp from floppy
0:07
0:07
0:08
#
*
*
disk
exit wp (to hard disk)
0
0
0
0:04
0:01
0:10
load file from floppy
0:03
0:04
0:05
#
*
*
save file to floppy
0:32
0:33
0:35
*
*
*
load file from hard disk
0:03
0:04
0:08
0:11
0:12
0:15
save file to hard disk
0:10
0:08
0:27
0:35
0:38
0:43
propriate structure.
• The Link is activated by the
Information Transfer Pro¬
gram.
• The offset:segment address of
the PCB is placed in BXtES.
INT 5BH is executed.
All registers except AX are pre¬
served. AL contains a return code:
zero for a good return and nonzero
for an error. If the high-order bit of
a nonzero return code is on, the
error occurred at a remote station.
A zero in the high bit indicates an
error at the local station.
The Cluster uses the fore¬
ground stack, and it is the program¬
mer's responsibility to make sure
that this stack is large enough for
both the foreground and back¬
ground programs. The message-
receive function runs in the back¬
ground while a program is running
the foreground task. Messages are
received by the Protocol Command
Processor and are then placed on
MSG.SYS at that station.
W e tested the
Cluster with six
small bench¬
mark pmgrams designed to
view network performance
with a heavy I/O load.
Performance
During testing at PC Tech journal
offices, the Cluster environment
proved to be somewhat unstable.
Access to private volumes was often
erratic, and occasionally the unallo¬
cated space on the shared fixed disk
would become "write protected"
and inaccessible to application pro¬
grams. At one point, the disk server
index became corrupted, necessitat¬
ing a complete reformatting of the
fixed disk and reinstallation of the
Cluster software.
Aside from the access problems,
the general response of the stations
in the Cluster was agonizingly slow.
Copying a diskette of files to the
public volume took the better part
of a half hour. PC/r, not noted for
dazzling speed anyway, became pos¬
itively comatose when connected to
the Cluster. Almost every keystroke
produced a beep, indicating that the
PC/r was too busy to process the
keystroke. (See "Inside jr," Thomas
V. Hoffman, May 1984, page 52.)
In the Cluster software, as de¬
livered from IBM, the CONFIG.SYS
files are configured so that BUF¬
FERS =3. Increasing the number of
buffers does improve performance.
With the disk server configured
with BUFFERS = 90, for example,
many of the benchmarks ran twice
as fast as they had done with
BUFFERS=4. Each buffer, however,
takes up 128 bytes,- 90 buffers use
11,520 bytes of the server's mem¬
ory. If the disk server will be run¬
ning application programs that re¬
quire large amounts of RAM, some
compromise may need to be made
between global Cluster performance
and local execution.
We tested the Cluster with six
small benchmark programs designed
to view network performance with
a heavy I/O load (see tables 2 and
3). The random access test wrote 50
records, within a file of 1,000 rec¬
ords, to 50 other records. Each
record was 50 bytes long. The se¬
quential read test read 641 lines,
each 50 bytes long, within a 40,000-
byte file. The sequential read/write
test read and then wrote 641 50-byte
lines to another file.
The dBASE II benchmarks used
200 records, each containing name,
address, telephone number, and zip
code fields. These records were
sorted on one key, indexed on one
August 1984
71
Cluster
key, and indexed on two keys. The
word processor benchmarks were
performed with WordStar and
WordPerfect (Personal WordPerfect
for PC/r), in conjunction with a
30,000-byte file.
The programs were run under
several different conditions with the
Cluster hardware always in situ, ex¬
cept for the control tests in the stan¬
dard single-user PC-DOS environ¬
ment. User node number one was a
Portable IBM PC with 256K mem¬
ory. The second user node was a
PC/r set up to boot remotely from
the disk server. The shared unit was
an IBM PC with 512K memory, a
10-megabyte Apparat fixed disk, and
an Epson FX-80 printer.
The single-user tests were done
on each unit, while the other user
node was off the Cluster. Next, the
text were performed with the two
remote stations running the bench¬
marks simultaneously from differ¬
ent volumes on the shared hard
drive. The disk server was not used
as a workstation while these tests
were being performed.
Under PC-DOS alone, the ran¬
dom access test took 6 seconds, the
sequential read/write test took 29
seconds, and the sequential read
took 14 seconds. Under the Cluster
software, performance at the disk
server station was only slightly af¬
fected, if at all, regardless of the size
of the BUFFERS parameter. Remote
stations, however, suffered an as¬
tounding loss of execution speed.
With BUFFERS=4 (see table 2) the
Portable, for example, took 1 min¬
ute 20 seconds to do the random ac¬
cess test and 2 minutes 16 seconds
for the sequential read/write.
When two users simultaneously
performed these tests, the perfor¬
mance declined even further: to 2
minutes 21 seconds for the random
access,- 3 minutes 3 seconds for the
sequential read/write ; and 44 sec¬
onds for the sequential read.
The Cluster software had a sim¬
ilar effect on the dBASE II tests as it
did on the random and sequential
file tests. Performance on the disk
server and on the Portable computer
was only slightly affected on all of
the word processor benchmarks.
PC/r, however, had a more difficult
time with saving files.
With BUFFERS=90 (see table
3), the performance of the input/
output benchmarks was about
twice as fast as it had been with
BUFFERS = 4 ; this still represents
about a three- to sixfold increase
over the stand-alone PC-DOS times.
and more flexible twisted-pair wire
used for inexpensive LANs.
o be fair, IBM re¬
fuses to call the
Cluster a network
it is reserving tins term
for an arrangement that
would provide sophist i-
cated communications.
Conclusions
In the arena of multi-user environ¬
ments, the Cluster makes a me¬
diocre showing. To begin with, the
installation instructions are baffling.
And, although the Cluster software
is easy to use once it has been in¬
stalled, it is irritatingly overprotec-
tive. For example, the Cluster does
not permit a "SuperUser" who can
write to any system volumes. This
feature would eliminate the tedious
chore of using the Public Volume
Manager and rebooting all Cluster
stations. Small conveniences have
been left out: it is not possible, for
example, to get a directory of the
public volume from within the
Public Volume Manager program.
The lack of facility for sending
a group of files using the Infor¬
mation Transfer program is a partic¬
ular inconvenience, and the 512-
byte limit for messages restricts
communications to terse dispatches,
such as "Let me see you in my of¬
fice," for which the telephone has
proven to be effective.
There are other drawbacks to
using the Cluster. For example,
users cannot efficiently share a
printer in the Cluster,- the desire to
do so is one of the most common
reasons for installing a network.
PC/'rs must be stripped of all periph¬
erals, which converts them from
semi-serious business machines to
limited-memory terminals with ex¬
cruciatingly slow video update. In
addition, the Cluster requires costly
coaxial cable instead of the cheaper
A more serious problem is that
of software compatibility. IBM does
not guarantee that its own programs
will run in the Cluster, let alone
that third-party software will. A
company that has spent thousands
on word processors, spreadsheets,
and data base managers would more
sensibly invest a few hundred extra
dollars to purchase a network that
can run these programs. Similarly,
little money is saved by buying the
Cluster if expensive peripherals can¬
not be shared effectively.
To be fair, IBM refuses to call
the Cluster a network; the company
is reserving this term for an arrange¬
ment that permits effective periph¬
eral device sharing and provides so¬
phisticated communications. PC
Tech Journal, not having a separate
category for products such as the
Cluster, views the IBM offering as
an inexpensive networking environ¬
ment. Although the price is moder¬
ate, the limitations of the Cluster
program make it an unattractive al¬
ternative to slightly more expensive,
but exponentially more powerful,
third-party offerings. Hm".
IBM Cluster
IBM
P.O. Box 1328
Boca Raton, PL 33432
305-998-2000
CIRCLE 459 ON READER SERVICE CARD
72
PC Tech Journal
A Fix for DOS Users
with UNIX Habits
Ease those withdrawal pains with these undocumented
UNIX-like features of DOS 2.0
J. Eric Roskos
In many ways, DOS 2.0 is similar
to the UNIX operating system.
Unfortunately, there are some dif¬
ferences in the command processor
that can be frustrating to people
who regularly use both DOS 2.0
and UNIX: the symbol used to sep¬
arate directory names under 2.0 is a
backward slash (\) ; whereas under
UNIX it is a forward slash (/) ; the
symbol used to denote a command
switch under DOS is a forward
slash, whereas under UNIX it is a
dash; and device names under DOS
consist of a string of characters fol¬
lowed by a colon—for instance,
CON: or PRN: — rather than the
form used under UNIX—/dev/con
and /dev/prn.
These differences can be elimi¬
nated. DOS already recognizes for¬
ward as well as backward slashes at
the DOS function call level; the
only reason file names can't have
forward slashes is that the com¬
mand processor interprets a forward
slash as the command switch char¬
acter. An undocumented command
can be used to get the command
processor to interpret some other
character as the switch character.
Chapter 9 of the DOS manual
contains descriptions of commands
that can be included in the file
CONFIG.SYS. Among those com¬
mands is one of the form
SWITCH AR=x
If this command line reads
S WITCHAR = -
the command processor will take a
dash, instead of a forward slash, as
the switch character. After this
change is made, the forward slash
may be used as a directory name
separator, and the dash may be used
as the switch character, exactly as
in UNIX. Furthermore, the com¬
mand processor will keep track of
which kind of slash was used last,
and it will use that character when¬
ever it has to print a slash as part of
a directory name.
Why was this command not
documented? Probably to make the
documentation simpler. The switch
character is used throughout the
manual in the description of com¬
mands,- it would be annoying to
have to include, everywhere the
slash is used, a footnote saying "or,
the current character assigned by
the SWITCHAR command." Such a
note would be necessary, however,
to avoid confusing novice users.
Further, confusion could result
if, on a system used by more than
one person, each user chose his
own switch character. The omission
is therefore understandable, at least
for the introductory parts of the
DOS manual. (For another reason
for this omission, see Dan Frank's
article on the DOS RESTORE com¬
mand in this issue.)
There is one other, less forgiv¬
able, omission that affects the oper¬
ation of programs written using
calls from the new Xenix-compati¬
ble (hence UNIX-compatible) Ver¬
sion 2 system. UNIX writes device
names as /dev/name. There is a
good reason for this: the syntax is
identical to that of a file name, and
the name can be used in an OPEN
system call to open a device or a
file, without special distinctions.
According to the manual, how¬
ever, DOS writes device names as
NAME:. If such a name is used in
the UNIX-compatible OPEN func¬
tion call (DOS call 3D), the open
will fail. A careful reading of the
manual reveals (on page D-15) that
all the devices are pre-opened; the
user might conclude that he is ex¬
pected to use these pre-opened file
descriptors instead of doing an
OPEN call. Anyone who designs
programs according to the UNIX
principles will not find this to be
acceptable: in general, there is no
reason why a user shouldn't be able
to open a device just as he does a
file, as long as sequential character
I/O is given to the device. Using
the pre-opened file descriptors com¬
plicates this considerably.
Again, the failing here is only
in the manual. DOS does allow file
names of the form /dev/name, and
these names can be used in an
OPEN system call, in which the
documented names would fail.
These undocumented features
can make DOS 2.0 more pleasant to
use for people who are accustomed
to UNIX. Like all undocumented
features, however, they must be
used with discretion,- they could be
deleted in a future release. For the
sake of UNIX users, I hope that
they will be retained, if not im¬
proved upon, in future releases.
/. Eric Roskos is a graduate student in
computer science at Vanderbilt University.
AUGUST 1984
ILLUSTRATION • KATHY STAICO SCHORR
Menus to use with mouse packages are popping up all over. Here are three
from Mouse Systems, Trillian, and Microsoft.
■MB
F or the PC operator who would choose to take a
multiple-choice rather than an essay exam—
even an open-book essay exam—mouse pop-up
menus are made to order. Like a multiple choice
test, a mouse and a pop-up menu will lay out all the
options. The user need not remember the syntax of
commands or even which function keys to press.
Program commands are placed on menus that "pop
up" on the screen when a mouse button is pressed.
Customized keyboard overlays and key labels can
be thrown away, and typos are almost eliminated.
The mouse p'op-up menu software packages re¬
viewed in this article, Designer Pop-Up Menus
from Mouse Systems, visuALL from Trillian, and
Mouse Menu from Microsoft, have some features in
common. In each, the mouse menu driver manages
the display of menus and the selection of menu
items. The user has merely to specify what action is
Menus
to occur in response to selection of a
menu item, pressing of a mouse but¬
ton, or movement of the mouse. He
can choose to have another menu dis¬
played, send keystrokes to the pro¬
gram, or redefine responses.
Additionally, each of the three
packages contains a resident menu
driver that intercepts any interrupts
that are caused by movement of the
mouse or the clicking of mouse but¬
tons. The program that is running
when an interrupt occurs is sus¬
pended, and the menu driver takes
over control of the screen. It puts a
menu on the screen, replacing part of
the current display. Then, in re¬
sponse to movement of the mouse, a
highlighted bar is scrolled through
the menu items. When the user se¬
lects a menu item, the menu driver
either displays another menu or re¬
stores the original screen contents, in¬
serts keyboard scan codes into the
keyboard type-ahead buffer, and re¬
linquishes control. All this is in¬
visible to the application program,
which receives its input as if it came
directly from the keyboard.
Designer Pop-Up Menus,
visuALL, and Mouse Menu all pro¬
vide prewritten menus to be used
with the most popular programs.
Mouse Systems' Pop-Up Menus have
the biggest selection, including
menus for Lotus 1-2-3, Multiplan,
VisiCalc, SuperCalc 3, WordStar,
Volkswriter, IBM Personal Editor,
PFS: Write, and Multimate.
VisuALL is delivered with a DOS
shell, and menus for Lotus 1-2-3,
WordStar, IBM Personal Editor, and
Multiplan can be added for $49.95
each. Microsoft furnishes Mouse
Menus for WordStar, Lotus 1-2-3,
Multiplan, and VisiCalc.
In each system, the menu defini¬
tion languages can be used to write
customized menus for any software
not supported. In designing menus
for a program, many factors must be
considered: which functions should
be put on a menu, which functions
should be grouped on the same
menu, and in what order should the
functions be placed on a menu. A
good working knowledge of the pro¬
gram is helpful, of course, but the
best test is using the menus.
To test each menu-definition
language, a customized pop-up menu
program was written for a word pro¬
cessor, WordPerfect by Satellite Soft¬
ware International (SSI). Although
WordPerfect is not difficult to use
from the keyboard, it was chosen be¬
cause it operates at the same level of
complexity as the programs for
which the vendors have supplied
prewritten menus.
The sample menu programs
written for WordPerfect manage
only a subset of its functions*, those
that would best illustrate the features
of each menu-definition language,
the variety of menus possible, and
the actions that can be defined.
Mouse Systems' Designer
Pop-Up Menus
Of the three languages reviewed,
Mouse Systems Designer Pop-Up
Menus is the simplest and most ro¬
bust. It isn't overloaded with fea¬
tures, but what it does, it does well.
Designer Pop-Up Menus com¬
municate with the Mouse Systems
PC Mouse, which can be connected
to COMl 1 : , COM2:, or what Mouse
Systems calls a nonstandard COM2:,
such as is found on a Davong multi¬
function card. The resident mouse
device driver, called MOUSESYS,
/ the three
■ 1 languages
V>/ reviewed
here, Mouse Sys¬
tems is the simplest.
either can be installed as a system de¬
vice driver (DOS 2.0 only) or can run
as a "terminate but stay resident"
program. When it is loaded, MOUSE¬
SYS provides mouse support and re¬
serves memory for menu definitions.
When a menu is displayed on the
screen, MOUSESYS writes the menu
directly to the display buffer without
going through the BIOS interface.
Menu definitions are placed in a
source file conventionally called
M _<programname>.MSC. Any
text editor may be used. The source
file is converted by the menu com¬
piler, MSC, into a .COM file that,
when executed, transfers the menu
definition information to the
MOUSESYS program.
It is important to note in all of
these systems that, since the pop-up
menus are independent of the appli¬
cation program, once a menu file is
loaded it will continue to operate
even after the corresponding applica¬
tion program terminates. The burden
of assuring that the appropriate menu
program is running at any given time
rests with the user. Fortunately,
MOUSESYS allows the user to
change to another menu file or to
stop menu support without rebooting
the system. The following com¬
mands, for example, could be used to
run pop-up menus first with Word¬
Star, then with Multiplan:
MOUSESYS (Install resident device
driver)
M _WS (Install WordStar menu file)
WS (Invoke WordStar)
M _ MP80 (Install Multiplan menu
file)
MP80 (Invoke Multiplan)
MOUSESYS/S (Stop menu support)
This process can be simplified, of
course, by including the MOUSESYS
command in the AUTOEXEC.BAT
file and by invoking WordStar or
Multiplan with batch files that load
the appropriate menu, run the pro¬
gram, and then stop mouse support.
Menu Definition for
Designer Pop-Up Menus
The Mouse Systems menu-definition
language allows the user to set global
parameter values, specify cursor or
button response, define menus, and
76
PC Tech Journal
>u fro* Microsoft, have soae features in co»«on.
iu driver *anages the display of Menus and the selection
The user has Merely to specify what action is
espouse to selection of a Menu itca, pressing of
a Mouse button or MoveMen*. of the Mouse. Another Menu can he
displayed, keystrokes can be sent to the prograM, or responses
can be redefined.
In each package, a resident Menu driver is installed which intercepts
interrupts caused by Moveaent of the Mouse or the clicking of
Mouse buttons. When an interrupt occurs, the currently running
prograM is suspended and the Menu driver takes over control
Doc 1 Pg 1 Ln 26 Pot 8
Photo 1: Main Edit Menu for Designer Pop-Up Menus
| Tri 11ian VisuALL
and House Henu froa nicrosoft, have soae features in cowon
• Manages the display of Menus and the selection
ser has Merely to specify what action is
to selection of a Menu iteM, pressing of
eaent of the Mouse. Another Menu can be
can be sent to the prograM, or responses
File Coaaands
Foraat Docuaent
Foraat Text
Edit Coaaands
Motion Coaaands
Help
Window Directory
each package, a resident aenu driver is installed which intercept
interrupts caused by aoveaent of the aouse or the clicking of
■ouse buttons When an interrupt occurs, the currently running
prograa is suspended and the •
Iriver takes over control
Doc 1 Pg 1 Ln 48 Poi
Photo 2: Main Menu for visuALL
describe initial mouse settings. A
comment statement identifying the
menu file can also be defined and
will be displayed when the menu file
is loaded. Explanatory comments and
white space are permitted through¬
out the source file. All of these fea¬
tures render a simple and readable
language, as illustrated in the sample
menu definition file for WordPerfect
that is found in listing 1.
The MOUSE definition state¬
ment at the end of listing 1 identifies
statements that set the initial values
of the left, middle, and right buttons
and the response to mouse move¬
ment. For WordPerfect, the left but¬
ton invokes the main edit menu (pho¬
to 1), the middle button invokes the
motion menu, and the right button
invokes the file commands menu.
Object definition statements take
the following form:
label: Object name
(action-statements )
where action statements can be a
combination of menu statements
(display a menu), key statements
(send keystrokes to program), and
button statements (change the defi¬
nition of a button).
Global parameters control the
screen location and display attributes
of the menu and the sensitivity of the
mouse. The menus can be centered
about the current location of the
hardware cursor or displayed in a
fixed place on the screen.
The cursor definition statements
specify what to do when the mouse is
moved. Normally, the user is in¬
clined to make the motion of the
mouse cause movement of the cursor
in the corresponding direction. In
listing 1 the Arrowkeys statement in¬
dicates that the corresponding cursor
arrow keys are to be sent to the pro¬
gram when the mouse is moved. It is
possible, however, to make mouse
motion cause cursor movement in
the opposite direction, or in a perpen¬
dicular direction, although this is
considered user-unfriendly.
In the menu statements each
menu is given a title. For each item
on the menu, some identifying text is
defined, along with the action to be
taken when the item is selected. The
Designer Pop-Up Menu software au¬
tomatically generates a no-op "exit"
item that discharges the menu with¬
out taking any action. In addition,
each time a menu is displayed, the
highlighted bar is positioned over the
item chosen the last time the menu
was presented. This makes possible
what Mouse Systems calls "mousing
ahead" — two clicks of the mouse
button repeats the action that was de¬
fined by the last selection.
If keystrokes are to be inserted
into the type-ahead buffer, they are
specified using the key statement.
Text is enclosed in quotes, and
through a very pleasant design fea¬
ture of Designer Pop-Up Menus,
every key on the keyboard can be
identified using a logical name—in
most cases, the same legend printed
on top of the key. To specify the
Shift, Alt, or Ctrl forms of a key, the
key name is prefaced with s-, a-, or c-.
Keys can also be identified using
scan codes, but this is unnecessary
since all of WordPerfect's commands
can be expressed by giving the logical
key name, even though WordPerfect
requires some unusual key combina¬
tions, such as Ctrl-Enter (to form a
new page). Mouse Systems' menu
file can handle all the key sequences
in the same file with no trouble.
Button-definition statements as¬
sign actions to the clicking of but¬
tons. Normally a menu is displayed.
Since menus can be nested — that is,
selecting an item from one menu
can cause another menu to be dis¬
played— the question becomes
which menu should be displayed the
next time the button is clicked. If all
menu items are grouped accord¬
ing to a particular mode of operation,
such as editing or file commands,
then once the menu is selected, it
should be displayed each time the
button is clicked until the user exits
that operating mode.
Mouse Systems calls this a sticky
menu, and it is easily induced by
changing the definition of the button
that invokes the menu. Initially,
when the left button is clicked in the
sample program, the main menu is
August 1984
77
Menus
displayed. If the item Format Docu¬
ment is chosen, the FormatDoc menu
is displayed and the left button is re¬
defined so that the FormatDoc menu
will be displayed the next time the
left button is clicked. But beware of
mousetraps! The FormatDoc menu
must contain an item that redefines
the left button to its initial state, or
the user can never escape from the
FormatDoc menu. This escape item is
Go to Main Menu in listing 1.
Designer Pop-Up Menus have
some limitations. They cannot be
used with a program that has its own
keyboard interrupt handler. Also,
since the keystrokes are pushed into
the type-ahead buffer, a maximum of
15 keystrokes can be sent to the pro¬
gram at one time. (This doesn't seem
to be a serious hindrance, however.)
The menus can be used on either a
monochrome or color display in text
mode only. Mouse Systems claims
that the minimum memory use is
1 IK; however, the sample menu-
definition file in listing 1 generated
3,548 bytes of menu data and used
just over 9K when booted up.
The documentation is quite
good, aimed at people who are some¬
what familiar with the PC. It has an
especially sagacious section on menu
design considerations.
Trillian visuALL
VisuALL is a powerful package that is
rich in features,- unfortunately, it
doesn't allow definition of all possi¬
ble key sequences. If Trillian can cor¬
rect these problems, this will be a
super pop-up menu system.
The only package not supplied
by a mouse manufacturer, visuALL
supports a variety of other vendors'
mice, including Microsoft, LogiTech,
and Mouse Systems, and it can even
be used without a mouse. I tested
visuALL with the Microsoft mouse
and Mouse Systems' PC Mouse and
did not have any problems.
With visuALL, the menu defi¬
nitions are stored in files called
profiles , which are passed directly to
the resident menu driver without
being separately compiled. The
menu system is installed by invoking
visuALL and giving a profile name. If
visuALL is used with the Microsoft
mouse, the mouse driver, MOUSE,
must be loaded first.
Since the syntax of the menu
definitions is checked when the pro¬
file is loaded, installing visuALL is a
little slower than installing Mouse
Systems or Microsoft menu systems.
The profile in listing 2 takes about 10
seconds to load from a hard disk — not
a big deal, but the profile is not a
complete implementation of Word¬
Perfect. The big drain on resources is
memory use,- the same profile uses
almost 42K (without the DOS shell).
VisuALL offers more functionality
than any of the other mouse menus.
isuALL is a
powerful
package
that is rich in fea¬
tures; however,
it doesn't allow
definition of all pos¬
sible key sequences.
Each time a different profile is
used or the mouse is moved to a dif¬
ferent com port, the system has to be
rebooted and visuALL reinstalled.
Shells can be combined into one pro¬
file, so that, for example, WordStar
and Lotus 1-2-3 both could be run
without rebooting; that would re¬
quire more memory and a longer
initial boot-up time.
Menu Definition for
visuALL
VisuALL command menus, also
called windows, are always displayed
in the top left corner of the screen
with a highlighted background.
Photo 2 shows the main menu gener¬
ated by the sample profile. To dismiss
a menu without making a selection,
the user must move the cursor out¬
side the menu and click the mouse
button. By default, command menus
are sticky; when a menu is displayed,
it becomes the current window.
As shown in the sample profile
in listing 2, the profile initialization
section contains a definition of the
mouse being used and initial values
for the mouse buttons, cursor move¬
ment, and keyboard use, if any. The
sample profile is configured for use
with the Mouse Systems' PC Mouse
on COM1:. Actions can be assigned to
as many as four buttons depending
on which mouse is used. Unfortu¬
nately, since it is not possible to as¬
sign an action to the simultaneous
clicking of both Microsoft mouse
buttons, the use of the Microsoft
Mouse is limited. In listing 2, click¬
ing the first button (select) will dis¬
play the current command window,
whereas clicking the second, third, or
fourth button will send the Enter
character to WordPerfect.
VisuALL allows conditional ex¬
ecution of statements depending on
the screen location of the cursor. The
cursor command in the sample pro¬
file specifies that mouse movement
should be reflected in cursor move¬
ment, unless the cursor moves into
the last row on the screen. In that
case, the cursor should "fly"; that is,
the cursor should move on the screen
without the program being aware of
its movement. This is a very handy
feature for WordPerfect.
When the visuALL DOS shell is
loaded, FI can be used in the same
way as the select button on the
mouse, and F2 the same as the mark
button, so that visuALL can be used
without a mouse. With this configu¬
ration, these keys are no longer avail¬
able to the application program. Be¬
cause WordPerfect uses the FI and F2
keys, the select and mark values were
equated to "no- action" in the sample
file so the keys could be used to in¬
voke the WordPerfect functions.
78
PC Tech Journal
The Shell command defines a set
of window definitions typically used
for one program. A profile can con¬
tain multiple shells, but cannot ex¬
ceed 48 window definitions.
Because visuALL uses an inter¬
mediate buffer to hold keystrokes be¬
fore they are put into the type-ahead
buffer, it allows up to 60 characters to
be passed to the application program
instead of the 15-character limitation
imposed by the other menu systems.
Like Designer Pop-Up Menus,
visuALL allows typewriter keys to be
written in single quotes and other
keystrokes to be defined using logical
names. A narrower range of values is
supported by visuALL, however. It
would not accept the Alt form of the
+/= key or the Ctrl-2 combination.
Although specifying linefeed (for
Ctrl-Enter) and home backspace ap¬
pears to generate the correct codes,
they did not work with WordPerfect.
In WordPerfect many key com¬
binations do not directly invoke the
desired function, but cause the word
processor either to prompt the user
for more specific information or to
display a menu from which the de¬
sired function can be selected. If only
the first layer of selection is imple¬
mented in a pop-up menu system,
then some functions will be chosen
using pop-up menus and other func¬
tions will need to be selected using
keyboard input. The user may be
confused about when the pop-up
menus are supposed to be used. Im¬
plementing functions as completely
as possible in the mouse menu sys¬
tem gives continuity and cohesion to
program execution.
VisuALL offers such a wide
range of actions in response to menu
item selection that it is possible to
add this second layer of implementa¬
tion to the menu definitions. All of
the actions provided in the Designer
Pop-Up Menu system are also avail¬
able here, as well as many more. For
example, three types of prompts are
supported. The simplest form
prompts the user for text input that is
passed directly to the program. This
type of prompt is used in the sample
profile (listing 2) in the format docu¬
ment window. To set margins, a
Shift-F3 is sent to WordPerfect (the
f only the
first layer of
selection is
implemented in a
pop-up menu sys¬
tem, then some
functions will be
chosen using pop¬
up menus and
others will need to
be selected using
keyboard input.
Set function), which invokes a menu
from which item 3 is chosen (Set
Margins). VisuALL prompts for the
left and right margin settings and
passes them to the program. Thus,
the complete function is performed
using the pop-up menu system.
In the silent prompt, "sprompt,"
the user's response is not passed to
the program, but can be used to con¬
ditionally execute action statements.
This type of prompt is illustrated in
the file commands window in the
save text action statements. If the
user's response is y to the prompt
"Save to current file," then a y is
passed to the program. Otherwise,
the user is prompted for the file
name, which is sent to the program
instead of the current name.
The last form of prompt,
fprompt, is used in the file com¬
mands window for the retrieve text
action statements. It displays, in
menu format, a directory of file
names on diskette. If all file names do
not fit on one menu display, they can
be scrolled into and out of the display
window, until the desired file name
is found. VisuALL displays the cur¬
rent directory for drives a ; , b:, and c ; .
As mentioned earlier, it is possi¬
ble to "fly" the cursor— that is, move
the cursor on the screen without
sending cursor movement commands
to the program. This feature can be
used to implement a soft function
key. In the sample program, again in
the file commands window, the ac¬
tion statements for Print Text use
this feature. The cursor definitions
have specified that when the cursor
moves into the last line on the screen,
it is to fly. When Print Text is in¬
voked, WordPerfect displays a mini¬
menu on the last line of the screen,
with the selections Full Text Print,
Page Print, and Change Print Attri¬
butes. The user simply moves the
mouse until the cursor is over the ap¬
propriate text and then presses the
mark button. The action statements
conditionally define the value of the
mark button based on the cursor's lo¬
cation when the button is pressed.
Documentation for writing ap¬
plication shells is included with the
Design Kit, which is purchased sepa¬
rately. Aimed at the novice user, it
never reaches the precision that is
necessary to implement a menu defi¬
nition with confidence. Menus are
best written by referring to the exam¬
ples in the book and experimenting
with different statements.
Microsoft Mouse Menu
The flexibility that Mouse Menu
allows in the design and placement
of menus is this package's strong
point. Mouse Menu is especially
good if an application program re¬
quires different input depending on
its current operating mode.
The Microsoft Mouse Menu def¬
initions are stored in a source file
(.DEF extension) that, like that in
Designer Pop-Up Menus, is con¬
verted into menu code (.MNU exten¬
sion) by the utility MAKEMENU.
To install the menus, the resident
mouse driver, MOUSE, is loaded I
August 1984
79
Menus
rind Mouse Menu from Microsoft, have sc*e features in common.
nu driver manages the display of menus and the selection
s. The user has merely to specify uhat action is
response to selection of a menu item, pressing of
on or movement of the mouse. Another menu can he
displayed, keystrokes can he sent to the program, or responses
can he redefined.
In each package, a resident menu driver is installed uhich intercepts
interrupts caused by movement of the mouse or the clicking of
mouse buttons. When an interrupt occurs, the currently running
program is suspended and the menu driver takes over control
Doc 1 Pg 1 Ln <8 Pos 8
Photo 3: Main Menu Created by Mouse Menu Definition File
(Mouse Menus can only be used with
the Microsoft Mouse), after which
the resident menu driver, MENU, is
invoked and given the name of the
menu file. Rebooting is not necessary
to change the operating menu file or
to disable menu support; the MENU
command can be issued with a differ¬
ent menu file name, or the command
MENU OFF can be given.
Mouse Menu has a few restric¬
tions. It cannot be used with pro¬
grams that have high-resolution
graphics or directly handle the
mouse. Also, Mouse Menu definition
files can have a maximum length of
6K after compilation. The sample
menu definition file in listing 3 com¬
piled to a file about 3K bytes long,
and, together with the mouse driver,
required 13K when loaded.
The Microsoft mouse comes
with its own hardware interface
board that can be installed in any
available slot. Some Microsoft mice
were improperly configured for use
with a fixed disk. The problem was
in jumper block J4, where the jumper
should have been on jumper pin pair
2, not 5. Microsoft is aware of this
problem, has corrected it, and has
notified dealers of the fix.
Menu Definition for
Mouse Menu
The first statement in a menu-defini¬
tion file, BEGIN, defines the initial
settings of the mouse by specifying
mouse sensitivity and supplying the
labels of statements to be executed in
response to mouse movement and
button clicking. An action can be as¬
signed to the simultaneous clicking
of both buttons—an effective way to
overcome the Microsoft mouse two-
button limitation. These initial set¬
tings can be redefined later using the
ASSIGN statement.
Each menu can be placed any¬
where on the screen by specifying
the beginning cursor coordinates and
can be displayed with the normal, in¬
verse, or bold attributes. Two differ¬
ent types of menus are supported in
the Mouse Menu package, the single¬
column menu, defined with option-
action pairs; and a multiple-column
pop-up menu that can be created us¬
ing text and graphics characters. Pho¬
to 3 shows the main menu that was
created by the sample Mouse Menu
definition file in listing 3.
The single-column menu will
display as many as 20 items, but it is
the user's responsibility to assure that
the beginning cursor coordinates
specify a row that allows all the items
to fit on the screen. As the manual
states, "Otherwise, one or more
menu items are displayed off the
screen." (Quite a feat!) The user must
also assure that a Cancel item is de¬
fined for dismissing the menu with¬
out making a selection. This is
created by specifying option text
with no corresponding action. Of
course, an Escape item must be de¬
fined for exiting sticky menus. Un¬
like in the other two menu systems,
when a menu is displayed the last
item selected is not highlighted, so
mousing ahead is not possible.
The pop-up menu allows the def¬
inition of multi-column, variable-
width menus or message boxes. It is
possible, for example, to create a pop¬
up menu that extends the entire
screen width. TEXT statements are
used to build the custom menu in the
desired shape. Borders for these
menus are user-supplied and may be
created using graphics characters.
SELECT statements specify the selec¬
tion areas on the menu by giving row
and column coordinates relative to
the beginning of the pop-up menu.
"PrintTextPopUp" in listing 3
(shown in photo 4) combines text and
graphics characters to create a pop-up
menu that implements the print
menu for WordPerfect.
In menus of both the single-col¬
umn and pop-up types, the label of a
statement to be executed is given for
each selection item. This may be a
MENU, POPUP, ASSIGN, MATCH,
or TYPE statement. Or, a series of
actions can be specified with an
EXECUTE statement.
The TYPE statement defines as
many as 15 keystrokes to be sent to
the application program. In contrast
to the other menu systems, only a
few of the special function keys (En-
80
PC Tech Journal
ter, Tab, Backsp, and Esc) have been
given logical names. All keystrokes
other than the typewriter keys must
be identified using scan codes. This
unfortunate design does not allow
any more flexibility in expressing
key combinations than the Designer
Pop-Up Menus package does, makes
the menu definition file less read¬
able, and causes unnecessary work
for the user, who must look up each
scan code (even those, like up-arrow,
that are used in all menu definition
files). As in visuALL, the keystrokes
Crtl-Enter and Home followed by
Backspace appeared to be sent cor¬
rectly to WordPerfect, but the corre¬
sponding functions did not work.
The MATCH statement, on the
other hand, is quite useful for an ap¬
plication program that has operating
modes. Using this statement, actions
can be executed conditionally, de¬
pending on what text is displayed on
the screen. ASCII strings up to 255
characters long can be matched be¬
ginning anywhere on the screen.
Two statements labels are given as
parameters to the MATCH state¬
ment-one is to be executed if a
match is found, the other is to be
executed if no match occurs.
Microsoft uses the MATCH
statement in its WordStar menu to
distinguish between the file and no¬
file modes. However, some mainte¬
nance problems surfaced when the
screen display was changed in Word¬
Star version 3.3. A simple fix can be
applied to the existing WordStar
Mouse Menu so it can be used with
version 3.3 ; in the future, through an
arrangement between Microsoft and
MicroPro, the appropriate Mouse
Menu will be shipped with every
version of WordStar.
Mouse Menus are supplied with
a 60-page pamphlet containing in¬
structions on using the prewritten
menus, as well as on writing custom¬
ized menu definitions. A tutorial sec¬
tion, combined with a precise refer¬
ence section and the sample prewrit¬
ten menus, simplifies the process of
writing menu definitions. Microsoft
could have helped the user more by
including an appendix that lists the
keyboard scan codes rather than re¬
ferring the user to Appendix G in the
BASIC user's manual.
Rating Mouse Pop-ups
As is the case with many software
packages, deciding which mouse
menu system is best depends on the
user's needs and technical prowess.
Mouse Systems' Designer Pop-
Up Menus are beautifully and sim¬
ply designed. The system is easy to
use and menu programs are easy to
write. This is the best choice for the
user who wants to implement an
uncomplicated interface. A novice
user is more likely to understand
Designer Pop-Up Menus than the
other systems reviewed here.
Trillian visuALL delivers a lot of
power without supplying much flex¬
ibility in menu design. It uses more
memory than the others but is rich in
functionality and can be used with a
variety of mice or with the keyboard
alone. Its more complicated language
structure makes visuALL difficult for
the novice to understand.
novice user
is inore
likely to
understand Design¬
er Pop-Up Menus
than the other
mouse menus
reviewed here.
Microsoft Mouse Menus are
best used when control over physi¬
cal menu design and screen place¬
ment is required, or with an appli¬
cation program that requires diffe¬
rent input depending on its current
operating mode. mn^i
Designer Pop-Up Menus 3.0
Mouse Systems Corporation
2336H Walsh Avenue
Santa Clara, CA 95051
408-988-0211
$295 (with PC Mouse and software)
$95 (software only)
Menus included for Lotus 1-2-3,
WordStar, IBM Personal Editor,
Multiplan, VisiCalc, SuperCalc 3,
Volkswriter, PFS:Wiite, Multimate
CIRCLE 463 ON READER SERVICE CARD
visuALL 3.09 A
Trillian Computer Corporation
P.O. Box 481
Los Gatos, CA 95030
408-358-2761
VisuALL with DOS Shell $99.95
VisuALL Design Kit $49.95
VisuALL Shells $49.95 each
Shells available for Lotus 1-2-3,
WordStar, IBM Personal Editor,
Multiplan.
CIRCLE 462 ON READER SERVICE CARD
Mouse Menu 200.101
Microsoft Corporation ■
P.O. Box 97200
10700 Northup Way
Bellevue, WA 98009
800-426-9400
In Washington state call
206-828-8088
$195 (includes mouse and software)
Menus included for Lotus 1-2-3,
WordStar, Multiplan, VisiCalc
CIRCLE 461 ON READER SERVICE CARD
August 1984
81
Menus
Listing 1 Mouse Systems
Designer Pop-Up Menus
Comment ("Configured for Word Perfect (version 3.0)")
Parameters
Sensitivity
Hys teresis
(13, 8)
( l t 1|
ReverseVideo
(Yes)
FixedMenu
(Ho)
EnableBeep
(No)
Cursor Definitions
Arrowkeys: Cursor
(
Left ([Left])
Right ([Right])
Up ([Up])
Down ([Down])
)
Button 1
Definitions
; Initial Settings for Left, Middle, and Right Buttons
LBO:
Button
(Menu (Main))
MB:
Button
(Menu (Motion))
RB:
Button
(Menu (FileCommands))
; Redefinitions
for Left Button
LBFD:
Button
(Menu (FormatDoc))
LBFT:
Button
(Menu (FormatText))
LBEC:
Button
(Menu (EditCommands))
; Menu Definitions
Main: Menu
(
Title (“Edit")
Item ("Format Document", Menu (FormatOoc), Button (LBFD))
Item ("Format Text", Menu (FormatText), Button (LBFT))
Item ("Edit Commands", Menu (EditMenu), Button (LBEC))
Item ("Help", Menu (Help))
)
FormatDoc: Menu
(
Title ("Format Document")
Item ("Set Page Format",
Keys
([s-F7]))
Item ("Set Margins",
Keys
([s-F6] "3"))
Item ("Set Spacing",
Keys
([s-F6] "4"))
Item ("Go to Main Menu",
)
Menu
(Main), Button
(LBO))
FormatText: Menu
V
Title ("Format Text")
Item ("Bold Text",
Keys
([F6]))
Item ("Underline",
Keys
([F8]))
Item ("Block Start/End",
Keys
([a-0]))
Item ("Center Text",
Keys
([F5]))
Item ("Flush Right",
Keys
([F7]))
Item ("Indent",
Keys
([F4]))
Item ("Page Break",
Keys ([c-Enter]))
Item ("Reveal Function",
Keys
([s-F2]))
Item ("Rewrite Screen",
Keys
([s-Fl]))
Item ("Go to Main Menu",
)
Menu
(Main), Button
(LBO))
EditCommands: Menu
(
Title (“Edit Commands")
Item ("Erase Word",
Keys ([Home][Backspace]))
Item ("Erase Rest of Line"
.Keys ([c-End]))
Item ("Erase Rest of Page"
.Keys ([e-PgDn]))
Item ("Forward Search",
Keys ([F2]))
Item ("Reverse Search",
Keys ([FI]))
Item ("Find and Replace",
Keys ([a-F2]))
Item ("Move Text",
Keys ([a-9]))
Item ("Go to Main Menu",
)
Menu (Main).Button (LBO))
Help: Menu
(
Title ("Help")
Item ("Bold",
Keys ([s-F3] [F6]))
Item ("Center",
Keys ([s-F3] [F5]))
Item ("Flush Right",
Keys ([s-F3] [F7]))
Item ("Forward Search",
Keys ([s- F 3] [F2] ))
Item ("Indent",
Keys ([s-F3] [F4]))
Item ("Move Text",
Keys ([s-F3] [a-9]))
Item (“Print Modes",
Keys ([s-F3] [a-4]))
Item ("Block Start/End",
Keys ([s-F3] [a-0]))
Item ("Retrieve Text",
Keys ([s-F3] [a-7]))
Item ("Reverse Search",
Keys ([s-F3] [FI]))
Item ("Save Text",
Keys ([s-F3] [a-8]))
Item ("Find and Replace",
Keys ([s-F3] [a-F2]))
Item ("Set Margins",
Keys ([s-F3] [s-F6] "3"))
Item ("Set Spacing",
Keys ([s-F3] [s-F6] "4"))
Item ("Set Tabs",
Keys ([s-F3] [s-F6] "1"))
Item ("Set Page Format",
Keys ([s-F3] [s-F7]))
Item ("Subscript",
Keys ([s-F3] [a-2]))
Item ("Superscript",
Keys ([s-F3] [c-2]))
Item ("Underline".
Keys ([s-F3] [F8]))
)
Mr* f ion* Mon il
(
Title ("Motion Commands")
Item ("Top of Document",
Keys ([Home] [Home] [Up]))
Item ("End of Document",
Keys ([Home] [Home] [Down]))
Item ("Next Page",
Keys ([PgDn]))
Item ("Previous Page",
Keys ([PgUp]))
Item ("End of Line",
Keys ([Home] [Right]))
Item ("Start of Line",
*
Keys ([Home] [Left]))
FileCommands: Menu
( ____
Title ("File Commands")
Item (“Retrieve Text",
Keys ([a-7]))
Item ("Save Text",
Keys ([a-8]))
Item ("Print Text",
Keys ([c-PrtSc] ))
Item (“System Commands",
Keys ([ a-3 ]))
Item ("Exit Word Perfect"
, Keys ( [a-=] ))
)
; Mouse Definition
(
Left (LBO)
Middle (MB)
Right (RB)
Cursor (Arrowkeys)
1
Listing 2 Trillian visuALL
SYSTEM
MOUSE = SPORTSTER
bdud 1200
comm = 1
button
select = command
mark = enter
execute = enter
user = enter
Cursin'*
speed = 5
82
PC Tech Journal
right
left
if not (0-79 24 rightarrow) +
if (0-79 24 fly)
if not (0-79 24 leftarrow) +
if (0-79 24 fly)
up
=
if not (0-79 24 uparrow) +
if (0-79 24 fly)
down
if not (0-79 24 downarrow) +
if (0-79 24 fly)
Keyboard
select
=
noaction
mark
=
noaction
up
=
uparrow
down
=
downarrow
left
3
leftarrow
right
rightarrow
SHELL (wp.vsh)
window (WP Commands)
File Commands = window (File Commands) command
Format Document = window (Format document) command
Format Text
=
window (Format text) command
Edit Commands
=
window (Edit Commands) command
Motion Commands
=
window (Motion Commands) command
Help
=
window (Help) command
window (File Commands)
Retrieve Text
=
a-7 fprompt (Filename: ) enter
Save Text
a-8 +
sprompt (Save to current file? ) +
response (‘y') enter 'y* +
response not Cv') +
prompt (Filename: ) enter
Print Text
=
c-Prtsc +
button (mark = if(0-18 24 *1' +
if(19-33 24 '2' +
if(34-54 24 '3' +
if (55-79 24 enter +
button (mark=enter))))))
System Commands
=
a-3
Exit Word Perfect
=
a-=
Go to Main Menu
=
window (WP Commands) command
window (Format Document)
bet Page Format
=
s-F7
Set Margins
=
s-F6 '3' +
prompt (left margin: ) enter +
prompt (right margin: ) enter
Set Spacing
s-F6 '4' +
prompt (set spacing to: ) enter
Go to Main Menu
=
window (WP Commands) command
window (Format Text)
Bold text
=
F6 button (mark = F6 +
button (mark = enter))
Underline
=
F8 button (mark = F8 +
button (mark = enter))
Range Edit
=
a-0 button (mark = a-0 +
button (mark = enter))
Center text
=
F5
Flush Right
=
F7
Indent
=
F4
Page Break
=
Linefeed
Reveal Functions
=
s-F2
Rewrite Screen
=
s-Fl
Go to Main Menu
*
window (WP commands) command
window (Edit Commands)
Erase Word
=
Home Backspace
Erase Rest of Line
=
c-End
Erase Rest of Page
=
c-Pgdn +
prompt (Erase rest of page ? ) +
enter
Forward Search
*
F2 prompt (Search string: )
Reverse Search
=
FI prompt (Search string: )
Find and Replace
=
a-F2 prompt (Search string: ) +
prompt (Replace with: )
Move Text
=
a-9
Go to Main Menu
i ■ ^ n /I n • ■ / U a i r a-a _
window (WP Commands) command
window (Motion Commands)
Top of Document
= Home Home Uparrow
End of Document
= Home Home Downarrow
Next Page
= Pgdn
Previous Page
= Pgup
End of Line
= Home Rightarrow
Start of Line
= Home Leftarrow
Go to Main Menu
= window (WP Commands) command
window (Help)
Bold
= s-F3 F6
Center
= S-F3 F5
Flush Right
= s-F3 F 7
Forward Search
= s-F3 F2
Indent
= s-F3 F4
Move Text
= s-F3 a-9
Print Modes
= s-F3 a-4
Range on/off
= s-F3 a-0
Retrieve Text
= s-F3 a-7
Reverse Search
= s-F3 FI
Save Text
= s-F3 a-8
Search and Replace = s-F3 a-F2
Set Margins
= s-F3 s-F6 '3'
Set Spacing
= s-F3 s-F6 '4'
Set Tabs
= s-F3 s-F6 T
Set Page Format
= s-F3 s-F7
Subscript
= s-F3 a-2
Superscript
= s-F3 c-2
Underl ine
= s-F3 F8
Go to Main Menu
= window (WP Commands) command
end
Listing 3 Microsoft Mouse Menu
BEGIN EditMenu.MotionMenu,FileMenu,Left.Right,Up.Down,12,24
cu i l ntrnu ----
EditMenu: MENU
"Edit Menu",2,2,Normal
OPTION
"Format Document".GotoFormatDoc
OPTION
"Format Text".GotoFormatText
OPTION
"Edit Commands",GotoEditCommands
OPTION
"Help".HelpMenu
OPTION
"Cancel"
MEND
rut mau uutument menu-
FormatDoc: MENU
"Format Document",2,2,Normal
OPTION
"Set Page Format",KeyShftF7
OPTION
"Set Margins".SetMargins
OPTION
"Set Spacing".SetSpacing
OPTION
"Go to Edit Menu".GotoEditMenu
OPTION
"Cancel"
MEND
;. Format Text Menu ..-
FormatText: MENU "Format Text",2,2,Normal
OPTION "Indent", KeyF4
OPTION "Bold Text",KeyF6
OPTION "Underline",KeyF8
OPTION "Block Start/End".KeyAltO
OPTION "Center Text",KeyF5
OPTION “Flush Right",KeyF7
OPTION "Page Break".KeyCtrlEnter
OPTION "Reveal Functions",KeyShftF2
OPTION "Rewrite Screen".KeyShftFl
OPTION "Go to Edit Menu",GotoEditMenu
OPTION "Cancel"
MEND
. Edit Commands Menu -
EditCommands: MENU "Edit Commands",2,2,Normal
OPTION
OPTION
OPTION
"Erase Word".KeyHomeBacksp
"Erase Rest of Line".KeyCtrlEnd
"Erase Rest of Page".KeyCtrlPgDn
OPTION
"Forward Search",KeyF2
OPTION
"Reverse Search".KeyFl
OPTION
"Find and Replace",KeyAltF2
OPTION
"Move text".KeyAlt9
OPTION
"Go to Edit Menu".GotoEditMenu
OPTION
"Cancel"
MEND
August 1984
83
Menus
;...- Help Menu...
HelpMenu: MENU "Help is on the Way",1,2,Normal
OPTION "Cancel"
OPTION “Bold".HelpBold
OPTION "Center".HelpCenter
OPTION "Flush Right",HelpFlushRight
OPTION "Forward Search",HelpForwardSrch
OPTION "Indent",Helplndent
OPTION "Move Text",HelpMoveText
OPTION "Print Modes".HelpPrintModes
OPTION "Block Start/End".HelpBlock
OPTION "Retrieve Text".HelpRetrieveText
OPTION "Reverse Search",HelpReverseSearch
OPTION "Save text".HelpSaveText
OPTION "Find and Replace".HelpFindReplace
OPTION “Set Margins",HelpSetMargins
OPTION "Set Spacing",HelpSetSpacing
OPTION "Set Tabs",HelpSetTabs
OPTION "Set Page Format".HelpSetPageFormat
OPTION “Subscript".HelpSubscript
OPTION "Superscript",HelpSuperscript
OPTION "Underline".HelpUnderline
MEND
MotionMenu: MENU
OPTION
OPTION
OPTION
OPTION
OPTION
OPTION
OPTION
MEND
-- Motion Menu -
"Motion Commands",2,30,Bold
“Top of Document".KeyHomeHomeUp
"End of Document".KeyHomeHomeDown
"Next Page".KeyPgDn
"Previous Page".KeyPgUp
"End of Line".KeyHomeRight
"Start of Line".KeyHomeLeft
"Cancel"
-File Menu--
MENU "File Commands",2,59,Inverse
OPTION "Retrieve Text",KeyAlt7
OPTION "Save Text",KeyAlt8
OPTION "Print Text" .GotoPrintTextPopUp
OPTION “System Commands",KeyAlt3
OPTION "Exit Word Perfect".KeyAltEqual
OPTION "Cancel"
MEND
;. Print Text Pop-Up
PrintTextPopUp: POPUP 23,2,Inverse
TEXT "r , "= Print Menu =
Full Text Print; Page Print; Print Attrib; Cancel
SELECT
SELECT
SELECT
SELECT
PEND
2,2,16,FullTextPrint
2,19,11.PagePrint
2,31,13,SetPrintAttrib
2,45,6,Cancel Print
HelpReverseSearch:
HelpSaveText:
HelpFindReplace:
HelpSetMargins:
HelpSetSpacing:
HelpSetTabs:
HelpSetPageFormat:
HelpSubscript:
HelpSuperscript:
HelpUnderline:
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
KeyShftF3,
KeyShftF3,
KeyShftF3,
KeyShftF3,
KeyShftF3,
KeyShftF3,
KeyShftF3,
KeyShftF3,
KeyShftF3
KeyShftF3
Key FI
KeyAlt8
KeyAltF2
SetMargins
SetSpacing
SetTabs
,KeyShftF7
, KeyAlt2
.KeyCtrl2
,KeyF8
Fu1ITextPrint: TYPE
"i"
PagePrint: TYPE
"2"
SetPrintAttrib: TYPE
"3"
CancelPrint: TYPE
“0"
LACLUIC
GotoEditMenu:
EXECUTE
LBEditMenu,EditMenu
LBEditMenu:
ASSIGN
EditMenu
GotoFormatDoc:
EXECUTE
LBFormatDoc.FormatDoc
LBFormatDoc:
ASSIGN
FormatDoc
GotoFormatText:
EXECUTE
LBFormatText.FormatText
LBFormatText:
ASSIGN
FormatText
GotoEditCommands:
EXECUTE
LBEditCommands,EditCommands
LBEditCommands:
ASSIGN
Ed itCommands
GotoPrintTextPopUp:
EXECUTE
KeyCtrlPrtSc.PrintTextPopUp
;--
- Help Statements.-.
HelpBold:
EXECUTE
KeyShftF3,KeyF6
HelpCenter:
EXECUTE
KeyShftF3,KeyF5
HelpFlushRight:
EXECUTE
KeyShftF3,KeyF7
HelpForwardSrch:
EXECUTE
KeyShftF3,KeyF2
Helplndent:
EXECUTE
KeyShftF3,KeyF4
HelpMovetext:
EXECUTE
KeyShftF3,KeyAlt9
HelpPrintModes:
EXECUTE
KeyShftF3,KeyAlt4
HelpBlock:
EXECUTE
KeyShftF3,KeyAltO
HelpRetrieveText:
EXECUTE
KeyShftF3,KeyAl t7
Key m** iynmeiii*
Left:
TYPE
0,75
Right:
TYPE
0,77
Up:
TYPE
0,72
Down:
TYPE
0,80
KeyAltO
TYPE
0,129
KeyAlt2
TYPE
0,121
KeyAlt3
TYPE
0,122
KeyAlt4
TYPE
0,123
KeyAlt7
TYPE
0,126
KeyAlt8
TYPE
0,127
KeyAlt9
TYPE
0,128
KeyAltEqual:
TYPE
0,131
KeyAltF 2:
TYPE
0,105
KeyCtrl2:
TYPE
0,3
KeyCtrlEnd:
TYPE
0,117
KeyCtrlEnter:
TYPE
10
KeyCtrlPgDn:
TYPE
0,118
KeyCtrlPrtSc:
TYPE
0,114
KeyFl:
TYPE
0,59
KeyF2:
TYPE
0,60
KeyF4:
TYPE
0,62
KeyF5:
TYPE
0,63
KeyF6:
TYPE
0,64
KeyF7:
TYPE
0,65
KeyF8:
TYPE
0,66
KeyHomeBacksp:
TYPE
0,71,BACKSP
KeyHomeHomeUp:
TYPE
0,71,0,71,0,72
KeyHomeHomeDown
: TYPE
0,71,0,71,0,80
KeyHomeLeft:
TYPE
0,71,0,75
KeyHomeRight:
TYPE
0,71,0,77
KeyPgDn
TYPE
0,81
KeyPgUp
TYPE
0,73
KeyShftFl:
TYPE
0,84
KeyShftF2:
TYPE
0,85
KeyShftF3:
TYPE
0,86
KeyShftF7:
TYPE
0,90
SetMargins:
TYPE
0,89,"3"
SetSpacing:
TYPE
0,89,"4"
SetTabs:
TYPE
0,89,"1"
84
PC Tech Journal
Is Your PC
Buried By
: loppy Disl
Back-Up?
«o»11
wran: i
mb aoa:
armin'; \
nwm a
tjrj a
Knvu
..
With Model 70 PC
Cartridge Tape System
DIGI-DATA
CORPORATION
®... First In Value
Digi-Data’s Model 70 PC cartridge tape system lets you back-up your
PC’s Winchester drive without getting buried in floppies. One cartridge
holds 16.5 Mbytes of data, more than you can put on 51 floppy disks!
And you can back-up your 10 Mbyte PC XT® drive in less than 15 min¬
utes of unattended operation. That is a small fraction of the time it
would take with the PC’s floppy, with you standing there changing
disks.
Our file-oriented structure makes it possible for you to back-up
only what has to be changed on your disk. That saves still more time
and storage capacity.
8580 Dorsey Run Road
Jessup, MD 20794
(301) 498-0200 Telex 87580
In Europe contact:
DIGI-DATA LTD
Unit 4
Kings Grove
Maidenhead, Berkshire
England SL6 4DP
Tel. 0628-29666-6
Telex 847720
70 PC comes ready to run on your IBM PC XT and most compati¬
bles like Compaq, Columbia Data Products and Eagle. Complete with
controller board, driver software and cables.
Digi-Data’s products also include V 2 inch and V* inch start/stop
and streaming drives and systems.
CIRCLE NO. 117 ON READER SERVICE CARD
® PC XT is a registered trademark
of IBM Corporation
Spin the BASIC roulette
wheel inside your PC
R andom numbers are the life¬
blood of certain kinds of com¬
puting. They introduce the vital
element of chance in game pro¬
grams. They are used to test statis¬
tical software. Simulation programs
depend on random numbers to
establish simulated situations.
Auditors select files for reviewing
with them. Pollsters use them to se¬
lect participants for surveys.
Several years ago my household
was chosen to participate in a mar¬
keting survey about some "serious"
matter, such as the relationship of
income to the kind of cereal con¬
sumed. Households were selected by
starting with the house on the
southwest corner of each block and
polling every fifth house in a clock¬
wise trip around the block. If that
method had been used in my old
hometown, it would have led to a
serious bias in the survey results.
Paul F. Hultquist is a professor of electrical
engineering and computer science at the
University of Colorado at Denver. He has a
Ph.D. in physics and has been teaching in the
computer field for almost 30 years.
0 <
o
86
ILLUSTRATION • TONY VILLA NY
Random numbers
29
38
27
96
45
74
83
72
41
90
19
28
17
86
35
64
73
62
31
80
9
18
7
76
25
54
63
52
21
70
99
8
97
66
15
44
53
42
11
60
89
98
87
56
5
34
43
32
1
50
79
88
77
46
95
24
33
22
91
40
69
78
67
36
85
14
23
12
81
30
59
68
57
26
75
4
13
2
71
20
49
58
47
16
65
94
3
92
61
10
39
48
37
6
55
84
93
82
51
0
29
38
27
96
45
74
83
72
41
90
Figure 1: Output from Listing 1
Figure 2: Output from Listing 2
Each side of the street in that town
had six houses, so one "inside" and
two corner houses would have been
selected on each block. Thus, the
pollster would have sampled 66 2/ 3
percent corner houses. Almost all of
the big, expensive houses were on
corner lots. Practically any random
selection method, whether very
good for all purposes or not, would
have avoided the bias toward upper-
income households.
However, random number gen¬
eration can cause, as well as avoid,
some problems. In order to simulate
the behavior of a sophisticated com¬
munications system in which a sig¬
nal is to be extracted from a back¬
ground of noise, the programmer
must not only generate the signal
on the computer—which is easy—
but also the background noise —
which is another matter entirely. If
the random number generator used
in simulating the noise has certain
statistically cyclical properties, the
simulated system may very well de¬
tect the "signal" of the random
number generator rather than that
of the simulated signal generator.
Because of computer users' de¬
pendence upon random numbers, it
is necessary to know how good they
are, how to generate them quickly
(especially if they are needed by the
millions), and how to avoid some of
the pitfalls presented by random
number generators included in pro¬
prietary software.
The idea of random numbers
was born long before computers.
History reveals several attempts to
use mechanical devices to generate
random numbers, including cards,
dice, and roulette wheels. These
mechanical methods are not satisfac¬
tory in the computer era, however,
because they tend to suffer from
"nonrandomness," and they are dif¬
ficult to couple to computer hard¬
ware in such a way that a random
number can be obtained, on de¬
mand, in binary form.
Many efforts were made over
the years to develop computerized
methods for generating random
numbers in the same machine that
is doing the computation. Even so,
every computer center continued to
have its punched card deck of num¬
bers, often derived from the Rand
Corporation publication, A Million
Random Digits with 100,000 Normal
Deviates (Rand, 1955), a book whose
title made more interesting reading
than its contents.
Random Numbers on
Nonrandom Machines
A computer is a deterministic ma¬
chine, whereas random numbers are
products of stochastic (nondetermin-
istic) processes. How can the use of
a deterministic computer to gener¬
ate a nondeterministic sequence of
numbers be justified? The answer is
that it can't be. The issue is side¬
stepped, in a sense, by taking the
pragmatic approach: if the se¬
quences are so highly complicated
that another computer is needed to
predict the members of those se¬
quences, and if the sequences be¬
have statistically the way sequences
of truly random numbers should,
then the numbers will be accepted
as random numbers. Note that no
single number is random; only ran¬
dom sequences of numbers are
meaningful. The statistical behavior
and lack of predictability are keys to
accepting such sequences.
The desire for computer-gener¬
ated random sequences led John von
Neumann to propose the middle
square method . Von Neumann, a
universal genius who grew up in
Hungary, was responsible for estab¬
lishing a rigorous mathematical
foundation for quantum mechanics,
developing the theory of games, and
suggesting that the binary number
system is the natural one for com¬
puters. (Considerable evidence indi¬
cates, however, that the idea of us¬
ing a binary system for computers
was independently proposed by
John Atanasoff of Iowa State Uni¬
versity at the beginning of World
War II. His contribution was not
generally recognized until recently.)
88
PC Tech Journal
K||H1
%S^Sr
^ssfegi. s^sjssS-
^s@SSS, ^g&?
'fUm* ^§@.
^sl^Sst* ”S§ls»
* 5
* t - :
:
3 ' ^
'
m
How do you sell power? You
don’t. Power sells itself. That’s why
you need to know about CDI/100,
the powerful information manage¬
ment system.
Suddenly your customer,
whether novice or sophisticate,
has the power to control and
focus the computer, to get it to
do what it was meant to. And the
dynamic menu system makes it all
so easy.
Our relational data base man¬
agement system features variable
length fields as well as a unique,
open-ended file structure. The
result is tailored formatting with
virtually limitless record keep¬
ing and information management
capability.
And CDI/100 allows the
operator to use a host of existing
application programs, maximizing
die computer’s efficiency and
How to turn
power into profit.
effectiveness.
Try CDI/100 for yourself. If
you haven’t received one of our
free trade kits, call 1-800-426-8931
today. Go ahead, put CDI/100
through your paces. We think
you’ll be pretty enthusiastic. And
enthusiasm, like power, sells itself.
CIRCLE NO. 282 ON READER SERVICE CARD
Exceptional New Software Concept
• Everyone’s Filing System
• English-like Inquiry Language
• Dynamic Menu System
• Integrated Help Features
• Relational Data Management
• Enhanced Basic Compiler
• Dictionary Supported Data Base
• Task Master
DO
CDI Information Systems, Inc.
1309 114th Ave. S.E.
Bellevue, WA 98004
(206) 455-5117
INCREASE YOUR PERSONAL POWER "
Random numbers
Figure 3: Output from Listing 3
Von Neumann's middle square
process involved using the middle
digits of successive squares in order
to produce a random sequence. For
example, if 9,268 is the nth num¬
ber, then its square is 85,895,824,
and the n+ 1st number is 8,958.
Unfortunately, this method tends to
fall into short cycles, the most per¬
nicious of which is all zeros. None¬
theless, it helped in the early days
of Los Alamos to solve, by simula¬
tion, problems that were intractable
to classical mathematics.
Most of today's random number
generators use some variation of the
linear congruential method first pro¬
posed by Professor Derrick H.
Lehmer of the University of Califor¬
nia at Berkeley. His method can be
expressed as an equation
x n+1 = ax n + c mod m
where x n and x n+I are the succes¬
sive members in the sequence, a is
the multiplier, c is an additive con¬
stant, and m is the modulus. For ex¬
ample, if m = 101, c = 23, a = 21,
and x n = 38, then ax n +c = 798,
which when divided by 101 is
7 + 91/101. Because mod m means
the remainder after division by m,
then x n+J = 91.
The IBM PC BASIC contains a
random number generator RND
that is of this type. According to
Richard E. Farmer, manager of prod¬
uct support for Microsoft Corpora¬
tion, the parameters for this genera¬
tor are a = 214,013, c = 2,531,011,
and m =2 24 . PC BASIC also con¬
tains an instruction RANDOMIZE.
If included in a program, it calls for
an integer between — 32,768 and
+ 32,767 that may be supplied from
the keyboard or supplied with the
instruction. This provides a new
seed, or starting value, to create a
different sequence. The ability to
reseed is important in that it allows
the user to generate different and
(presumably) independent se¬
quences for statistical replication.
However, the ability to reproduce
the same sequence is helpful, dur¬
ing debugging for example. (That
points out another drawback of
physical devices for random number
generation—it is usually impossible
to repeat the same sequence.)
One difficulty in random num¬
ber generation is the production of
very long sequences without repeti¬
tion. No congruential sequence can
exceed m in length; as soon as all of
the integers 0 through m— 1 have
been generated, it must repeat. Why
should the user want all of the in¬
tegers 0 through m— 1? With a large
value of m, he can generate enough
numbers in the sequence to have
many independent subsequences
and thus can replicate his statistical
experiments. In other words, the
user can reseed the random number
generator and use it many times
without worry about duplication.
Another reason to produce all
of the integers from 0 through
m— 1 is that if "chunks" of the re¬
gion from 0 to m — 1 were missing,
the random number generator
might not be uniform. Also, having
all of the integers enables the user
to know the length of the sequence
of numbers before the generator be¬
gins to repeat itself.
It is known [Knuth, 1981] that
the congruential generator can be
made to cycle through all of the in¬
tegers 0 through m— 1 in some or¬
der if these conditions are met:
c must be relatively prime to m
(the two cannot have any com¬
mon divisors)
a— 1 (sometimes called b) must be
a multiple of every prime number
that divides into m ; if m is prime
then b must be a multiple of m
If 4 divides m, then a— 1 must be
a multiple of 4.
For example, if m = 100, then
c can be any prime number under
100, say, 29. Now m = 2 2 *5 2 , so
b = a— 1 must contain 5 (second
condition above) and 4 (second
and third conditions) as factors.
Thus, a suitable b is 20, and a = 21.
92
PC Tech Journal
~v 4 t
Beyond
Board-Driven
Networks
Multi-User PC Networks. Their ability to serial ports. Currently, four of these terminals
share expensive peripherals, programs, and cost less than one PC.
files has always made sense. At least, in MultiLink'“ runs under all releases of PC-
theory. The catch is that, previously, every DOS (except 1.0) and certain implementa-
workstation required its own PC . . . PLUS a tionsof MS-DOS. Leading programs such as
kilobuck “Network Interface Board.” In other WordStar, Lotus 1-2-3, PeachText 5000, and
words, your cost-per-user was over $3,000. dBASE II are supported. In addition, most
And that doesn’t make sense. Not any more. text-oriented software is fully-compatible.
The Multi-Tasking, Multi-User Network A Resource-Sharing System. Multiple
That’s Software-Driven. MultiLink™ repre- users are able to access all of your com-
sents a major breakthrough in networking puter's resources, locally, or from remote
systems. Network interface boards are not locations using a terminal with a modem,
required. In addition, only one IBM PC/XT is Disk, printer, program-sharing, and a corn-
needed in your network. prehensive print spooler are fully-imple-
Four Workstations for the Price of One. mented.
MultiLink'" is a unique software package Make the MultiLink™ Connection
which transforms ONE IBM PC/XT (or PC- Today. Call The Software Link TODAY, and
Compatible) into the CPU of a multi-tasking, get the whole story. MultiLink™ is immedi-
multi-user network. It utilizes inexpensive ter- ately available for $295 and comes with a
minals as workstations. Up to eight can be money-back guarantee. VISA, MC, and
connected to a single PC with appropriate AMEX accepted.
MoaDGStLoDDCs"
THE SOFTWARE LINK, INC.
6700 23-B Roswell Rd„ Atlanta, GA 30328 Telex: 4996147 SWLINK
CALL: 404/255-1254
Dealer Inquiries Invited
IBM, PC, XT, & PC-DOS are trademarks of
IBM Corp. MS-DOS, WordStar. dBASE II.
Lotus t-2-3, and PoachToxt 5000 are
trademarks of Microsoft Corp., MicroPro,
Ashton-Tate, Lotus Development Corp., &
Peachtree Software. Inc„ respectively.
MultiLink' - is a trademark of The Software Link, Inc.
Terminals courtesy of QUME Corporation.
CIRCLE NO. 393 ON READER SERVICE CARD
Random numbers
Figure 5: Output from Listing 5
Figure 6: Output from Listing 6
The user now knows that a = 21,
m = 100, and c = 29 will "go maxi¬
mum cycle" or will generate every
integer 0 through 99. Any integer
(usually required in software to be
less than m) will do as a seed, or
starting value. For example, in this
generator the sequence that is
shown in figure 1 can be generated
by starting with zero as the seed.
The BASIC program to do this is
shown in listing 1.
The sequence as generated
doesn't look very random when dis¬
played in this form (as shown in
figure 1). If the user were presented
with these numbers in sequential
order (as read across the page), he
would undoubtedly catch on imme¬
diately to the pattern of the unit's
digits; it would probably take more
time to see the pattern in the 10's
digits. That is a characteristic of
random number generators: the
least significant digits are generally
the least random.
Why does the IBM PC BASIC
function RND give fractions? Most
generators embedded in commercial
software have several options for
presenting results, even though the
underlying process is one using in¬
tegers. The most common way of
presenting random numbers is in
the form x n+1 /m. That is, the ran¬
dom integer is divided by the mod¬
ulus and expressed in floating point
form as a fraction in the range 0 to
1, but not including 1. Because the
common methods generate fractions
that are uniformly distributed be¬
tween zero and 1, the mathematical
notation U[0,\) is sometimes used to
indicate that the set of possible
numbers include 0 but not 1.
The Urge for Speed
Programmers who use random num¬
bers by the millions are concerned
about the speed of generation. For
this reason most generators are writ¬
ten in machine language and called
as functions. Often, a desire to speed
up the generation process leads to
the omission of the addition of c.
This creates a set of new problems,
such as how to guarantee maximum
cycle, which in the c <> 0 case
was dependent on c not being zero.
If c is chosen as zero, then a
must have much more severe re¬
strictions. Since zero cannot be in¬
cluded in the cycle, the seed must
be restricted to be non-zero and rela¬
tively prime to m. Furthermore,
maximum cycle is always less than
Hi; the best solution is to make m a
prime number, in which case the
cycle length is m— 1 for proper a.
The urge for speed also suggests
that the value of m be made the
"word size" of the computer. Then,
when ax n+1 + c has been com¬
puted, whether c is zero or not, the
mod m can be found simply by re¬
taining the "remainder" (least sig¬
nificant) portion in the multiple
length register used for multiplica¬
tion. This is attractive because it
eliminates the need for a division to
carry out the modulus operation.
Those who wish to pursue the
technicalities of the c = 0 case, plus
the use of the word size for m,
should read Seminumerical Algo¬
rithms: The Art of Computer Pro¬
gramming (Knuth, 1981). The math¬
ematics and the arguments are diffi¬
cult reading, but most PC users are
not so pressed for speed that they
need to use the more esoteric meth¬
ods—if so, they should have been
using the Cray or the Denelcor HEP
from the beginning. Perhaps the
c <> 0 version will serve as well
as the faster versions, considering
the speed of the PC.
RND Surprises
The toy random number generator
discussed previously is obviously
not enough for most users; it is far
from random. Because IBM BASIC
(and other high-level languages) do
not support integers beyond the val¬
ue 32,767, generating good con-
gruential sequences using programs
written in these languages is impos¬
sible. No values of m larger than
181 can be used in the linear con-
gruential generator written in
94
PC Tech Journal
YOU DON’T
HAVE TO
REMODEL
TO ADD ON
With some computers, the more you do, the more you have to add on.
A little memory expansion here. A graphics adapter there. Next thing you know, you need
an expansion chassis. And a loan from the bank.
Corona builds memory expansion (up to 512K) and high-resolution graphics right into the
main board. That saves you money. And expansion slots. Plus, our 128K standard memory and
IBM® compatibility let you run thousands of software packages right out of the box. The net result
is a PC that grows on you. Painlessly.
The Corona PCs.
It’s a matter of simple addition.
In North America, call 1-800-621-6746 for the Authorized Corona Dealer
near you. In Holland, call 020-03240-18111. There are over 1,600 dealers
worldwide. And their job is to help. Service by Xerox.
THE CORONA PC
©Corona Data Systems 1984
CIRCLE NO. 171 ON READER SERVICE CARD
corona
dota systems, inc.
Random numbers
Figure 7: Output from Listing 8
BASIC because of integer overflow,*
therefore, sequences cannot exceed
181 in length.
This is totally unsatisfactory for
most purposes, so the user may be
forced to write a congruential gener¬
ator in assembly language and
couple it to the high-level language
as a function. He may also use what
has been provided in the language
(which I started to do with RND)
or one of the "randomizers"
with RND to give better sequences.
Figure 2 shows what I was ex¬
pecting to get using RND, and fig¬
ure 3 shows what I actually got. See
listings 2 and 3 for the BASIC pro¬
grams to run these figures. The
coordinates on the screen were
I = 100 + 425*(0.3*W + 0.4*X
+ 0.3*Y)
J = 25 + 150* (0.3*X + 0.4*Y
+ 0.3 *Z)
where W, X, Y, and Z were found
by making four calls to RND. The
pattern is supposed to show how
correlated random variables behave.
(Statisticians please note that the
display coordinates are upside-down,*
the correlation is really positive.)
My next attempt to understand
what was going on led to figures 4
through 6, which were helpful in
learning something about RND. In
these diagrams, the coordinates of
the points were determined by
I = 80 + 465*RND
J = 35 + 130*RND
The differences among the figures
appear because, in the case of figure
5, there is a do-nothing call to RND
between the calculations of I and /,
and in figure 6, there are two such
calls. The very pronounced stripes,
particularly in figure 4, are charac¬
teristic of congruential generators.
All congruential generators behave
this way,* the trick is to make the
modulus very large and the multi¬
plier very good. Then the stripes
can be made so close together that
they are practically unnoticeable.
The points on the screen will occur
in such a complicated order that the
process appears to be random. (See
listings 4, 5, and 6.)
Putting Generators to
the Test
The crucial test for good multipliers
is the spectral test, which is dis¬
cussed in Donald Knuth's book,
mentioned above. He gives a table
of several multipliers, both good and
bad, along with the findings from
the application of the test. Program¬
mers wishing to go to the trouble of
writing an assembly language pro¬
gram should take time to investigate
the multipliers. Unfortunately,
without big-integer software some
of the conclusive tests, such as the
spectral test, cannot be run on the
PC in a high-level language.
A more practical method to test
sequences of random numbers (per¬
haps from a generator whose meth¬
od is embedded in software) is to
generate displays such as those
shown in the accompanying figures.
This is easy and enlightening.
Other tests are statistical. One
that is often applied, but that few
generators ever fail, is the test for
uniformity of distribution. This test
asks if there are as many random
numbers in the interval from, say,
0.1 to 0.2 as there are in the interval
from 0.8 to 0.9. The distribution
test is usually applied in the follow¬
ing way : the user decides how
many intervals he wants to be
tested, for example, 101; then inside
of a DO loop, or FOR—NEXT loop,
he multiplies each random number
by 101, truncates, and adds 1 to
avoid a zero index,* this number is
used as the index to raise the count
of occurences in an array of occur¬
rence counts,* the limit on the loop
should be chosen so at least 5 counts
(10 is better) will occur in each
"bin." The BASIC program is
shown in listing 7.
The calculated quantity CHSQ
is called chi square. Note that if all
of the bins had precisely 10 (the ex¬
pected number in the statistical
sense) then chi square would be
zero. In real life, the counts in the
bins typically would be 8, 11, 10,
96
PC Tech Journal
13, 7, 12, 9, , so that chi
square has some nonzero value. If,
however, the generator is very bad,
so that counts are such numbers as
0, 15, 3, 25, 1, 2, 30, ... , then the
value of chi square will be large.
The values of chi square, based
upon a theoretical consideration of
true randomness, are tabulated and
are available in many places
[Abramowitz and Stegun, 1964;
CRC Tables, various editions]. For
this particular example the value of
chi square should lie in the range of
about 90 to 109 (the so-called 75
percent and 25 percent points; 75
percent of the time chi square
should be greater than 90 and 25
percent of the time it should exceed
109). The number of degrees of free¬
dom, needed to find the correct en¬
try in the table, is 100. (Only 100 of
the bins can have their contents as¬
signed arbitrarily,- the 101st bin
must take what is left over.)
A single application of this (or
any other) statistical test is not
enough. The random number gener¬
ator ought to be reseeded and tested
over a number of sequences. The
failure of the generator—indicated
by chi square values that are too
low or too high (below the 95 per¬
cent value, for example, or above
the 5 percent value)—in isolated
cases is generally not of concern.
Forty repetitions of the test applied
to RND yielded values of chi square
that ranged from 87.8 (about 70 per¬
cent of the time chi square should
exceed this value) to 113.6 (about 20
percent of the time chi square
should exceed this value), indicating
that one cannot reject the hypothe¬
sis that chi square is distributed uni¬
formly with this set of data.
A somewhat more sensitive test
for uniformity is the Kolmogorov-
Smirnov test. It compares the shape
of the statistical distribution func¬
tion for the generator with what ac¬
tually occurs and measures the max¬
imum excursions from the ideal.
These values are also tabulated.
This test is explained in Knuth's
August 1984
Seminumehcal Algorithms and in
many statistics books.
One of the more critical tests is
the so-called runs test. A run is a
monotonic sequence of numbers in
which each is larger (or smaller)
than its predecessor. For example, in
the sequence of digits 8,3,5,9,2,4,7,9
the set 3,5,9 is a run (up) as is
2,4,7,9. The first one is of length 3,
and the latter one of length 4. The
distribution of the lengths of the
runs is sometimes an indicator of
the quality of the generator; particu¬
larly, this distribution seems to
show up too-small multipliers.
Knuth shows a very compli¬
cated method for determining the
value of a variable he calls V, where
V is chi-square distributed. The
Btrieve:
Network and single-user file management for all
your programs. All your programming languages.
Written in 8088 Assembler for the
Say goodbye to writing file management
routines. Because now Btrieve™ can han¬
dle file management for all your program
development on the IBM PC. All your
programming languages.
Based on the b-tree file indexing
system, Btrieve provides the most
sophisticated file handling powers
available for your PC. And for multiple
PCs. Btrieve™/N lets you share files
among PCs in NetWare,™ PCnet,™
EtherSeries™ or MultiLink™ networks.
And both Btrieve and Btrieve/N offer the
same superior performance characteristics:
• Interfaces all major IBM PC
languages—BASIC, Pascal,
COBOL, C, and IBM Macro
Assembler
SoftCrafMnc.
EO. Box 9802 #590 Austin, Texas 78766 (512)346-838!
Suggested retail prices: Btrieve, $245j Btrieve/N,
$595. Requires PC/DOS or MS™/DOS, version 1
or 2. Dealer inquiries welcome.
IBM, MS, Btrieve and Btrieve/N, PCnet, MultiLink,
NetWare, and EtherSeries are trademarks of International
Business Machines, Microsoft Corporation, SoftCraft Inc.,
Orchid Technology, Davong Systems Inc., Novell Data
Systems, and 3ComCorp., respectively.
READER SERVICE CARD
CIRCLE NO. 201 ON
IBM PC
• Multikey access to records
• Automatic file recovery on system
crash.
Btrieve and Btrieve/N also have user-
defined transaction management.
Unlimited number of records per file.
Complete error control and recovery
within an application. Duplicate,
modifiable, and segmented keys. Variable
cache buffer from 16K bytes to 64K bytes.
Moreover, record retrieval is fast with
Btrieve—no matter how large your data
base. So you can begin writing programs
faster with Btrieve.
Say goodbye to file management
routines. And hello to Btrieve.
97
The best IDEA!
Were IDEA. The best IDEA since the IBM® PC.
We have a full line of peripherals that are compatible
with the IBM PC. But, more importantly, they’re compat¬
ible with each other. So you can build a better PC, piece
by piece.
Each IDEA peripheral is the best you can buy. More
features. Better features. Higher quality. And all at a
lower price.
IDEA is unique. Very unique. For example, we design
our own products. So they’re all integrated. Meaning
that they work together to give you a system that’s
systematic. Efficient. And compatible.
Integration also means that we don’t buy someone
else’s ideas and resell them to you. So, if you call our
Customer Hotline with a question, you’ll speak with
technical support people who are directly involved in
the design and production of our products.
Designing our own products also assures you of
IDEAmax 384
The Multifunction Card with the unique backplane
• Serial, parallel and game ports cabled directly from the
back of the board. • Up to 384KB of parity checked memory.
• Includes disk emulation, printer spooler, printer selector,
perpetual calendar and diagnostic software. • IDEA multifunc¬
tion family includes IDEAmini I/O card, IDEAplus disk host
adapter card. • Purchase only as many options as you need.
From $295
IDEAcomm 1200
Internal modem for 300/1200 baud communications
• Slim profile construction uses only one slot in the IBM PC
or IBM PC/XT. • Easy-to-use, menu driven software for your
communications applications. • Runs Smartcom® Crosstalk,®
PC Talk and most other software. • Extra serial port for C0M1
or COM2 configuration.
$495
IDEAcomm 3278
The performance leader for PC-to-mainframe communications
• Unique dual-ported memory design enables 20% -40%
faster file transfers. • Includes file transfer (upload/download)
software for VM/CMS, TSO. • Software configurable keyboard
for customizing your application. • 3278 Emulation, Bisync
and SNA/SDLC support; coax connection to IBM 3274/3276
controllers.
$995 includes board and software
The IDEAmax 384
.U»t UV wHy RW ft.
IBM and the IBM logo are registered trademarks of International Business Machines Corporation. Smartcom. Crosstalk and MicroAge are registered trademarks of Hayes Microcomputer
Products, Microstuf. and MicroAge Computer Stores, respectively. IDEAmax 384, IDEAmini, IDEAplus, IDEAcomm 3278. IDEAcomm 1200, IDEAdisk, IDEAdisk Plus, IDEAshare, IDEAnet
and IDEAgraph are registered trademarks of IDE Associates, Inc.
nee the IBM PC.
dependability. And quality. All our boards are burned in
for 168 hours. Plus, we perform functional testing on
each peripheral as a system to assure reliability. As a
result, every IDEA product, including disk drives, is
covered by a one-year warranty.
At IDEA, we also offer you the only trade-up policy
in the business. If what you buy today, you want to
update tomorrow, you haven’t wasted your money.
You’ve invested it.
But having the best peripherals for the IBM PC isn’t
enough. They have to be available. And you’ll find our
products at all Math Box, Computer Depot, AmeriSource,
and Northeast Computer stores, as well as many Compu-
terland, Inacomp and MicroAge® locations. Call 800-
257-5027 for the IDEA store nearest you.
IDEA. When all is said and done, it’s little wonder
why the best IDEA since the IBM PC is the best IDEA
for the IBM PC.
IDEAdisk
r
IDFAss (dales
rih;1V't !(>K.U In? Ts.
IDEAdisk
The high capacity disk system with built-in backup
• Removable Winchester cartridge: Faster, more reliable, easier
to use than tape backup. • Wide range of storage capacities: 5,
10,15, 25 and 45 megabytes. • Internal or external mounting
versions. • Includes high performance software for disk
caching, dynamic partitioning, public or private files, self
booting. • IDEAdisk Plus version lets you add memory, serial
and clock options without using another expansion slot.
From $1645
IDEAnet
tfiJAssociates
11 * o ‘injwu'fl
IDEAnet and IDEAshare
Cost-effective networking products for the IBM PC
• IDEAshare software for up to four users. • Fully upgradable
to IDEAnet hardware and software for up to 20 users. • All
PCs on the system remain fully operational. • No dedicated
file server required. • Security features include User ID’s,
passwords, file and record locking. • Includes software for
remote printing, print spooling, disk and file sharing. •
IDEAnet and IDEAshare are totally integrated with IDEAdisk.
From $275 to $495 per node
IDEAgraph
High resolution, high speed color graphics card
• Transforms the IBM PC into a powerful graphics workstation
for CAD/CAM, medical imaging, broadcasting, graphic arts.
• 256 colors displayable at one time; up to 1024x1024 re¬
solution. • Analog, digital TTL and composite video outputs.
From $995
(X! A
IDEAssociates
The best IDEAs for personal computers.
IDEAssociates, Inc., 7 Oak Park Drive, Bedford, MA 01730 (617) 275-4430 Telex 94-8245.
IDEAssociates S.A., 5, Route de Chene, CH1207 Geneva, Switzerland (22)86.11.19 Telex 428 388 KBSCH
Random numbers
complexity of the method results
from the fact that successive runs
are not quite statistically indepen¬
dent. I have used this procedure on
RND and found that the values of
V seem to be satisfactory. There is a
simpler test that involves dropping
the variate (uniformly distributed
random number) immediately fol¬
lowing a run, which relieves the de¬
pendency problem. This version
gave similar results.
Other statistical tests include
the poker-hand test (using random
numbers to generate digits 0
through 9 in sets of, say, 5 digits
and determining if there are appro¬
priate proportions of two pairs, three
of a kind, etc., in these sets), the
coupon collector test (determining
how long it takes to collect a full set
of digits from 0 through 9, gener¬
ated in sequence), and many others.
Knuth describes and provides the
relevant mathematics for most of
the commonly applied tests.
In all such tests the user must
remember that exceptional results
can occur by chance. If a card-
player were dealt 13 spades in a
bridge hand, he would fall over
dead of surprise, or at least be
highly suspicious of the dealer.
Nonetheless, such an event can hap¬
pen with precisely the same proba¬
bility that we are dealt any nondes¬
cript hand. Thus, an occasional bad
result from a statistical test of a ran¬
dom number generator should be
expected just as an occasional "fall-
over-dead" hand in bridge should be
expected. The judgment involved is
how often to expect either. This is
why more than one test is neces¬
sary. If the test shows up bad in the
5-percent sense significantly more
than 5 percent of the time, then
there is cause to worry.
Alternatives to RND
Suppose that a user needs to use ran¬
dom numbers and has little else to
use except RND in BASIC. RND
does not appear to be the world's
best random number generator.
What does he do then? Is there any
way out except to (a) punt, (b) write
an assembly language generator
with better properties, or (c) give up
and go to a big machine at some ser¬
vice bureau and use an unknown
generator that may be even worse?
Two schemes allow for the gen¬
eration of more-random sequences
from less-random ones. The first
uses a vector of, say, 50 variates that
have to be loaded into the vector at
the beginning of use. One extra
variate is kept as a spare. When a
new random variate is needed by
the program, the spare is used to
calculate the "random index" of one
of the cells of the vector,- the con¬
tents of that cell are then used to re¬
place the spare and are furnished to
THE
MOST
The Greenleaf Functions
Library for C Programmers
Total Access to IBM PC and XT
Compatible with DOS 2*0, 1.1, Cl C86,
Lattice, and Microsoft C - Versions 1 and 2,
Supports All Memory Models
EXTENSIVE
A GOOD WAY
TO LEARN C
FULL
SOURCE
CODE
PARTIAL CONTENTS
$17500
Add $7.00 for
postage and
handling. Specify
Compiler (C86,
Lattice, or Microsoft)
MasterCard and VIS/^
Accepted
ALSO AVAILABLE
Cl C86 Compiler.
Lattice C..
Prices subject to change
'♦ DOS 2.0- over 25 functions ♦ Complete Video
Access for Text and Graphics ♦ Over 60 String
Functions (including “justify” and “center”)
♦ Rainbow Series Color Text * Time and Date
♦ Over 40 IBM Graphics Printer functions ♦ Total
: Access to Function and Special Keys ♦ RS232 Async
♦ All BIOS Functions ♦ Some functions are “BASIC
Equivalent” ♦ Software Diagnostics ♦ Disk functions
♦ Utility functions ♦ and more . . .
THE greenleaf functions . . .
Nearly 200 functions, 180 page manual, 3 Libraries,
Extensive Examples of each function, Full
Source Code in C and Assembler,
Demo Programs
Save Months of
* I ■ Painstaking
. $395°° Work
without notice.
Dealer Inquiries Welcome
(214) 446-8641
LIBRARY
ANYWHERE
FOR THE IBM PC AND PC XT
The Greenleaf Functions is a trademark of Greenleaf Software. C86 is a trademark of Computer
Innovations Inc. IBM. IBM PC, PC XT, and PCDOS are trademarks of International Business
Machines Corp. Lattice is a trademark of Lattice Inc. Microsoft C and MSDOS are trademarks
of Microsoft Inc,
GREEN^AFSoffwARE <3> 2101 HICKORY DRIVE <> CARROLLTO N. TEXAS 75006
CIRCLE NO. 105 ON READER SERVICE CARD
100
PC Tech Journal
EVEN WHEN YOUR MODEM
SENDS IT BY WAY OF THE
OKEFENOKEE SWAMP.
When you send data by telephone
through nasty environments like this,
it can run into problems tougher than
just alligators. Problems like impulse
noise. Chatter from the switchgear.
Static from the atmosphere or bad
weather. Distortion due to crosstalk
or just plain white noise.
To get your message through,
your IBM PC or XT needs the ad¬
vanced performance features of the
PC:lntelliModem™ It’s got the best
receive sensitivity available today—
actually down below -50 dBm. So
now you can achieve a high level of
data transmission integrity. Even with
bad connections.
Get patented modem technology.
The PC:lntelliModem is elegantly
simple. Its patented design does it all
on a single microprocessor chip, with
just one crystal. Other modems take
Bizcomp: A history of
_ innovation. _
1980 Invented first command-driven
modem
1981 Introduced proprietary line-
status monitoring
1983 Designed first single-yuP 212A-
compatible modem
1983 Introduced first integrated
voice/data modem for IBM PC
1983 Granted patent on command-
driven modem
two, four or more piPs (and even more
oscillators), and still accomplish less.
How do we do this? By creating
architectural
innovations in
firmware, and
by pushing the
chip to its limit,
close to 12 MHz.
Since it uses fewer
parts, the PC:lntelliModem’s
no-compromise design offers
higher reliability, a more com¬
pact form factor, and lower costs.
This design elegance leads natu¬
rally to more elegant performance.Take
line status detection, for example. The
PC:lntelliModem’s adaptive, decision-
directed logic monitors line status more
closely than other modems. Even at wea(<
or degraded signal levels. So it can
make connections with less chance of
error, by detecting signals for dial tone,
remote ringback, busy and voice-
some of which other modems ignore.
Plan ahead with integrated
voice and data.
For opening up a whole new world of
integrated voice and data applications,
there’s nothing like the PC:lntelliModem.
Literally. Its easy-to-use software pack¬
age-PC:lntelliCom™- lets you switch
repeatedly between talking or listening
and sending or receiving data. All at
Make sure your modem has all
these PC:lntelliModem features
Integrated Voice/Data
■ Switch between voice and data
communications
■ Programmable telephone handset jack
Status Reporting
■ Line status detection (dial tone,
busy, remote ringback, voice answer,
modem answer, incoming call)
■ Audio monitor
■ Programmable status LED
PC:lntelliCom™ Software Included
■ 99-name on-line telephone directory
■ Auto-dial, auto-repeat dial, auto-answer
■ Link to another number if busy
■ File transfer
■ Data capture to diskette
■ Programmable auto log-on sequences
Compatible with Crosstalk™ and
PC-Talk III™
Pulse and Tone Dialing
Receive Sensitivity: -50 dBm
Speeds: 110,300,1200 baud
the touch of a single function key. That
means now both you and your com¬
puter can talk on the same line. With¬
out having to hang up, re-dial or plug
and unplug a lot of cables.
So if you’re designing microcom¬
puter datacomm products-or just
looking for a PC/XT modem for your¬
self, check out the PC:lntelliModem at
your local dealer. You’ll get the mes¬
sage. And so will they. Or contact:
Bizcomp, 532 Mercury Drive, Sunnyvale,
CA 94086; 408/733-7800.
CIRCLE NO. 270 ON READER SERVICE CARD
WeVe got people talking.
—
/
1
u
-
All printed circuit boards manufac¬
tured by Apparat and sold after June 1,
1984, including RAM boards, COMBO
cards and CRAMBO cards for the IBM
PC, XT, PCjr and portable PC, are cov¬
ered by our exclusive lifetime limited
warranty covering parts and labor.
4401 South Tamarac Parkway, Denver, CO 80237—Customer Service 303/741-1778
Apparat retail outlets—DENVER: 4401 S. Tamarac Pkwy. 303/771-2032 • 5224 W. Warren Ave. 303/985-1217
CHICAGO: 1844 S. Arlington Heights Rd. 312/640-0322
CIRCLE NO. 106 ON READER SERVICE CARD
Imagine your PC with
Apparat add-ons. Imagine
where it could take you.
Special values from the hard disk
experts. For example, imagine your IBM
PC or Portable PC with hard disk capability.
Apparat’s external Hard Disk Subsystem
is completely compatible, running DOS
2.0 or 2.1 without modification or device
drivers. And now you can get more capac¬
ity—22 and 33 MB formatted configura¬
tions—for less money. 22 MB for $2,295,
33 MB for $2,995. Apparat also offers
internal or external 10 MB drives at simi¬
larly low prices.
XT owners—trade in your 10 MB
drive for a larger Apparat hard disk
drive. Our 22 MB drive is $1,299, but
you pay just $899 with a trade-in of your
existing 10 MB drive. Our 33 MB drive is
just $1,799, but you pay just $1,399 when
you trade in your existing 10 MB drive.
Call the Apparat ordering hotline for
trade-in details and shipping instructions.
TEAC or Panasonic floppies. These
half-height floppies are perfect for your
PC, PPC, or XT. Call for trade-in prices on
full-height floppies.
New 28 pin EPROM programmer.
Now Apparat has a new Prom Blaster for
the PC, XT, PPC and PCjr to program most
28 pin EPROMS (including the 2764,128,
256), in addition to our original Prom
Blaster that programs most 24 pin EPROMS
...each $129. We also make an EPROM
cartridge for the PCjr to accept your newly
programmed EPROMS.
PPC and PCjr. Apparat has developed
new products for the IBM Portable PC.
Now available is a 256K RAM card and a
Combo card (P & S). Both fit the PPC short
slots. New for the PCjr is a 128K RAM card
and a Combo jr card (P & elk). Both fit the
side attachment.
Other Apparat add-ons. RAM cards
for the PC and XT—64K $189, expandable
to 512K. COMBO II card for the PC and XT,
5 functions on one card— $189. CRAMBO
card for the PC piggybacks COMBO II on
64K RAM card— $359. 64K internal PRINT
SPOOLER with parallel interface— $299-
Stand-alone at $319.
Warranty. All Apparat manufactured
PC. boards sold after June 1,1984 covered
by our exclusive lifetime limited warranty
covering parts and labor.
Apparat, Inc.
ADD ON AND ON AND ON AND ON AND ON
ORDERING AND DEALER
INFORMATION
800 / 525-7674
Prices subject to change without notice.
Random numbers
the program. Next a call is made to
RND to replace the contents of the
cell. This method seems to provide
sequences of random numbers that
have good statistical properties in
spite of the lack of randomness of
the underlying generator. This pro¬
cedure (lines 1100 through 1130,
listing 2) was used to "clean up" fig¬
ure 3 to get figure 2.
Execution time for producing
these random sequences is some¬
what longer than otherwise. Figure
7 shows the results of using this
method to produce a diagram simi¬
lar to those in figures 4 through 6.
Reseeding this generator requires re¬
seeding RND and then reloading
the array. The BASIC code is given
in listing 8.
The second method for generat¬
ing more-random sequences from
less-random ones needs another ran¬
dom number generator to get it
started. It is called an additive gen¬
erator because its method of genera¬
tion relies on addition rather than
multiplication. The equation for the
nth random variate is given by
X n = (*n-24 + X nS5> mod m
where it is clear that n > 55. The
choice of 24 and 55 for subscripts is
not mere whimsy,- these values
guarantee that the period of the se¬
quence will be very long, with a
minimum period of 2 55 — 1, which
is in excess of 3.6 x 10 16 . If the mod¬
ulus is less than this number the
generator obviously must repeat
some of the integers. The sequence
will not repeat itself in fewer than
this number of variates.
In this case, 16,384 can be used
as the modulus because of the addi¬
tive nature of the generator. At the
beginning of the program, declare
DIM X (55)
DEFINT I,J,K,X
J = 24: K = 55
(RANDOMIZE) 'If desired
FOR I = 1 to 55
X(I) = INT (16384#RND)
NEXT I
To call for a number that is uni¬
formly distributed on [0, 1), write
X(K) = (X(K) + X(J)) MOD 16384
U = X(K)/16384
J = J — 1:K = K — 1
IF 7 = 0 THEN J = 55
IF K=0 THEN K=55
The statements following
U = X(K)/16384 convert X into a
circular buffer so that nothing but
pointers need be moved as the pro¬
gram progresses. Reseeding the addi¬
tive generator also requires reseed¬
ing RND and reloading the circular
buffer with 55 new numbers.
A floating-point variation of
this method was used to produce
figure 8. In this version the array X
is loaded directly from RND and
thus avoids the integer operations
entirely. Instead of
X(K) = (X(K) + X(J)) MOD 16384
U = X(K)/16384
write
X(K) = X(K) + X(J)
IFX(K) => 1.0 THEN X(K) =
X(K) - 1.0
U = X(K)
This provides a little more speed
than the integer version. Listing 9 is
the program for this variation.
Is RND good enough? It prob¬
ably would be satisfactory for taking
a poll or running a game, but not
for very sophisticated applications
such as studies in communications
theory or simulations in which suc¬
cessive calls to RND are expected to
produce independent variates. For
those purposes one of the random¬
izers described above would be
better. The user could write his
own generator in assembly language
using a set of multiplier and mod¬
ulus recommended by Knuth. lm«Pl
EDITOR'S NOTE
On a hunch, we compiled all of Pro¬
fessor Hultquist’s programs using the
IBM BASIC Compiler. We were sur¬
prised to learn that the BASIC Com¬
piler's random number generator
103
YOUR CODE MAY BE WASTING ITS TIME!
THE PROFILER " CAN HELP . . .
• Statistical Execution Profiler
• Works with any language
• Completely configurable
• Up to 16 partitions in RAM/ROM
• Time critical code optimization
• Abnormal code behavior tracking
• Graphic presentation of results
• Easy to use menu interface
THE PROFILER is a software package which gives you, the programmer, a powerful
tool for locating time consuming functions in your code and allows you to performance
tune your program. With the THE PROFILER you can determine where to optimize
your code for maximum benefit, then measure the results of your efforts.
Using THE PROFILER, you can answer questions like:
Where is my program spending its time?
Why is my program so slow? What is it doing?
Is my progam I/O bound? CPU bound? Are data buffers large enough?
How much improvement did my changes make?
THE PROFILER is completely software based and consists of a system resident driver
and a monitor program. The memory partitions can range from 1 byte to 1 megabyte
^ ^ in size and can be anywhere in the address space.
■ >>■ N0 ADDITI0NAL HARDWARE IS REQUIRED!
^ M Requires an IBM PC or compatible system with a minimum
— 64k and one drive.
THE PROFILER is available for $175.00 from DWB
Associates or ask your software dealer. To order or for
more information, call or write DWB Associates. VISA/MC
accepted. Dealers welcome.
dwb
Associates
P.O. Box 5777
Beaverton, Oregon 97006
(503) 629-9645
IBM is a trademark of IBM Corp. MSDOS is a trademark of Microsoft Corp.
THE PROFILER is a trademark of DWB Associates.
CIRCLE NO. 216 ON READER SERVICE CARD
micro flexibility . . .
Multi-Window/File
full screen editing, up to 20 files
Move/Copy/Delete
one or more marked blocks
Directory w/Free Space
also read, write, rename, erase files
Build New Commands
ivith key macros
Power Down Recovery
and optional auto-backup
Restore Deleted Text
plus view lfl scratch buffers
EDITOR for
Programmers
&
DP Professionals
Edit Tool
List $225, demo disk $10
mainframe power . . .
Search and Replace
with repeat and wildcards
Large Files
edit over 1 megabyte
Fixed Length Records
as long as 00,000 bytes
Hex EBCDIC Editing
CIRCLE NO. 166 ON READER SERVICE CARD
AmeriSoft ™
(707) 778-8594 • (707) 762-0640
345 S. McDowell Blvd., Ste. 410
Petaluma, CA 94952
Random numbers
does not exhibit the erratic symp¬
toms found in the interpreted
BASIC. In particular, programs 3 and
4 generated random patterns such as
those in figures 2 and 5. Therefore,
with or without Hultquist's adjust¬
ments to compensate for the inade¬
quacies of interpreted BASIC's RND,
compiled BASIC programs seem to
generate random sequences.
Readers working with random
numbers in BASIC, whether inter¬
preted or compiled, are well-advised
to entrust the generative algorithm
carefully and build in one or more
tests of randomness. —JA
References
Abramowitz, Milton, and Irene A.
Stegun, eds., Handbook of
Mathematical Functions with
Formulas, Graphs, and Mathe¬
matical Tables, National Bureau
of Standards Applied Mathemat¬
ics Series 45, U.S. Government
Printing Office, 1964. (Also
available in a reprint from Do¬
ver Publishing Company.)
Hodgman, Charles D., ed., CRC
Standard Mathematical Tables
(various editions), Chemical
Rubber Publishing Company
(various dates).
Knuth, Donald E., Seminumerical
Algorithms: The Art of Com¬
puter Programming, volume 2,
second edition, Reading, Massa¬
chusetts: Addison-Wesley Pub¬
lishing Company, 1981.
Rand Corporation, A Million Ran¬
dom Digits with 100,000 Normal
Deviates, Glencoe, Illinois: The
Free Press, 1955.
104
PC Tech Journal
NOW AVAILABLE—
THE MASTER
DIRECTORY
OF PRODUCTS
FOR YOUR
IBM PC
Nearly 400 pages of the most current listings
and information for IBM PC, PC XT, PCjr and compatible hardware,
software, accessories and services—from the publishers of PC.
YOUR PRIMARY REFERENCE...
organizing over 4,000 products and 1,500 vendors, services,
and support systems in one comprehensive, easy-to-use
guide. PC: THE BUYERS GUIDE is the quickest and most
reliable way to locate exactly what you need to expand the
usefulness of your personal computer.
Because it’s published quarterly in May, August, No¬
vember and February, PC: THE BUYERS GUIDE is the most
up-to-date guide of its kind, accurately describing each
product and its function and cost. Find out what level of skill
is required to get the most from the product and everything is
logically categorized and indexed with cross-references so
you won't miss one listing!
GET MORE FROM YOUR PC
The documentation you received from IBM is only the be¬
ginning. Finding the right hardware and software is what
really makes the difference in how effectively your IBM or
compatible PC performs—that’s why you need PC: THE
BUYERS GUIDE! You’ll also find detailed listings for the
following important services and accessories:
Consultants
On-line Bulletin Board
Databases
Furniture
Retail and Mail Order Outlets
Literature
User Groups
Insurance Services
Professional Societies
Retail Clubs
Computer Groups
Maintenance services
AND MUCH MORE!
Be sure to order your copy of PC: THE BUYERS GUIDE
today—fill out the coupon and mail it now!
PHONE TOLL FREE 9 am-5 pm EST:
1-800-526-0790
(In New Jersey 201-540-0445)
ALSO AVAILABLE AT YOUR LOCAL NEWSSTAND
AND COMPUTER STORE
CN1914, Morristown, NJ 07960
Please send me PC: THE BUYERS GUIDE. Enclosed is $9.50
($7.95* per copy, plus $ 1.55 each for postage and handling.)
($11.00 outside USA, send US funds only). ^Residents of CA,
CO, CT, DC, FL, IL, MA, Ml, MO, NJ and NY State add
applicable sales tax.
Charge My:
American Express Q] Visa Q MasterCard
CARD NO.
EXP. DATE
MR./MRS./MS.
print full name
ADDRESS
j CITY/STATE/ZIP
Random numbers
Listing 1 Multiplicative
Congruential Method
10 1 'Toy random number generator
20 ' using multiplicative congruential method
30 ' - P. F. Hultquist, 1983
40 '
50 CIS : KEY OFF : X = 0 'Starting value
60 FOR I = 1 TO 110
70 X = (21*X * 29) MOO 100 'Generate 110 numbers so that we
80 PRINT USING "####"; X; 'can see the cycle begin to
90 NEXT I 'repeat
100 LOCATE 10,35
110 PRINT "Figure 1"
120 END
Listing 2 Correlated Variable
Display with Randomizer
10 ' Correlated variable display
20 ' showing problems with RN0 function
30 ' -by P. F. Hultquist, 1983
40 '
50 DIM ARRAY(50) : SCREEN 2 : CLS : KEY OFF
60 ' W,X,Y,Z are obtained from successive calls to RND
70 ' and then used to generate coordinates of display
80 ' points
85 G0SUB 1000
90 FOR K = 1 TO 5000
100 G0SUB 1100
101 W = V : G0SUB 1100
102 X = V : G0SUB 1100
103 Y = V : G0SUB 1100
104 Z = V
110 I = 100 + 425*(.3*W + .4*X + .3*Y)
120 J = 25 + 150*(.3*X + .4*Y + .3*Z)
130 PSET(I,J)
140 NEXT K
150 ' Print label for display
160 LINE (25,10)-(600,10)
170 LINE -(600,190)
180 LINE -(25,190)
190 LINE -(25,10)
200 LOCATE 23,35
210 PRINT "Figure 2"
220 GOTO 2000
1000 ' Modification of random number generation
1010 ' to introduce "randomizer"
1020 FOR K = 1 TO 50
1030 ARRAY(K) = RND
1040 NEXT K
1050 ' This loads the array with random numbers
1060 ’ to be used in the randomization
1070 SPARE * RND
1080 RETURN
1090 ' Enter here on succeeding calls
1100 KA = I NT(SPARE*50) + 1 'generate random index
1110 SPARE = ARRAY(KA) 'replace spare
1120 V = SPARE : ARRAY(KA) = RNO 'replace used number
1130 RETURN
2000 END
Listing 3 Correlated Variable
Display without Randomizer
10 ' Correlated variable display
20 ' showing problems with RND function
30 ' -by P. F. Hultquist, 1983
40 '
50 SCREEN 2 : CLS : KEY OFF
60 ’ W,X,Y,Z are obtained from successive calls to RND
70 ' and then used to generate coordinates of display
80 ' points
spread the word
Have you heard?
During the last 12 months, thousands
of applications programmers dumped
dBASE II.
Why?
Because dBASE II hasn’t improved
a lick in years. And that makes it a
whole generation behind Q-PRO 4 ...
the 4th generation applications
development language for
microcomputers.
With dBASE II, all the original bugs,
complicated operations and absurd
restrictions (like only two open files)
are still there. dBASE II just can’t
make it for applications in 1984.
90 FOR K = 1 TO 5000
100 W=RNO: X=RNO: Y=RNO: Z = RND
110 I = 100 + 425*(.3*W + .4*X + .3*Y)
120 J = 25 + 150*{.3*X + .4*Y + .3*Z)
130 PSET(I,J)
140 NEXT K
150 ' Printjabel for display
160 LINE (25,10)-(600,10)
170 LINE -(600,190)
180 LINE -(25,190)
190 LINE -(25,10)
200 LOCATE 23,35
210 PRINT "Figure 3"
220 END
Listing 4 Using Successive Ran¬
dom Numbers Generated by RND
ID ' Random number generator demonstration
20 ' Coordinates of points in the display are
30 ' derived from using successive random
40 ' numbers generated by RND
50 V -by P. F. Hultquist, 1983
60 '
70 SCREEN 2 : KEY OFF : CLS
80 FOR K = 1 TO 5000
90 I = 80 + 465*RND
100 J = 35 + 130*RND
110 PSET(I,J)
120 NEXT K
130 *
140 ' Arrange display
150 ’
160 LINE (25,10) - (600,10)
170 LINE -(600,190)
180 LINE -(25,190)
190 LINE -(25,10)
200 LOCATE 23,35
210 PRINT "Figure 4"
220 END
Listing 5 Using Successive
Random Numbers with
One Number Skipped
10 '
Random
number generator demonstration
20 '
Coordinates of points in the display are
30 ’
derived
from using successive random
40 '
numbers
generated by RND with one number
41 ’
skipped
between calculation of I and J
50 *
-by P.
F. Hultquist, 1983
60 '
70 SCREEN 2 :
KEY OFF :
'CLS
80 FOR K = 1
TO 5000
90 I = 80 +
465*RND
95 Z = RND
100 J = 35 +
130*RND
110 PSET(I,J)
120 NEXT K
130 1
140 '
Arrange display
150 '
160 LINE (25,10) - (600,10)
170 LINE -(600,190)
180 LINE -(25,190)
190 LINE -(25,10)
200 LOCATE 23,35
210 PRINT "Figure 5“
220 END
Apparently, Ashton Tate (the dBASE II
merchant) is gambling you don’t
know any better. It’s pitiful.
Well, we’ve been blowing the whistle
on Ashton...and Tate, too.
And you can spread the word.
Be one of the growing legions
that’s moving up to Q-PRO 4...
the complete 4th generation
applications development system
for microcomputers.
You can use Q-PRO 4’s super
efficient syntax to finish business
programs much faster. And the
extensive error trap and help screen
capabilities make the finished soft¬
ware products far more friendly, too.
As one convert put it, “ Q-PRO 4
has it alt... the formatted data entry
field edits, and report generator are
absolutely superb.
“ Any applications programmer still
struggling with outdated 3rd gener¬
ation data base managers or worse,
a 2nd generation language like
BASIC is ripping himself off. ”
So what are you waiting for? Here is
your chance to dump all the dBASE II
hassles and move up to Q-PRO 4...
the sensational 4th generation
language for faster, easier application
development.
You owe it to yourself, your career,
and your family to move up to
Q-PRO 4 now. It’s that good.
Attention Q-PRO 4 Hotshots.
Current version 3.0 includes Multi¬
key ISAM (true mainframe power).
Runs with PCDOS, MS-DOS, CP/M,
MP/M, CP/M86, MP/M86, TurboDOS,
MmmOST, MUSE, and NSTAR.
Single-user-$595; Multi-user-$795.
Author's lock up package available.
Finished applications are freely
transportable between operating
systems. Multi-user with true record
and file lock.
For Q-PRO 4 demonstration,
go to the nearest MicroAge store
or other fine dealer.
136 Granite Hill Court
Langhorne, PA 19047
(215) 968-5966 Telex 291 -765
CP/M, MP/M, CP/M86, and MP/M86 are trademarks ot Digital Research, TurboDOS, MmmOST,
MUSE, NSTAR. MS-DOS and PCDOS are trademarks ot Software 2000, TeleVideo Systems,
O.S.M., Molecular. Microsoft and IBM, respectively.
nuic n easi products inc.
CIRCLE NO. 221 ON READER SERVICE CARD
Expand your I.B.M. PC Memory
>
/64K
(9 chips)
Why Pay More?
All you need is an add-on memory or multifunc¬
tion board with expansion capabilities. Just snap
in the extra chips (9 chips per row 64K memory).
Expand to the maximum your board will allow, or
just 64K at a time as needed. It takes five minutes
of your time — anyone can do it. We include sim¬
ple directions.
One Year Replacement Warranty
IBM Compatible Drives
All Drives Double Sided Double Density
<
Teac Vi height FD-55-B
Installation kit for P.C.
Installation kit for XT.
Free Installation Manual
CDC Drives
Tandon Drives
Free Installation Manual
$199
4.95
14.95
$289 ea.
$219 ea.
90 day Replacement Warranty
THANKS FOR THE MEMORY
520 Tamal Plaza
Corte Madera, CA 94925
(415)927-0333
CIRCLE NO. 261 ON READER SERVICE CARD
Engineering
Software
for your PC
• Power plant and chemical process
flowsheet analysis
• Pressure drops in pipes and fittings
• Thermodynamics of steam, air, fuels,
combustion products
• Component simulation
• Solvers and optimizers
Call or write for our free catalog
PSI/Systems
Research Park, P.O. Box 3100
Andover, MA 01810
(617) 475-9030
Random numbers
Listing 6 Using Successive
Random Numbers with
Two Numbers Skipped
10 ’ Random number generator demonstration
20 ' Coordinates of points in the display are
30 ’ derived from using successive random
40 ’ numbers generated by RND with two numbers
41 ' skipped between calculation of I and J
50 ' -by P. F. Hultquist, 1983
60 1
70 SCREEN 2 : KEY OFF : CIS
80 FOR K = 1 TO 5000
90 I = 80 + 465*RND
95 Z = RND : Z = RND
100 J = 35 + 130*RND
110 PSET(I.J)
120 NEXT K
130 '
140 ' Arrange display
150 '
160 LINE (25,10) - (600,10)
170 LINE -(600,190)
180 LINE -(25,190)
190 LINE -(25,10)
200 LOCATE 23,35
210 PRINT "Figure 6"
220 END
Listing 7 Program to Compute
Chi Square Test
10 ' Program to compute chi square test of uniformity
20 ' of distribution of RND random number generator
30 ' - P. F. Hultquist, 1983
40 DIM COUNT(1(71) 'Allows for 100 degrees of freedom
50 FOR I = 1 TO 101
60 COUNT(I) = 0 • 'Zero the count vector
70 NEXT I
80 RANDOMIZE
90 FOR 1=1 T3 1010
100 K = I NT(101*RND) + 1 ’Compute index of count
110 COUNT(K) = COUNT(K) + 1 'Count the occurrence
120 NEXT I
130 SUM = 0
140 FOR I = 1 TO 101 'Start computing chi square
150 SUM = SUM + (10 - COUNT(I))*2 '10 is the expected number in
160 NEXT I 'each "bin"
170 CHSQ = SUM/10 'Finish computing chi square
180 PRINT CHSQ
190 PRINT : PRINT "Another? (Y/N)";
200 A$ = INKEY$ : IF AS = "" THEN 200
210 IF A$="Y" OR AS="y" THEN 50
220 END
Listing 8 Using Successive
Random Numbers Generated by
RND but Randomized
10 ' Random number generator demonstration
20 ' Coordinates of points in the display are
30 ' derived from using successive random
40 ' numbers generated by RN0 but randomized.
50 ' -by P. F. Hultquist, 1983
60 '
61 0IM ARRAY(50)
62 G0SUB 1000
70 SCREEN 2 : KEY OFF : CLS
80 FOR K = 1 TO 5000
85 G0SUB 2000
90 I * 80 + 465*V
95 G0SUB 2000
100 J = 35 + 130*V
110 PSET(I,J)
120 NEXT K
130 '
140 ' Arrange display
108
CIRCLE NO. 167 ON READER SERVICE CARD
PC Tech Journal
3270 COMMUNICATIONS CO-PROCESSOR FOR THE IBM PC
ABM's PS-3270 Subsystem uses our Intelligent
Communications co-processor (ICP) board
featuring a Z80B Processor with 64K memory,
4 serial ports, a parallel printer port and pow¬
erful multi-tasking emulation software. It uniquely
provides concurrent co-processing, expand¬
ability to a cluster of PC's, flexibility to support
multiple protocols and substantial cost savings.
CONCURRENT CO-PROCESSING
With ABM's PS-3270 emulation subsystem
your PC can maintain host communications
while performing local processing. This allows
continuous access to mainframe data bases
for integrated PC/Mainframe decision support
applications. You don't have to worry about
dropping your mainframe link each time you
use your PC in a local mode.
You can use a parallel printer connected
to the ABM board to perform independent host
generated printing in the background while
doing other applications on your PC.
EXPANDABILITY TO CLUSTERS OF UP TO 13 PCS
ABM's PS-3270 provides low cost emulation of
3276/3274 cluster controllers with downline
PC's operating as IBM 3278 terminals. The IBM
PC functioning as a cluster controller remains
fully capable of local processing at all times.
FLEXIBILITY TO PROTECT YOUR INVESTMENT
ABM's ICP with its own multi-tasking software
can support multiple emulations such as
3270 BSC, 3270 SNA/SDLC, 3780 RJE, 5251
and asynchronous terminal protocols on the
same hardware.
COST SAVINGS
Multifunction IBM PC work stations with ABM's
intelligent emulation software and hardware
cost up to 70% less than conventional single¬
function 3270 configurations without personal
computing capability.
ABM's incremental cost per workstation
for 3270 emulation in a level 3 configuration is
over 75% less than the incremental cost of
coax interfaces that connect PC's to existing IBM
3274 cluster controllers.
So call us today and we'll usher you into
the talkies.
Dealer and OEM inquiries welcome!
ABM Computer Systems, 3 Whatney,
mm Irvine, California 92714
Am mm mm aw 859-6531
JfHffl TWX 292427 ABM UR
CIRCLE NO. 273 ON READER SERVICE CARD
Random numbers
WORK SMARTER...
.. .With AutoKey
If you use an IBM PC you truly need AutoKey.
SAVE HUNDREDS OF HOURS OF TYPING
With AutoKey you can create single key abbreviations
for frequently typed text or any other sequences of key¬
strokes on your computer. So,
you never have to type the same things over and
over again , again.
AutoKey is the perfect mate for your spread¬
sheet, word processor, text editor or other
software.
MAKE YOUR SOFTWARE EASIER TO USE
No need to remember tedious software commands
any more.
AutoKey lets you concentrate on the problem
instead of the mechanics of working with the
computer.
PERSONALIZE OFF-THE-SHELF SOFTWARE
Personalize your software so that the same keys have
the same functions in all your programs.
AUTOKEY IS EASY AND FUN TO USE
* You will learn how to use AutoKey in less than 15
minutes. After that you’ll wonder how you ever got
along without it.
* Create key abbreviations as you work by the
press of a button.
* Key abbreviations can be stored in files for future
recall.
PERFORMANCE UNEXCELLED
Autokey provides unsurpassed performance at a very
low cost.
$79 Try it for 30 days. If you are not completely
satisfied, simply return your diskette for a full refund.
Strategic Automation, Inc
33 Cherry Hill Drive, Danvers, MA 01923
617/777-5104 Support: 617/777-5161
MC/VISA Accepted
AutoKey and IBM PC are trademarks of SAI and IBM Corp
CIRCLE NO. 156 ON READER SERVICE CARD
150 '
160 LINE (25,10) - (600,10)
170 LINE -(600,190)
180 LINE -(25,190)
190 LINE -(25,10)
200 LOCATE 23,35
210 PRINT "Figure 7"
220 END
1000 FOR K = 1 TO 50 'Initialization of the
1010 ARRAY(K) = RND 'randomizer
1020 NEXT K
1030 SPARE = RND
1040 RETURN
2000 ' Randomizer
2010 KA = INT(50*SPARE) + 1
2020 SPARE = ARRAY(KA) : V = SPARE
2030 ARRAY(KA) = RND
2040 RETURN
Listing 9 Using Successive
Random Numbers Generated
by an Additive Generator
10 ' Random number generator demonstration
20 ' Coordinates of points in the display are
30 ' derived from using successive random
40 ' numbers generated by an additive generator
50 ’ -by P. F. Hultquist, 1983
60 '
70 DIM ARRAY(55)
80 G0SUB 1000
90 SCREEN 2 : KEY OFF : CLS
100 FOR K = 1 TO 5000
110 G0SUB 2000
120 I = 80 + 465*V
130 G0SUB 2000
140 J = 35 + 130*V
150 PSET(I.J)
160 NEXT K
170 '
180 ’ Arrange display
190 '
200 LINE (25,10)-(600,10)
210 LINE -(600,190)
220 LINE -(25,190)
230 LINE -(25,10)
240 LOCATE 23,35
250 PRINT "Figure 8"
260 END
1000 FOR K = 1 TO 55
1010 ARRAY(K) = RND
1020 NEXT K
1030 JA = 24 : KA = 55 'Initialize the pointers
1040 RETURN 'and return
2000 'Randomizer
2010 SUM = ARRAY(JA) + ARRAY(KA)
2020 IF SUM>=1 THEN SUM = SUM - 1
2030 ARRAY(KA) = SUM
2040 JA = JA - 1 : KA = KA - 1 'Move the pointers
2050 IF JA=0 THEN JA = 55 'Manage the circular
2060 IF KA=0 THEN KA = 55 'buffer
2070 V = SUM
2080 RETURN
110
PC Tech Journal
:: When you visit your dealer and
compare the Princeton IBM-compat¬
ible HX-12 side-by-side with the IBM
color monitor, your eyes will see the
difference.
The HX-12 gives you higher resolu¬
tion and finer dot pitch (.31 mm) than
the IBM 5153's medium resolution -
;(.43mmj for a cleaner, sharper image.
: Compare our full range of colors
and our crisp whites without red
bleed. You'll also see a difference in
our non-glare screen—a feature your
eyes will really appreciate in a long
work session. : - ^
The Princeton HX-12 comes with a
cable that plugs directly into the IBM
PC, ready to burst forth into 16
superb colors. All at a suggested retail
price ($695) that's a pleasure for sore
eyes and overworked budgets.
Apple lie users: call us to learn
ible superiority of the Princeton
HX-12.
Ask your local dealer for a demon¬
stration and let your eyes decide. Or
call us at:800-22l -1490 for more infor-
if you're ready to move up to
color, graduate to the Princeton
HX-12. it's right at the head of its class.
now available at Computeriand, Entre and local
Independent computer dealers.
Nationwide service provided by Beil and Howell
service company and mai sorbus Service Company.
Princeton
Graphic Systems
.--—-L;. an Intelligent Systems Company
HOI 1 1 state Road’ Princeton New Jersey:08540'
(609. 683-.1660 TLX:6857009 PCS Prin.
dealer
OURS: .-81 mm dot-pitched column text
THEIRS: .43'mm dot pitched column text.
THE PRINCETON HX-12
HIGH RESOLUTION RGB COLOR MONITOR
for the image
your eyes deserve
£E3
. , s
PRESS ANY KEY TO RETURN TO MENU
* 1 , 4
FXjjfct. f i I * * J|
CIRCLE NO. 188 ON READER SERVICE CARD
n 111
f w } iPPBMfE P
LET’S TALK EXPERT-TO-EXPERT
PC TECH JOURNAL, the only magazine written for sophisticated
IBM PC users... talks with you expert to expert!
Do you require a magazine that provides you with the
insight and knowledge to act as your silent partner
when developing new programs? Have you needed to
consult with authorities in telecommunications to
resolve a nagging problem? Wouldn't a
second opinion about connecting your
PC to a main-frame be helpful? With your
subscription to PC TECH JOURNAL,
you're harnessing experts in your field...
experts who will talk to you in the lan¬
guage you understand, about the con¬
cerns you have... EXPERT TO EXPERT!
PC TECH JOURNAL is the techno¬
logically sophisticated magazine written
for experts in the field of personal com¬
puting like yourself.. .discussing the con¬
cerns experts have.. .developing elegant
programming methodologies only experts
can understand.. .covering the whole
field of IBM PC's with thought-provoking
articles on communications, distributed
processing, office automation, network¬
ing and programming.
Subscribe today and save up to 36% off the full
subscription price, and have PC TECH JOURNAL
delivered to your home or office every month! From
One Expert to Another: subscribe today!
TE®
OURNA
PT4S119
P.O. Box 2966, Boulder, Colorado 80322
yrr I want to communicate with other experts and professionals about
* r a J j IBM PC's and compatible machines! Please enter my subscription
to PC TECH JOURNAL for:
□ One year (12 issues) □ Two years for □ Three years for
for $24.97—SAVE 17%! $43.97-SAVE 27%! $57.97-SAVE 36%!
Mr./Mrs./Ms._
Company_
Address_
please print name in full
State
-Zi P -
City_
Savings based on full one-year subscription price of S29.97.
Check one: □ Payment enclosed. □ Bill me later.
Charge my: □ American Express CD Visa CD MasterCard
Card No_
Add $12 a year in Canada and all other foreign countries. Please allow 30 to 60 days for delivery of first issue.
JExp. Date_
Patchwork
Filling in the holes in DOS support for
the undocumented SWITCHAR=- command
Daniel M. Frank
In the March issue of this maga¬
zine, there was a letter regarding
the undocumented SWITCHAR
feature of DOS 2.0 (see also Eric
Roskos's article in this issue). This
feature makes DOS easier to use,
both for people accustomed to
UNIX and for those who dislike
the placement of the "\" key on
the PC keyboard. Care should be
taken when using this feature,
however, for several reasons.
First, including this command
in the CONFIG.SYS file does not
make all programs automatically ac¬
cept the right switch and path char¬
acters. Instead, each program must
use a special undocumented DOS
function to determine the current
switch character,* the program must
then make its own judgment about
the path character. The call that
must be used is as follows:
MOV AX, 3700 ; Function 37,
subfunction 0
INT 21H , Call DOS
This function returns the
switch character in DL. (The char¬
acter can be changed by putting the
desired character in DL and setting
AX to 3701 before making the call.
Do not use any other values of
AL—they have some obscure, unde¬
sirable effects on filename qualifi¬
cation.) All DOS utilities seem to
make this call. However, some ver¬
sions of the BASIC compiler will
silently ignore critical switches.
The most critical hole in DOS
support for SWITCHAR is that al¬
though the BACKUP command
will use the appropriate path char¬
acter in creating back-up diskettes,
RESTORE does not do so when
reading them. Thus, diskettes that
are created by BACKUP with
SWITCHAR = - will store path¬
names in the headers using the "/"
character, but RESTORE will look
for " \ " — and will not find it. All
back-up diskettes that are created
with SWITCHAR = - are effectively
write-only disks. This is true under
both DOS 2.0 and 2.1.
The solution to this problem is
to use DEBUG to patch RESTORE
so that it performs correctly with
the alternate path character. Use
this sequence (the computer's out¬
put is in boldface, and the user's re¬
sponses are in regular type):
A> DEBUG RESTORE.COM
- A69F
xxxx : 069F JMP 10A3
xxxx: 06A2
- A 10A3
xxxx : 10A3 CALL Cl6
xxxx : 10A6 MOV BL,[3F2]
xxxx : 10AA MOV [DC2],BL
xxxx : 10AE MOV [DDC],BL
xxxx : 10B2 MOV [DE7],BL
xxxx : 10B6 JMP 6A2
xxxx: 10B9
-RCX
CX 0FA3
: FB9
- W
-Q
A>
The CX register is used by
DEBUG to determine how large the
program is. Since this patch adds
some code to the end, the number
in CX must be increased before the
program is written to the disk;
otherwise the program will be lost.
The new version of RESTORE
should work properly with the al¬
ternate path character. Note, how¬
ever, that diskettes must be saved
and restored with the same path
character in effect: to restore a dis¬
kette backed up without the SWIT¬
CHAR option, the user must re¬
move the SWITCHAR statement
from his CONFIG.SYS file and then
reboot (or use function code 37/01
to change the switch character back
to "/" temporarily).
The reliability of the BACKUP
and RESTORE utilities has been
questioned. Although none of my
files has ever been mangled on res¬
toration, I have had BACKUP fail
to copy a file to diskette.
There is no obvious reason for
these utilities to cause any prob¬
lems, but there is something more
subtle: the utilities do not handle
file system errors. Once the transfer
has begun, errors are ignored. If a
file can't be opened, it is skipped. If
it can't be read, it is truncated,
sometimes to zero length.
File system backup is a crucial
function for which error checking
is essential. Perhaps a future DOS
version will improve its support in
this area. inni»i
Daniel M. Frank does program development
and systems consulting on the PC. His
current project involves transferring an
application from DOS to QNX.
August 1984
113
Put the Power
ofthelBM PC
Bus into Your
OEM System
I-Bus Systems has
packaged Intel’s powerful
new 80188 CPU into a Single
Board Computer. It has
64K of RAM and up to 160K
of ROM on board, plus a serial
console port to talk to a terminal
or a PC. Just plug the SBC into an
I-Bus 6-slot chassis or 9-slot card
cage and you have the heart
of a computer system,
ready to run.
Then
just add any of
the hundreds of PC bus
cards already on the market, to
customize your system.
Best of all, the IBM PC works
perfectly as a software develop¬
ment system. You can assemble
and test applications
programs on the PC,
Modular PC bus packaging matches your
system needs, from basic cage to complete
enclosure system. Internal 40W power supply
with 6-slot enclosure, external supply for the
9-slot.
IBM PC is a trademark of IBM Corporation
SYSTEMS
9235 Chesapeake Drive
San Diego, CA 92123
NEW Single Board
Bus System
The power of the IBM PC is
now available to OEM system
designers with the new I-Bus
Single Board Computer
and Enclosure
systems. Now you
can make use of
that vast array of
PC-compatible
expansion cards—
for communications,
graphics, data acqui
sition, peripheral
control, and every
other imaginable task.
For all the details,
give us a call today
at (800) 382-4229.
In California, call
(619) 569-0646.
then download them to the I-Bus
system for dedicated execution.
You’ll have the best of both
the PC world and the
OEM bus- structured
world with this new
single board computer
from I-Bus.
CIRCLE NO. 277 ON READER SERVICE CARD
Jack Wright
POWB?-UP
An easy reference for use when
the PC fails its diagnostics
1 7
1 very time a PC is turned on,
di no matter which operating
system is used or what disk is in the
drive, the PC first cycles through a
sequence of diagnostic tests con¬
tained in the BIOS ROM. The tests
(except for the RAM test) are also
done every time Ctrl-Alt-Del is
pressed. If any of these tests fails,
the result is an unusual sequence of
beeps, a cryptic error code on the
display, or both. What follows docu¬
ments these error beeps and codes.
A failure of one or more of
these tests can occur not only if a
component in the PC fails but also
if the system is reconfigured with a
switch set incorrectly or if a defec¬
tive expansion board is installed.
Table 1 presents the tests in the
order in which they are performed.
Thus, if you get one of these error
messages, you will know that all
the tests that are listed above that
message in the table have been per¬
formed correctly. This can help in
pinpointing the problem.
If you have the IBM Expansion
Chassis, the messages above should
always be interpreted as if you had
a 256K system board. This is true
because IBM supplies all Expansion
Chassis customers with the 256K-
system-board ROM.
You can customize the PC's re¬
sponse to the PARITY CHECK er¬
rors by writing your own interrupt
2 routine and having the AUTO¬
EXEC.BAT file install it for use at
boot-up. If the parity error always
occurs immediately at boot-up, be¬
fore the new interrupt 2 routine is
installed, this of course will not
work. But if your PC has ever sud¬
denly shut down with a PARITY
CHECK 1 or 2 error in the middle
of a program, a custom interrupt 2
routine might allow you to remain
up and possibly salvage much of
your work, if the memory problem
causing the parity error is not in a
critical memory area used by DOS.
In emergency cases, parity
checking can be disabled at any
Jack Wright works in the hardware and
software development department of a
large electronics firm in New Jersey.
August 1984
115
Error codes
time by sending 0 to I/O port AO.
It can be turned back on by sending
80H to the same port. Some mem¬
ory cards also have DIP switches
that can be switched off to disable
parity checking on that card. This
can help to isolate the problem if
you have more than one memory
card. Generally, though, disabling
parity checking is unwise. For ex¬
ample, think of the problems that
could be caused if an undetected
parity error occurred while the
DISKCOPY command was in use.
It is interesting to note that
these power-on diagnostic tests were
put in the PC not just for the bene¬
fit of the end user in testing the PC
every time it is turned on, but for
several other important reasons as
well. These tests give IBM an effi¬
cient method of burning in the PC
on the assembly line, they assist
technicians in repairing defective
PCs, and they aid dealers in con¬
figuring PCs for the customer.
When a PC is manufactured,
IBM sets it up to cycle through
these tests (plus some other special
diagnostic routines) repetitively for
three hours during the assembly
line burn-in,- this weeds out most of
the "infant-mortality" failures that
can occur. Any error that does not
allow the disk drive to function will
ower-on diagnostic
tests were put in the
PC not just for the
benefit o/ the end user in
testing the PC every time it
is turned on, but for several
other important reasons.
make it impossible for a repairman
to load any diagnostic programs
from disk. When this occurs, the
ROM test routines can be run and
may help find the problem. Finally,
if a dealer or customer improperly
configures a machine, the tests will
many times point out the problem.
Table 1: PC Diagnostic^ Tests
SYMPTOM
1. System does not respond at all
when turned on
2. System beeps:
1 long beep, 1 short beep, then
stops
(1 long beep = 3 sec., 1 short
beep = 1 sec.)
3. System beeps:
1 long beep, 1 short beep, but
continues the power-up sequence
4. System beeps:
1 long beep, 2 short beeps, con¬
tinues power-up sequence.
See also 11 below.
5. System beeps:
1 long beep, 2 short, 1 long, 2
short (64K system board only)
6. T80r appears at top of display
7. 'XXYY 201' appears at the top of
the display, where XXYY = four
hexadecimal digits
8. 'XX 301' appears at the top of
the display, where XX = two
hexadecimal digits
9. '131' appears on display
10. '1701' appears on the display
11. System beeps:
1 long beep, 2 short beeps, and
'ROM' appears on the display
12. '601' appears on display
13. 'PARITY CHECK 1' appears
14. 'PARITY CHECK 2' appears on
the display
15. 1 short beep
CAUSE
The power supply has shut down, OR-.
The 8088 has HALTed due to:
— Internal 8088 problem
— BIOS ROM checksum error
— 8253 timer problem
— 8237 DMA controller error
— Error in 1st 16K of RAM
NOTE: Try turning off power supply,
waiting 5 secs., then turning it on.
The 8088 has HALTed due to:
— 8259 interrupt controller error
— 8253 timer counting too fast or
slow
Checksum error in a BASIC ROM
(64K system board only)
Error in video RAM, or
error in 6845 video circuitry
The display card is probably not in¬
stalled.
Error in the Expansion Unit Interface
RAM error. XX = the high order byte of
the failing segment; e.g., XX = 20 would
indicate that the error occurred between
segment 2000 and segment 2400.
(Memory is tested in 16K blocks; each
64K increments the segment by 1000.)
YY = the failing bit pattern, which can
isolate the specific RAM.
Keyboard error. Usually a stuck key,
where XX - the scan code of the stuck
key.
Cassette port error
IBM Fixed Disk error
Checksum error in a BASIC ROM
(256K system board only)
Disk drive A: or disk adapter error
A RAM parity error has occurred on the
system board. The INT 2 routine in the
BIOS gains control and HALTs the 8088
when a memory parity error occurs. Par¬
ity checking had been DISABLED prior
to this point in the test sequence, and is
enabled here just before reading the
boot record from the disk.
A RAM parity error has occurred on an
add-on memory board. This message
comes from the BIOS ROM's INT 2 rou¬
tine, which then HALTs the 8088.
This is the normal system response just
before the system boots from the disk.
116
PC Tech Journal
Tecmar Provides Solutions
LabPac™ makes data acquisition quick and easy
ave your valuable time and money
'ith LABPAC from Tecmar. Instead of
pending days slaving over complex
rograms and languages, your data ac-
uisition system can be up and running
l hours. Now even novice programmers
an easily design highly sophisticated
ata acquisition and process control
/stems. LABPAC provides a library of
dvanced assembly language
jbroutines that can be called by your
ASIC, FORTRAN or Pascal programs,
hese subroutines can sample a chan*
el, convert the signal, and store the
alue in memory for later use. LABPAC
Iso contains many specialized com-
lands for more complex procedures. In
ddition to all this, LABPAC also can
perate in the background allowing you
d sample, store, and analyze your data
t the same time. LABPAC is compat-
Dle with the Tecmar Lab Master, Lab
ender and DADIO boards.
Lab Master™
End the tedium of monitoring your ex¬
periments or processes with the Lab
Master. The Lab Master lets you save
time and money by having your PC do
the work for you. This board is powerful
enough for the most demanding lab or
industrial applications, yet with the LAB¬
PAC software support package it is easy
to use. With Lab Master you have com¬
plete control over A/D conversion, D/A
conversion, counting, timing, and digital
I/O. This board is so advanced it can
sample (with options) up to 256 chan¬
nels of data and can convert a single
channel up to 80,000 times in one sec¬
ond. The Lab Master doesn’t sacrifice
accuracy, since it comes with 12-bit
precision, and has options for 14 and 16
bit accuracies. However, the most amaz¬
ing feature of the Lab Master is that it
can do all this and still cost less than
$ 1 , 000 .
Lab Tender™
The Lab Tender is the economical solu¬
tion to your data acquisition needs.
Whether you are on a tight budget or
simply don’t need all the precision of
the Lab Master, the Lab Tender is the
perfect board for you. The Lab Tender
offers 32 channels of 8-bit A/D and 16
channels of 8-bit D/A, at a conversion
rate of 50,000 samples per second. It
also has counting, timing and digital I/O
capabilities. No one else can offer you
this combination of features for less
than $500.
DADIO™
The DADIO extends the capabilities of
the Lab Master or Lab Tender boards by
providing 4 additional D/A channels and
3 I/O ports.
TEGM/fl?""*--
the power behind the PC T "
Tecmar, Inc. 6225 Cochran Road Solon (Cleveland), Ohio 44139-3377 Phone: (216)349-0600 Telex: 466692
CIRCLE NO. 155 ON READER SERVICE CARD
CIRCLE NO. 130 ON READER SERVICE CARD
WITH iWi FORTH
PC FORTH™
IBM PC & XT,
HP-150,
Macintosh,
Apple II,
CompuPro,
Sage & CP/M-68K,
Wang PC,
All CP/M and
MSDOS computers.
Laboratory Microsystems Incorporated
Post Office Box 10430, Marina del Rey, CA 90295
Phone credit card orders to (213) 306-7412 ,
Try the professional language offering
the utmost performance in the shortest
development time. Transport your ap¬
plications between any of our enhanced
83-Standard compilers or expanded
32-bit versions. Choose from our wide
selection of programming tools including
native code compilers, cross-compilers,
math coprocessor support, and B-Tree
file managers. All fully supported with
hotline, updates, and newsletters.
Error codes
If you own a PC with a large
memory, you know how time-con¬
suming the RAM test can be and
how rarely it finds a problem. If
you do any machine language pro¬
gramming, you quickly begin to
wish that the RAM test was not
done every time the PC is turned
on. Machine language programs in
the debugging phase have a nasty
habit of hanging up and responding
only to the big red switch. IBM pro¬
vides no way to skip the RAM test
on power-up, nor is there any easy
software fix, but Security Microsys¬
tems (16 Flagg Place, Staten Island,
NY 10304, 212-667-1019) sells a
BIOS ROM overlay called QUICK-
ON ($69.95). This module forces
Z f you do any machine
language pmgranr
ming, you quickly be¬
gin to wish that the RAM
test was not done every
time the PC is turned on.
the PC to skip the RAM test, allow¬
ing boot-up in only three seconds.
An external switch can be connect¬
ed to QUICKON to allow re-enabl-
ing of the RAM tests when desired.
Skipping the RAM test is not
really risky, since the hardware par¬
ity checking present in all PCs pro¬
vides a constant check on RAM data
security. It does this by halting the
PC with a "PARITY CHECK" mes¬
sage whenever a memory parity er¬
ror occurs. This happens whenever
an odd number of data bits change
in a byte between the time it is
written and the time it is read.
Since RAM consists of 64K x 1
chips, a single failing chip can cause
only a 1-bit error, thus triggering a
parity error and forcing a type 2 in¬
terrupt (see also the references to
the type 2 interrupt above). !■»■—]
118
CIRCLE NO. 159 ON READER SERVICE CARD
PC Tech Journal
No Head is Better
than One!
Bubble Storage for the PC and PC XT.
Bubble memory combines the
best features of disk and solid state
memory with extreme reliability.
Unlike a floppy disk, it's entirely solid
state with no moving parts. This
makes it impervious to dust, dirt,
fumes, and vibration. And, unlike
normal memory, it doesn't lose data
when the power goes off.
Now you can enjoy all the
advantages of bubble memory
combined with the famous Pure Data
quality and reliability for your
IBM PC or XT.
• PDIB-128 provides 128 KBytes in one
slot
• PDIB-384 provides 384 KBytes in one
slot
• Not affected by power failure
• Faster than a floppy disk
• Extremely reliable
• Standard DOS 2.0 disk-type device
• Compatible with all DOS software
• No patching of any system files
• Password option for computer
and/or bubble
• Password cannot be bypassed by
software
• Comprehensive diagnostics and other
utilities
• Fully illustrated installation and
operation manual
• Technical support hot-line
• Guaranteed 48 hour service
• Bubble uses 2 I/O addresses and no
memory space
• Interrupts are supported but not
required
• DMA is supported but not required
• On-board EPROM socket
• Pure Data quality and reliability
• No moving parts
PD1B-128
PDIB-384
Pure
Data Ltd
860 Denison Street,
Markham, Ontario. Canada L3R 4H1
S!(416) 475-2424 Q (416) 498-
1616
Highland Computer Corporation. Keysoft International,
Computerland, Computer Innovations, Compugroup,
ECOSEA Technologies and others.
Pure Data products are available through.
1335 Valwood Parkway, Suite 108,
Carrollton. Texas 75006
data systems Telephone (214) 620-8000
P.O. Box 815155. Dallas. Texas 75381
OnTrak
IBM is a registered trademark of International Business Machines Corporation.
CIRCLE NO. 190 ON READER SERVICE CARD
Chris Dunford
RASMatazz with
120
PC Tech Journal
out the jazz
DRl's new PC-DOS assembler
is smaller and faster,
but it's lacking in amenities
Chris Dunford is an independent consultant
specializing in programming and technical services.
He can be contacted at CompuServe 71076, 1115 or
The Source STR211.
I 'm a member of a dying breed—assem¬
bly language programmers. I like all
those new-fangled structured languages,
but sometimes there's just no substi¬
tute for assembly language, that old-
fashioned Pepperidge Farm of com¬
puter languages. No artificial in¬
gredients. Back to basics. Pascal,
C, LISP, Logo, Forth, APL, and
all the rest simply can't match
assembly language's speed,
compactness, and intimacy
with the hardware. High-
level programming is a gen¬
teel occupation,- assembly
language programming is
standing toe-to-toe with
the machine in a battle for
supremacy.
I told my computer dealer
that I didn't care about the
other software I had ordered for
my new PC, as long as it was
delivered with PC-DOS and IBM's
Macro Assembler (MASM). And
I've been struggling with MASM ever
since that first day.
It isn't just that MASM is glacially
slow. Or that the assembler and linker to¬
gether take up almost 11 OK of scarce disk
storage. No, there are bugs, too. Lots of
them. Arithmetic calculations are so un¬
reliable that many programmers compute
August 1984
121
RASM-86
constants at run time rather than
during assembly. Macro expansions
fail inexplicably. MASM goes west
at the slightest provocation (try as¬
sembling the statement DSEG SEG¬
MENT 'DATA' without the termi¬
nating apostrophe), requiring a ma¬
chine reboot. Also, decimal real con¬
stants assemble incorrectly.
When an alternative to MASM
was introduced I got pretty excited.
The name was enticing—RASM-86.
It sounded enough like Intel's ASM-
86 to conjure up visions of a clone
of that excellent assembler. And
RASM-86 had good parentage: Digi¬
tal Research, Inc. (DRI), the breeder
of CP/M in all its incarnations.
Early word was that RASM was fast,
small, and virtually bug-free. I
rushed to obtain this new product.
RASM-86 is, indeed, smaller
and close to error-free. And it is
somewhat faster than MASM, but
not so much faster that I'd be will¬
ing to overlook its shortcomings.
RASM-86 turns out to be the Volks¬
wagen of assemblers. It's simple and
functional, but lacking in amenities.
Many of MASM's special features
are absent in RASM-86.
Whether a programmer will
find Digital's new assembler to be
worthwhile depends on what he
wants from his assembler. For small
assembly language programs or com¬
piled language subroutines, RASM-
86 may be just the ticket. For writ¬
ing large, complex, segmented pro¬
grams, however, IBM's MASM is
still the only choice.
What follows is a comparison of
the two assemblers, with an empha¬
sis on how RASM-86 differs from
MASM. Most IBM assembly lan¬
guage programmers are reasonably
familiar with MASM, which
was written by Microsoft and re¬
leased by IBM as Version 1.0.
Microsoft, however, has now re¬
leased an updated version (1.25)
under its own logo. The new ver¬
sion is somewhat faster and supports
the 8087 math chip. It also has its
own brand-new set of bugs.
Figure 1: RASM-86 Language Samples
RASM-86 sample listing. This is NOT an executable program!
0000
2000
010002000300
dseg
Buffer rb
Table dw
2000H
1,2,3,4,5
Reserve byte storage: DB 2000H DUP (?)
Define a little table
200A
04000500
05
db
length Table
# items in Table
2009
04
db
last Table
Index of last item in table
200C
02
db
type Table
l=byte, 2=word, 4=dword
200D
0820
R
dw
offset Table + (last Table * type Table) ; Ptr to last item
200F
0102030405
BigTable db
1,2,3,4,5
Define a "big" table
2014
060708090A
db
6,7,8,9,10
This screws up the LENGTH operator —
2019
05
db
length BigTable
...which only knows about the first 5 items
** ERROR NO: 20
ILLEGAL
EXPRESSION
ELEMENT
201A
00000000
Longlnt dd
123456
; Illegal, DD operand must be an address
201E
1C000000
Pointer dd
ShortLabel
; This one is OK
2022 6821A29A901C
FE3F
** ERROR NO: 10 ** NEAR:
0000 0000
SomeNumber dw 2168H,9AA2H,1C90H,3FFEH ; Define a 64-bit number for 8087...
; ...no hex reals or decimal scientific allowed
Define an ES segment. Note no ENOS statement necessary for DSEG.
Here, we override RASM's assumptions on name, type, and alignment.
XtraSeg eseg public byte
"?" UNDEFINED ELEMENT OF EXPRESSION
xxvarl dw ? ; Oops, no ? initializer
; Note error msg tells where error is
xxvar2 dw 0
Define a code seg. RASM assume name CODE, type PUBLIC, align BYTE.
Group CODE and C0DE1. Note lack of ASSUME statements.
cgroup group code, xxcode
cseg
main:
; No PR0C statements!
0000 B80000
R
mov ax,data
; Assumed name of data segment
0003 3E08
mov ds,ax
0005 Al1000
mov ax, .10H
; Equiv to MOV AX,DS:[10]
** ERROR NO: 7
OPERAND(S) MISMATCH INSTRUCTION
0008 909090909090
lea ax,main
; Don't know what's wrong with this
000E B80000
E
mov ax,XtraSeg
; Point to XTRASEG...
0011 8ED8
mov ds,ax
; ... in DS segreg
0013 26A10200
R
mov ax,xxvar2
; Note unnecessary ES: override generated
0017 A10200
R
mov ax,ds:xxvar2
; This is the only way to get rid of it
001A EB00
001C
jmps ShortLabel
; Replaces JMP SHORT
ShortJLabel:
; $ not significant in symbols
001C 9BDCC8
fmul stO.stO
; 8087 supported...
001F 980C062220
R
fadd64 SomeNumber
; ...with some nonstandard mnemonics
** ERROR NO: 7
OPERANO(S) MISMATCH INSTRUCTION
0024 909090909090
mov ax,cgroup
; Group name not a label, bad operand
** ERROR NO: 22
LABEL OUT OF RANGE
002A E803FF
0000
call Subrt
; Unsuccessful, even though GROUPed...
0020 9AOOOOOOOO
R
calif Subrt
; ...must use unnecessary far call
0032 EAOOOOOOOO
R
jmpf Subrt
; ...or far jump
00C8
DosVer equ 200
IF DosVer EQ 110
; IF tests zero/nonzero result of expression
mov ax,1
; So this doesn't get assembled...
ELSE
0037 B80200
mov ax,2
; ...but this does
END IF
003A C8
retf
; Far RET to DOS (if this was a real program)
; Define a second code seg to
be GROUPed with the first. Note that
; RASM requires FAR jumps and
calls between GROUPed segments.
xxcode cseg
Subrt:
0000 CB
retf
; Have to use RETF to match the CALLF
end
END OF ASSEMBLY.
NUMBER
OF ERRORS: 5. USE FACTOR:
0%
122
PC Tech Journal
HARP DISK + !!1V
Unleash your IBM-PC/XT with IDT's hard
disks and SCSI technology.
Innovative Data Technology is bringing unprecedented
power and virtually unlimited expansion to IBM-PC/XT
users. Our new SCSI (Small Computer Systems Interface)
hard disk subsystems put massive storage capacity at your
fingertips—from 11 to 126 MB in a single external drive.
With the capacity of configuring up to 14 drives through the
SCSI bus, that puts nearly two billion bytes of on-line
storage at your disposal.
Single slot expansion
Unlike most PC add-ons, IDT's SCSI hard disk subsystems
and other peripherals are connected through a single SCSI
host adapter on your PC—no additional expansion slots or
cards are necessary—future disks and other peripherals
and additional PC hosts are simply daisy-chained into the
SCSI bus.
Multi-user capability
IDT built the SCSI hard disk subsystem with multiple users
in mind. One, two, or more IBM-PCs can access disk drives
and other peripherals through the SCSI bus, allowing you
to build a sophisticated system tailored exactly to your
requirements. 1/4" STREAMING
7M BACK-UP
lne options are yours tape subsystem
With IDT's SCSI host adapter board, future
expansion becomes a snap. Additional
peripherals, including an extensive line of
1/2-inch IBM-compatible magnetic tape
transports, are available for immediate
shipment from IDT. You simply don't
have to wait or worry about eguipment
compatibility with IDT components.
Watch for 1984 announcements of
streaming cartridge drives, printers, etc.
Tomorrow's solution today
IDT's SCSI host adapter and
SCSI hard disk subsystems
will answer your data
storage and system design
reguirements today. Contact *
IDT for complete system configuration information and
details on other products.
How to oxder:
Using the chart to your right, you may order IDT hard disk
subsystems and SCSI host adapters by calling:
1-800-522-1500 Ext. 717
FOR IMMEDIATE ORDERS ONLY
Prices and availability subject to change without notice. No CODs. Send
cashier's check or money order. All other checks will delay shipping three
weeks. MasterCard and Visa accepted (include telephone number). Add
$12.00 for handling and shipping UPS ground within the continental U.S.
California residents add 6%. Approval needed on all returns. 0-10%
restocking charge on all returned merchandise.
For additional product or technical information please
call or write:
Successful and easy installation assured
Supplied with each component are the reguired cables,
complete software driver package and user language
instructions. The user manual will have you guickly running
and appreciating the many features of the subsystems, such
as guick automatic boot load of the operating system from
the IDT disk subsystem.
Satisfaction guaranteed
If not satisfied, the subsystems may be returned on approval
from IDT within a 10-day period. All subsystems and
components carry a six-month return-to-factory warranty on
parts and labor.
TO ADDITIONAL HOSTS
OR PERIPHERALS
IBM COMPATIBLE
1/2" MAGNETIC
TAPE SUBSYSTEM
DISK
SUBSYSTEM
Solutions
for ^5
AND
BEYOND
COMPONENT PRICING CHART
Model No.
Description
Storage Capacity
Price
RD 2011M
Master Disk Subsystem
11MB
$2000.00
RD 2023M
Master Disk Subsystem
23MB
2550.00
RD 2035M
Master Disk Subsystem
35MB
2950.00
RD 2047M
Master Disk Subsystem
47MB
3150.00
RD 2126M
Master Disk Subsystem
126MB
6840.00
RD 2011S
Slave Disk Drive
11MB
1560.00
RD 2023S
Slave Disk Drive
23MB
2130.00
RD 2035S
Slave Disk Drive
35MB
2530.00
RD 2047S
Slave Disk Drive
47MB
2730.00
RD 2126S
Slave Disk Drive
126MB
6290.00
RD 8111H/A
IBM-PC/XT Host Adaptor
510.00
IDT 1/2" Magnetic Tape Subsystems
Consult Factory
IDT 1/4" Streaming Back-up Tape Subsystems
Consult Factory
Ordering
Example:
= INNOVATIVE
= DATA ON THE RIGHT TRACK
TECHNOLOGY
P.O. Box 178160 • 4060 Morena Blvd. • San Diego, CA 92117
(619) 270-3990 • TWX: (910) 335-1610
CIRCLE NO. 215 ON READER SERVICE CARD
If your need is a 23MB Subsystem, your order
would consist of the following components:
1-RD 2023M @ $2550.00 + 1-RD 8111H/A @
$510.00 + Shipping & Handling @ $12.00 =
A Total Order of $3072.00 + tax (if applicable)
IBM is a trademark of International Business Machines Corp.
PELADA
lEXl EflCIflEE?
The first full featured word processor for the IBM personal computer capable of
producing all mathematical, scientific and engineering symbols* including superscripts
and subscripts for complete equation editing on screen.
Multi-lingual capabilities include the specific characters, accents and letters found in
French, Spanish, German, Italian and all other western European languages.
Advanced Word Processing features include:
• Command line driven editor
• Comprehensive, easily accessible on-line help
• All features, including bold, italics, underlining and special characters appear on
screen exactly as they are printed.
SPECIAL INTRODUCTORY PRICE $250 MAIL ORDER ONLY. OFFER EXPIRES JULY 31/84.
PELADA mFOWlAOCA IK.
87 Queen St., Kingston, Ontario,
Canada K7K 1A5
Tel. (613) 549-1747
* Requires Epson FX-80, FX-100 or similarly featured printer.
FREE SAMPLE DISK AVAILABLE UPON REQUEST.
CIRCLE NO. 141 ON READER SERVICE CARD
RASM-86
Figure 1 contains samples of
various facets of RASM-86. The
"program" itself does nothing in
particular—its only purpose is to il¬
lustrate RASM's syntax.
RASM-86: What and Why
RASM-86 is a relocating assembler
that runs under PC-DOS. It is pack¬
aged with its own linker, LINK-86
(along with several other utilities
that will be discussed later). A rela¬
tively simple assembler, RASM-86
lacks many of the bells and whistles
of IBM's MASM. As a result, it
seems to be inadequate for the de¬
velopment of large, stand-alone pro¬
grams. It could more reasonably be
used for smaller, self-contained utili¬
ties or for the production of assem¬
bly language subroutines for high-
level language programs.
Yet there are problems here,
too. RASM-86 object modules may
be slightly different from Micro¬
soft/IBM object modules,- thus,
RASM theoretically should not be
used to produce modules for any
compiler that uses the Microsoft/
IBM linker—which knocks out
most PC-DOS compilers on the mar¬
ket today. (Note, however, that
many RASM object modules ac¬
tually will work with the IBM link¬
er-more on this later.)
So the question is this: why
RASM? Why did DRI, the CP/M
king, release a rather modest as¬
sembler that runs under PC-DOS?
According to DRI, RASM-86 is
intended both as a stand-alone as¬
sembler and as a tool to produce
subroutines for its DOS compiled
languages. DRI has already ported
its C, PL/I, and CBASIC compilers
from CP/M to DOS; FORTRAN is
next. RASM-86 is a virtual clone of
DRI's (not Intel's) ASM-86, which is
the CP/M-86 assembler. RASM
should therefore simplify the task
of porting subroutines written for
the CP/M versions of Digital's lan¬
guages. Pascal MT + , however, has
its own assembler and is not com¬
patible with RASM.
RASM-86 is part of DRI's As¬
sembler Plus Tools package,- the
other parts are a linker (LINK-86), a
cross-referencer (XREF-86), an object
module librarian (LIB-86), and a
symbolic debugger (SID-86). (Signifi¬
cantly, all five programs are distrib¬
uted on a single 160K diskette, with
25K to spare.)
The nicely packaged documen¬
tation is not intended for beginners,-
there are many complex statements,
such as "The PTR operator creates a
virtual variable or label valid only
during the execution of the in¬
struction." The assembler section is
terse (the SID-86 debugger section of
the manual is longer, although SID
is a much simpler program) and
could use more examples.
DEVELOP BETTER SOFTWARE
FASTER
mm Anawi Sol&wDiei
PROGRAM
DEVELOPMENT TOOL
(PDT-PC)
for IBM-PC* and Compatibles
PDT-PC TRANSFORMS YOUR IBM-PC/XT INTO THE MOST POWERFUL
DEBUGGING AND ANALYSIS TOOL AVAILABLE FOR THE PC ENVIRONMENT:
• SYMBOLIC DEBUGGING AND ANALYSIS
• • LOCAL AND GLOBAL SYMBOLS
•• HIGH-LEVEL LANGUAGE LINE NUMBERS
•• FULL SYMBOLIC SUPPORT FOR OVERLAYS AND CODE MODULES
• SUPPORTS BOTH INTEL AND PC-DOS OBJECT MODULE FORMATS
• DISPLAY BUFFER TO RECALL UP TO 200 LINES OF INFORMATION
• INTUITIVE HUMAN INTERFACE
• REAL-TIME PROGRAM EXECUTION MEASUREMENT
• REAL-TIME MEMORY UTILIZATION MEASUREMENT
• STANDARD IN-CIRCUIT EMULATOR FEATURES
ONLY THE PDT-PC INTEGRATES A FULL-FEATURED DEBUGGER WITH AN 8088
EMULATOR AND PERFORMANCE ANALYSIS, PROVIDING A SINGLE ANSWER TO
YOUR MOST DIFFICULT SOFTWARE DEVELOPMENT PROBLEMS!!!
&MW&1 SotJ Wfflie 20863 S,evens Cr (4 e 0 k 8 ) IV 2 53 B 75?5 CUPer,inO ’ CA 95014
Corporation
•IBM-PC is a registered trademark of International Business Machines Corporation
CIRCLE NO. 206 ON READER SERVICE CARD
August 1984
125
RASM-86
Unlike IBM's MASM documen¬
tation, RASM's contains little infor¬
mation on 8086/88 operations. This
manual describes how to use the as¬
sembler, not how to program the
CPU. The manual is generally accu¬
rate, although I found a few oper¬
ations that (according to the RASM
documentation) should have worked
but did not. It's hard to say whether
these anomalies were the result of
minor bugs in the software or
whether they resulted from errors
in the documentation.
RASM-86 occupies about 39K
on disk, compared to MASM's 68K
The rest of the programs in the
package are comparable in size to
their IBM equivalents (see table 1
on page 130).
Invoking the Assemblers
RASM-86 is strictly command-
driven. All parameters must be en¬
tered via the command line. The
parameters include the mandatory
source file name and five options,
each consisting of a one-character
specifier followed by a one-character
argument. Options may be in any
order on the command line.
Four of the five options simply
specify devices: the input device for
the source file and the output de¬
vices for the object, symbol, and list
files. The user has no choice as to
RASM-86's output file names,- he
can select where the files will go,
but not what they will be called.
The file names will always be the
same as the source file name, and
the extensions will be .OBf for the
object file, .SYM for the symbol file,
and .LST for the list file.
The fifth optional parameter,
LO, instructs the assembler to in¬
clude local symbols in the object
file (MASM has no equivalent
option). During linking, the
LINK-86 program produces a sym¬
bol file based on the symbols con¬
tained in the object modules linked.
If the LO parameter is omitted at as¬
sembly time, the linker's output
symbol file will include public sym¬
bols (those named in PUBLIC state¬
ments in the source). If the LO pa¬
rameter is included, all symbols de¬
clared in the source files will be
contained in the linker's symbol
file. This is useful, because the "S"
in SID-86, the debugger, stands for
symbolic. SID-86 can read the link¬
er's symbol file, and the symbols
can be used during debugging.
In contrast, MASM can be ei¬
ther command-driven or interactive.
If options are not specified on the
command line, the assembler will
prompt for them. MASM options
include the source, object, listing,
and cross-reference file names. Un¬
like with RASM-86, complete file
names, rather than just devices, can
be specified. MASM command lines
tend to be slightly longer than
^ Pascal and C Programmers
^.Blaise Computing’s productivity tools allow Pascal and C programmers
to develop reliable software taking full advantage of the capabilities of
the IBM PC and XT. Support for Microsoft and IBM Pascal; and Micro¬
soft (Lattice) C or CI-C86 is provided. Because all routines are carefully
constructed in the language for which they were designed, the tools
provide an excellent model. Pascal procedure support is implemented
as separately compiled units, and the C functions are delivered as part
of a function library. Now you can write your applications rapidly in
the two most powerful languages available for the IBM PC. All pack¬
ages come with a comprehensive Reference Manual, extensive exam¬
ples and sample programs.
TOOLS
All Source Code is included
Total string capability, complete screen access, keyboard handling a graphics interface,
access to all BIOS functions, and much more are provided in over 40 routines. All routines
are carefully crafted and documented to give you the information and flexibility you need.
A general Macro Assembler BIOS gate allows you to access any BIOS function from Pascal
or C, and demonstrates how to interface assembly language routines. Everyone using Pas¬
cal or C should have TOOLS. User Manual only. $30.
V
TOOLS 2
All Source Code is included
The power of DOS 2.0 is supported using high level Pascal procedures or C functions.
Program chaining. DOS internal and external command execution, use of all available
memory, extended file handling, and other utilities are some of the features provided. A
general DOS gate allows you to access any DOS function from Pascal or C. User Manual
only. $30.
VIEW MANAGER
Source Code available
VIEW MANAGER is a screen support system of a mainframe for the IBM Personal Com¬
puter. VIEW MANAGER is a menu driven, screen oriented system allowing you to develop
user oriented screen interfaces. Screens are constructed with a true Screen Painter sup¬
porting any attribute or color, and the screens are stored efficiently in a Screen Database.
Database utilities allow you to copy screens to stand-alone databases and to archive
screens. VIEW/LIBRARY supports access to screens and true block mode data capture and
display from application programs. Available soon will be VIEW/LIBRARY for Microsoft
(Lattice) C. The source to the procedure library is available for an additional $150.00.
Demonstration diskette and User Manual $35.
► VIEW MANAGER, TOOLS and TOOLS 2 run on the IBM Personal Com
puter and XT. TOOLS 2 requires DOS 2.0; TOOLS and VIEW MAN¬
AGER can be used with any version of DOS. Specify if you wish Pascal
(Microsoft and IBM) or Microsoft (Lattice) C versions. Blaise Com¬
puting can also provide you with the Microsoft Pascal and C compilers
with qualified support. Call or write for details.
TOOLS 125.00
TOOLS 2 100.00
VIEW MANAGER 275.00
VIEW MANAGER (with Library Source) 425.00
MS-Pascal Compiler 275.00
Microsoft C Compiler 4 50.00
<>
BLAISE COMPUTING INC.
2034 Blake St. Berkeley. CA 94704
415/540-5441
CIRCLE NO. 115 ON READER SERVICE CARD
126
PC Tech Journal
ALL AT OSCE!
AND NEVER A “LOCKED OUT” USER!
%c*°* > asS ’
, e c' e »'t<
in* he ses re uone
a c 5® te theP h
, i A jnr
y & § i j
. rtP ro^ 0 '
6 »*5SV&
,tnP fe a o‘' ,e
ft'gd.'f
tac'f^efS'^nd
c«°*lcsd ata „fpr c '
ad ^ ceS i
w ° f ed P d° cU ^
Apex Industries Customer Data
Customer Id: Acme
Customer Name: Acme Industries
Credit Rating: AA Credit Limit: 25000
Current Balance: 12500
30 Day Balance: 4000
60 Day Balance: 1500
90 Day Balance: 0
Billing:
Address: 2701 South Bayshore Drive
City: Miami State: FL Zip: 33133
Shipping:
Address: 913 Majorca Avenue
City: Coral Gables State: FL Zip: 33134
Phone: 305-856-7503 Contact: Gerald Green
u
i n i
sfeSiff-s
gSas?*--'
ere'
on
L k l k jt R
I II , a I. ' §
i k i k i k
LJLJLJI
_____j(
L_ii2 I
m a , n
«&{>
&S5S5*
Cube’s
ofA clfle
DataFlex is the only application development
database which automatically gives you true
multi-user capabilities. Other systems can lock
you out of records or entire files for the full
time they are being used by someone else.
DataFlex, however, locks only the data being
changed, and only during the micro-seconds it
takes to actually write it to the file! The updated
record is then immediately available. The
number of users who can access, and change,
records at the same time is limited only by
the number of terminals on your system or
network. Call or write today for all the details
on DataFlex.. .the true multi-user database.
8525 SW129 Terrace, Miami, FL 33156 (305) 238-0012
Telex 469021 DATA ACCESS Cl
CIRCLE NO. 146 ON READER SERVICE CARD
C°mpatibl e with CP/M-80, MSDOS networks, MP/M-86, Novell Sharenet, PC-Net, DMS Hi-net, TurboDOS multi-user, Molecular
N-Star, Televideo MmmOST, Action DPC/OS, IBM PC w/Corvus, OMNINET, 3Com EtherSeries and Micromation M/NET.
MSDOS is a trademark ot Microsoft. CP/M and MP/M are trademarks of Digital Research.
RASM-86
RASM-86 command lines. They are
also position-dependent; I/O file
names must be specified in the or¬
der listed above. MASM output can
be directed to the serial port or to
any other device defined to DOS,
whereas RASM output is limited to
disk files, console, and printer.
In general, invoking RASM-86
is somewhat simpler and more effi¬
cient than invoking MASM. The
penalty for this simplicity is re¬
duced flexibility, a statement that
could constitute RASM's epitaph.
Identifiers
RASM identifiers (labels, variables,
segment names, etc.) may be 80
characters in length, and all charac¬
ters are significant. The length of
MASM identifiers is not limited,
but only the first 31 characters are
significant. Both languages, of
course, allow all alphanumeric char¬
acters in identifiers. Also legal are
question marks, at signs, dollar
signs, and the underscore character.
MASM adds the period, which is
valid only as the first character of
an identifier. The dollar-sign charac¬
ter is not significant in RASM-86
identifiers and therefore is used
only to improve readability:
"data$error$flag" is identical in
meaning to "dataerrorflag."
Both assemblers' identifiers are
nonstandard, if Intel's ASM-86 is
considered to be a standard (MASM
is closer to ASM-86 than RASM is).
This in itself is not so bad, but the
fact that they are nonstandard in
different ways could create prob¬
lems in using the IBM/Microsoft
linker to link RASM modules. (This
will be covered later.)
Constants
Character and numeric constants in
the two assemblers are similar.
Character constants consist of one or
two ASCII characters enclosed by
delimiters. RASM-86 delimiters are
single quotes,- MASM delimiters are
either single or double quotes. Both
assemblers allow 16-bit numeric
constants to be declared in binary,
octal, decimal, or hexadecimal nota¬
tion. The radix identifiers (B, O for
RASM and Q, D, H for MASM) are
the same. MASM allows the default
number base to be changed via the
.RADIX pseudo-op, whereas RASM
always defaults to decimal. RASM
also lacks MASM's decimal scien¬
tific and hexadecimal reals, but this
is a small loss, because MASM
sometimes doesn't assemble decimal
scientific reals correctly anyway,
and hex reals can be assembled in
other ways since they are really just
sequences of hex digits.
Variable Definition
and Initialization
MASM has a clear advantage over
RASM-86 in its data definition and
initialization capabilities. Although
both assemblers provide the stan¬
dard DB, DW, and DD directives to
define variables with (respectively)
byte, word, and doubleword attri¬
butes, MASM also offers the DQ
and DT operations, defining quad-
words and 10-byte variables. These
are particularly useful for 8087 pro¬
gramming (yes, it is possible to do
8087 programming with MASM;
macros are available from several
sources, and the Microsoft 1.25 as¬
sembler supports the 8087 directly).
MASM is also more flexible
with regard to how the data are ini¬
tialized. The DUP statement allows
blocks of data to be initialized with
a single value. For example,
buffer dB 4000 dup (' ' )
initializes a 4,000-byte buffer with
ASCII blanks. As far as I have been
able to determine, there is no way
to do this in RASM-86.
RASM-86 has more subtle re¬
strictions as well. For example, the
DD operand can be used only with
an address expression,- that is, the
statement
long_integer dd 123456
is not legal. This is a severe re-
I striction, particularly if RASM is
used with languages (such as C) that
support long integer arithmetic.
RASM also does not support the
indeterminate initializer, In¬
stead, the RS, RB, RW, and RD di¬
rectives are substituted:
buffer rb 4000
is equivalent to MASM's
buffer db 4000 dup (?)
Both assemblers support the PUB-
LIC/EXTRN directives, which al¬
low the user to declare variables and
labels in one module that can be
used by other modules. Use and
syntax are identical.
Finally, MASM supports struc¬
tured variables and packed bit-rec¬
ords via the STRUC and RECORD
directives. These are missing en¬
tirely from RASM.
Labels
MASM provides three ways to de¬
clare labels, and RASM sports only
one. The label declaration common
to both is the familiar "label:" con¬
struct, such as
labell: mov ax,100
which declares a label with a NEAR
attribute and segment and offset at¬
tributes equal to the current seg¬
ment and offset.
MASM, however, goes on to
provide the PROC directive, which
is usually used to define the begin¬
ning of a block of related code, such
as a subroutine:
editor proc far
The label EDITOR will have seg¬
ment/offset attributes as though it
were declared with a colon, but it
will have a FAR attribute; the
PROC directive allows either a
NEAR or FAR attribute to be speci¬
fied for the label. The PROC decla¬
ration also tells the assembler
whether to use a near or far return
when RET statements are encoun¬
tered. RASM requires the nonstan¬
dard mnemonic RETF to be used to
specify a far return. (To call a far la-
128
PC Tech Journal
FROM THE PUBLISHERS OF
Ysalf „ ,
* tf&C *
i\«flfe \gfe£
;«i£
■sgss?
3S&SF
W^i*o**,
W*~
' \ IV' 0 "
«Hp ]
‘Vs®*—
assE^s
VSSs*^
Ygs#*
^S,oiuw'* 7l " r
;$W* ia
[OU<.^ tVVU '
L44 ! lMWA...The low-cost
and efficient way
to build a library
of software
programs!
These are some of the
programs and applications you will
have at your fingertips to expand your IBM PC:
N ow you can build a library of software
programs with amazing ease and at
amazing savings! Imagine, adding to your
home a library of utilities, sub-routines,
games and data files for as little as $3 per
program! PC DISK MAGAZINE, a new con¬
cept for your IBM PC gives you this and
much more!
Every issue you get is a thoroughly
tested, ready-to-run floppy disk with
up to 8 programs, accompanied by a
fully illustrated user manual.
ALL YOU HAVE TO DO IS INSERT THE
FLOPPY DISK AND GO!
Subscribe today and save up to $60 for your
order of PC DISK MAGAZINE! Send us the
full payment by check, money order or credit
card and save an additional 10%.
ACT NOW...SAVE MONEY
AND BEGIN YOUR SUBSCRIPTION
TO PC DISK MAGAZINE TODAY!
Product Specifications:
• ^§ rams wil1 run on IBM p C. PC XT, PCjr, and most compatibles under PC-
525 and MS-DOS versions 1.1, 2.0, and 2.1, requiring a minimum of 64K under
DOS 1.1 and 128K under DOS 2.0 and 2.1.
• Most programs will be written to run on monochrome and color display; how¬
ever, some games and utilities may be developed forfcolor display only (Monitor
vs. TV recommended)
• Most programs will be written in advanced BASIC; however, some machine
language and compiled code may be used.
• Al! disks are fully tested and guaranteed to run. Damaged or faulty disks will be
replaced at no charge.
• All programs and documentation are copyrighted by Ziff-Davis Publishing
Company. All rights or reproduction in all forms and media strictly observed.
We guarantee full satisfaction!
BUSINESS AND FINANCE
AIDS: Advanced pie, bar and
line chart graphics...compute
loan payment tables...calculate
the Present Value and Internal
Rate of Return for invest¬
ments...Visicalc® templates
for Real Estate, Lease/Pur¬
chase and Tax Shelter Analysis.
HOME/PERSONAL PRO¬
GRAMS: Income tax return
helper...maintain mailing
lists...personal cash flow ana¬
lyzer... speed reading train¬
ing...SAT test preparation
aids...games of dexterity, skill
and MORE!
UTILITIES AND DIAGNOS¬
TICS: Print graphics and screen
images...simulate a conversa¬
tional terminal...sort files...
transfer files to or from an¬
other computer...diagnose and
correct problems!
r m
ALL THIS FOR AS LITTLE AS $3 PER PROGRAM!
SAVE
$60
PC DISK MAGAZINE
P.O. Box 5930, Cherry Hill, NJ 08034
Vf C I want to begin to build my library with PC
DISK MAGAZINE for:
□ 3 issues for $84. Save over $20!
□ 6 issues for $149. Save over $60!
□ 1 issue for $34.95—SPECIAL OFFER!
Mr./Mrs./Ms.
Address
PD8H716
City
State
Zip
□ Payment Enclosed $
Charge My: □ American Express
□ Visa
□ MasterCard
Card No.
_Exp. Date_
Deduct an additional 10% when you pay by money order,
check or credit card! (Offer valid in U.S. only.)
□ Bill me later. Does not apply to Special One Disk offer.
Please allow 30 to 60 days for delivery of first issue. Canadian and foreign
orders shipped Air Printed Matter; add $5 per issue and include payment
in U.S. funds with order.
RASM-86
Table 1: Comparison of Program Sizes of IBM/Microsoft and Dig -
ital Research Assembler Tools
IBM/Microsoft
Macro Assembler
1.0 and DOS 2.0
Size
DRI Assembler
Plus Tools
Size
Assembler
MASM.EXE
67584
RASM86.EXE
38912
Linker
LINK.EXE
39936
LINK86.EXE
42496
Cross-
reference
generator
CREF.EXE
13824
XREF86.EXE
19456
Debugger
DEBUG.COM
11904
SID86.COM
17920
Object code
librarian
'
LIB86.EXE
14464
bel, the CALLF instruction, also
nonstandard, must be used.)
MASM also provides the LABEL
pseudo-op, which allows the user to
create a label at the current seg¬
ment/offset location with any attri¬
bute he chooses: BYTE, WORD,
DWORD, QWORD, TBYTE,
NEAR, or FAR. Among other uses,
LABEL can create multiple labels,
with differing attributes, for the
same location. RASM-86 does not
have this facility.
Both assemblers include the "$"
symbol, which creates a temporary
near label with segment/offset attri¬
butes equal to the current segment
and offset. MASM plays a little fast
and loose with the $ label, particu¬
larly with regard to the segment at¬
tribute. Consider, for example, the
following program fragment:
data segment
data ends
code segment
assume cs:code, ds:data
labell equ $
mov ax,$
mov ax,labell
code ends
Logically, the two MOV state¬
ments should assemble identically,
but they do not. The second one as¬
sembles (correctly) with a segment
override (CS:) ; the first does not.
Thus, the first statement will move
to AX the contents of the address
generated by adding the current
code offset to the current data seg¬
ment register. Clearly, this is not
what was intended by the program¬
mer who wrote this fragment.
M
\
✓c
n
a
V\! Y
1 i
<
j
Ufl
WINDOWS
FOR C“
FOR THE IBM PC
+ COMPATIBLES
Lattice C, DeSmet C
C86. Microsoft C
All versions
Windows for C $150
Demo disk and
manual $ 30
(applies toward purchase)
C Advanced Screen Management
Made Easy
ADVANCED FEATURES
• Complete window system
• Unlimited windows and text files
• Nest and overlap windows
• Overlay, restore, and save
windows
• Horizontal and vertical scrolling
• Word wrap, auto scroll
• Print windows
• Highlighting
• Fast screen changes
• No snow, no flicker
WINDOWS ++
Much more than a window display
system. Windows for C is a video
toolkit that simplifies all screen
management tasks.
SIMPLIFY • IMPROVE
• Menus • Help files
• Data screens • Editors
ALL DISPLAYS
C SOURCE MODULES
FOR
pop-up menus, multiple window
displays, label printer, cursor
control, text mode bar graphs.
Plus complete
building block subroutines
DESIGNED FOR
PORTABILITY
'Minimal dependence on
IBM BIOS and 8086 ASM
FULL SOURCE AVAILABLE
NO ROYALTIES
802 - 848-7738
Master Card & Visa Accepted
Shipping $2.50
VT residents add 4% tax
A PROFESSIONAL SOFTWARE TOOL FROM
CREATIVE SOLUTIONS
21 Elm Ave, Box T8, Richford, VT 05476
CIRCLE NO. 121 ON READER SERVICE CARD
AND NOW, BESIDE THE TI PROFESSIONAL, TOO.
Beside The IBM PC
Or XT, The Best Box
You Can Sell.
The Bernoulli Box: The Superior Storage Solution.
For owners and users of IBM PCs, XTs,
and TI Professionals, where to put and
secure the substantial amounts of data
they are processing can get to be quite a
problem.
Well, IOMEGA has quite a solution.
We call it The Bernoulli Box.
Hard Disk Performance And
Reliability. Flexible Disk Economy
And Convenience.
The Bernoulli
Box is a mass stor¬
age system that
uses 10-megabyte
removable car¬
tridges to deliver
incredible ver¬
satility and
virtually
unlimited
storage capacity. Powerful primary stor¬
age. Quick and efficient backup. With the
performance, data integrity, mechanical
reliability, and low cost per megabyte
equal to Winchester hard disks.
A Handful of Cartridges Or A
Desktop Full Of Hardware. You
Decide.
The bottom-line beauty of The
Bernoulli Box is
that when your
customers need
more mass stor¬
age, they buy
more
cartridges—
not more
iron. So they
save space,
time, money,
and get higher performance and a more
reliable storage solution to boot.
Check Out The Bernoulli BoxToday.
Computer dealers across the country
are coming to the same conclusions about
The Bernoulli Box from IOMEGA. Stock
it. Because it's really a mover. Which
only makes sense when you put it beside
the IBM PC, XT, or TI Professional.
For more information, call IOMEGA at
(801) 776-7330.
L'UIzCA
IOMEGA Corporation
1821 West 4000 South
Roy, Utah 84067
(801) 776-7330
CIRCLE NO. 102 ON READER SERVICE CARD
RASM-86
Arithmetic, Logical, and
Relational Operators
Both assemblers boast a full comple¬
ment of arithmetic, logical, and rela¬
tional operators. Arithmetic oper¬
ators include addition, subtraction,
multiplication, division, modulo di¬
vision, and left/right bit shifts. Re¬
lational operators include all neces¬
sary tests of equality and inequality.
Logical operators include AND,
NOT, OR, and XOR. The syntax
and notation is the same for both
MASM and RASM.
Even though the two assem¬
blers' capabilities appear to be iden¬
tical, I'd score this round in RASM-
86's favor, for two reasons. First,
DRI has carefully documented all of
these operators (and what types of
operands are legal for each); IBM,
on the other hand, mentions most
of the operators only in passing, in a
table of operator precedence.
Second, RASM's operators work
correctly,- MASM's often do not. In
fact, MASM's arithmetic is posi¬
tively disgraceful. (For an interest¬
ing expose of MASM's arithmetic
and logic, see Ray Duncan's article
in the February 1984 issue of Dr.
Dobb's Journal ; I recommend that
MASM users read this article before
trying to use any MASM arithmetic
in their programs.)
Attribute and Value
Operators
The SEG, OFFSET, and PTR oper¬
ators are identical in the two as¬
semblers. SEG and OFFSET return
the segment and offset values of
their respective operands. PTR tem¬
porarily changes the type or dis¬
tance attribute of its operand
(BYTE, WORD, or DOUBLE-
WORD; NEAR or FAR) to a speci¬
fied type or distance.
The TYPE operator returns a
number reflecting the "type" attri¬
bute of its operand, if that operand
is a variable. RASM's TYPE operator
can return only 1, 2, or 4, because
RASM can define only BYTE,
WORD, and DOUBLEWORD vari¬
ables. MASM can return 1, 2, 4, 8,
10, or (if its operand is a structure) a
structure size. MASM can also re¬
turn the NEAR or FAR attribute of
an operand that is a label. Digital
Research's documentation does not
specify what is returned if the
TYPE operator is used with a label
operand, although it does state that
TYPE can be used with a label.
The functioning of the
LENGTH operator in the two as¬
semblers is subtly different.
MASM's LENGTH returns the
number of elements in a DUP'd ar¬
ray; it is not meaningful for other
variables. RASM's LENGTH returns
the actual number of bytes asso¬
ciated with a variable. So, RASM's
LENGTH is similar to MASM's
SIZE. However, SIZE, like MASM's
LENGTH, is meaningful only for
variables declared with a DUP ini¬
tializer (SIZE = LENGTH * TYPE).
Note that the actual utility of
RASM's LENGTH operator is lim-
MODEMS
SOFTWARE UTILITIES
BROTHER (Letter Quality)
HR-15.
HR-25
OKIDATA (Dot Matrix)
ML 92 .
AMDEK VIDEO 310-A
12" Amber Monitor
HAYES
SMART MODEM 1200
Each $40 SMART MODEM 1200B
TALL TREE
$470 J FORMAT-2, WINDRIVE
JETDRIVE
PGS HX-12.
Call 12" Hi Res Color (RGB) Monitor
j fyciot
64K RAM CHIPS . $52
(Set of 9) 150 NS
64K RAM CHIPS . $49
(Set of 9) 200 NS
OKIDATA 93 .Call
Printer (Dot Matrix)
HERCULES |
QUADRAM
PLANTRONICS >
PARADISE SYSTEMS ^
AST MONOGRAPH PLUS
DISK DRIVES
For your IBM PC or compatible.
5V4" FULL HEIGHT DISK DRIVES
TANDON TM 100-2 ,^/V
TANDON TM 101-4 J F rOM
CONTROL DATA 9409 \ $199
5Vi" HALF HEIGHT DISK DRIVES
TANDON 50-2
TANDON 55-4 r^/Vl
CONTROL DATA 9428 JpROM
QUME 142-A \ $180
TEAC 55B l/\ /sj
TEAC 55F ]/
8" THINLINE DISK DRIVES
TANDON TM 848-1 E C
TANDON TM 848-2E S3
i IIAAIITnDC
HARD DISK SUBSYSTEMS
f INTERFACE
10. 15. 21 & 33MB
MAYNARD
WS1, 2, & 3
TANDON
TM 5112 10MB
j DISK DRIVE CONTROLLERS
MAYNARD ^s/V
All options available. Jfro>
FDC(5’/4") \ $16(
FDC/SP l/\
(5Vi" with Serial Port) !/
FDC/8 (8")
FDC/8 PP (8" with Parallel Port)
MAYNARD
Sandstar Series
Modular Controller Cards
COMMUNICATIONS
AST RESEARCH
AST-3780
(3780 RJE bisync emulation) Call
AST-5251
(5251 remote emulation) . Call
EXPANSION BOARDS
AST RESEARCH
All options available. Expandable memory.
SIX PAK PLUS (64K) /i
MEGA PLUS II (64K)
1/0 PLUS II \ $130 «
QUADRAM ^
All options available. Expandable memory.
QUADBOARD /y
EXPANDED QUADBOARD |>£ n YjrL_
QUADBOARD II *940 <
JFROM 1 -
$240 <
IaT
TERMS: Prepayment, COD, Visa and MasterCard
accepted. Add 2% shipping and handling on all orders.
Add 3% surcharge for Visa and MasterCard.
/
Prices subject to change without notice. 20% re¬
stocking charge for all returned items.
FOR XPRESS SERVICE, PHONE
Toll Free 1-800-632-8515
California 1-714-632-8512
Hours: 8 AM - 5 PM Mon.-Fri.
WARRANTY: Microxpress honors all manufacturer
warranties.
RETURNS: Call our Customer Service Department for
an MRA (Material Return Authorization) Number for all
in and out of warranty returns.
For Customer Service Call 1-714-632-8996
CIRCLE NO. 123 ON READER SERVICE CARD
ANNOUNCING CREATIVE COMPUTING’s 1984
BUYER'S GUIDE
TO PERSONAL COMPUTERS & PERIPHERALS
ADVICE YOU CAN TRUST ON SELECTING PERSONAL COMPUTERS,
PERIPHERALS AND ELECTRONIC GAMES
Unless you have the mem¬
ory of a computer there’s no
way you can keep track of all
the games, programs and
peripherals available for
your computer. And even if
you could, you’d still have a
problem figuring out what’s
best for your needs and how
to get the most for your
money.
That’s why you need the
1984 Buyer's Guide to Per¬
sonal Computers & Periph¬
erals. It’s a comprehensive
collection of product reviews
and consumer-oriented
shopping advice put
together by the experts at
Creative Computing
magazine.
You’ll get a rundown of
what’s new on the market.
Analysis of new product
performance, reliability,
operation, applications,
cost-even what kind of
repair service you can
expect. Easy-to-understand
comp' risons between dif¬
ferent models. Tips on bugs
and design problems. Plus
"inside” information you
won’t get from manuals or
sales people.
Plug into the 1984 Buyer's
Guide to Personal Com¬
puters & Peripherals and
find out what’s hot in...
□ Personal computers
□ Pocket-sized computers
□ Telecomputers
□ Diskdrives
□ Memory expanders
□ Word processors
□ Dot matrix printers
□ Electronic games
□ Video game cartridges
□ Joysticks and paddles
□ Game port extenders
□ Color graphics boards
□ Speech synthesizers
□ Do-it-yourself kits
□ And more
You may even discover that
you need less equipment
than you think. The 1984
Buyer's Guide to Personal
Computers & Peripherals
helps you avoid overbuying
by showing you how to cus¬
tomize your current system.
What else does the 1984
Buyer's Guide to Personal
Computers & Peripherals
give you? Book reviews,
glossaries of new terms,
evaluations of batteries for
electronic games and calcu¬
lators, and lots of other use¬
ful information.
Don’t buy until you've con¬
sulted the 1984 Buyer's
Guide to Personal Com¬
puters & Peripherals! Order
your copy today.
Send to: Creative Computing Buyer’s Guide FA6F
CN 1914, Morristown, NJ 07960
Yes! Please rush me Creative Computing's 1984 Buyer's Guide to Per¬
sonal Computers & Peripherals. Enclosed is my check or money order for
$3.95 plus $1 for postage and handling.
Mr./Mrs./Ms_
Address-
City_
(please print)
State.
-Zip_
Please make check payable to Creative Computing Buyer's Guide. CA, NJ and NY
State residents please add applicable sales tax. Price outside U.S.A. is $6.
RASM-86
ited by the deficiencies of the as¬
sembler's data definition capability.
Because there are no structures or
initializing DUP statements, the
definition of a variable (as far as
LENGTH is concerned) can consist
of only as much code as can be
packed into one line of source.
RASM-86 also provides a LAST
operator: if LENGTH x is greater
than 0, LAST x returns LENGTH
x - 1; if LENGTH x is 0, LAST x
returns 0. This feature provides a
convenient means 4 ’ to access, for ex¬
ample, the last element of an array.
The LAST operator is not present in
IBM's MASM. LAST shares
LENGTH'S limitation as it was de¬
scribed above.
MASM includes several attri¬
bute operators that are not present
in RASM-86. The SHORT operator,
for example, specifies that the target
label of a jump instruction be
within 127 bytes of the instruction.
RASM-86 uses the nonstandard
mnemonic JMPS for the same pur¬
pose. MASM's THIS operator de¬
fines a memory location and speci¬
fies a type attribute. It is also miss¬
ing in RASM, but I have yet to find
a use for THIS that cannot be dupli¬
cated by using other means.
Obviously, all of the operators
that deal with records and struc¬
tures are also missing from RASM-
86: specifically, MASM's shift
count, MASK, WIDTH, and dot (.)
operators are not implemented in
RASM. RASM does have a dot oper¬
ator, but its meaning is entirely dif¬
ferent. The dot in MASM specifies
that one field of a.structure is being
referred to (e.g., customer.name); in
RASM it creates a temporary vari¬
able in the current data segment.
For example, the RASM statement
mov ax, .380H
is equivalent to MASM's
mov ax,ds:[380H]
Finally, MASM's HIGH and LOW
operators, which return the high
and low bytes of a 16-bit value, are
not present in RASM-86.
Program Segmentation
The two assemblers part company
on program segmentation. Program
segments are defined in MASM
with the SEGMENT/ENDS pair.
The SEGMENT directive defines
the beginning of a logical program
segment: an area of code, data, stack,
etc. SEGMENT syntax is
name SEGMENT [align-type]
[combine-type] ['classname']
The name field tells the assembler
and the linker what name to use for
the segment; it can be any unique
MASM identifier. The align-type
instructs the assembler where to
align the beginning of the segment.
Valid align-types are BYTE, WORD,
PARA, and PAGE. The combine-
type specifies how segments with
the same name are to be combined
at link time ; it can be PUBLIC,
COMMON, STACK, MEMORY, or
MicrcWay ’ 8087 SUPPORT and FORTRAN
87FORTRAN/RTOS” our adaptation
of the Intel Fortran-86 Compiler generates in
line 8087 code using all 8087 data types
including 80-bit reals and 64-bit intergers. The
compiler uses the Intel large memory model,
allowing code/data structures of a full mega¬
byte, and supports overlays. Includes RTOS
and support for one year. $1350
87PASCAL/RTOS” is Intel’s ISO-
Standard Pascal with 8087-8088 exceptions.
These make it possible to use all the 8087 data
types directly, while generating modules in
one of thethree intel Memory Models. Includes
RTOS and support for one year. $1 350
RTOS DEVELOPMENT PACKAGE
includes 87FORTRAN, 87PASCAL, PL/M-86,
Utilities,TXScreenEditorandRTOS.. $2500
RTOS-
REALTIME MULTI-TASKING/
MULTI-USER EXECUTIVE
RTOS is a Micro Ware configured version of
iRMX-86. Includes ASM-86, LINK-86, LOC-86,
LIB-86, and the ROM Hex Loader. $600
87 BASIC/I N LI N E” generates inline
8087 code! Converts the IBM Basic Compiler
output into an assembly language source listing
which allows the user to make additional
refinements to his program. Real expression
evaluations run five times faster than in
87BASIC.$200
Mirm p °- b ° x 79
Kingston, MA
MfOlp 02364
W VCfff (617) 746-7341
MWS-286™ Configured to your specifica¬
tions, our computer runs RTOS-286 or XENIX
Includes one Intel compiler, seven slot multibus
chassis, hard disk, streaming tape backup and
Intel Service Contract Six to twenty times faster
than your PC. CALL
87 BASIC" includes patches to the IBM
Basic Compiler and both runtime libraries for
USER TRANSPARENT and COMPLETE 8087
support. Provides super fast performance for
all numeric operations including trigono¬
metries, transcendentals, addition, subtraction,
multiplication, and division. $150
87MACRO” - our complete 8087 software
development package. It contains a "Pre-pro¬
cessor,” source code for a set of 8087 macros,
and a library of numeric functions including
transcendentals, trigonometries, hyperbolics,
encoding, decoding and conversions. ..$150
87DEBUG" - a professional debugger with
8087 support, a sophisticated screen-oriented
macro command processor, and trace features
which include the ability to skip tracing through
branches to calls and software and hardware
interrupts. Breakpoints can be set in code or
on guarded addresses in RAM. $150
FOR-^BAS” - a library of interface routines
which allow MS Fortran programs to call the
IBM Basic Compiler library and access
features such as the RANDOM NUMBER
GENERATOR, SOUND, PLAY, DRAW and
SCREEN commands. $150
You Can
TalkToUs!
8087-3 CHIP $175
including DIAGNOSTICS and 180-day warranty
64K RAM Upgrade $47.50
87/88GUIDE - an excellent tutorial on
writing 8087 code and interfacing it with
compilers Full of code that runs!. $30
MATRIXPAK" manages a MEGABYTE!
Written in assembly language, our runtime
package accurately manipulates large matrices
at very fast speeds. Includes matrix inversion
and the solution of simultaneous linear equa¬
tions. Callable from MS Fortran 3.2, 87MACRO,
87BASIC, and RTOS.each $150
MICROSOFT FORTRAN 3.2 $239
MICROSOFT PASCAL 3.2 $209
These IEEE compatible compilers support
double precision and the 8087
MICROSOFT C COMPILER includes
Lattice C and the MS Librarian. $350
LATTICE C with 8087 support.$350
SCO XENIX .’“T?". 0 ? 0 ."!.595
Unisource VENIX/86. ,M r^7. : £ ..800
FLOAT87 for MS C.125
SuperSoft Fortran 66.299
Computer Innovations C86.345
STSC APL*-PLUS/PC.500
TURBO PASCAL.45
TURBO PASCAL with 8087 Support.85
HALO GRAPHICS. CALL
GRAPHMATIC.125
ENERGRAPHICS.295
Professional BASIC.295
COSMOS REVELATION.850
SuperCalc III with 8087 Support. CALL
MAYNARD WS1 HARD DISK.995
MAYNARD WS2 HARD DISK.1170
256K RAM CHIPS. CALL
MAYNARD ELECTRONICS Boards. CALL
NO CREDIT CARD SURCHARGE
CIRCLE NO. 174 ON READER SERVICE CARD
AT. Finally, the classname is a user-
defined string; the linker will place
segments with the same classname
near one another in memory.
The purpose of all this is to tell
the assembler and linker what the
segment is to be used for, how it
will be combined with other pro¬
gram segments, and where it should
be placed in memory. MASM's
SEGMENT directive is complete: it
allows the programmer to do almost
anything he wants. In fact, it is a
virtually complete implementation
of the Intel assembler's SEGMENT
directive, missing only that assem¬
bler's INPAGE align-type.
As a necessary complement to
the SEGMENT directive, MASM
provides the important ASSUME
statement. Aside from affording pro¬
grammers the opportunity to code
the most sagacious statement I have
ever seen in any computer language
("ASSUME NOTHING"), the AS¬
SUME directive tells the assembler
what values it can expect to be in
the segment registers at run time.
This is critical information, because
the assembler must know how to
address variables and code. Examine
the following program fragment:
data segment public
varl db ?
data ends
code segment public
assume csxode^smothing,
es:data
mov ah,varl
code ends
The ASSUME statement tells the as¬
sembler that to address VAR1 in the
data segment it must use a segment
override,- the assembler will actually
generate the instruction
mov ah,es:varl
because it was informed that what
will be in the DS register at run¬
time is unknown.
Finally, the GROUP directive
in MASM instructs the assembler/
linker to collect a set of logical pro-
CIRCLE NO. 113 ON READER SERVICE CARD
GET “C” APPLICA TIONS OFF TO A FL YING START
WITH
CTREE ™ ^<&C-SORT T "
RECORD MANAGEMENT
SUBSYSTEM
■ Advanced B + Tree Stru
• Fast And Efficien
• Unlimited # Of Keys
• Keys Mav Be Duplicate, LIFO/
5, Modifiable
• Record Locking Calls
• Sequential Access
• Utilities To Add/Delete Keys
And Fields, Rebuild Files
• Error Processing Interface
• Store Data Dictionary In File
*7
SORTISELE
B-Tree or Sequential Files
• Automatically Uses All
‘^'Te Memory
•oh On Any Number/Type
Of Field
t Records According To
Specified Criteria
tes Tag (Index) Sorting File
Automatic Interface To B-Tree
ordering information
SINGLE UNIT LICENSE
$99 per program plus shipping.
Format 5'A Disk MS-DOS
Compatible Linkable 8086-file
format modules for Lattice-C
Compliers, others soon.
Complete documentation.
AccuData Software™
Dept. T-8
P.O. Box 6502
Austin, Texas 78762
SOURCE CODE OPTION
$249 per program plus shipping.
“C” Source Code is also available:
requires license. A credit is
allowed for object license
purchased previously.
MULTIPLE COPY OPTION
Multiple copies of object code
may be made with this license at a
very jow unit cost.
Telephone Orders Accepted
Visa/Mastercard
(512)476-8356
CIRCLE NO. 157 ON READER SERVICE CARD
Say goodbye to the Tower of Babel with..
XENO-DISK
The disk production system
for your PC!
Read, write, format and duplicate
70 disk formats on your IBM-PC or
compatible under MS-DOS. Developed
from our popular Xeno-Copy™ utilities.
Now supports popular 8" and 96 TPI formats^
XENO-DISK. $379.50
Also available:
• XENOCOPY™.$99.50
Read and transfer 70 formats to PC/MS-DOS (one way transfer)
• XENO-COPY PLUS™.$149.50
Read and write 70 formats (bi-directional file transfer)
• ADVANCED™ Option .add $50.00
Supports 8," 96 TPI, parameter input for other formats. Included in XENO-DISK.
RUN CP/M-80 PROGRAMS ON YOUR PC.... $99.50!
80MATE™ our CP/M emulator, will run almost any CP/M-80 program under
MS-DOS. No need for expensive co-processor boards!
See your dealer or call for information.
I CIV' Dept. J, 7950 W. Fourth Street
.1 l “A Los Angeles, CA 90048
Systems, inc. (213) 938-0857
August 1984
135
RASM-86
gram segments into one contiguous
physical segment of 64K or less. All
segments so collected can be ad¬
dressed via a single segment register,-
that is, offset addresses are relative
to the base of the group, not to the
base of each segment.
With SEGMENT/ENDS, AS¬
SUME, and GROUP, the MASM
programmer has all of the tools nec¬
essary to exercise complete control
over program segmentation, use of
segment registers, and generation of
segment overrides for addressing. In
contrast, RASM-86 has only those
tools needed to get the job done.
RASM's segmentation directive
is a simplified version of the SEG¬
MENT statement. The only align-
types available are BYTE, WORD,
and PARA, and the only combine-
types are PUBLIC and COMMON;
there is no classname field. The ac¬
tual syntax is
[seg-name] seg-type
[align-type] [combine-type]
in which seg-type must be CSEG,
DSEG, ESEG, or SSEG. RASM
makes all kinds of assumptions
based on the seg-type. For example,
if the word "CSEG" is included in a
file, RASM assumes a seg-name of
CODE, an align-type of BYTE, and a
combine-type of PUBLIC (all of
which, however, can be overridden).
Further, RASM does not have
an ASSUME statement. RASM
makes its own assumptions,- if they
are not what the programmer
wants, that's too bad. RASM's as¬
sumptions are established by the
seg-type of the segment in which
the symbol being referenced is lo¬
cated (although this is not men¬
tioned in DRI's documentation).
For example, if variable VAR1
is declared in an ESEG, any refer¬
ences to VAR1 are coded by RASM
as ES:VAR1. There is no way to tell
the assembler that DS also points to
the ESEG. If DS does, in fact, refer
to the ESEG containing VAR1, all
references must be explicitly coded
as DS:VAR1 in order to avoid all
those unnecessary ES overrides.
In some cases, the programmer
can trick RASM into doing what he
wants. For example, in the creation
of a COM file, variables can be put
in a DSEG, and then the code and
data segments can be GROUPed to¬
gether. (If the variables were placed
in the code segment, as would be
the case in a MASM-produced COM
file, RASM would prefix every ref¬
erence to every variable with a CS
override.) However, there are many
cases in which this sort of grouping
will not work, and the programmer
will be forced to code his own over¬
rides. The lack of the ASSUME
statement is a serious deficiency.
Obviously, RASM does provide
the GROUP directive, albeit some¬
what differently from MASM. First,
the OFFSET operator always returns
the offset of a symbol within its
group, never within its segment,-
MASM allows either offset to be ac¬
cessed. Second, I have not been able
WE DO WINDOWS.
MAIN MENU DIRECTORY B:
D piSP.---1 BACKUS 1 BAT 714 10-27-83
2 ) ekte Select master file | bastest bas 5120 9 - 1 S -83
nwmnr? 1) CUST,-EST EXE S120 11-07-83
4) PRIM nVIW. SELECT ACTION EST 1ST 12032 11-07-83
5) SYST 3) UEND 1) ADD ME M RECORD EST HAP 4992 11-87-83
b) chan 4) pipl.
- 5) SALE 3) DELECT PRODUCT MASTER RECORD
— 4) PERFOR
- PRODUCT NUMBER:12345b
PROCUCT NAME: Inverted Tweaker
COST- 19.23 QUALITY ON HAND 102b5
PRICE: b2 SB REORDER POIKT: 2000
Use the up and down arrow PRODUCT DESCRIPTION: Reverse wetaflange for
or type the nuwber for th fraailgating bent borogoves.
Press <ENTER> to select t*
Press <ESC> to exit frow this Menu.
Press ? for help with the highlighted wenu itew. | r
VSi
Copyright 1984 Amber Systems. Inc.
AMBER SYSTEMS, INC.
1171S. Sunnyvale-Saratoga Road
San Jose CA 95129
(408)996-1883
l
1
1
l
Computer.
Name
Company
Address
Cilv
l_ '
Don’t just put your applications in windows—put windows in your
applications with VSI—the window manager.
VSI is a high-speed screen management tool. You can create up to 255
simultaneously active overlapping windows-large or small-for any
application program. Read to or write from any window and display them
with borders and user declared priorities. VSI is callable from any com¬
piled language and supports all color and monochrome video attributes.
Cut Development Time
VSI’s powerful primitives simplify your screen management chores
with a complete library of functions. And you can preview and edit your
screen layout before you actually program it
But that’s only the beginning.
Free Demo Disk
Our free hands-on demo disk will have you doing windows, too.
Return the coupon with $4.50 for postage and handling.
MasterCard or Visa accepted with phone orders only.
VSI is used with IBM PC, XT and compatibles as well as TI
Professional, and Wang PC.
^ I develop software for 8086/8088 based machines and I want to do windows, too. J
I’m enclosing $4.50 for postage and handling. Please send me your free demo
disk. My business card is attached. (Offer expires December 31,1984)
—Zip—
CIRCLE NO. 126 ON READER SERVICE CARD
136
PC Tech Journal
BEFORE YOU BUY
ANOTHER PIECE
OF SOFTWARE
CONSULT THIS BUYER’S GUIDE
n -
\ \electing programs,
^_!ysystems and games for
your personal computer can be
an ordeal. You want the best
package that’s compatible with
your system —at the right price!
LOOK NO FURTHER.
THE OLYMPIC EDITION
OF THE CREATIVE
COMPUTING 1984
SOFTWARE BUYER'S
GUIDE IS HERE!
The Editors of CREATIVE
COMPUTING have awarded
the Olympic Gold. Silver and
Bronze medals to the leading
software packages in the fol¬
lowing categories:
Full-feature word
processors
Home word processors
Education: Pre-school, Ele¬
mentary and Secondary
Spreadsheets
Database packages
Games
Full descriptions, product
reviews and screen photos of
each award winner make this
the definitive guide to the lead¬
ing software of 1984!
In addition to the Olympic
Ratings Guide, you’ll find:
A complete directory of
software products with full
program descriptions, sys¬
tem requirements and
prices, PLUS
A full listing of software
manufacturers, with names,
addresses, types of software
made and compatible hard¬
ware for each product!
If you own an Apple. Atari,
Commodore 64. TRS-80 Color
Computer, or any IBM PC, and
you’re in the market for new
business, educational, personal
productivity, recreational and
utility programs, take the ordeal
out of shopping... save money
and get the best package for
your system at the best price!
Order your copy of the
CREATIVE COMPUTING
1984 SOFTWARE
BUYER’S GUIDE today!
Also available at your local news¬
stand and computer store.
Creative Computing 1984
Software Buyer’s Guide
CN 1914. Morristown. NJ 07960 FA3F
rr.SE
I’m enclosing $4.95 ($3.95* plus $1 postage
& handling) for the 1984 SOFTWARE
BUYER’S GUIDE. (Outside USA $6.)
Mr./Mrs./Ms
Address_
print lull name
City/State/Zip
*Residents of CA, NJ and NY State add applicable sales tax.
Super assemblers
plus the world’s
largest selection of
cross assemblers!
Z-80
Macroassembler $49.50
Power for larger programs! This
2500AD macroassembler includes:
• Zilog Z-80 Macroassembler (with
the same powerful features as all
our assemblers)
• powerful linker that will link up to
128 files. Com files may start at
any address
• Intel 8080 to Zilog Z-80 Source
Code Converter (to convert all
your Intel source to Zilog Syntax
in one simple step)
• COM to Hex Converter (to convert
your object files to Hex for PROM
creation, etc.)
• 52 page User Manual
8086/88 Assembler
with Translator $99.50
Available for MSDOS, PCDOS, or
CPM/86! This fully relocatable macro¬
assembler will asemble and link code
for MSDOS (PCDOS) AND CPM/86
on either a CPM/86 or MSDOS
machine. This package also includes:
• An 8080 to 8086 source code
translator (no limit on program
size to translate)
• A Z-80 to 8086 translator
• 64 page user manual
• 4 linkers included:
-MSDOS produces .EXEfile
-CPM/86 produces .CMD file
-Pure object code generation
-Object code and address
information only
Linker features:
• Links up to 128 files
• Submit mode invocation
• Code, Data Stack and extra
segments
• Handles complex overlays
• Written in assembly language for
fast assemblies.
• MICROSOFT. RELformat option
Z-8000 Cross Development
Package $199.50
Instant Z-8000 Software! This
package allows development and
conversion of software for the
Z8001,8002,8003 and 8004 based
machines on a Z-80, Z-8000 or 8086
machine. This powerful package
includes:
• a Z-80/8080 to Z-8000 Assembly
Language Source Code Translator
• Z-8000 Macro Cross Assembler
and Linker
The Translators provide Z-8000
source code from Intel 8080 or Zilog
Z-80 source code. The Z-8000
source code used by these
packages are the unique 2500AD
syntax using Zilog mnemonics,
designed to make the transition
from Z-80 code writing to Z-8000
easy.
All 2500 AD Assemblers and
Cross Assemblers support the
following features:
Relocatable Code — the
packages include a versatile Linker
that will link up to 128 files together,
or just be used for external
reference resolution. Supports
separate Code and Data space.
The Linker allows Submit Mode or
Command Invocation.
Large File Handling Capacity
—the Assembler will process files
as large as the disk storage device.
All buffers including the symbol table
buffer overflow to disk.
Powerful Macro Section—
handles string comparisons during
parameter substitutions. Recursion
and nesting limited only by the
amount of disk storage available.
Conditional Assembly —allows
up to 248 levels of nesting.
Assembly Time Calculator—
will perform calculations with up to
16 pending operands, using 16
or 32 Bit arithmetic (32 Bit only for
16 Bit products). The algebraic
hierarchy may be changed through
the use of parentheses.
Include files supported—
Listing Control —allows listing
of sections on the program with
convenient assembly error detec¬
tion overrides, along with assembly
run time commands that may be
used to dynamically change the
listing mode during assembly.
Hex File Converter, included
—for those who have special
requirements, and need to generate
object code in this format.
Cross reference table
generated—
Plain English Error
Messages—
System requirements for all pro¬
grams: Z-80 CP/M 2.2 System with
54k TPA and at least a 96 column
printer is recommended. Or
8086/88 256k CP/M-86 or MSDOS
(PCDOS).
Cross Assembler Special Features
Z-8 —User defined registers
names, standard Zilog and Z-80
style support. Tec Hex output option.
8748 —standard Intel and Z-80
style syntax supported.
8051 —512 User defined register
or addressable bit names.
6800 Family —absolute or
relocatable modes, all addressing
modes supported. Motorola syntax
compatible. Intel Hex or S-Record
format output.
6502 —Standard syntax or Z-80
type syntax supported, all
addressing modes supported.
CIRCLE NO. 162 ON READER SERVICE CARD
8086 and Z-8000 XASM includes Source Code Translators
Z-80
CP/M®
ZILOG
SYSTEM 8000
UNIX
IBM P.C.
8086/88
MSDOS
IBM P.C.
8086/88
CP/M 86
OLIVETTI
M-20
PCOS
8086/88 ASM
$ 99.50
$ 99.50
8086/88 XASM
$199.50
$750.00
$199.50
80186 XASM new
199.50
750.00
199.50
199.50
199.50
16000(all)XASM new
199.50
750.00
199.50
199.50
199.50
68000 XASM new
199.50
750.00
199.50
199.50
199.50
Z80000 XASM coming soon
199.50
750.00
199.50
199.50
199.50
Z-8000® ASM
750.00
299.50
Z-8000 XASM
199.50
199.50
199.50
Z-800 XASM coming soon
199.50
750.00
199.50
199.50
199.50
Z-80 ASM
49.50
Z-80XASM
500.00
99.50
99.50
99.50
Z-8XASM
99.50
500.00
99.50
99.50
99.50
6301 (CMOS) new
99.50
500.00
99.50
99.50
99.50
6500/11 XASM new
99.50
500.00
99.50
99.50
99.50
6502 XASM
99.50
500.00
99.50
99.50
99.50
65C02(CM0S) XASM new
99.50
500.00
99.50
99.50
99.50
6800,2,8 XASM
99.50
500.00
99.50
99.50
99.50
6801,03 XASM
99.50
500.00
99.50
99.50
99.50
6804 XASM new
99.50
500.00
99.50
99.50
99.50
6805 XASM
99.50
500.00
99.50
99.50
99.50
6809 XASM
99.50
500.00
99.50
99.50
99.50
8748 XASM
99.50
500.00
99.50
99.50
99.50
8051 XASM
99.50
500.00
99.50
99.50
99.50
8080 XASM
99.50
500.00
99.50
99.50
99.50
8085 XASM
99.50
500.00
99.50
99.50
99.50
8096 XASM new
99.50
500.00
99.50
99.50
99.50
1802 XASM
99.50
500.00
99.50
99.50
99.50
F8/3870 XASM
99.50
500.00
99.50
99.50
99.50
COPS400 XASM
99.50
500.00
99.50
99.50
99.50
NEC7500 XASM
99.50
500.00
99.50
99.50
99.50
NSC800
99.50
500.00
99.50
99.50
99.50
Subtotal $_ $_ $_ $_ $
Name_
Company_
Address _
City_State_Zip_
Phone_Ext_
Make and model of computer
system_
□ C.O.D. (2500ADpays C.O.D. charges)
□ VISA or MasterCard #, Exp. Date (mo./yr.)
Signature
TO ORDER. Simply circle the product or
products you want in the price columns above,
enter the subtotal at the bottom of that column
and add up your total order. Don’t forget
shipping/handling.
Check one:
□ 8" Single Density
□ SW' Osborne
□ IBM P.C.
□ Cartridge Tape
□ Apple (Softcard)
□ KayproDSDD
other formats available, please call! #211
Total $_
shipping/handling
($6.50 per unit,
$20.00 per unit for
Int'l. airmail) $_
Total Order $_
CP M is a registered trademark of Digital Research. Inc.
25004 D93FM4 RE I f C
17200 E. Ohio Drive, Aurora, CO 80017,303-752-4382 TELEX 752659/AD
L:
dBASEir&lir
PROGRAMMERS
*Why use dFLOW?
‘NOVICE:
Points out errors in coding technique and
labels the precise location of their occurrence.
INSTANT FEEDBACK provides the quickest
path to improved technique.
‘PROGRAMMER:
dFLOW your sophisticated and/or
lengthy source code and have hard-to-
discover typos and logic mismatches
uncovered in seconds.
‘PROFESSIONAL:
Free your time for billable and
interesting projects by having
dFLOW catch basic coding er¬
rors during system develop¬
ment.
1
* YOU WILL BE AMAZED AT THE SPEED 1
AND PRECISION OF dFLOW
PRICE $50: WALLSOFT SYSTEMS INC.
233 Broadway, Suite 869 New York, NY 10279
Phone: (212) 406-7026
® REGISTERED TRADEMARK OF ASHTON • TATE
CIRCLE NO. 164 ON READER SERVICE CARD
RASM-86
to find any use for the group name.
It is accepted neither as an operand
nor as a modifier. If the program¬
mer needs the segment address of
the group, he must request the ad¬
dress of the first segment in the
group. Finally, RASM requires the
use of far jumps and calls between
segments that have been grouped;
the assembler does not take advan¬
tage of the grouping. MASM per¬
mits near jumps and calls between
grouped segments.
Macros and Conditionals
There's no comparison between
MASM and RASM-86 regarding
macros and conditionals. RASM-86
has only a limited conditional as¬
sembly capability, and does not sup¬
port traditional text macros at all.
MASM's conditionals test the
zero/nonzero value of an expres¬
sion, whether two symbols (usually
macro parameters) are identical,
whether a symbol is present or ab¬
sent (again, usually a parameter),
whether a symbol is defined, and
whether the assembler is currently
executing pass 1 or pass 2. RASM-86
provides only the first test.
The absence of macros in
RASM will not concern some
people, but I use macros extensively
and would disqualify RASM-86
from consideration as a serious as¬
sembler on this point alone. Macros
can provide program structuring;
they can generate local variables on
the stack so that subroutines can be
made automatically reentrant; they
can simplify repetitive sections of
code ; above all, when they are used
correctly, they can make programs
more easily understood and main¬
tained.
Figure 2 shows an example of
MASM macro use. I would probably
more easily understand the frag¬
ment in this figure six months after
I wrote it than I would an extended
series of register moves, interrupts,
subroutine calls, compares, and con¬
ditional branches, no matter how
well the code was commented.
RASM-86 does, however, have a
code-macro facility. Code-macros es¬
sentially allow the programmer to
define 8088 instructions; the as¬
sembler uses code-macros internally
Figure 2: Example of MASM
Macro Use
els
locate 0,0
.repeat
read_char
.if EOL
print_result
.else
write_char
parse
.endif
.until EOF
to generate opcodes. This facility is
interesting, but not very useful. As
an example, the following code-ma¬
cro generates a MOV to the CS reg¬
ister, which is supposed to be illegal
on the 8088:
codemacro MOV dst:S(CS) ,
src:Ew
segfix src
db 8EH
modrm dst,src
EndM
Briefly, the above series of di¬
rectives instructs the assembler to
watch for any MOV instruction
whose destination is the CS segment
register. When it finds one, it will
construct a multi-byte opcode, pre¬
fixed by a segment override if neces¬
sary. The first byte will be 8EH.
The rest of the opcode is based on
the nature of the operand: it will
consist of the standard 8086/88
ModRM byte, possibly followed by
addressing bytes. Any of these state¬
ments can then be assembled:
mov cs,ax
mov cs,seg_ptr
mov cs,es:6[bx+si]
In fact, any type of move for
which the DS register is a legal des-
140
?C Tech Journal
IBM PC USERS:
ItiStQp
TeamMate is breaking installation
and performance records.
productivity records for your IBM PC or compatible. Taking only minutes to install,
we ve got all the competition beat. TeamMate requires no special software or format¬
ting diskettes. All you need is DOS 2.0!
We have a variety of configurations to fill a variety of needs. Like the
TeamMate 1110 add-in 10MB Winchester, with power consump¬
tion so low it can be safely installed in even fully configured PCs.
Or try the TeamMate 1103 KODAK 3.3MB floppy add-in sub¬
system. Also software transparent, it gives you 2.78MB of
rugged floppy storage- perfect for Winchester backup or
as a low cost alternative to Winchester disks. Or get
the advantages of both with our TeamMate 1213
Winchester/Kodak floppy add-on combination.
All at record prices.
Even TeamMates customer support is fast.
Should your subsystem need any service
during the first 3 months of the 6-month
warranty period, your dealer will be
shipped a swapout unit within
24 hours!
Ask for TeamMate IBM and
Apple subsystems at your local
computer dealer. Or call us at
(408) 496-0434.
Mate
TeamMate by Data Technology
2775 Northwestern Parkway
Santa Clara, CA 95051
TEL: (408) 496-0434
TWX: 910-338-2044
Team*
Mate
RASM-86
Table 2: Comparative Assembly Times
RASM-86
MASM
MASM/MACROS
Empty file
0:03.3
0:03.7
—
4K
0:16.5
0:16.0
0:23.0
8K
0:32.3
0:49.9
0:57.0
16K
0:35.1
0:45.7
0:48.0
48K
1:41.0
2:33.7
0:40.5
tination can now be duplicated with
CS. (Note: skeptics may want to try
this out in DEBUG. Version 2.0 will
actually assemble and execute
moves to the CS register if it is
asked to.) However, I do not recom¬
mend using CS moves in programs.
This method works on current ver¬
sions of the 8088, but it is docu¬
mented as illegal, and it may not
work on future versions of the chip.
In any event, code-macros do
not substitute for text macros. Code¬
macros do not allow the program¬
mer to do the same operations that
he can do with text macros (nor, in
fairness, are they intended to). The
lack of a macro processor is a critical
deficiency in RASM-86.
Compatibility
Knowing that significant differences
exist between RASM-86 and
MASM, no one should be surprised
that RASM-86 will not correctly as¬
semble a program written for
MASM. The actual scope of the
task of converting a MASM file to
assemble under RASM depends on
the sophistication of the original
file. A file containing macros, struc¬
tures and records, complex data dec¬
larations, and multiple ASSUME
statements will require a good deal
of work to convert.
Aware that there would be er¬
rors, I tried to use RASM-86 to as¬
semble SDIR, John Chapman's pub¬
lic-domain sorted directory program.
RASM flagged no fewer than 284
errors in SDIR, a file of about 48K
(half or more of which is made up
of comments). On the other hand, a
simple file (such as one written for
IBM's "small" assembler, ASM,
which lacks many of the same fea¬
tures missing in RASM) may be
converted fairly painlessly, by
changing the segment declarations,
removing the PROC and ASSUME
statements, and assembling.
As a sample of the conversion
task, I altered IBM's virtual disk de¬
vice driver (from the DOS 2.0 refer¬
ence manual, beginning on page 14-
27) to assemble under RASM-86.
The following steps were needed*.
1. Convert macros to in-line
code.
2. Remove PROC/ENDP
pairs. Restate the proc
142
CIRCLE NO. 119 ON READER SERVICE CARD
PC Tech Journal
Introducing SNA Exchange: the direct, dial-up
micro-to-mainframe connection.
Plug the SNA Exchange™ board into any
expansion slot in an IBM® PC, XT or PC-compat¬
ible computer, and you're talking mainframe.
Your PC can reach out and touch any software
application running in the SNA environment—
IMS, CICS, TSO, SPF, VM/CMS.
With SNA Exchange, a PC can emulate a
3274 cluster controller (51C), a 3287 printer, and
a 3278/9 terminal, with dial-up capability for
synchronous communication with an IBM or
IBM-compatible mainframe. SNA Exchange also
lets an IBM PC emulate a 3777-1 Remote fob
Entry Station, so you can upload and download
files from an IBM mainframe and print files
from the host computer.
SNA Exchange gives you the additional
power of multi-sessioning: you can connect
concurrently to four different mainframe appli¬
cations and toggle back and forth, without
logging on and off.
The SNA Exchange system runs on an
external modem, up to 4800 baud, using standard
telephone lines, or a 9600 baud modem using
a leased line. So you can easily establish the
micro-to-mainframe connection from any
telephone, anywhere.
And the connection can also be immediate.
SNA Exchange is available for delivery now! For
more details about our SNA Exchange package
or any of our other Exchange Series™ products—
PC Exchange,™ PC Exchange with SNA, Bisync
Exchange,™ ClusterNet™
3270 and our Coax Con¬
nect product, write or
call: Intelligent Technol¬
ogies, 151 University
Avenue, Palo Alto, CA
94301, (415) 328-2411,
(800) 523-8396. In the
East call (212) 370-9244.
:hange
a Icgjca company
© 1984 Intelligent Technologies International Corporation. SNA Exchange, Exchange Series, PC Exchange, Bisync Exchange, ClusterNet and Intelligent Technologies are
trademarks of Intelligent Technologies International Corporation. IBM is a trademark of International Business Machines Corporation.
CIRCLE NO. 178 ON READER SERVICE CARD
REASONSTO
SUBSCRIBE TO H
Your subscription will bring you 26 big
issues every year of the most up-to-date facts
and technological breakthroughs that affect you
and your IBM or compatible personal com¬
puter. 26 big issues of PC delivered to your door
AT UNBELIEVABLE SAVINGS!
Every other week you’ll get a library of
professional insights including latest coverage
of newly-released hardware and peripherals.
You’ll find timely information on innovations in
P rogramming, applications and networking.
bull communicate with professionals and
users like yourself and get reviews of new soft-
packages, some before they even hit the
SUBSCRIBE TO
P.O. BOX 2443 • BOULDER, CO 80322
YES, Please enter my subscription to PC for:
□ 26 issues (one year) for only $29.97..:LESS THAN $1.16 A COPY!
□ 52 issues for only $52.97...LESS THAN $1.02 A COPY!
Full one-year subscription price $34.97. Single copy price $2.50.
Mr./Mrs./Ms,
Company_
please print name in full
8H195
ware packages, some belore they even hit the
shelves.
You can subscribe to PC , The Independ¬
ent Guide To IBM Personal Computers for as
little as $1.02 an issue! Use the attached card or
the coupon at right TO SUBSCRIBE TODAY!
GET THE MOST UP-TO-DATE IN¬
FORMATION FOR YOU AND YOUR PC
WITH PC, 26 TIMES A YEAR!
Address.
.K
H
E w
Tho Independent Guide to ^ __
IBM Pcfjonjl Cnmpulcr.
Mi
FI
A J PC Talks,
A/ E.F. Hutton
pfs: Meet A '
the Team
Microsoft's i
New Business Jl
C
L* 1
Bi
W
w
Listens
F _ Three
f C Mail List
Managers
RASM-86
names as regular labels.
Change the RET statements
in the FAR procs to RETF.
3. Fix syntax of segment decla¬
ration. Remove ASSUMES.
4. Fix DUP and "DW ?"
statements.
5. Alter the "DD -T' in the
device header to two DWs.
6. Change one LABEL state¬
ment to the // label: ,, con¬
struct.
7. Change all LEAs to MOV/
OFFSET statements. (This
should not have been neces¬
sary, but it was ; the LEA
statements would not as¬
semble without error.)
8. Change all references to
labels in the IF statement
from "label" to "offset
label."
9. Alter a few listing control
statements.
The virtual disk conversion was, no
doubt, a fairly simple one. There
were no records or structures, a few
small macros, and one segment.
Incidentally, even when the ob¬
vious changes are made in a conver¬
sion task, minor differences will
still remain in syntax. For example,
the MASM statements
mov byte ptr es:[bx], 13
mov [si + 6], al
must be coded in RASM as
mov esibyte ptr [bx], 13
mov 6[si], al
The issue of object module
compatibility is more interesting.
Obviously, code that is assembled/
linked with RASM is compatible
with DOS; what I am speaking of
here is the compatibility of RASM's
unlinked OBJ files with the PC-DOS
linker. The official word from DRI
would make any New Englander
proud: "Mebbe 'tis, mebbe 'tain't."
Digital Research does not claim
compatibility in that area, does not
support the DOS linker, and is not
responsible if RASM object files
cannot be linked in that manner.
The fact is that it usually works
fine. Both linkers use Intel-type ob¬
ject module formats, and, in several
weeks of testing, I created no file
that the PC-DOS linker rejected (ex¬
cept as noted in the next paragraph).
Furthermore, all of the files I tried
executed properly.
Certainly, that is not to say that
it will always work. One potential
problem lies in the area of identi¬
fiers. RASM identifiers are signifi¬
cant to 80 characters, and it is quite
possible that LINK, expecting only
31 characters, would choke on long
identifiers. A few quick tests indi¬
cated that, in fact, LINK did not
mind 40-character public symbols.
However, it did fail (without com¬
ment) if there were two RASM
identifiers that differed only after
the first 31 characters.
If it's possible to use PC-DOS's
LINK on RASM-produced files, it
makes sense that it would also be
possible to use LINK-86 on MASM
files, and, indeed, that appears to be
true. Although I ran fewer tests in
this direction, I had no difficulty
linking MASM object files with the
DRI linker. Again, however, there
are potential problems. It is unclear,
for example, what LINK-86 would
do if it were to encounter one of
MASM's MEMORY segments, since
MEMORY is not one of RASM's
segment types.
The implication of this semi¬
compatibility is that it may well be
possible to use RASM to produce
small assembly language subrou¬
tines for compiled languages that
produce Microsoft-style object files.
I successfully linked a RASM-assem-
bled subroutine with a C program
written under Computer Innova¬
tions' C86 compiler. In view of
RASM's potential for the production
of simple programs or subroutines,
this is good news.
Perhaps more importantly, it
should also be feasible to use the
greater power of MASM in the pro¬
duction of assembly language mod¬
ules for the DRI languages. This
My Programs Always
Compile the FirsTime™
Yours can too!
FirsTime is an intelligent editor that
knows the rules of the language being
programmed. It checks your statements
as you enter them, and if it spots a mis¬
take, it identifies it. FirsTime then posi¬
tions the cursor over the error so you
can correct it easily. FirsTime will iden¬
tify all syntax errors, undefined varia¬
bles, and even statements with mis¬
matched variable types. In fact, any
program developed with the FirsTime
editor will compile on the first try.
Unprecedented
FirsTime has many unique features
found in no other editor. These powerful
capabilities include a zoom command
that allows you to examine the struc¬
ture of your program, automatic pro¬
gram formatting, and block transforms.
If you wish, you can work even faster
by automatically generating program
structures with a single key-stroke. This
feature is especially useful to those
learning a new language, or to those
who often switch between different
languages.
Other Features: Full screen editing,
horizontal scrolling, function keys
labeled on screen, help screens, inserts,
deletes, appends, searches, and global
replacing.
Programmers enjoy using FirsTime,
because its powerful features allow
them to concentrate on the program
logic without having to worry about cod¬
ing details. Debugging is reduced dram¬
atically, and deadlines are more easily
met.
The Spruce FirsTime editor is imme¬
diately available for PASCAL ($245)
and C ($295) on the IBM Personal
Computer and its compatibles. A dem¬
onstration disk is available for $25. (N.J.
residents please add 6% sales tax.)
For programs that compile the
FirsTime.
To order, call or send check to:
Spruce
Technology Corporation
110 Whispering Pines Drive
Lincroft, N.J. 07738
(201) 741-8188 or (201) 663-0063
Dealer enquiries welcome. Custom versions
for computer manufacturers and language
developers are available.
FirstTime is a trademark of Spruce Technology
Corporation.
August 1984
CIRCLE NO. 132 ON READER SERVICE CARD
RASM-86
would spare MASM owners the ex¬
pense of buying another assembler.
Performance
As I mentioned earlier, one of the
factors contributing to the excite¬
ment that greeted the news of
RASM's release was that it was sup¬
posed to be significantly faster than
MASM. Indeed, RASM is somewhat
faster, though perhaps not as much
as had been hoped.
Table 2 lists assembly times for
five files ranging in size from a few
bytes to about 48K. The "empty"
file is a minimum assembly lan¬
guage file, consisting of a single
END statement; this timing shows
how long it takes simply to load and
execute the two assemblers. The
tests were conducted on a standard
IBM PC with 512K of RAM and a
Davong hard disk. The timings in¬
clude load time from the Davong.
Both assemblers were instructed to
create object files only—no listing,
symbol, or cross-reference files.
Obviously, since the assemblers
are not source-compatible, the files
used for comparison are not identi¬
cal; however, I attempted to make
as few alterations as possible in con¬
verting. There are two MASM tim¬
ings for each file. The MACRO col¬
umn shows the timings for the files
in their original condition, includ¬
ing all macros, and the MASM col¬
umn shows the timings for the files
after all macros had been converted
to in-line code. All other MASM
code, such as structures and struc¬
ture references, remained intact.
The timing information clearly
shows that RASM's performance
improves relative to MASM as the
size of the file being assembled in¬
creases. For small files, there was
very little difference; MASM was
actually a little faster for a very
small (3.5K) file. On the other end
of the scale, RASM was much faster
than MASM in assembling the
largest file, the 48K SDIR program.
I RASM completed the job in 1 min¬
ute, 41 seconds, whereas MASM
took 3 minutes, 40 seconds.
Bear in mind that the version of
SDIR being tested makes fairly ex¬
tensive use of macros and struc¬
tures. As a result, it's readable, un¬
derstandable, and maintainable,
even by someone who didn't write
it. For example, I have no difficulty
understanding what the SDIR code
does. The same code, after conver¬
sion, was much less clear. If I were
going to make any changes to the
program, I would still use the origi¬
nal MASM version. The extra few
minutes spent assembling are a
small price to pay for a more signifi¬
cant (though unmeasurable) reduc¬
tion in coding and maintenance
time.
The Rest of the Tools
As mentioned above, RASM-86 is
one part of a DRI package called As¬
sembler Plus Tools, including the
linker, an object librarian, a cross-
referencer, and a debugger.
NOW YOU CAN WORK
IN C WITH ONLY
BASIC KNOWLEDGE
Enjoy the Best of Both Worlds
with BASIC-C™!
©
Write or Call Collect
OURCE
C Source
12801 Frost Rd.
Kansas City, MO 64138
816 - 353-8808
Until now, IBM BASIC and C were about as far apart as apples
and oranges — and if you wanted to move from BASIC to C, you
had to go back to square one. Not anymore!
There’s no denying that BASIC is a fine language: it has
probably helped you learn a lot about programming computers.
But now that you know how to program, isn’t it time to take the
next step — to a language that was designed to help you quickly
develop software that is fast, compact, and portable?
BASIC.C can help you make the transition smoothly: it’s a
library of C functions providing BASIC’s high level capabilities
you’ve come to know so well. Functions for string handling,
sequential "'and random i/o, graphics, and many more — all
designed to look and work like BASIC.
You get the source code to BASIC_C: extensively documented,
it provides many examples to help you leam how to write C
functions, and if a function doesn’t happen to suit your specific
needs . . . change it!
C Source provides a complete development package: the
BASIC_C Library, a full screen editor, and a choice of three C
compilers. Buy it all, or just the pieces you need.
BASIC.C Library - source code.$175
EC - full screen editor.$ 85
BASIC.C & EC .$225
BASIC.C & DeSmet C Compiler.$275
BASIC.C & Computer Innovations C compiler.$475
BASIC.C & Lattice C compiler.$550
BASIC.C, DeSmet C Compiler, & EC. .$325
BASIC.C, Computer Innovations C compiler, & EC.$525
BASIC.C, Lattice C compiler, & EC.$600
CIRCLE NO. 116 ON READER SERVICE CARD
Before Johann Sebastian Bach developed
a new method of tuning, you had to
change instruments practically every time
you wanted to change keys.Very difficult.
Before Avocet introduced its family of
cross-assemblers, developing micro-pro¬
cessor software was much the same. You
needed a separate development system
for practically every type of processor.
Very difficult and very expensive.
But with Avocet’s cross-assemblers, a
single computer can develop software for
virtually any microprocessor! Does that
put us in a league with Bach? You decide.
The Well-Tempered Cross-Assembler
Avocet
Cross-assembler
Target
Microprocessor
CP/M-80
Version
CP/M-86
IBM PC, MSDOS’ *
Versions
XASMZ80
Z-80
XASM85
8085
XASM05
6805
$200.00
each
$250.00
each
XASM09
6809
XASM18
1802
XASM48
8048/8041
XASM51
8051
XASM65
6502
XASM68
6800/01
XASMZ8
Z8
XASMF8
F8/3870
$300.00
each
XASM400
COP400
XASM75
NEC 7500
$500.00
Coming soon: XASM68K...68000
Development Tools That Work
Avocet cross-assemblers are fast, reliable
and user-proven in over 3 years of actual
use. Ask NASA, IBM, XEROX or the hun¬
dreds of other organizations that use them.
Every time you see a new microprocessor-
based product, there’s a good chance it
was developed with Avocet cross-
assemblers.
Avocet cross-assemblers are easy to use.
They run on any computer with CP/M*
and process assembly language for the
most popular microprocessor families.
5V4” disk formats available at no extra
cost include Osborne, Xerox, H-P, IBM
PC, Kaypro, North Star, Zenith,
Televideo, Otrona, DEC.
Turn Your Computer Into A
Complete Development System
Of course, there’s more. Avocet has the
tools you need from start to finish to enter,
assemble and test your software and finally
cast it in EPROM:
Text Editor VEDIT - full-screen text edi¬
tor by CompuView. Makes source code
entry a snap. Full-screen text editing, plus
TECO-like macro facility for repetitive
tasks. Pre-configured for over 40 terminals
and personal computers as well as in user-
configurable form.
CP/M-80 version. $150
CP/M -86 or MDOS version. $195
(when ordered with any Avocet product)
EPROM Programmer Model 7128
EPROM Programmer by GTek programs
most EPROMS without the need for per¬
sonality modules. Self-contained power
supply ... accepts ASCII commands and
data from any computer through RS 232
serial interface. Cross-assembler hex ob¬
ject files can be down-loaded directly.
Commands include verify and read, as
well as partial programming.
PROM types supported: 2508, 2758,
2516, 2716, 2532, 2732, 2732A,
27C32, MCM8766, 2564, 2764, 27C64,
27128, 8748, 8741, 8749, 8742, 8751,
8755, plus Seeq and Xicor EEPROMS.
(Upgrade kits will be available for new
PROM types as they are introduced.)
Programmer.$429
Options include:
Software Driver Package --
enhanced features, no installation
required.
CP/M-80 Version.$ 75
IBM PC Version.$ 95
RS 232 Cable.$30
8748 family socket adaptor... $ 98
8751 family socket adaptor . . . $174
8755 family socket adaptor . . . $135
G7228 Programmer by GTek -- baud
to 2400 ... superfast, adaptive program¬
ming algorithms ... programs 2764 in one
minute.
Programmer. $549
Ask us about Gang and PAL programmers.
HEXTRAN Universal HEX File Con¬
verter - Converts to and from Intel,
Motorola, MOS Technology, Mostek,
RCA, Fairchild, Tektronix, Texas
Instruments and Binary formats.
Converter, each version.$250
Call Us
If you’re thinking about development sys¬
tems, call us for some straight talk. If we
don’t have what you need, we’ll help you
find out who does. If you like, we’ll even
talk about Bach.
CALL TOLL FREE 1-800-448-8500
(In the U.S. except Alaska and Hawaii)
VISA and Mastercard accepted. All populai disc formats now
available -- please specify. Prices do not include shipping and
handling - call for exact quotes. OEM INQUIRIES INVITED.
‘Trademark of Digital Research * ’Trademark of Microsoft
AVOCET JT
SYSTEMS INC:
DEPT. 884-PCT
804 SOUTH STATE STREET
DOVER, DELAWARE 19901
302-734-0151 TELEX 467210
CIRCLE NO. 110 ON READER SERVICE CARD
RASM-86
Your Key To
Microcomputer Software!
More
software
for more
computers
...and more.
Whatever your software needs, all
you need to know is Westico. We
have hundreds of business and
professional software programs
in formats to fit more than 120
microcomputers, including IBM
PC, MS DOS and CP/M-compatible
systems. Our large inventory means
you get the software you want,
when you want it. Plus, our after
sales service is designed to keep
you smiling. Westico helps you get
the most from your microcomputer.
Find out more with our new
directory. Detailed descriptions of
all our programs help you select
the correct software to fit your needs.
Start getting more with Westico.
r — Order Your Copy Today-* m
I □ Rush me the brand new Westico
I software directory.
_ Name_
■ Firm_
| Address_
I City_State_Zip_
I Mail to:
i WESTICO
The Software Express Service™
I 25 Van Zant Street • Norwalk, CT 06855
(203) 853-6880 • Telex 64-3788
© Copyright 1984 Westico, Inc. WES-37. j
CIRCLE NO. 169 ON READER SERVICE CARD
LINK-86 performs the same
function as does the standard DOS
linker and has the same characteris¬
tics regarding compatibility. In
some ways, LINK-86 has more flexi¬
bility than IBM's LINK; for ex¬
ample, the programmer can tell it to
allocate an arbitrary number of ex¬
tra (unused) bytes to any segment.
LINK-86 can be instructed to get its
command input from a disk file,
which reduces repetitive typing and
permits long command strings that
could not be entered directly.
One slightly tricky feature of
LINK-86 is the NOPREFIX option.
The linker normally adds some pre¬
fix code at the beginning of the
linked EXE file. According to DRI,
the prefix code allows the linked
program to behave as though it
were running under CP/M-86. The
prefix code is required for linking
object modules created by DRLs
compilers, but it is not needed for
linking only RASM-86 modules.
NOPREFIX suppresses the pre¬
fix code and produces a standard
EXE file. The option must be used
to convert the EXE file to COM
format; because the prefix code con¬
tains segment references.
As far as I could tell, LINK-86
cannot create a high-loading code
file,- RASM has no functions equiva¬
lent to the IBM linker's /HIGH and
/DSALLOCATION switches.
LIB-86 is an object code librar¬
ian. That is, it permits object mod¬
ules to be separately assembled and
placed into a library file for future
use during the link process. For ex¬
ample, a CLS procedure to clear the
screen might be created, assembled,
and placed into a library. CLS could
then be declared as an external label
in any RASM source file, and the
linker will extract the module from
the library when it is needed.
The advantage to using object
libraries is that the programmer can
avoid cluttering up disk storage
with too many small modules, thus
simplifying disk maintenance and
I reducing wasted space. PC-DOS does
not provide a librarian (although,
oddly, MS-DOS does). LIB-86 is rea¬
sonably easy to use and appears to
perform well. Unfortunately, no
source librarian is provided.
XREF-86 is an assembly lan¬
guage cross referencer. It reads a list
file and its associated symbol file
(both of which are created by the
assembler) and creates a duplicate of
the list file, with each line of source
code prefixed by a line number. It
then appends a symbol cross-refer¬
ence listing to the end of the file;
the cross reference lists all symbols
and indicates where they are de¬
fined and/or referenced. XREF-86 is
similar to IBM's CREF program.
The final part of the Assembler
Plus Tools package is the debugger,
SID-86. In many ways, SID is simi¬
lar to PC-DOS's DEBUG, but it has
one major advantage: SID can read
the symbol file created by LINK-86
and use the symbols contained
therein. Thus, during a SID-86 run,
the programmer can refer to vari¬
ables and labels by name, rather
than having to use the listings and
symbol files directly. Symbols also
appear in the disassembly:
GET_INPUT:
xxxx:0100 CALL 01C6
.GETJKEY
xxxx:0103 MOV 0017, AX
.INCHAR
xxxx:0106 LOOP 0100
GET INPUT
Using symbols lessens the pain of
the debugging process considerably.
SID and DEBUG are both com¬
mand-driven debuggers, but the
commands are just different enough
to be confusing. SID seems to have
all the functions DEBUG does, plus
a few more (decimal data entry, di¬
rect creation of an input command
tail, fancier breakpoints, tracing
with calls executed in full, etc.).
One curious omission is that RASM-
86 supports 8087 mnemonics, but
SID does not. Although DRI would
not officially confirm our infor¬
mation, industry sources say that
PC Tech Journal
^re^ e ' . *he .
It's a headache, of sorts.
W hether your mailing list, account¬
ing package, DBMS, or other end-
user application is currently under
development or already on the market,
you've probably discovered that ex¬
ternal sorting can be a difficult, costly,
and time-consuming headache. Es¬
pecially in today's floppy-disk storage
environment.
T hat's why we developed
BEAMSORT™ the revolutionary in-
place OEM sorting module. The older
algorithms eat up valuable space on
your user's often over-crowded disk¬
ettes. By installing BEAMSORT™
you get today's tech¬
nology at a fraction
of it's true devel¬
opment cost,
and you've got
one less problem
to worry about.
B EAMSORT™runs under CP/M-80*,
CP/M-86*, MS-DOS,* andPC-DOS,
supports multiple-volume files, ASCII,
Microsoft .RAN, and dBASE II* .DBF
file formats, and interfaces to all major
languages. Custom interfacing, operat¬
ing environments, and file formats
are available.
W hat about performance?
BEAMSORT™ runs SuperSort*'s
own benchmark faster than SuperSort*
does! It's amazing, but don't take our
word for it. Write us on your company
letterhead for our OEM evaluation kit
You must see this for yourself!
For fast relief.
*CPM, MS-DOS, dBase 11 and SuperSort are trademarks of Digital
Research, Microsoft, Ashton-Tate, and Micropro, respectively.
Phlexible Data Systems, Inc.
3017 Bateman Street, Berkeley, CA 94705
(415) 540-7181
CIRCLE NO. 271 ON READER SERVICE CARD
SYMD
SYMBOLIC-DEBUGGER
Faster,
easier and
more productive
SYMD—the unique new
programming aid for PC-
DOS™ and MS-DOS™
systems—dramatically
reduces the time and
effort needed to identify
and correct programming
errors. SYMD simplifies
debugging by utilizing
source code symbols and
line numbers wherever
tmmS-DOS is a trademark of Microsoft Corporation.
an address or offset is
required. Symbols are
easier to remember , more
efficient to use. SYMD
also lets you: Examine
and/or change real
number data; assign per¬
manent or temporary
breakpoints, including
pass counts to control
looping; check instruction
execution sequences with
backtrace commands; use
profiling commands to
identify the most active
parts of a program. And
much more. SYMD can
be used with compiler
or assembly language
programs. System
requirements: PC-DOS
or MS-DOS 1.1 or 2.0;
192K recommended;
80-column display.
SYMD is introductory
priced at only $90. Free
literature on request.
VISA or MasterCard
accepted.
tmpc-DOS is a trademark of the IBM Corporation.
D+Vs
RASM-86
the company is planning to include
8087 support in a future release.
My only real complaint about
SID-86 is that the trace (single-step)
display shows the machine state
prior to the most recently executed
instruction: in other words, the pro¬
grammer cannot see the results of a
traced instruction until after he has
traced the next instruction.
Conclusion
A few months ago, during a Compu¬
Serve on-line conference on IBM's
MASM, a frustrated newcomer to
PC assembly language programming
wailed, "Isn't there any way to just
ORG and go? Why do I have to AS¬
SUME and SEGMENT and PROC
and all that stuff?"
ORG and go. Well, if that's
what you want, maybe DRI's
RASM-86 will be just your cup of
tea. But I keep thinking back to the
response given the CompuServe
newcomer: the reason that MASM
is a little more complex than a Z80
assembler is that the chip it creates
programs for is a lot more complex.
MASM's role in life is to let the
programmer take advantage of the
flexibility of the PC's brain.
The price for RASM's relative
simplicity is loss of control over the
CPU; the price for RASM's small¬
ness is loss of flexibility in manipu¬
lating the objects that are created. If
you don't need those functions,
RASM may be a good choice for
you. As for me, I'm sticking with
IBM's Macro Assembler. i |m ^J
RASM-86
Digital Research, Inc.
160 Central, P.O. Box 579
Pacific Grove, CA 93950
408-649-3896
CIRCLE 458 ON READER SERVICE CARD
r Systems
400 Amherst Street Nashua, NH 03063 (603) 881-7140
150
CIRCLE NO. 131 ON READER SERVICE CARD
PC Tech Journal
NOW AVAILABLE—
THE MASTER
DIRECTORY
OF PRODUCTS
FOR YOUR
- pc
Nearly 400 pages of the most current listings
and information for IBM PC, PC XT, PCjr and compatible hardware,
software, accessories and services—from the publishers of PC.
YOUR PRIMARY REFERENCE...
organizing over 4,000 products and 1,500 vendors, services,
and support systems in one comprehensive, easy-to-use
guide. PC: THE BUYERS GUIDE is the quickest and most
reliable way to locate exactly what you need to expand the
usefulness of your personal computer.
Because it's published quarterly in May, August, No¬
vember and February, PC: THE BUYERS GUIDE is the most
up-to-date guide of its kind, accurately describing each
product and its function and cost. Find out what level of skill
is required to get the most from the product and everything is
logically categorized and indexed with cross-references so
you won't miss one listing!
GET MORE FROM YOUR PC
The documentation you received from IBM is only the be¬
ginning. Finding the right hardware and software is whal
really makes the difference in how effectively your IBM or
compatible PC performs—that's why you need PC: THE
BUYERS GUIDE! You’ll also find detailed listings for the
following important services and accessories:
User Groups
Insurance Services
Professional Societies
Retail Clubs
Computer Groups
Maintenance services
Consultants
On-line Bulletin Board
Databases
Furniture
Retail and Mail Order Outlets
Literature
AND MUCH MORE!
Be sure to order your copy of PC: THE BUYERS GUIDE
today—fill out the coupon and mail it now!
PHONE TOLL FREE 9 am-5 pm EST:
1-800-526-0790
(In New Jersey 201-540-0445)
ALSO AVAILABLE AT YOUR LOCAL NEWSSTAND
AND COMPUTER STORE
CN1914, Morristown, NJ 07960
Please send me PC: THE BUYERS GUIDE. Enclosed is $9.50
($7.95* per copy, plus $1.55 each for postage and handling.)
($11.00 outside USA, send US funds only). ^Residents of CA,
CO, CT, DC, FL, IL, MA, Ml, MO, NJ and NY State add
applicable sales tax.
Charge My:
| Q American Express
| | Visa Q MasterCard
CARD NO.
EXP. DATE
MR./MRS./MS.
print full name
ADDRESS 1
j CITY/STATE/ZIP
J
"I just found the
ideal solution to
my telecomputing
problems. And it’s
right here inside my
IBM® PC. Plus I got a
free bonus to boot!”
Hayes
Smartmodem 1200B™ and
Smartcom II™ software.
The complete, easy-to-use plug¬
in telecomputing system for the
IBM® PC and compatibles.
IIIIMMMMIMIMML
Looking forjust the right telecomput¬
ing system for your PC? Hayes has it!
Smartmodem 1200B and Smartcom II
communications software. The most
reliable and easy to use modem and
software for your IBM PC or com¬
patible computer. At a great single¬
package value for you. And when
you buy now, you'll also receive a
valuable free offer. From Hayes, the
telecomputing leader.
Smartmodem 1200B.
Your PC’s telephone.
Everything you need to communi-
cate-computer to computer-is on
one, convenient plug-in board. Smart-
modem 1200B easily slides into an
expansion slot of your PC (your dealer
can install it in minutes). You're ready
to send and receive information at up
to 1200 bps. For speedy, economical
transmission to personal computers,
data bases and information services
throughout North America.
So what could make communica¬
tions easier? Smartcom II software,
designed by Hayes specifically for
Smartmodem and your PC!
Smartcom II.
Your Smartmodem's software.
Smartcom II maximizes the out¬
standing capabilities of Smartmodem
1200B. At the same time, it minimizes
your effort.
Thanks to Smartcom II’s menu-
driven ease, the first time out you’ll
be creating messages, sending and
storing them to disk. Simultaneously!
And when you're on the receiving
end, your PC will do all the work,
completely unattended.
CIRCLE NO. 158 ON READER SERVICE CARD
Smartmodem 1200B and Smartcom II are trademarks of Hayes
Microcomputer Products. Inc.
IBM is a registered trademark of International Business
Machines Corp.
* Trademarks of COMPAQ Computer Corporation. Corona
Data Systems, TeleVideo Systems. Inc., Columbia Data
Products. Inc., and Direct. Inc.
CompuServe Information Service is a registered
trademark of CompuServe. Inc., an H&R Block Company.
Dow Jones News/Retrieval is a registered trademark
of Dow Jones & Company. Inc
OAG EE is a registered trademark of the Official Airline
Guides. Inc.
THE SOURCE. AMERICA'S INFORMATION UTILITY is a
service mark of Source Telecomputing Corporation, a
subsidiary of The Reader's Digest Association. Inc.
©1984 Hayes Microcomputer Products, Inc.
Smartcom II stores frequently called
numbers and parameters for lengthy
log-on sequences. So calling another
system requires just a few quick key¬
strokes. And if you ever need it,
on-line "help" is right there at your
fingertips.
A complete,
plug-in telecomputing system
for 9 popular PC models!
Whatever your PC model, Hayes
has the definitive connection!
Smartmodem 1200B and Smartcom
II are compatible with the: IBM PC,
PC XT and PC Portable, COMPAQ
and COMPAQ Plus, Corona, Tele¬
video Portable, Columbia VIP and
Direct IPC1000*
Free introductory subscriptions.
Free access time.
And we’ll also send you a compli¬
mentary copy of Free Software for
the IBM PC, a practical resource book
that tells you how to access and
download more than 600 varied soft¬
ware programs to your PC, with the
help of your Hayes Smartmodem.
And Hayes offers you this valuable
guide free, when you purchase a
Smartmodem 1200B/Smartcom II
telecomputing package!
But remember. To take advantage
of these great bonuses, you need to
get moving fast!
Get on-line with
the telecomputing leader.
See your computer dealer right away!
And plug in to the exciting world of
telecomputing. With Smartmodem
1200B and Smartcom II. A smart buy
for your IBM PC or PC compatible!
Smartcom II comes with more
“built-in" benefits, as well. Your Hayes
telecomputing system includes intro¬
ductory subscriptions and access
time to several leading information
services!
Sample a wide variety of practical
services from CompuServefOAG EE®
(Official Airline Guide), Dow Jones
News/Retrievalf and THE SOURCE, SM
AMERICA'S INFORMATION
UTILITY. SM A value of up to $200, free!
Act now through August 31!
Get an additional $69 value free.
Act right away, and you'll receive
a free introductory subscription to
CompuServe’s Executive Informa¬
tion Service. For accurate, up-to-the-
minute investment information, as
well as news, home shopping, travel,
education services and more! Direct
from CompuServe to your PC screen!
Save this coupon! It’s your ticket
to a $69 value from Hayes.
Offer good through August 31,1984.
To receive your free introductory subscription to CompuServe’s Executive
Information Service, and your complimentary copy of Free Software for the
IBM PC: Complete this coupon ancfmail direct to Hayes with your Product
Registration Card (inside your Smartmodem 1200B and Smartcom II package).
Name
I Address
City state Zip
Date of Purchase Place of Purchase
Mail to: Hayes Microcomputer Products, Inc., Dept. 1200B,
5923 Peachtree Industrial Blvd., Norcross, Georgia 30092.
The introductory offer for CompuServe's Executive Information Service includes a ffeesubscriptlon
plus $15 worth of free connect time.
Great Lakes offers you add-on
storage and tape back-up at an
unforgettably attractive price
So you’re about to outgrow the storage capacity of your
IBM PC™ or compatible computer? And now you’re biting
your nails over the cost of adding more bytes.
No need! Consider the eminently memorable combination
price of the Great Lakes Superior 10™ hard disk subsystem
and the Great Lakes Quartermaster 23™ tape back-up module.
The Superior 10—$1495
Not only is our $1495 price considerably lower than the
nearest 10-megabyte competitor, but we offer the best
dollar-per-megabyte ratio for the 23mb and 40mb subsystems
as well. The ratios? lOmb at $149 per mb; 23mb at $98 per
mb (retail $2249); 40mb at $70 per mb (retail $2795).
Quartermaster 23—$995
This optional 23mb tape back-up module is simple to
use and efficient as well. Take, for example, our remarkable
Selecta-File™ feature. This Vi-inch tape drive module
allows you to back up and restore data using selective
file-by-file data transfer (or full streaming). And it masters
all this for just $43 per megabyte.
Complete and ready-to-use
When you buy a Superior hard disk subsystem, every¬
thing is there, ready to operate at high speed. This includes:
high quality fixed hard disk, controller board, software that
runs on DOS 1.1 and 2.0 (CP/M 86™ and other operating sys¬
tems available), host adaptor board, integral power supply,
cables, external custom chassis with additional space for our
tape back-up, and documentation.
Our line is expansive, not expensive
Need even more storage for your IBM PC or compatible?
We offer hard disk subsystems including 65,110 and 140mb
—all designed for superb quality at the very lowest possible
prices. And we stand behind all our products with our 90-day
warranty. That’s because our quality lives up to our first name
Available at leading dealers everywhere
COMPUTER PERIPHERALS, INC.
We live up to our first name
2200 W. Higgins Road, Hoffman Estates, IL 60195
1-800-323-6836/1-312-884-7272
CIRCLE NO. 122 ON READER SERVICE CARD
™IBM PC is a trademark of International Business Machines Corporation.
"Superior (10 through 140), Quartermaster 23, and,Selecta-File are trademarks of
Great Lakes Computer Peripherals, Inc.
"CP/M 86 is a trademark of Digital Research, Inc.
. THE
, BETTER TO
. COMMUNICATE
WITH
V V 1 1 1 Depending upon the prescribed use, either of these
IBM communications packages could outperform the other
Among communications products on the software shelves today are two from IBM-one works well for mainframe
communications but not so well for general or personal use ; the other fills in the gap for general or personal use
and is especially well-suited to electronic mail functions. The first product is an updated version of IBM's Asyn¬
chronous Communications Support package (ACS). The second is Microcom's Personal Communications Manager
(PCM) draped in the wraps and banner of IBM.
Asynchronous Communications Support was one of the first communications packages available for the PC.
ACS was and is basically a dumb terminal emulator with some capabilities added to permit file transfers with IBM
host machines.The Personal Communications Manager is a neat package designed to whisk the user and his PC
into the age of the electronic, or paperless, office. PCM handles several types of mail electronically in unattended
send/receive operation and even has a terminal emulation mode.
Both of these programs were tested for the following review on a variety of machines in the PC family, talking
to each other and to a range of other host machines.
Augie Hansen is a programmer for a major telecommunications company. His interests include commercial and amateur radio communications
He is the author of Chrome Ranger, an arcade game for the IBM PC that is published by Omniware.
August 1984
155
Communications
Feature Description
Status
Comments
Terminal selection
Dow Jones/The Source
new
Added to top-level menu
selections
User-specified
revised
Combines user-specified
full- and half-duplex entries
Terminal session printing
new
<F7> toggles ON/OFF
Data capture to file
new
<F8> toggles ON/OFF
General purpose file transfer
protocols
new
XON/OFF control flow
new
Prompted (CR)
COM2 support
new
Option in set-up file
Control character filtering
new
Up to 4 and sets
HELP menu in terminal mode
new
Invoke with <F10>
File format conversion
new
Binary-ASCII & back
Table 1: Summary of New and Revised Features of ACS 2.0
Asynchronous
Communications
Support, Version 2.0
IBM's first attempt at communi¬
cations software for the PC did rea¬
sonably well in the marketplace,
largely because of a dearth of com¬
petition. The ACS package worked
well with IBM host systems, but it
offered little except dumb-terminal
features for users of bulletin boards
and other mainframe and minicom¬
puter operating systems.
Its strongest following appears
to be in the business community, in
which literally tons of IBM main¬
frame equipment hold down little
squares of raised flooring in flass
and steel structures around the
globe. Most communicators of the
shirtsleeves bulletin-board crowd,
on the other hand, prefer PC-TALK
and other such programs that were
designed for that environment.
ACS's version 2.0 is an improve¬
ment over its predecessor. It is still
completely menu driven, which dis¬
appoints those who ascribe to the
command-oriented approach, but it's
a serviceable product. Several defi¬
ciencies of the original product have
been rectified (destructive backspace
works now) and some new features
have been added. Table 1 is a sum¬
mary of new and revised ACS fea¬
tures. Additions include a much-
needed help feature, support for a
second serial adapter card in case
the first is committed to some other
task, and control character filtering.
In addition, ACS now has more of a
general-purpose file transfer capabil¬
ity and the ability to capture data to
a printer and to disk.
Like its predecessor, the new
version of ACS is not copy protected
and may be run on virtually any
IBM PC or clone having at least 64K
RAM, a floppy or hard disk drive,
either an async port card and mo¬
dem or an internal modem, and ei¬
ther a 40- or an 80-column display.
IBM has added displays of the
default values of the communica¬
tions parameters to the terminal fea¬
ture menu (see figure 1) so the user
doesn't have to make unnecessary
menu selections just to find out the
current settings. The procedure
would have been even easier, how¬
ever, had IBM put the three items
that don't change from one terminal
menu to the next, such as 1-3, in
the same location. Then, the user
would not have to press 13 to start
one "type" and 3 to start some other
"type." The quotes are used because
the terminal feature files do not re¬
ally define terminal types. Rather,
they simply set the basic communi¬
cations parameters for the particular
host environment in question.
One of the choices offered for
terminal descriptions is which con¬
trol characters to delete upon re¬
ceipt. Figure 2 shows the menu/
work screen that is used to select
the first control character to delete.
The user can select up to four, with
any one of the selections being all
of the unused control characters
(those that are not used for normal
screen and printer formatting).
File Transfers
Version 1.0 of Asynchronous Com¬
munications Support allowed files to
be transferred between IBM PCs and
between the PC and IBM main¬
frame hosts running MVS/TSO and
VM/370 operating systems, if the
needed line-oriented editors were
available. Version 2.0 adds support
for sending files to remote systems
using either XON/XOFF flow con¬
trol or prompting with a carriage-
return character. This function is
called file sending. Files may be re¬
ceived in unattended auto-answer
mode using the file writing func¬
tion. The user can name only one
file that will receive transferred
data, whether the data consist of
one character or a hundred files.
The individual files must be ex¬
tracted at a later time.
A file conversion program ena¬
bles the user to send and receive bi¬
nary files as ASCII text files. The
process makes a file to be sent swell
to twice its original size and doubles
the transmission time compared to
an ASCII file of the same original
size. Even worse, to send a binary
file the user must leave ACS to use
the separate FILECONV program,
then go back into ACS to use the
file transfer function. The proce¬
dure is reversed for receiving a file.
That is the price for ACS's use of
seven data bits instead of eight. Fur¬
thermore, if the user is in the file¬
writing mode and is sent an uncon¬
verted binary file, the editor may be
unable to sort the file's contents.
156
PC Tech Journal
Terminal Feature Menu
Choose-*
1
2
3
4
5
6
7
Line Bit Bate [388J
Type of Parity Checking [Mark]
Number of Stop Bits [One Bit!
XON/XOFF Support [Present]
Line Turnaround Char Sent to Host [CR3
Local or Host Character Echoing [Local]
First Character to be Deleted [None]
8 Second Character to be Deleted [None!
9 Third Character to be Deleted [None]
18 Fourth Character to be Deleted [None]
11 Line End Character Sent by Host [CR]
12 Communications Adapter Address [1]
13 Start Up Selected Terminal
14 Save This Terminal Specification
15 Return to Terminal Selection Menu
Type number and press Enter
Figure 1: ACS Terminal Feature Menu
First Character to be Deleted
Choose; 1
** 1 No Character Specified
2 Carriage Return (HEX 8D)
3 Linefeed (HEX 8A)
4 Bell (HEX 87)
5 XON (HEX 11)
6 XOFF (HEX 13)
7 Escape (HEX IB)
8 Tab (HEX 89)
9 Backspace (HEX 88)
18 All Unused Control Characters
** Indicates current default
Type number and press Enter
Figure 2: Selective Deletion of Received
Characters in ACS
Data Capture
ACS version 2.0 allows the user to
record what he receives either to a
printer or to a disk. IBM calls these
functions terminal session printing
and writing of host output to a file.
Most communications programs call
the process of writing to a file (or to
memory) data capture, but IBM, as
usual, takes its own course.
What does the user do if he
cannot remember—or never
learned—the command to start data
capture to disk? Figure 3 shows an
interactive session in progress and
illustrates the effect of pressing the
F10 key to get on-screen help, a fea¬
ture that was not available in the
earlier version of the program.
The F7 and F8 keys toggle data
capture to the printer and disk, re¬
spectively. The printing and disk
writing functions may be run si¬
multaneously. If the host computer
recognizes and responds quickly to
the XON/XOFF control codes, no
data will be lost. If the response is
too slow, the data can be captured to
disk only and printed out later.
The ACS package interacts well
with IBM mainframe computers
and other IBM PCs and work-alikes.
The mainframe connection appears
to be the primary reason that ver¬
sion 2.0 is selling well. File transfers
and general system interactions in
these environments are smooth and
essentially trouble-free.
In other environments, how¬
ever, ACS provides little or no help
with any task requiring more than a
simple dumb-terminal interface.
The XMODEM protocol, because of
its wide acceptance in the micro¬
computer world, would have been a
welcome addition to ACS to en¬
hance its use in transferring files to
and from bulletin boards and other
such systems. The flow control and
prompted techniques incorporated
into version 2.0 are a step in the
right direction but represent only a
partial solution to the general prob¬
lem of file transfers.
Another much-needed feature
is a dialing directory. This would
avoid the manual repetition of tasks
such as finding a telephone number
and keying it in each time a call is
started, which is especially annoy¬
ing if the call is to a busy system.
Regardless of the host environ¬
ment involved, perhaps the most
troublesome aspect of ACS is its
poor user interface. In a word, it is
tedious. Menus have a place, espe¬
cially for the novice or infrequent
user of a program, but they really
slow down and irritate even moder¬
ately experienced users. Programs
should provide a method to bypass
certain steps if the user knows what
to do without getting screens full of
instructions and help messages.
ACS prevents accidental data
loss in download situations by offer¬
ing the options of exiting the func¬
tion (E), appending to the named re¬
ceiving file (A), or overwriting it
(O). The product, however, does not
have a directory-listing display of
disks that can be used to find out
the name of a file to send. The user
must guess what's on the disks.
There is a way to get a direc¬
tory listing, although it's undocu¬
mented: quit the program by typing
Ctrl-Break (type it twice if neces¬
sary) and use the FILES command in
the BASIC interpreter to get the
directory listing, then type CONT
to return to the ACS program. De¬
pending on where the user was
within ACS when he broke out, he
may have to hit ENTER a couple of
times to restart the program.
A few additional complaints:
the program is slow to load, even
when the TERMINAL.BAS file is
in the tokenized storage format; the
screen displays of incoming data are
jerky because of the method used to
display data from the receiving buf¬
fer,- and the program will not allow
the line to be disconnected until the
August 1984
157
Communications
When operating as a terminal- use function keys as follows:
FI Attention (Break) sent to host
F3 Clear (Display next) error message
F5 Switch to SEND state (Ufl/370 only)
F7 Turn OH/OFF printer function (OFF!
F9 Unused F18 This HELP Menu
You are back as a terminal
F2 Access Function Selection Menu
F4 Turn OH/OFF receive errors t OFF I
F6 Turn OH/OFF hex listing [OFF]
F8 Turn ON/OFF file writing [0FF3
[ON or 0FF1 indicates current status.
Personal Comiunications Manager
1. Enter Terminal Emulator
2. Enter Electronic Mail
3. Edit File
4. Reconfigure
5. Exit Program
F?<PRINT> F8<FILEWRITE) F18<H£LP>
Htke selection (1-5): IJ
Figure 3: ACS Help Display During Terminal Session
Figure 4: PCM Top-level Menu
other end drops off—the modem
must be turned off, which is not
convenient with built-ins. The dis¬
connect problem occurs with sys¬
tems, such as UNIX, that wait for
another user to log in on a terminal
just vacated by someone else.
Personal
Communications
Manager
PCM consists of several modules,
some written in assembly language
and some in compiled BASIC. The
file PCM.COM calls the main pro¬
gram, MCI.EXE (which contains
the top-level menu and the code for
terminal emulation, configuration,
and linkages), to the selected editor
and to the electronic mail module.
PCM is not copy protected, so neces¬
sary back-ups can be made and in-
GAME BOOKS
FROM CREATIVE COMPUTING
BASIC COMPUTER GAMES, Microcomputer Edition, edited by
i David H. Ahl. Here’s a great collection of 101 fascinating games, all
I - written in easy-to-use Microsoft BASIC. Play Craps, Combat, Super
Star Trek, Lunar LEM Rocket, Gomoko, Checkers, Boxing, Bowling-
and 93 others! With an introduction, notes on Microsoft BASIC, and
conversion instructions for other BASICs. S'/*" x 11", softcover illus¬
trated, with an index, 183 pp. $7.95 ($1.50). #6C
MORE BASIC COMPUTER GAMES, edited by David H. Ahl and
Steve North. In this sequel to Basic Computer Games you’ll find 84
challenging new games, complete with sample runs, program list¬
ings and illustrations. All run in Microsoft BASIC. Race your Ferrari,
become a millionaire, joust with a knight, crack a safe, and more!
Conversion table to other BASICs included. SV" x 11", softcover,
illustrated, 200 pp. $7.95 ($1.50) #6C2
TRS-80 Microcomputer Edition, $7.95 ($1.50). #6C4
TRS-80 is a registered trademark of the Radio Shack Division of Tandy Corp.
CREATIVE COMPUTING PRESS ^^Pkfnsl NJ07950 n ° Ver ^
Send me the books listed below:
ITEM
NO.
PRICE
EACH
P&H*
( )
CA NJ and NY residents add applicable sales tax
Outside USA add S3 to regular postage and handling per order.
CHECK ONE: PAYMENT ENCLOSED $_
TOTAL AMOUNT
□ CHARGE MY: □ American Express Q MasterCard □ Visa
(Charge and phone orders: $10 minimumj
Card No_
Mr./Mrs./Ms,.
Address_
City.
_Exp. Date_
(please print full name)
Apt.
State
—Zip—
For faster service CALL TOLL FREE: 800-631-8112. (In NJ call 201-540-0445)
COKP1ETE
YOHICI
LIBRARY
OF
TECH
JOURNAL
Add to your PC TECH JOURNAL collection today. Make your
personal library complete and authoritative with any issues
you may be missing.
Copies are available for issues published during the last
twelve months—be sure to specify the issues you want. If a
particular issue is out of stock, your payment will be refunded
promptly.
Back issues of PC TECH JOURNAL are priced at $7.00
each, postpaid. Outside USA, $8.00 each.
PC TECH JOURNAL
CN 1914, Morristown, NJ 07960
Please send issues of PC TECH JOURNAL listed below:
MCBI
J
Issue
Qty.
Unit Price
Total Price
:
'
Payment Enclosed
$
Mr./Mrs./Ms._
Address-
(print full name)
L_
City/State/Zip_
Drowning
a sea of
sohi
Help's within
reach...
Applications backlog. Technology blur. Mounting user
essures. Staying abreast of changing prices. A tidal wave of
oblems!
Even if some answers are available, you have to go to too
any sources and sift through so much information, there’s not
tough time to locate the solutions to your immediate and most
Lportant problems.
Well, help IS within easy reach—in the form of an informa-
•n system that displays all your current software, hardware and
mmunications options for instant reference.
That system is DATA SOURCES, and you’re invited to make
work for you. Simply fill in the coupon and we’ll send you DATA
)URCES’ 4 quarterly editions at 33% off their regular price.
What DATA SOURCES does is organize your options. It
arantees that you've considered all relevant products by guid-
j you to those with the best possibility of success.
DATA SOURCES is a conveniently sized, extremely well-
ganized and skillfully indexed 2-volume reference...maintained
a data-base, constantly updated and published quarterly
)U GET...
UUDWARE —Over 16,000 products from Micros to Mainframes
:ludingperipherals—terminals, printers, memory devices, etc.
rganized by systems compatibility
•FTWARE— The largest available inventory of 18,000 business
ckages for micros, minis, and mainframes including operating
items, utilities, and application packages.
COMMUNICATIONS EQUIPMENT— From modems and multi¬
plexors to local networks, carriers and services, plus all diagnos¬
tic and test equipment.
SERVICES, SUPPLIER, SUPPORT —Most complete organized list¬
ing of suppliers from installation design to maintenance and data
center operations—over 8,000 companies.
NEW FEATURES...
^ Software Index—by package name.
^ Quick-reference product comparison charts.
v 0 Before-you-buy selection criteria and checklist.
^ Product Hotline—the very latest information on
products announced between issues of
Data Sources.
ORDER NOW AND SAVE $60
Rush me the latest two-volume edition of DATA SOURCES
It.o: and enter my subscription at $120.00 for 4 quarterly edi¬
tions. I save a full 33% off the regular price of $180.
Name_
Title__
Company_
Address___
City_State_Zip_
Telephone_
Nature of Company’s Business_
Please check appropriate box: □ END USER □ VAR/OEM
□ DISTRIBUTOR □ DP MFG □ OTHER_
An information product of Ziff-Davis Publishing Company Satisfaction
“ d 1-800-227-1617
EXT. 251
(InCa., 1-800-772-3545 Ext. 251)
T301
EO. Box 5845, Cherry Hill, N.J. 08034.
Residents of Ca., Co., Ct.. D.C., FI., II., Ma., Mi., Mo., N.J., N.Y, Vt., please add applicable state taxes.
SAVE TIME...CALL DIRECT
Return coupon to:
CIRCLE NO. 202 ON READER SERVICE CARD
The first newspaper designed to give top
level management the latest IBM Personal
Computer news and analyses—up to
2 months faster than any monthly publication.
Finally, a newspaper that keeps up
with the rapidly-changing develop¬
ments in the IBM Personal Com¬
puter marketplace for today’s busy
executive. PC WEEK is the first
and only weekly newspaper to
offer the news of a tabloid and the
features and analyses of a monthly
publication. Which means you get
the news you need to make impor¬
tant business decisions ... up to
2 months faster than any other
publication.
PC WEEK delivers the latest
breaking stories—as they develop.
Unlike monthly magazines, which
require almost 2 months lead time
to publish a story, PC WEEK fol¬
lows and reports the news up to 48
hours before publication. So you
learn what’s new when it’s new.
PC WEEK updates the research,
analyzes the strategies, reviews
the hardware and software re¬
leases, offers insights on future
industry concerns, relates the
timely information you need to help
make you more productive.
Here are just some of the fea¬
tures and departments you’ll get
each and every week in PC WEEK...
• News: PC WEEK brings you
analytical reports on the major
topics of the day. Trends are
analyzed, product announce¬
ments and company changes
put into perspective.
• Strategies: Each week, you get
an in-depth profile of a leading
user company and how it han¬
dles the Personal Computer.
Case studies tell why an appli¬
cation succeeded or failed.
• Software Review: What pack¬
ages are right for you PC
WEEK compares and analyzes
important releases.. .tellsyou
how to use them effectively.
• Hardware Survey: A business-
oriented buyer’s guide and
rrm
i i j r
LMi
WEEK
a product directory detail
the features of product clas¬
sification and give you the
technical and financial con¬
siderations involved.
• DataComm Lines: How to com¬
municate with other Personal
Computers ... without the jar¬
gon ... without the confusion.
• Data Base Report: We’ll exam¬
ine outside data bases, such
as the Dow Jones News Re¬
trieval Service, and tell you
how to access them to in¬
crease your efficiency.
Now, you won't have to wait for
the news you need. You can get it
first. . . with PC WEEK.
All this and more is yours in
each issue of PC WEEK. Best of
all, your subscription is compli¬
mentary, if you qualify. So take a
moment to complete and mail the
qualification form at the right.
Because you need fast-breaking news as it breaks.
Ziff-Davis Publishing Company, 381 Elliot Street, Newton, MA 02164 617-965-8850
Communications
stalled on any IBM PC-compatible
system with at least 128K of RAM
and one of the following minimum
disk configurations:
• two single-sided disk drives
• one or two double-sided
disk drives
• one fixed-disk drive and one
disk drive.
Each original of the program
bears a serial number. Copies of the
same PCM program diskette are pre¬
vented from talking to each other to
gain some measure of protection
against software pirates. PCM oper¬
ates in the PC-DOS 2.1 environment
so that it may work on all current
IBM PCs, including PC/r. The neces¬
sary DOS 2.1 files are included with
the package. Set-up files that take
care of the picky details are also in¬
cluded for each of the supported
configurations. No problems were
encountered in setting up PCM for
three different versions of the PC
and one work-alike. A communica-
Electronic mail
1. Send/Receive mail
Send/Receive work mail screen
Send/Receive status display
2. Review/Address outgoing Mail
1. Address mail
1. Address message to
mailbox
2. Address message to list
3. Address message to phone
number
4. Address data to mailbox
5. Address data to list
6. Address data to phone
number
7. Display directory (disk)
2. Review log
3. Print log
4. Print mail
5. Retry mail not sent
6. Delete mail already sent
7. Delete all mail
3. Review incoming mail
1. Review log
2. Print log
3. Print text
4. Delete all mail
4. Address book maintenance
1. Mailbox maintenance
2. List maintenance
3. Display mailboxes
4. Display lists
5. Print address book
Table 2 : PCM Electronic Mail-
Hierarchy of Menus and
Work Screens
MORE
POWER...
MORE
SPEED...
C86, The Leading C Compiler For PC-DOS,
MS-DOS Systems Is Better Than Ever.
The latest release of C86 has the features that serious
programmers want the most.
• FAST EXECUTION - 50% faster
• FULL & STANDARD IMPLEMENTATION OF C - includes all the
features described by K & R. It works with the standard MS-DOS Linker
and Assembler; plus programs written under UNIX can often be
compiled with no changes.
• POWERFUL OPTIONS - include fast 8087 support; DOS2 and DOS1
support and interfaces; graphics; librarians; and much more.
• FULL LIBRARY WITH SOURCE - object libraries with full source code
for the “large” and “small” models, software and 8087 floating point,
DOS2 and DOSALL.
• FULL RANGE OF SUPPORT PRODUCTS including file
management, graphics, screen management, source code
management, communications, and more.
• HIGH RELIABILITY - time proven through thousands of users.
• DIRECT TECHNICAL SUPPORT
MORE POWER...MORE SPEED...
STILL ONLY $395
CIRCLE NO. 129 ON READER SERVICE CARD
FOR MORE INFORMATION OR TO ORDER CALL:
800-922-0169
Technical Support: (201) 542-5920
COMPUTER INNOVATIONS
980 Shrewsbury Avenue, Suite TJ
Tinton Falls. NJ 07724
C86 is a trademark of Computer Innovations, Inc. MS-DOS is a trademark of
Microsoft. PC-DOS is a trademark of International Business Machines.
August 1984
Communications
tions path is needed through a 103-
or 212A-compatible modem that is
smart enough to respond to com¬
mands to dial, detect incoming calls,
pass 8-bit data, and hang up.
Figure 4 shows the PCM top-
level menu. Selections are made by
typing a number followed by EN¬
TER. In addition to a configuration
form for customization, PCM has an
interesting editor function and two
major modes of operation: unat¬
tended electronic mail and attended
terminal emulation for general com¬
munication with information ser¬
vices and other host computers.
Personal Communications Man¬
ager has no built-in editor for creat¬
ing and modifying mail items. In¬
stead, it allows the user to specify
the editor of his choice by writing
the editor's name on a configuration
form. The editor program file(s)
must be on disk in a place accessible
to PCM. The EDLIN program pro¬
vided with PC-DOS is used if no
other editor is specified.
WordStar 3.2, the IBM Personal
Editor, and VEDIT 1.34 all per¬
formed on the PCM program with¬
out any difficulties. Emerging Tech¬
nology's EDIX 2.0 loaded and ran
with no trouble, but the hand-off of
the file name from PCM was not
entirely smooth. With the EDIX
program, the editing function must
P CM operates in the
PC-DOS 2 ,1 environ¬
ment so that it may
work on all current IBM
PCs, including PCjr. The
necessary DOS 2.1 files are
included with the package.
be selected from the main menu us¬
ing the normal method. Specifying a
file name, however, is not neces¬
sary. After EDIX is loaded, the regu¬
lar commands can be used to begin
editing or creating a file.
Electronic Mail/
Unattended Operation
In the unattended mode, PCM can
send and receive message and data
files. This mode of operation is also
entered to address mail items, to ex¬
amine incoming and outgoing logs
and mail items, and to maintain ad¬
dress books. The code for electronic
mail is contained in a program file
called MCEMAIL.EXE and can be
called from the top-level menu.
Table 2 is a hierarchical view of the
menus and work screens.
Electronic mail is categorized as
being in one of three classes: mes¬
sage, text data, and binary data.
Message files contain only standard
printable characters (including for¬
matting) and may be printed or dis¬
played as is. These are transferred
using 7-bit data codes. Data files
(text or binary) may contain special
characters and usually cannot be
printed or displayed without un¬
dergoing some processing first. Such
files require the use of 8-bit codes
during transfers.
Personal Communications Man¬
ager uses the concept of an address
book consisting of up to 40 mail¬
boxes and 10 mailing lists, each of
which may contain from none to all
of the mailbox entries in the address
book. If this does not provide a suf¬
ficient number of entries, additional
address books may be created. Each
mailbox contains the addressee's
name (no more than 25 characters),
telephone number (no more than 33
characters), and modem speed. Flex¬
ible management of mailboxes and
lists is provided.
Outgoing mail items are pre¬
pared by a multi-step procedure.
First, the text of the item(s) to be
sent must be created using the edit¬
ing function. Then mail headers are
prepared by addressing the item(s)
to mailboxes, lists, or even specific
telephone numbers that may or
may not be contained within an ad¬
dress book. The process of address¬
ing mail items also defines the
times at which PCM will send each
New Release
4.1
We've continually improved Microstat since it was introduced in
1978 , and the latest release includes many new features you've
wanted.
Interactive and Batch Processing
Expanded Data Management
Subsystem with New Data
Transforms
Reading data files created by other
programs
3 types of Analysis of Variance
Time Series
Crosstabs and Chi-Square
Factorials, Permutations, and
Combinations
Hypothesis Tests
Microstat's algorithms have been designed to prevent numeric overflow errors
and yield unsurpassed accuracy. Microstat's price is $375.00 including the user's
manual and is available for the Z80, 8086, 8088 CPU's and CP/M80, CP/M86,
MS-DOS, and PC-DOS. To order, call or write.
6413 N. College Ave. • Indianapolis, IN 46220
(317) 255-6476
Trademarks: Microstat (Ecosoft), CP/M (Digital Research), MS-DOS (Microsoft),
PC-DOS (IBM), Z80 (Zilog), 8086, 8088 (Intel).
Data sets that can exceed memory
Multiple Regression (including
Stepwise)
Scatterplots (including best fit
regression)
Correlation Analysis
12 Nonparametric tests
8 Probability Distributions
Descriptive Statistics
Easy Installation
162
CIRCLE NO. 109 ON READER SERVICE CARD
PC Tech Journal
m it *<w mm .
*m nmm mm *m*
m mmm
■ mmmmm
vm ' *** * *m mmm mm* •**
\m it WWJm »
' *** m m tm **» "" *uw/m/////m/mm
■,m mm vm mm vm * mm tmi mi mm vm z v*m
22 r«r iTO ' Ui • *«» ““ **»«
«#» #
.:; v >f *«» at *>» fit- **H «t Ht t* f** ** • ********
5 *$» tnw ' * mm\ m mti *rnm
ivm ■ *** itm tm* +**
f7m im
m **t,M«**
Mmm^S
mmW^
i immkfflfcm^Smrn/iMmMmm
I tm mm ''
I vm ■
| vm ' *** mt tmm ***
. **«* wjfom*
I !»
1 u« !«»»
\m mmmmnxm w* ' ’ '
vm
!w JJJJ • | KM
iSft IS*' ?mm ^ ******** * m
im ’
vm ' *** iturr *•*
, **» ***** ** »«it* mtmnm tm t,*tmmm
P*» » #***• *#** t%w
§tp» «* «K»* net tm
mm it *•$ *m tm
mmmmmmm * ** mwwwM
PwwWPOJ.
** » mim#* a4^«#iv*tw
tw* ** a *#& $*a#t**i ?«t» tr*»ti#rr<*#
tm it wmm tm m» ♦ *m% * ******
im ttm 4 **»* r*«**«* N»f
PC lech Journal Program Listings on Diskette.
T hat’s right! You don’t have to
type in detailed program listings
from this August issue. You can order
them on a LISTING DISKETTE™
CALL TOLL-FREE 1-800-526-0790
New Jersey residents: (201-540-0445)
OR MAIL COUPON BELOW
from PC lech Journal. And on the
same diskette you’ll also receive the
program listings for the upcoming
September issue.
Certain listings require use of
other material (e.g. Pascal compiler).
Please consult relevant article in
magazine.
For your added convenience, we
also offer two other LISTING
DISKETTES from previous issues.
They’re all listed in the coupon. To
order, simply fill it out. Charge-card
customers can also use our toll-free
telephone numbers. (Sorry, no C.O.D.
or “bill me” orders.)
|IJir LJ PC TECH JOURNAL
r/^imK 1 a! Listing Diskette Service
OUKNAL 39 East Hanover Avenue
Morris Plains, NJ. 07950
Please send me the following Listing Diskettes:
-Aug. & Sept. ’84 issues.$19.95
"jfv’8 -
□ No. 5-
□ No. 4—June & July ’84 issues.$19.95
□ No. 3—Apr. & May ’84 issues.$19.95
Total $_
□ Check Enclosed
□ MasterCard
No_
Signature-
Name_
Company.
Address_
City.
□ Please charge my credit card:
□ Visa □ American Express
-Expiration Date_
. State _
Zip
^ Please allow approximately four to six weeks for delivery.
LOWER
PROGRAMMING MAINTENANCE
AND DEVELOPMENT COSTS
{SET:SCIL~}
The Source Code Interactive Librarian
for microcomputers.
SCIL keeps a historical record of all changes made to the library.
SCIL maintains any source code regardless of language, including user
documentation and text material.
SCIL allows software engineers to work with source code as they do
now, using any ASCII text editor.
SCIL saves disk space by storing only the changes made to the program.
SCIL provides a labeling capability for ease of maintaining multiple
versions and multiple releases.
SCIL offers unlimited description in the program library directory.
High visibility displays with varied intensity for ease of viewing insertions
and deletions.
SCIL is available on CP/M, MP/MII, MS-DOS, PC-DOS and
TurboDOS.
Demonstration disk available on request.
Multiple copy discounts available.
{SET}
Get {SET} for Success
{SETrSCELi-} is a product of System Engineering Tools, Inc.
645 Arroyo Drive, San Diego, CA 92103.
Registered Trademarks: CP/M, MP/M, Digital Research Inc.; MS-DOS, Microsoft Corp.; PC-DOS, IBM Corp.; TurboDOS, Software 2000, Inc.
For more information call (619) 692-9464.
CIRCLE NO. 161 ON READER SERVICE CARD
CopyWrite
backs up all
IBM PC Software.
There are no exceptions. Copy-protected software is copied
readily. CopyWrite needs no complicated parameters.
Requirements:
IBM Personal Computer or XT.
64k bytes of memory,
one diskette drive.
CopyWrite will run faster with more
memory or another drive.
CopyWrite is revised monthly, to keep up with the latest in copy
protection. You may get a new edition at any time for a $12 trade
in fee.
CopyWrite is available at a price of $50 US funds from:
Quaid Software Limited
620 Jarvis Street, Suite 2412
Toronto, Ontario, Canada M4Y 2R8
Telephone (416) 961 -8243
CIRCLE NO. 194 ON READER SERVICE CARD
Communications
item to its destination. At any time,
the user can review the status of
outgoing mail items, print or delete
them, or create new items.
Figures 5 through 8 show the
sequence of menus and work
screens used in handling outgoing
mail. Note that the top few lines of
the screen always give the present
location in the menu structure.
When the send/receive mail
option of electronic mail is selected,
the program prompts for some
items—time to start sending, for ex¬
ample-then goes into the unat¬
tended mode. It waits for incoming
calls and sends mail items at the
times the user indicated in outgoing
mail headers. As many as 100 items
may be in the outgoing queue.
The send/receive status screen
contains a two-line window called
the monitor block that, during ac¬
tive transmissions, shows the most
recent four characters from the in¬
coming and outgoing data streams
in order to indicate when messages
are being transferred.
Incoming mail items are stored
on the disks selected using the con¬
figuration form. As items are re¬
ceived, entries are made in the in¬
coming mail log and the message
text is saved on disk for later re¬
trieval. The modem speed is auto¬
matically adjusted to match that of
incoming calls. Received items may
be displayed, printed, or deleted us¬
ing appropriate selections of the
examine-log-entry menu and work
screen. When an item's log entry is
deleted, the text may be either
saved or discarded.
Error checking and handling is
excellent in PCM. If an item cannot
be transferred at the designated
time, eight additional attempts are
made to send it at 15-minute inter¬
vals until the item is either sent or
marked not sent. Mail that is
marked not sent can be retried.
The Microcom networking pro¬
tocol is a very good implementation
of the ISO Reference Model for
Open System Interconnection. This
164
PC Tech Journal
■
Hi*
/vw/vi
CONVERT YOUR PRINTER
INTO A DIGITAL PLOTTER
Digitizing
Scientific Plotting
Business Graphics
PLOTCALL is a graphics system that pro¬
cesses standard plotter instructions into a
form that can be printed on over 20 dot
matrix printers. This is not another print
screen program; presentation quality graphics
are created directly on the printer to achieve
the maximum resolution possible. (120 x
216 dots per inch for Epson printers)
PLOTCALL includes 17 symbol sets for
sign making and plot labeling. Symbol sets
may be altered, or create your own! Character
strings may be created from any symbol set,
rotated to any angle, and scaled to any
size.
Plots can be created from any language or
from digitized data. An interactive plot
debugging program allows you to preview a
plot on the screen before sending it to the
printer.
All plots in this ad were created with
PLOTCALL on an Epson printer. No ad¬
ditional hardware is required, not even the
color graphics card!
Also included are the following easy to use,
interactive programs that utilize the
PLOTCALL system:
SURF creates high resolution three dimen¬
sional surface plots with hidden line removal.
TOPO creates contour maps using the
same data as SURF. TOPO uses the
character routines in the PLOTCALL system
to provide inline contour labels.
GRAFIT creates charts and graphs of all
types - XY graphs, bar charts, pie charts,
and line graphs.
IBM PC or compatible with a minimum of
128K of memory and a dot matrix printer
with graphics option are required.
ENTIRE PACKAGE ONLY. $199
DEMO DISK (include printer model). $10
Program Output
To order or obtain further information, contact
Contouring
VISA AND MASTER
CARD ACCEPTED
CIRCLE NO. 120 ON READER SERVICE CARD
GOLDEN SOFTWARE, P.O. Box 281, Golden, CO 80402 - (303) 279-1021
Communications
Electronic flail
1. Send/Receive flail
2. Review/Address Outgoing flail
3. Review Incowing flail
4. Address Book Maintenance
Hake selection (1-4): (J
Press Esc to exit
Figure 5: PCM Electronic Mail Menu
Electronic flail
Review/Address Outgoing flail
1. Address flail
2. Review Log
3. Print Log
4. Print flail
5. Retry flail Not Sent
£>. Delete flail Already Sent
7. Delete All Mail
There are 8 entries in the log
Hake selection (1-7): [J
Press Esc to exit
Figure 6: PCM Review/Address
Outgoing Mail Menu
Open System Interconnection. This
level-2 protocol implements the
lowest three layers of the seven-
layer model: the session/file trans¬
fer layer, the link layer, and the
physical layer. Messages called ses¬
sion protocol data units (spdu) are
sent between equivalent layers on
each end of the communication
path to effect the desired transfers.
PCM is compatible with other
systems that support level 2 of the
Microcom Networking Protocol, in¬
cluding MICRO/Courier, version
2.0. Interaction with standard ASCII
terminals is also allowed.
Terminal Emulation/
Attended Operation
In the attended mode of operation,
the program expects the user to be
SPF/PC™
ACTUALLY, there is no comparison. SPF/PC is
the best full-screen editor available for the IBM
Personal Computer.
It looks and works like IBM’s large system SPF
editor.
THE 0DD-C0UPLE™
Allows the APPLE and IBM/PC to
communicate with each other.
•Connect APPLE to PC, APPLE to APPLE, and PC
to PC.
•Transfer any file in either direction.
•CHAT mode allows direct communications
through the keyboard.
•An Equipment Profile allows description of
your operating environment.
•Communicate Direct or through a Modem at
speeds up to 9600 baud (bps).
•Written entirely in machine language for speed
and efficiency.
REQUIREMENTS:
APPLE — 48K, 1 disk drive, Serial Interface
IBM — 64K, 1 disk drive, Serial Interface
•SPF/PC can use up to 786K of memory as workspace.
•Word processing commands.
•4-way scrolling.
•Split screen support.
•On-line help facility.
•Can edit up to 240 character records.
• Monochrome or color supported.
• Instantaneous screen display.
• Block Move/Copy/Repeat/Delete/Overlay/Shift/Exclude
•Automatic line numbering supported.
•40 user-definable Program Function Keys.
•Direct interface to DOS'commands for PCDOS 2.0 users.
• Browse sub-system.
• Move/Copy sub-system copies any file format.
• Utilities include: Rename/Delete/Print/Directory list.
AND MUCH MORE . . .
UPLOAD/DOWN LOAD sub-system available to SPF/PC users for
$50.00.
$-j / Q QC SPF/PC requires 128K, PCDOS,
| T - \J ■ y 3 and 1 disk drive.
'79.95
For orders and dealer information write or call Rogue River Software, 2822 Tahitian Ave., Medford, OR 97504,
(503) 779-3002. Mastercard/Visa, Check, or P.O. accepted. Add $5.00 for shipping. Canada $10.00. Foreign $15.00.
IBM is a registered trademark of International Business Machines, Inc. APPLE is a registered trademark ot Apple Computer Inc.
166
CIRCLE NO. 207 ON READER SERVICE CARD
PC Tech Journal
WE’VE GOT YOUR PACKAGER
We offer you the most flexible, cost efficient means of introducing your
programming staff to the Ada Language. You can choose the level of
Support you need, when you need it! These Janus/Ada packages are
customer-tested and available now...
(C-Pak) Introductory Janus/Ada Compilers
(D-Pak) Intermediate Janus/Ada Systems
(S-Pak) Advanced Janus/Ada Systems
(P-Pak) Janus/Ada Language Translators
Janus/Ada “Site” Licenses
Janus/Ada Source Code Licenses
Janus/Ada Cross Compilers
Janus/Ada Maintenance Agreements
Coming Soon: New Computer and Operating Systems Coverage
Selected Janus/Ada packages are available from the following:
National Distributors
International Distributors
Westico, Inc.
25 Van Zant St.
Norwalk, CT 06855
(203) 853-6880
Ash II
7407 Marisol
Houston, TX 77083
(713) 933-1828
A-OK Computers
P.O. Box 604
Silver Spring, MD 20901
(301) 588-8446
Micronix
11 Blackmore St.
Windsor 4030
QLD. Australia
(07) 57 9152
Progesco
155, rue du Fauburg
St. Denis
75010 Paris
(1) 205-39-47
Trinity Solutions Compuview Products, Inc. Microprogramming, Inc.
5340 Thornwood Dr., Suite 102 1955 Pauline Blvd., Suite 200 P.O. Box 3356
San Jose, CA 95123 Ann Arbor, MI 48103 Chatsworth, CA 91311
(408) 226-0170 (313) 996-1299 (213) 993-0640
Lifeboat of Japan
S- 13-14, Shiba
Minato-Ku
Tokyo 108 Japan
03-456-4101
CP/M. CP/M-86, CCP/M-86 are trademarks of Digital Research. Inc.
’ADA is a trademark of the U.S. Department of Defense
MS-DOS Is a trademark of Microsoft
©Copyright 1984 RR Software
Software, inc.
specialists in state of the art programming
P.O. Box 1512 Madison, Wisconsin 53701
(608) 244-6436 TELEX 4998168
CIRCLE NO. 149 ON READER SERVICE CARD
Computer dreams.
ML -Mode Display
2oo-vJAtt poUUEP SUPPLY
And six expansion slots
J2tK TO GYOK /2AM ON
System Board
up to PbuR Half-Height
Storage devices
Fixed pise Bacjojp
Pisr storage protection
PC-Typa fe/mPP
TRULY compatible-
YZDNS all TfiE POPULAR. SDFtMASLE
me PROCESSOR
I ntroducing the new COMPAQ DESKPRO'.'
COMPAQ combined the best features of the best
desktop computers. And then added exclusives you won't
find on others. Today they're together in one personal
computer. The COMPAQ DESKPRO.
The COMPAQ DESKPRO is the most expandable
desktop you can buy. It can grow as you grow, with up
to six available expansion slots and four storage devices,
including a unique fixed disk drive backup—all inside the
computer instead of out, saving your desk from clutter.
It's the most rugged desktop, too, because it’s the only
desktop with a shock-mounted mass storage compartment
to help keep disk drives in alignment and help protect you
from losing data, downtime, and dollars.
It’s also the most compatible desktop, giving you true
hardware and software compatibility with the industry’s
most popular personal computers. The COMPAQ
DESKPRO runs thousands of programs written for the
IBM* PC and XT right off the shelf. Which brings us to the
next point.
6 1984. COMPAQ* is a Registered Trademark and COMPAQ DESKPRO" is a Trademark of COMPAQ Computer Corporatioa IBM* is a Registered Trademark of International Business Machines Corporatioa
Dream computer.
The industry leader in compatibility
Text and graphics on one screen, not two
Power and space for almost unlimited
expansion.
Add up to 640K of memory on
system board and save expan -.
sion slots.
Runs software 2X to 3X faster.
10MB fixed disk drive
10MB fixed disk backup
Two diskette drives
Exclusive tape backup helps
protect data.
Unique shock mounting helps
protect your data and hardware
investment
Familiar layout enhanced
with LEDs on caps and num-
lock keys.
uwMwiiin.iii wmw m
The COMPAQ DESKPRO is the fastest truly compatible
desktop you can buy Its two to three times faster than the
industry standard. That saves time now. And in the future,
as software becomes more sophisticated and integrated, it
will save you even more time as well as protect your per¬
sonal computer investment.
But there’s more. We gave the COMPAQ DESKPRO one
other feature not found on any other machine. You can
choose between an amber or green dual-mode monitor
that displays high-resolution text and graphics with equal
brilliance, saving you the cost and clutter of a second monitor.
See the Dream Computer. Then pinch yourself. Its for real.
For the location of the nearest Authorized COMPAQ
Computer Dealer, or for a free brochure, call 1-800-
231-0900, Operator 5 or Telex #795437 COMPAQCOMP HOU.
comma
It simply works better
Announcing
DBA 34/36...
the RPGII Data Base
5 Reasons Why DBA 34/36 Will Increase the Facility, Speed, Accuracy
and Flexibility of Your Information Processing and Lower
Your New Business Applications Costs
Now there is a true data base management system (DBMS)
for IBM System 34 and 36 users which organizes computer
files into a single, coordinated information bank that is
accessible in a variety of logical groupings—DBA 34/36
from Fits Systems Inc. Here are five reasons why you
should be using it with your mini:
1 DBA 34/36 is the only data base management
■ system designed for both the IBM System 34 and
the new System 36—a true data base, not just a scaled-
down version of mainframe software or retrieval tool.
2 DBA 34/36 makes it easy to define and produce
■ recurring reports including simple user-defined
calculations. All requisite support programs, including
Data Base Maintenance, a powerful Universal Inquiry
Program. RPG II Interface and a Report Generator come
with the package.
3 Because DBA 34/36 is written in RPG II, your pro-
■ grammers can adapt any of its calling subroutines
into your own programs, significantly reducing program¬
ming time for new applications.
4 DBA 34/36 can be up-and-running in less than a
■ week because it does not change existing files.
Instead, DBA 34/36 creates an external structure that man¬
ages references to your files with remarkable efficiency.
An experienced programmer can install DBA 34/36 and
have it running inquiry against your files in just a few days.
5 No schooling is required—your staff will quickly
■ become proficient with DBA 34/36 by simply using
the “user friendly” manual supplied with the package. The
manual describes installation procedures and includes
complete instructions for tailoring DBA 34/36’s functions
to reference the files selected for installation.
You Can Try DBA 34/36 For 45 Days FREE
We offer qualified 1 ’.sers a free 45 day trial of DBA 34/36 in
order to demonstrate what ft can do for you. We’ll send
you a copy of the software, and complete installation doc¬
umentation, for a 45 day free trial to use on your own sys¬
tem. We think you’ll wonder how you ever did without
it—but, if you’re not completely satisfied, simply return
the package—there’s no further obligation.
Free Demonstration Disk Available
FITS
Casey Stern, Vice President
FITS Systems, Inc.
DBA Department
65 West Red Oak Lane
Vfiite Plains, N.Y. 10604
212-269-5340 • 914-694-1554
□ YES, I’m interested in your
DBA 34/36 Software Package.
Please send me:
□ FREE DEMO DISC which illustrates DBA 34/36
□ COMPLETE PACKAGE for 45-day free trial
□ MORE INFORMATION—have a sales rep contact me.
Name-
-Title-
Company-
Address_
City-
Telephone (
State
Zip
)-
-Best Time-
i
- i
i
Mail This Coupon Or Call (914) 694-1554 l
-1
CIRCLE NO. 249 ON READER SERVICE CARD
Communications
Figure 7: PCM Address Mail Menu Figure 8: PCM Work Screen for Examining
Outgoing Mail
in charge of the communications
session. The user can send and re¬
ceive files, storing them on disk if
necessary, and print information
while it is being received. Menu op¬
tions also exist for creating (see fig¬
ure 9), modifying, saving, and print¬
ing terminal options lists, called ter¬
minal set-up files, and for prepara¬
tion of user functions. The latter ca¬
pability permits the creation of pre¬
defined strings of interactive com¬
mands and other characters that
may be sent to a remote computer
at the press of a function key. As
many as 10 user functions may be
defined in a terminal set-up file.
User functions lend flexibility
to the interactive terminal mode —
even without an extensive program¬
ming language. Commands and
Attire your IBM PC in style! ComputerWear is dust protection
with class. Design features include select, woven fabric and
embroidered emblem. Order now. Satisfaction guaranteed.
□ YES, PROTECT MY PC IN STYLE! SEND ME: □ CHECK
_Keyboard(s) $16 _Monitor(s) $18 □ VISA
_Drive(s) $18 _Printer(s) $18 □ MC
-1 pc Mon/Drive$36 Add $2.00 Shipping Total: $_
(CA. Res. add tax)
Print Name:
Address: _
City/State: _
Credit Card #
Signature:__
Contemporary ComputerWear ah tj
1320 36th Ave./San Francisco, CA 94122 • 415/564-0506
IBM PC is a trademark of International Business Machines Inc.
CIRCLE NO. 258 ON READER SERVICE CARD
August 1984
-Zip.
Exp..
LATTICE*
C Compilers
"My personal preferences are Lattice C in the top category for its
quick compile and execution times, small incremental code, best
documentation and consistent reliability;..."
BYTE AUG. 1983
R. Phraner
"... programs are compiled faster by the Lattice C compiler, and it
produces programs that run faster than any other C compiler avail¬
able for PC-DOS."
PC MAGAZINE JULY 1983
H. Hinsch
"... Microsoft chose Lattice C both because of the quality of code
generated and because Lattice C was designed to work with
Microsoft's LINK program."
PC MAGAZINE OCT. 1983
D. Clapp
"Lattice is both the most comprehensive and the best documented of
the compilers. In general it performed best in the benchmark tests."
PERSONAL COMPUTER AGE NOV 1983
F. Wilson
"This C compiler produces good tight-running programs and pro¬
vides a sound practical alternative to Pascal."
SOFTALKAUG 1983
P. Norton
"... the Lattice compiler is a sophisticated, high-performance pack¬
age that appears to be well-suited for development of major applica¬
tion programs."
BYTE AUG 1983
Houston, Brodrick, Kent
To order, or for further information
on the LATTICE family of compilers, call or write:
LATTICE, INC.
P.O. Box 3072
Glen Ellyn, IL 60138
(312) 858-7950 TWX 910-291-2190
CIRCLE NO. 128 ON READER SERVICE CARD
171
Communications
Terminal Emulator
Change Communications Settings
Parity.even
Duplex mode.full
Filter control chars...yes
Transmit CR-LF.yes
Add LF on receive.no
Flow control.no
Options:
110 300
Press t or A to change selection
Press Spacebar to change option
Press Esc to exit
Figure 9: PCM Terminal Emulator Work Screen
for Setting Parameters
functions are provided for looping,
awaiting specified times and events,
matching text strings, and calling
other user functions. Table 3 is a
summary of available interactive
and user function commands for
I PCM terminal emulation.
Terminal set-up files are pro¬
vided for Dow Jones, CompuServe,
and THE SOURCE. The manual for
Personal Communications Manager
gives advanced examples of user
functions that are extended to pro¬
vide unattended terminal operation.
The terminal mode uses the lo¬
cal processing and storage capabili¬
ties of the PC effectively to handle
the // intelligent ,/ functions just de¬
scribed. But is this truly an intelli¬
gent terminal emulation? No local
editing functions are provided, and
no control sequences are assigned to
manage the keyboard and display,
apart from the usual formatting con¬
trol codes available on even the
dumbest terminals.
Because it does not emulate
even one widely used terminal type,
PCM cannot be easily identified to a
host computer. Therefore, it cannot
be used effectively with many ap¬
plication programs that must con¬
trol cursor positioning and other
editing functions. Perhaps this was
done deliberately to keep PCM from
competing with the IBM 3101 emu¬
lation package, a separate communi¬
cations product sold by IBM.
The Microcom implementation
of the RM/OSI networking protocol
is very well done. It operated reli-
New 1/2" Tape
ontroller for the IBM-PC
OPT-TECH SORT
SORT/MERGE program for IBM-PC & XT
Now also sorts dBASE II files!
Written in assembly language for high performance
Example: 4,000 records of 128 bytes sorted to give
key & pointer file in 30 seconds. COMPARE!
Sort ascending or descending on up to nine fields
Ten input files may be sorted or merged at one time
Handles variable and fixed length records
Supports all common data types
Filesize limited only by your disk space
i Dynamically allocates memory and work files
• Output file can be full records, keys or pointers
► Can be run from keyboard or as a batch command
* Can be called as a subroutine to many languages
► Easy to use, includes on-line help feature
► Full documentation — sized like your PC manuals
► $99 —VISA, M/C, Check, Money Order, COD, or PO
Cuantity discounts and OEM licensing available
To order or to receive additional information
write or call:
OPT-TECH DATA PROCESSING
P.O. Box 2167 Humble, Texas 77347
(713) 454-7428
Requires DOS, 64K and One Disk Drive
CIRCLE NO. 179 ON READER SERVICE CARD
TC-PC is a high performance tape
controller for the IBM-PC with these
important features:
• Capable of reading and writing
industry standard 1/2" tape
• Comprehensive software tools
supplied
• 8 bit parallel recording with parity
and read-after-write verification of
data
• Compatible with most nine track
formatted tape drives
• Operates with tape drive speeds up
to 120 inches per second; allows
data transfer rates of up to 192,000
bytes per second
• Economically priced at $880
For more information on the TC-PC,
call or write today.
Dealer/Distributor inquiries invited.
OVERLAND DATA, IND.
5644 Kearny Mesa Rd., Suite A
San Diego, CA 92111
Tel. (619) 571-5555
CIRCLE NO. 176 ON READER SERVICE CARD
AT LAST! TEN IBM PC/XT
FUNCTIONS AVAILABLE
THRU ONE SLOT!
WITH
MODEM
AND512K
USERS MANUAL
*BIEB
AMERICAN
HIGHTECH
MAGNUM HARDWARE AND SOFTWARE FEATURES:
1 . SuperSmart MODEM - 212A type (300-1200)
intelligent modem with Auto Answer/Auto Dial
(touchtone/pulse). Mounts inside PC/XT where it
belongs. 52 number Auto-Dialer optional.
2 . PARALLEL PRINTER PORT
3. SERIAL PRINTER/COMM. PORT.
4. GAME/MOUSE PORT
5. QUARTZ CLOCK/CALENDAR
6. MEMORY -64K to 512K bytes
7. TurboRAM - Extra RAM used as hard disk.
8. TurboSpool - Print job buffer/spooler.
9. TurboComm - SuperSmart MODEM control
program includes: Single key, built-in emulation of
such popular terminals as DEC VT-100 (ANSI
standard), Data General 605X series, ACT-5A
and ADM-5A. Supports all standard baud rates to
19,200. Single keystroke connection to host.
Screen transmission status reporting. Full printer
and disc drive controls. Full buffering and interrupt
driven I/O). Error detection and logging. Capabil¬
ity to interactively download and upload disk files.
10. TurboFile - TurboComm’s file transfer utility
featuring: Automatic unattended file transfer
initiated any time, day or night. Transfers any file
supported by PC/DOS. Automatic error
detection and recovery. Password computer
access protection.
CHECK OUR STANDARD FEATURES
Drder now! Check,
M O. Visa and Mastercard accepted • Satisfaction guaranteed. 2 years warranty
MULTI-FUNCTION AT IT’S BEST FROM
AMERICAN HIGH-TECH INDUSTRIES, Inc.
ELEVEN-ONE-ELEVEN WILCREST GREEN DRIVE
SUITE 201, HOUSTON, TEXAS
(713)952-7332
CIRCLE NO. 104 ON READER SERVICE CARD
mmm
Remember the magic you
expected when you first purchased
a PC?
It's here.
dBASE HI™ is the most power¬
ful database management system
ever created for 16-bit
microcomputers. It pulls
every ounce of energy
out of your PC and puts
it to work.
On top of that, it's
fast and it's easy.
You've never seen
anything like it.
dBASE HI can handle over a billion
records per file, limited only by your com¬
puter system. You can have up to ten files
open, for sophisticated applications pro¬
grams.
When you have two related files, infor¬
mation in one can be accessed based upon
data in the other.
dBASE HI now handles procedures,
parameter passing and automatic variables.
You can include up to 32 procedures in a
single file. With lightning speed. Because
once a file is opened, it stays open. And
procedures are accessed directly.
Easier than ever.
you have to know is what you
want it to do.
Our new tutorial/manual
will have you entering and
viewing data in minutes rather
than reading for hours.
And to make matters
easier, you get a full screen
report setup for simple infor¬
mation access.
Faster than no time at all.
dBASE III isn't just fast. It's ultra-fast.
Operating. And sorting. Even faster, is no
sorting. Because dBASE III keeps your
records in order, so you really don't have to
sort anything. Unless you want to. Then
watch out!
What about dBASE II®?
It's still the world's best database man¬
agement system for 8-bit computers. And
it's still the industry standard for account¬
ing, educational, scientific, financial, busi¬
ness and personal applications.
Tap into our power.
For the name of your nearest authorized
dBASE in dealer, contact Ashton-Tate, 10150
West Jefferson Boulevard, Culver City, CA
90230. (800) 437-4329, ext. 333. In Colorado,
(303) 799-4900.
dBASE HI uses powerful yet simple
commands that are the next best thing to
speaking English.
If you're unsure of a command, HELP
will tell you what to ask for.
If you don't know what command
comes next, a command assistant does. All
CIRCLE NO. 300 ON READER SERVICE CARD
ASHTON -TATE ■
©Ashton-Tate 1984. All rights reserved. dBASE III and Ashton-Tate are
trademarks and dBASE II is a registered trademark of Ashton-Tate.
How to teach
your kids
about the
IBM PC.
Computers for Kids teaches
children age 8 and older to
write their own programs in
less than an hour-without the
necessity for previous knowl¬
edge of algebra, variables, or
computers. And there's a spe¬
cial section that keeps parents
and teachers on the same
successful command path.
Starting off with an easy-to-
understand explanation of
how to use the IBM PC, your
kids will progress quickly to
flow charts and simple print
programs.. .to loops, graphics,
and other programming con¬
cepts that show the young
user how to make the PC do
exactly what he wants-in
non-technical language that
makes life easier for both
of you.
So do your children a favor.
Do yourself
a favor.
Order the
PC edition
of Com¬
puters for
Kids today!
Creative Computing Press
I Dept. NX4C 39 East Hanover Avenue
j Morris Plains, NJ 07950
j Send me_ Computers for
j Kids, PC edition, at $5.95 plus $1.50 post-
I age and handling each. # 12K
| □ PAYMENT ENCLOSED $_
j Residents of CA, NJ and NY State add
applicable sales tax. Outside USA add
| $3.00 per order.
| □ CHARGE MY: (Charge and phone
order $10 minimum)
□ American Express
| □ MasterCard □ Visa
J Card No_Exp. Date-
j Signature___
I Mr./Mrs./Ms.---
(please print full name)
J Address-Apt-
I City_State_Zip-
I Also available at your local bookstore or computer store.
j □ Send me a FREE Creative Computing
Catalog.
Communications
ably under a variety of test condi¬
tions and worked smoothly with
other PCM-equipped systems and
standard dumb terminals.
Microcom did a fine job of inte¬
grating the use of an external editor
into the program. To run PCM on a
floppy-only system, the user should
choose the smallest editor that suits
his needs in order to minimize the
time it takes to load it and to re¬
serve as much working space as pos¬
sible for mail files and related lists.
Command Description
Alt-A
Switches modem to auto¬
answer state
Alt-B
Sends a 300-millisecond
BREAK signal on the commu¬
nications line
Alt-C
Clears screen except for sta¬
tus and message areas
Alt-D
Dials phone number; last
dialed number, if any, is de¬
fault; hangs up if no connec¬
tion is made within 30 seconds
Alt-E
Exits interactive mode of ter¬
minal emulator feature
Alt-H
Disconnects phone (hang¬
up)—-requires confirmation
Alt-M
Toggles command state of
modem (only applicable to
Microcom modem)
Alt-P
Toggles printer on or off
Alt-Q
Displays help in the form of
the interactive mode command
screen
Alt-R
Starts receive mode for saving
incoming text to a file
AIM
Waits for a definable time
period or until a specified time
of day
Alt-W
Wait for any character, for a
defined text string, or for a
time-delay period to expire;
string matches are case-
sensitive
Fn
Function key-controlled user
functions are sent to the
remote computer; ten user
functions (F1-F10) per ter¬
minal set-up file
Table
3: PCM Terminal Emu-
lation—Interactive and User
Function Commands
This is the only situation in which
I would deliberately select EDLIN
over other editors.
The terminal emulation that is
provided is essentially dumb, not in¬
telligent as the manual says. It is ad¬
equate for communications with
another PCM-equipped system, for
use with information utilities, and
for reading and writing disk files. It
is not too useful with minis and
mainframes that run programs re¬
quiring complex interactions with
the screen and keyboard of a remote
terminal. For good terminal emula¬
tions (IBM-3101, Televideo 910/920,
etc.), try Crosstalk XVI, Icom, or
IBM's own 3101 emulator package.
Documentation
The documentation for both ACS
and PCM is up to IBM's usual high
standards for appearance and pack¬
aging. Both manuals are well organ¬
ized, and coverage of most topics is
good to excellent. IBM decided,
with good reason, to eliminate from
the ACS manual the diagram that
purported to explain ACS 1.0 func¬
tions, as well as the chapter on the
operation and use of the base (ma¬
chine-language) program. The now-
deleted information probably con¬
fused more of the product's users
than it helped. I mourn the loss of
the base program documentation,
however, because ACS is a program
that demands enhancements, and
information on the base program is
vital to programmers who want to
take up the challenge.
Appendix F of the PCM manual
contains a high-level description of
the networking protocol used in the
electronic mail portion of the pro¬
gram. It is worthwhile reading for
those interested in the magic that
goes on behind the scenes during
unattended file transfers.
The Good and the Bad
The ACS package is handy for com¬
munications with IBM mainframe
computers. It was originally de¬
signed to serve the needs of users in
PC Tech Journal
that environment and this latest
version continues that strong bias. It
is a poor choice for general and per¬
sonal use because it is handicapped
by limited file-transfer and terminal
capabilities. Several low-cost and
free programs are available that are
far more suited than ACS to com¬
munications with information utili¬
ties, bulletin boards, and non-IBM
hosts. ACS seems to have grown up
out of a series of unrelated events.
The result is a package that lacks
coordination among its main fea¬
tures and that makes its user work
too hard to do simple tasks.
PCM, on the other hand, is a
well designed and implemented set
of programs that offers operating
conveniences to individuals and cor¬
porations alike. It has very strong
electronic mail features. Although,
like ACS, it is menu driven, PCM is
pleasant to use and flows more
smoothly from one frame to the
next than ACS. In addition, its work
screens are easy to use. PCM suffers
from a very limited terminal emula¬
tion, but owing to its secondary im¬
portance to the whole package, this
is not a serious limitation. hm^i
Asynchronous Communications
Support (Version 2.0)
IBM
P.O. Box 1328
Boca Raton, FL 33432
305-998-6048
$60
CIRCLE 5 00 ON READER SERVICE CARD
Personal Communications Manager
IBM
P.O. Box 1328
Boca Raton, FL 33432
305-998-6048
$100
CIRCLE 499 ON READER SERVICE CARD
T0U DON'T HAVE TO CRAWL
THROUGH MANUALS ANYMORE
Now you can put them online with Explain™... the docu¬
mentation system from Communication Sciences, Inc.
CSi’s Explain takes you a step beyond the editing/
printing cycle used for the traditional manual. With Explain,
writers create and update documentation online, as a data
base. And they don’t have to be programmers to do it.
Once your documentation is online, it can stay online.
Readers can get to it with the touch of a key, either directly
from your applications or through Explain itself.
User help. Program guides. Procedures. Standards.
Put it all online with Explain, the paperless documen¬
tation system.
For more information, please
call us at (612) 332-7559, or write to
Communication Sciences, Inc., 100
North Seventh Street, Minneapolis,
MN 55403.
CARD
DIRECTORY
COMMAND
SYSTEM
for the
IBM PC & XT
Which would you prefer?
Designed
with the
“New User’’
in mind
A must for
Hard Disk
systems
Compatible
w/DOS 1.10
and 2.00
► Disk Usage 4
3 Hidden files
13 User files
34304 bytes left
124416 bytes used
160256 bytes total
►► Fleaory Usage 44
95312 bytes left
35760 bytes used
131072 bytes total
►►► Today Is 444
Wednesday the 20th
9:32:27a.
ldir replaces the DOS prompt with an interactive command system that
eliminates the need to type commands and/or filenames to the command line.
Files are accessed and programs are executed by positioning Idfr’s scrolling
FILE and COMMAND CURSORS, and pressing <ENTER> Controlled by the arrow
keys, the CURSORS are easy to use “pointers.’’
P.O. Box 2867, Boise, ID 83701, (208 ) 342-5849
b y Bourbaki Inc
August 1984
CIRCLE NO. 108 ON READER SERVICE CARD
t
PC Mouse makes you
more productive with
popular business appli¬
cations. With Lotus 1-2-3,
for example, moving
around the spreadsheet
and entering numbers
can be incredibly easy.
Put PC Mouse in your
left hand and you re free
to enter numbers with
your right. With no more
switching between
cursor controls and
numeric keys.
For word processing,
PC Mouse makes it sim¬
ple to highlight a block
of text. And move it,
copy it, or delete it. Take
WordStar, for instance.
Instead of memorizing 25
control code sequences,
just move the mouse.
Its that simple.
You can even design
your own menus to fit
the way you work. We
provide everything thats
necessary to move your
personal menu onto your
program diskette.
Whether you're using
a spreadsheet, word
processing, data base,
or graphics, PC Mouse
helps you do it faster
and easier. So you can
get more done in a day.
mouse
systems
Pointing the way.
j/he kind of mouse you
select should depend on
how far you want to go.
PC Mouse brings you
today s most advanced way
to use a computer. Pointing.
For your IBM PC, PC-XT, PCjr or
compatible, PC Mouse lets you move
the cursor across the screen as fast
as you think. And select commands
just as fast.
Take Command of Your
Software.
PC Mouse makes itself at home
with your system immediately. Just
plug it in and it’s ready to work with
todays most popular programs.
PC Mouses exclusive Designer
Pop-Up™ menus show what the power
of pointing can do for your existing
applications. They eliminate the need
to memorize complex commands or
hunt for the right sequence of keys.
At the touch of a button, a pop-up
menu appears on the screen in a
window. Simply point at the
command you want and press one of
PC Mouse’s three buttons. That’s all
it takes. The pop-ups disappear until
the next time you need them.
PC Mouse is pre-configured for
Lotus 1-2-3, Multiplan, VisiCalc,
SuperCalcj* WordStar, PFS:Write,
Personal Editor, and Multimate. It’s
also fully compatible with Microsoft
Word, Visi On and DesQ. And as
more advanced software is devel¬
oped, you can be sure PC Mouse will
never become extinct. Our Designer
Pop-ups even let you personalize
menus to fit individual needs. Or
create new menus for any program
that runs on the PC.
Only the Strong Survive.
PC Mouse has the most advanced
optical and electronic technology.
The result is unsurpassed tracking
and reliability compared to its
mechanical ancestors.
Its gentle-sloping ergonomic
design maximizes user comfort. PC
Mouse glides effortlessly and silently
across its pad. It actually becomes
an extension of your body. So what
you’re thinking appears on the screen
just as effortlessly.
Taking care of PC Mouse is easy,
too. With no moving parts, it lives
a long, long time. So long, in fact,
that we have the confidence to back
it with a full 12-month warranty. Our
technical support team and unique
update program will
let you keep pace
with future changes
in the personal com¬
puter world as well.
Break away from
the pack by choos¬
ing the leader in its
field. PC Mouse.
We’ll take you
where you want to
go. And get you
there fast. For more details, see your
dealer or contact Mouse Systems
Corporation at 2336H Walsh Avenue,
Santa Clara, CA 95051. Telephone
(408) 988-0211 or Telex 467848."
Desi g ner Pop-uv
menus let you move
through Lotus 1-2-3
with unprecedented
speed and accuracy.
Mouse Systems and Designer Pop-up are trademarks of Mouse Systems Corporation. 1-2-3 and Lotus are trademarks of Lotus Development Corporation. Microsoft and
Multiplan are trademarks of Microsoft Corporation. SuperCalc 3 is a registered trademark of Sorcim Corporation. VisiCalc is a registered trademark of VisiCorp. Volkswriter
is a registered trademark of Lifetree Software Inc. WordStar is a registered trademark of MicroPro International Corporation. Multimate is a trademark of Soft Word
Systems, Inc. PFS is a registered trademark of Software Publishing Corporation. IBM and PC-DOS are trademarks of International Business Machines Corporation.
Copyright © 1984 by Mouse Systems Corporation.
CIRCLE NO. 181 ON READER SERVICE CARD
SOFTPRODUCTSI1 1C
A subsidiary of the University of Waterloo
Announces
Waterloo
NetWorkStation
Tools
for the IBM Personal Computer
Editor
• full-screen
• colour support
• function keys
Host Communications
• VM/370 CMS, RSTS/E, VAX/VMS
• file transfer micro to/from host
• access host files from micro programs
Terminal Emulation
For further information contact:
WATSOFT Products Inc. (519) 886-3700
158 University Ave. W., Telex No.: 06-955458
Waterloo, Ontario
N2L 3E9
G Graphics
Editor
A Fast, Powerful, Easy to Use drawing
program that lets you create, edit, and store
colorful images
• Intricate detail
• Easy to remember, single key commands
• Variable cursor speed & brush width
• User defined color combinations
• Commands for basic geometric shapes
• Images can be erased, repositioned, copied,
mirrored, flipped
• Save to disk / Load from disk
• Images can be loaded into user's BASIC
programs
• "HELP" and "UNDO" commands
• Text in variable sizes, colors, directions
• Designed for the IBM PC and compatible
machines with 128K RAM, single disk
drive, color graphics capability
Perfect for Artists, Designers,
Animators, Programmers, Educators
G Graphics Editor is available for $95 from
MICRO MARKETING ASSOCIATES
3497 East Livingston Avenue
Suite A
Columbus, Ohio 43227
CIRCLE NO. 218 ON READER SERVICE CARD
Develop your own circuits
quickly one) cosily.
Transfer your designs to the
eZ Cord, uuhich features o fully
buffered address, data and con¬
trol bus uuith suuitch selectable
address decoder and a generous
uuire-ujrap area uuhich can easily
accomodate over60 1C sockets.
cZ Cord has gold plated contacts
and all IC's are socketed. Only
$89.95 plus $5.00 S&H.
eZ Board for IBM-PC & XT
eZ Board — the solderless bread¬
board uuhich plugs into your PCs
expansion slot through an integral
18-inch cable. Clearly marked tie
points make the entire system bus
easily and conveniently acces¬
sible at the breadboard. Simply
plug in IC's and connect uuith ordi¬
nary hookup uuire. Idea booklet
included. Only $124.95 plus
$5.00 S&H.
SPCCIfll OFF€R
Order both the cZ Board and eZ Card development system
nouu and save$45.00! Pay only $174.95 plus$5.00 S&H*.
California residents add 6%.
Sabadia Export Corp.
P.O. Box 1132, Dept PT, Vorba Linda, Cfl 92686
Phone (714) 630-9335 Telex: Casylink 756582
*USfl only. Outside USR add $20.00 S&H (Airmail)
CIRCLE NO. 163 ON READER SERVICE CARD
Professional Lab and
Business Graphics Software
for Your IBM* PC
SCIENTIFIC PLOTTER-PC-
Draws professional graphs of
your data. Line or scatter plots,
semi-log or log-log plots, bar
graphs, exploded pie charts,
stock charts with high, low,
close. 320 x 200 resolution in 4
colors. Automatic or manual
selection of axis length and posi¬
tion, tick marks and numeric
labels. Features 20 plot symbols,
error bars, multiple labels in 4
orientations and versatile printer hardcopy. Format and data files mav be
saved on disk. Includes 11 demos on disk plus manual .$ 95
CURVE FITTER-PC— Select the
best curve to fit your data.
Scale, transform, average or
smooth, interpolate (3 types),
least squares fit (8 types),
evaluate unknowns from fitted
curves. Features auto-scaling,
statistical evaluation of fitted
curves, multiple labels in 4
orientations, and versatile
printer hardcopy. Format and
data files may be saved on disk.
Includes 5 demos on disk plus manual.$ 95
SPECIAL: SCIENTIFIC PLOTTER-PC and CURVE FITTER-PC-on 1
disk.SI 75
Add $2.50 shipping on all U.S. orders. VISA or MASTERCARD orders
accepted.
•Trademark of International Business Machines, Inc.
TM-m- INTERACTIVE MICROWARE, INC.
I P.O. Box 139, Dept. 237
■ Ul ■ state College, PA 16804
Phone: (814) 238-8294 • Telex: 705250
CIRCLE NO. 151 ON READER SERVICE CARD
CIRCLE NO. 189 ON READER SERVICE CARD
LEGAL BRIEF
Go for Broker
How to protect yourself if you choose to use a broker
Max Stul Oppenheimer
B ecoming very, very rich re¬
quires only two steps: Write a
very, very good program for those
throngs of first-time computer
buyers (note: the definition of
"good" is flexible); sell very, very
many copies of the program.
It has been eight months since
I explained the options for protect¬
ing the rights to your software. Last
month I explained how to keep
those rights while negotiating a
consulting contract. Are you rich
yet? If not, don't give up.
Writing a commercially valu¬
able program is difficult. Commer¬
cializing such a program is hard,
too. Getting from step one to step
two can be downright dangerous.
In this age of specialization,
there is no reason that a good pro¬
grammer should also be good at
marketing. It may make sense to
turn to a specialist. However, if you
have looked longingly at those ads
that offer to market your program
for you, be advised that unless (and
even if) you take some preliminary
steps, you may be risking some
rights by sending in your program.
You may recall from prior col¬
umns that you obtain some protec¬
tion for your copyrightable work
simply by the act of "fixing" it in
Max Still Oppenheimer is a partner in the
Baltimore law firm of Venable, Baetjer, and
Howard.
some tangible medium. Tradition¬
ally, this was done by writing it on
paper, but the chances are good that
recording it on a disk or burning it
into a ROM chip will serve. This
gives you at least threshold copy¬
right protection for your program.
You do not have copyright protec¬
tion for your concept, or for a pro¬
gram that incorporates all of your
good ideas but expresses them dif¬
ferently. There is also the possi¬
bility that, if your program is the
unique way to accomplish its pur¬
pose, you have no copyright protec¬
tion at all. Refer to "The Basic
Tools of U.S. International Property
Law" (November/December 1983,
p. 213) and "Disputing the Rights
to Custom-Designed Software" (July
1984, p. 185) for more details.
In any event, you will probably
want more than threshold copy¬
right protection for your initial en¬
counter with commercial software
marketing. Before you deal with
the difficult issues relating to pro¬
tection of property rights, there are
several simple bargaining points
that should be agreed upon. Begin
by asking questions.
What will the software broker
do for you? Some propose to seek
buyers actively,* others will do no
more than list the availability of
your program on their data base.
What will he charge you and
when? A fixed fee, a share of sales
or profits, a fixed commission per
sale, or some combination of these?
How do you compute profits? (Do
you deduct the cost of your com¬
puter?) Does he pick up the ex¬
penses pending the first sale? How
much does he plan to spend?
Does the broker insist on the
exclusive rights to market your pro¬
gram? If so, for how long, and do
you have any right to terminate the
relationship? A broker may work
harder if he has the exclusive
rights, since he will be assured the
benefit of every sale. On the other
hand, shouldn't he produce sales in
order to keep the exclusive rights?
Remember that once you have
granted exclusive rights, you have
given up most of your bargaining
power—the broker ought not to be
able to sit back and wait for light¬
ning to strike (after all, you could
do that yourself).
These points are between you
and the broker. The harder nego¬
tiating points involve protecting
yourself from actions the broker
might take that will affect your
rights vis-a-vis third parties.
Normally, a broker will act as
your agent. The limits of his au¬
thority as your agent should be
agreed upon between you. He
should report to you occasionally
on his progress. There should be
agreement on what he can do on
your behalf in terms of pricing and
other sale-related decisions. Perhaps
he should do no more than find a
potential market and let you do the
negotiating over price, credit, re¬
turns policy, and so forth, or per¬
haps you would prefer that he han-
AUGUST 1984
181
FAST
LETTER
QUALITY
FOR YOUR
EPSON
Now you can print letter quality on
your Epson FX printer at full text¬
mode speed, up to 10 times faster
than with programs using graphics
mode. Printer Boss™ software
gives you two-pass dot-matrix let¬
ter quality and lets you create a
printer buffer of up to 32K. Or print
multi-page spreadsheets as wide
as you like, sideways on your paper,
at high speed, in a choice of five dif¬
ferent type sizes.
Printer Boss™ also allows full
menu-based operation of all control
functions of all of the Epson MX, FX
and RX printers. Select and de¬
select pica, elite, compressed, italic,
enlarged, emphasized, doublestrike,
underline, superscript and subscript
for scores of different faces. Set line
spacing, right and left margins and
skip-over-perforation. Load USA,
France, Germany, England, Den¬
mark, Sweden, Italy, Spain and
Japan language sets. Control unidi¬
rectional, half-speed and proportion-
ally-spaced printing. Store and re¬
trieve 10 complete menu settings
with a few keystrokes. Emulate the
IBM-label printer for the IBM-PC
while retaining full printer versatility.
Download to FX printers five dif¬
ferent IBM character sets, includ¬
ing graphics symbols, greek sym¬
bols, screen and APL characters.
Print at full text-mode speed. Ideal
for IBM graphics software, or
screen dumps, or printing text from
Wordstar, Lotus 123 or many other
fine programs.
Printer Boss™ for the IBM-PC and
compatibles $59.95. With Letter
Boss™ letter quality or Sidekick™
sideways print option $99.95. With
both $139.95. Visa, MC, or send
check. Free info. Dealers welcome.
Printer Boss™
CONNECTICUT SOFTWARE
30 WILSON AVENUE
ROWAYTON CT 06853
203-838-1844
SIDEKICK IS NOT TO BE CONFUSED WITH SIDE¬
WAYS. A TRADEMARK OF FUNK SOFTWARE. PRINT¬
ER BOSS, LETTER BOSS AND SIDEKICK ARE TRADE¬
MARKS OF SPEER RESEARCH CORPORATION.
WORDSTAR AND LOTUS 123 ARE TRADEMARKS OF
MICROPRO INT'LCORP AND LOTUS DEVELOPMENT
CORP RESPECTIVELY.
LEGAL BRIEF
die those details. In any event, at
some point you should have the fi¬
nal say on whether to accept the
buyer he has found. (The broker
might legitimately ask that you be
reasonable in making that decision,
or that you pay him something if
you reject a perfectly good deal on a
whim.) Agree on who has the final
say about whether there is a deal.
Once you and your broker have
reached an agreement on the limits
of each other's authority, you must
take one further step. A legal con¬
cept known as "apparent authority"
protects innocent third parties deal¬
ing with an agent. The broker will
be presenting himself as your agent,
and he will have a copy of your
software and a contract. A third
party who does not know the limits
of an agent's authority may assume
that the agent has the authority
such agents normally have.
This general statement of the
law raises fascinating legal issues:
What type of authority do software
brokers normally have? Can they
waive copyrights? Can they autho¬
rize reverse-engineering object code?
Can they make decisions on back¬
up policies? Can they give warran¬
ties? I don't know. Try to avoid
finding out. Remember that a third
party can assume that an agent has
authority only if he is not on notice
to the contrary: put him on notice.
For example, build a title
screen into your program that says,
"This program is my property. I
have the copyright and the trade¬
mark. My broker has possession,
but not ownership, of a copy of the
program solely to try to find a cus¬
tomer for me. He's a nice person,
but the final decision on whether
to sell it is mine. My broker has no
authority to do anything except
demonstrate the program. He can't
authorize listing it, copying it, mod¬
ifying it, or anything else. I'm not
sure it works, so he certainly can't
make any warranties. If he prom¬
ises you anything, you'd best check
with me first. Here's my phone
number." You and your broker can
work out the actual language.
If you have a trademark (and
remember that in most states you
can appropriate one simply by us¬
ing it in commerce with the intent
to appropriate it), put it everywhere
you can—on the documentation, on
the program title page, salted
throughout the code, on the dis¬
kette jacket, on your broker's
jacket—and remember to use the
symbol "TM" unless it has been
federally registered (in which case
use the symbol ®). Make the broker
promise not to obliterate it when he
presents your program. Similarly,
use a copyright notice. Unless you
have taken further steps, protection
stops at the border—find out if
your broker plans to show your pro¬
gram abroad and if so, take care of
the necessary filings.
In discussing the terms of your
agreement with the broker, remem¬
ber that the broker is taking some
risks, too. The economic risks are
obvious. (Is he spending his own
money? Enough to give him the
right to call some of the shots?) Sup¬
pose, in return for helping you es¬
tablish your name in the software
pantheon, the broker asks for the
right to market any enhancements
of your program (or your next pro¬
gram, or any program you write in
the future). Once you get over be¬
ing very flattered, you should think
about whether you want to tie up
your entire career at this point.
Some of the broker's risks are
less obvious: do not be offended if
he asks you to warrant that you are
the author of the work. His an¬
noyance would be justifiable if he
signed a multi-million dollar con¬
tract, and you could not perform
because you did not write the pro¬
gram. It would even be reasonable
for the broker to ask that you in¬
demnify him against any claims of
copyright infringement. Imagine
his embarrassment if he should try
to sell your program to the person
who actually wrote it.
CIRCLE NO. 235 ON READER SERVICE CARD
PC Tech Journal
INDEPENDENT STORE IN NYC DEDICATED
TO IBM* PC SOFTWARE AND PERIPHERALS ONLY
IN STORE WE DEMONSTRATE MOST PRODUCTS WE SELL—BY APPOINTMENT ONLY
STORE HOURS: 9:00 A.M.-5:30 P.M. E.S.T. MON.-FRI.
Saturdays closed for months of July, Aug., Sept.
Terms, conditions and prices differ in our store.
PC LINK, CORP. 29 WEST 38TH ST. 2ND FL., NEW YORK, NY 10018
HELIX BUBBLE MEMORY BOARDS.CALL
WE ARE CELEBRATING OUR FIRST ANNIVERSARY.
All Prices Listed here are strictly subject to our current stock Available for Anniversary Sale.
BUSINESS SOFTWARE
ALPHA SOFTWARE
DATA BASE MANAGER II. $205.00
EXECUTIVE PACKAGE. 109.00
TYPE FACES. 89.00
ASHTON-TATE
dBASE III. CALL
BOTTOM LINE STRATEGIST. 299.00
FINANCIAL PLANNER. 399.00
FRIDAY. 179.00
CONTINENTAL
HOME ACCOUNTANT PLUS. 85.00
ULTRA FILE. 139.00
TAX ADVANTAGE. 45.00
PROPERTY MANAGEMENT. 319.00
ENERTRONICS
ENERGRAPHICS. CALL
FOX & GELLER
D. GRAPH. 189.00
DIUTIL. 69.00
GRAFOX. 209.00
OZ. CALL
QUICKCODE. 189.00
FRIENDLYSOFT
FRIENDLY WRITER . 50.00
HARVARD SOFTWARE
HARVARD PROJECT MANAGER. CALL
HAYES
SMARTCOM II. 95.00
INNOVATIVE SOFTWARE
TIM IV. CALL
I U S
ACCOUNTING AR/AP/GL ea. 295.00
INVENTORY CONTROL. 295.00
ORDER ENTRY. 295.00
PAYROLL. 345.00
EASY WRITER ll/SHELLER/MAIL .... CALL
EASY FILER. 240.00
EASY PLANNER. 169.00
LOTUS DEVELOPMENT CORP.
LOTUS 1-2-3. (NO MAIL ORDERS).. CALL
SYMPHONY (NO MAIL ORDERS) ... CALL
MICRO DATA BASE
KNOWLEDGE MAN. CALL
MICRO PRO
INFOSTAR. CALL
WORDSTAR. CALL
WORDSTAR PROFESSIONAL. CALL
MICROSOFT
MULTIPLAN. 179.00
COMPILERS. CALL
NORTON COMPUTER
NORTON UTILITIES. 55.00
PC SOFTWARE
CREATABASE. 65.00
PEARL SOFT
PERSONAL PEARL. CALL
ROSE SOFT
PROKEY 3.0. 89.00
SOFTWARE ARTS
TK SOLVER. 299.00
FINANCIAL MANAGEMENT .. 89.00
MECHANICAL ENGINEERING. 89.00
SOFTWARE SYSTEMS INC.
MULTIMATE. 295.00
SORCIM
SUPERCALC III. 299.00
VISICORP
VISICALC FOUR. 179.00
DESKTOP PLAN. 190.00
VISIFILE. 190.00
VISITREND/VISIPLOT. 190.00
VISIWORD. 190.00
DISK DRIVES
CORVUS. CALL
PEGASUS. CALL
QUMET142. CALL
SYSGEN. CALL
TANDON TM 100-2 . 200.00
MULTIFUNCTION BOARDS
64 RAM CHIPS. 55.00
AST CARDS. CALL
QUADBOARD CARD. CALL
AMDEK MAI CARD. CALL
PC MOUSE. CALL
FTG LIGHTPEN . CALL
PLANTRONICS COLOR PLUS CARD ... CALL
HERCULES. CALL
PRINCETON GRAPHICS. CALL
ENTERTAINMENT & EDUCATION
ATI TRAINING PACKAGES. ea. 55.00
ATTACK ON ALTAIR. 29.00
COMPUTER FACTS IN 5. 22.00
CONQUEST. 29.00
DEADLINE. 37.00
DIGGER. 29.00
THE EXTERMINATOR. 29.00
FLIGHT SIMULATOR. 35.00
FRIENDLY ARCADE. 32.00
FRIENDLY PC INTRO SET. 32.00
FROGGER. 25.00
GORGON. 29.00
HIDE & SINK. 22.00
HI RES #4. 27.00
MOON BUGS. 29.00
MY LETTERS, NUMBERS & WORDS ... 32.00
PC CRAYON. 39.00
PC TUTOR. 49.00
PLANET FALL. 39.00
SERPENTINE. 25.00
SPINNAKER SERIES. CALL
SPYDER. 29.00
STYX. 29.00
SUSPENDED. 39.00
WITNESS. 39.00
WIZARDRY. 49.00
ZORK I. II. Ill. ea. 27.00
ZURAN DEFENDER. 25.00
FUNTASTIC
BIG TQP. 27.00
COSMIC CRUSADERS. 27.00
MASTER MINER. 27.00
SNACK ATTACK. 27.00
ACCESSORIES
CURTIS PRODUCTS
DISPLAY PEDESTAL. $50.00
MONO CABLE. 38.00
KEYBOARD CABLE. 30.00
SYSTEM STAND. 17.00
KRAFT JOYSTICK. 39.00
HAYES MACH III JOYSTICKS. 45.00
MONITORS
AMDEK 310A. S175.00
COLOR 11+. CALL
PRINCETON GRAPHIC HX-12. 489.00
SR-12. CALL
ZENITH RGB MONITOR. 499.00
MODEMS
HAYES SMART MODEM. $205.00
HAYES SMART MODEM 1200. 495.00
HAYES SMART MODEM 1200B. 449.00
DISKETTES
DYSAN
5.5. /D.D. $30.00
D.S./D.D. 38.00
MAXELL
5.5. /S.D. 27.00
D.S./D.D. 38.00
VERBATIM (5 year warranty)
21144 HEAD/CLEAN KIT. 10.50
5.5. /D.D. 26.00
D.S./D.D. 36.00
PRINTERS
DIABLO P32 D-MATRIX. CALL
DIABLO 630 .$1699.00
DIABLO 630 TRACTOR FEED. 249.00
DYNAX DX-15 OR DX-25. CALL
PROWRITER F10 . 925.00
IDS PRISM 132 COMPLETE. 1499.00
OKIDATA 92P. 465.00
93 P. 699.00
TOSHIBA P1351 . 1499.00
TOSHIBA P1340 . CALL
EPSON FX SERIES. CALL
NEC 3550. CALL
PRINTER CABLE/PARALLEL. 25.00
NORTH AMERICAN BUSINESS
MEMORY SHIFT. 69.00
callTOLL FREE 800-221-0343
All prices listed in this ad are effective Aug. 1-31,
1984. All Brands are Registered Trademarks.
IBM is a Registered Trademark of IBM Corp.
in new york callI-212-730-8036
TERMS AND CONDITIONS
We reserve the right to repair, replace or return to manufacturer for repair, all goods
acknowledged faulty or damaged on receipt by customer. Customer must call for Return
Authorization Number before returning any goods. Prompt attention will be given to all
damaged and faulty returned goods. Any goods returned for credit are subject to 10%
restocking charge, plus shipping charge. No returns for credit on any software. Customer
must deal with the manufacturer directly if the customer finds any false claims made by
the manufacturer. All goods are shipped U.PS. only. Add 2% of price, or minimum of $3.00
for shipping. We do not ship C.O.D. Please allow one to two weeks for personal or
corporate checks to clear. To expedite shipping send money order, certified cashier's
check, or charge to your VISA, MasterCard, WE DO NOT Add a Service Charge For Credit
Card Usage. Prices subject to change without notice. NOT RESPONSIBLE FOR
TYPOGRAPHICAL ERRORS. CIRCLE NO. 183 ON READER SERVICE CARD
LEGAL BRIEF
LISP
FOR THE
THE PREMIER LANGUAGE
OF ARTIFICIAL
INTELLIGENCE FOR
YOUR IBM PC.
■ DATATYPES
Lists and Symbols
Unlimited Precision Integers
Floating Point Numbers
Character Strings
Multidimensional Arrays
Files
Machine Language Code
■ MEMORY MANAGEMENT
Full Memory Space Supported
Dynamic Allocation
Compacting Garbage Collector
■ FUNCTION TYPES
EXPR/FEXPR/MACRO
Machine Language Primitives
Over 190 Primitive Functions
■ 10 SUPPORT
Multiple Display Windows
Cursor Control
All Function Keys Supported
Read and Splice Macros
Disk Files
■ POWERFUL ERROR RECOVERY
■ 8087 SUPPORT
■ COLOR GRAPHICS
■ LISP LIBRARY
Structured Programming Macros
Editor and Formatter
Package Support
Debugging Functions
OBJ File Loader
■ RUNS UNDER PC-DOS 1.1 or 2.0
_ IQLISP _
5V4" Diskette
and Manual_$175.00
Manual Only_$ 30.00
Jq Integral Quality
P.O.Box 31970
Seattle, Washington 98103-0070
(206)527-2918
Washington State residents add sales tax.
VISA and MASTERCARD accepted.
Shipping included for prepaid orders.
A little distrust on both sides is
healthy: it helps define the relation¬
ship. Negotiation concerning the
risks—the author's fear that the
broker will steal his idea or the bro¬
ker's fear that the author will claim
that the broker stole a program —is
difficult. The broker may open ne¬
gotiations with the following*.
"Author acknowledges that
Broker is dealing with many other
authors, all of whom have wonder¬
ful new ideas. Since there are a lim¬
ited number of wonderful new
ideas, chances are that there is some
duplication. Broker is an honorable
man, so if he markets something
similar to Author's program, it is
because someone else had the same
idea or because Broker developed it
independently. In case of a tie, Bro¬
ker's decision as to the winner will
be final. Author hereby waives any
claims against Broker for infringe¬
ment of copyright, trade secrets, or
patent rights. Author hereby agrees
never to sue Broker for anything."
You might counter with:
"This program is the property
of and copyrighted by Author. It is
unpublished and contains valuable
trade secrets. Only the Author and
Broker have seen it, so if it shows
up on the market, we know who's
responsible. Broker will take all
steps necessary to keep the program
confidential and, if he fails to do so,
will pay Author the royalties he
should have earned plus attorneys'
fees. Broker hereby acknowledges
Author's rights and agrees not to
contest them in any proceeding."
Suppose the broker responds,
"How can I market your program if
I can't show it to anyone, and how
can I show it to anyone at the risk
of being liable for the enormous
damages if, through no fault of
mine, someone else markets a simi¬
lar program? Besides, that's the
ninth combination spreadsheet-food
processor program I've been offered
today, and I understand that one is
already on the market in California
under the name Avocado Spread."
Time to look for some middle
ground. One approach would be for
you, as the author, to make a pre¬
liminary, unprotected, disclosure of
the general nature of the program
(use your imagination) and to ask
that the broker identify any areas
of similarity to other programs on
the market or under his considera¬
tion. Depending on the broker's re¬
sponse, a more focused confidential¬
ity agreement might be constructed,
specifying what particular aspects of
the program are, in fact, unique.
The demonstration version of the
program might be supplied in
incomplete form, and the broker
might be asked to agree not to de¬
compile, modify, or otherwise pry
into the program himself and not to
allow any potential customer to do
so. Perhaps the broker would be
willing to agree to take "reason¬
able" steps to keep the software
confidential, or to take such steps as
he would if the software were his.
Return to the real world for a
moment. What if you are a pro¬
grammer who hasn't sold a thing
since the lemonade bankruptcy in
third grade? What can you realisti¬
cally hope to accomplish before you
sign a boilerplate brokerage agree¬
ment? You certainly can affix copy¬
right and trademark notices. You
can satisfy yourself that this broker
is a reasonably honest, reasonably
competent person. You can try to
get significant promises reflected in
a written agreement (and be suit¬
ably suspicious if you cannot). Fi¬
nally, you can communicate your
expectations to the broker and try
very, very hard to leave yourself a
cheap way out if the broker does
not produce the results you expect.
If you cannot get a satisfactory
agreement, you can always keep the
program for your own private en¬
joyment or, if you are really cau¬
tious, degauss the program disk and
turn off the computer. I |m —J
CIRCLE NO. 243 ON READER SERVICE CARD
PC Tech Journal
PC
net and the
B.O.S.S.
Business-Oriented Software System for IBM-PC Networks
Multi-User Data Base Management Software
Designed for Use by Non-Programmers
■ Easy to Use
First-time users often define multiple data bases, enter records, and
produce reports within three hours. The B.O.S.S.™ is menu driven. It
presents options and responds to commands in plain English, while
preventing multi-user conflict without user programming.
■ Multi-User Simultaneous Updating
Several users can update the same database without worrying about
losing data. The B.O.S.S. automatically prevents multi-user conflicts.
Sophisticated record level locking protection procedures are used.
■ Handles Large Files
The B.O.S.S. handles business oriented data files with thousands of
records as well as it handles small files. Sorting rarely is needed — The
B.O.S.S. updates all indexes (up to 15) when changes are made.
■ Generates Reports Fast
The B.O.S.S.’s full-featured Report Program Generator produces
sophisticated business reports fast. First time users can select menu
options to design inquiries that match records in multiple files and
perform computations.
■ Versatile, Powerful and Portable
The B.O.S.S. is fully capable on most 16-bit microcomputers and
operating systems, including MSDOS™, CP/M-86™, and MP/M-86™.
Applications designed on one system may be transported easily to
another. The B.O.S.S.’s full power and versatility are most apparent when
used to create application systems for 16-bit machines such as the IBM-
PC™ and to create applications for networking systems such as PCNet™
(Allows addressing of 1 full megabyte of RAM).
■ How It Works...
Non programmers use Levels I and II.
Level I consists of:
• A foundation module used to define individual data files, enter data into
those files, and to display, edit and print the data.
• A powerful, fast sort capability.
Level II consists of:
• An inquiry function used to design and produce video pages.
• A report generator that performs sophisticated calculations and
produces user designed output to the display screen, printer or other
files. The inquiry and report modules can access up to 8 separate data
files simultaneously.
Level III — Database modules for programmer use.
COMPARISON OF
POPULAR DATA BASE MANAGEMENT PROGRAMS
The
B.O.S.S.
dBase™
II
TIM™
III
Condor™
20
Data¬
Star 7
Multi-user network
Yes
No
No
No
No
Menu driven
Yes
No
Yes
Yes
Yes
Files open on line
8
2
N/A
2
1
Maximum records/file 100,000,000
65,600
32,800
32,800
32,800
Maximum bytes/record
10,000
1,000
2,400
1,000
255
User must be programmer
No
Yes
No
No
No
Maximum number of indexes
15
1
1
1
1
automatically updated.
(Data are taken from most recent versions of programs available to American
Planning Corporation, Alexandria, VA)
■ Advanced Features
Experienced analysts and programmers use all levels to create
sophisticated business application programs.
The B.O.S.S. provides analysts and programmers with a broad and varied
set of functions patterned after mainframe software development tools.
Large and complex programs are created easily and in record time.
■ Savings
When used to develop programs, The B.O.S.S. reduces costs by at least
60% and slashes required time by up to 95%.
■ 30-Day Money Back Guarantee
The B.O.S.S. package includes a 30-day, no questions-asked money back
guarantee. Unlimited backup copies are allowed and the complete source
code is provided so that advanced programmers can further tailor the
program. Updates will be furnished for a nominal fee.
B.O.S.S. is a trademark of American Planning Corporation
PCNet is a trademark of Orchid Technology
CP/M & MP/M are trademarks of Digital Research, Inc.
IBM PC is a trademark of IBM Corporation
TIM III is a trademark of Innovative Software
dBase II is a trademark of Ashton-Tate
Condor is a trademark of Condor Computer Corporation
DataStar is a trademark of MicroPro, Inc.
( AMERICAN
PLANNING
CORPORATION
4600 Duke Street, Suite 425
Alexandria, VA 22304
CIRCLE NO. 139 ON READER SERVICE CARD
Dealer Inquiries Invited
1-800-368-2248
(In Virginia, 1-703-751-2574)
Visa and Master Charge Accepted
For your IBM/PC
mbp GOBOL:
4 times faster;
and now with
SOKT& CHAIN
GIBSON MIX Benchmark Results
Calculated S-Profile
(Representative COBOL statement mix)
Execution time ratio
mbp
COBOL
Microsoft
COBOL
Level II*
COBOL
R-M**
COBOL
mbp COBOL can be summed up
in one word: fast.
Because it generates native
machine language object code, the
mbp COBOL Compiler executes
IBM/PC* programs at least 4 times
faster (see chart). Fast also describes our new SORX which can sort four-
thousand 128-byte records in less than 30 seconds. A callable subroutine or
stand-alone, 9 SORT
control fields can be
specified. And our new
CHAIN is both fast and
secure, conveniently
transferring control from
one program to another, passing 255 parameters. Plus, new
extensions to ACCEPT & DISPLAY verbs give better, faster
interactive programming.
128K system with hard disk required. ’IBM/PC is an IBM TM; *’Level II
is a Micro Focus TM; ***A Ryan-McFarlandTM; **** A Microsoft TM.
mbp COBOL:
4 times faster.
The
complete
COBOL.
An Interactive Symbolic Debug Package
included standard; Multi-Keyed ISAM Structure;
listing options allow source & object code, map
& cross-reference checking; GSA Certification
to ANSI ’74 Level II; mbp has it all.
It’s no surprise companies like Bechtel,
Chase, Citicorp, Connecticut Mutual, and
Sikorsky choose mbp COBOL; make it your
choice, too. mbp is available at Vanpak Soft¬
ware Centers, or direct; just send the coupon,
or call for complete information-today
CIRCLE NO. 165 ON READER SERVICE CARD
mbp Software & Systems
Technology, Inc.
7700 Edgewater Drive, Suite 360, Oakland, CA 94621
Phone 415/632-1555
Please send complete mbp COBOL information to:
NAME.
COMPANY _
ADDRESS _
CITY/STATE/ZIP _
PHONE_
BOOK REVIEWS
IBM PC Data File
Programming
Jerald R. Brown and LeRoy Finkel
(John Wiley & Sons, New York, 1983)
367 pages, paper, $14.95
I BM PC Data File Programming is a
well-written instruction manual for
the creation, modification, and use of
data files from IBM PC BASIC. Data
files using both sequential and random
organization are covered. Although the
book is intended for novice program¬
mers who have had some BASIC
programming experience, it is also an
excellent resource for programmers ex¬
perienced in other languages, such as
FORTRAN or COBOL, who must learn
to program in BASIC.
The book emphasizes the impor¬
tance of programming style and begins
with a clear description of the tech¬
niques programmers should use to be
sure their programs are well designed,
easy for others to understand, and as
compatible with other versions of
BASIC as possible. These concepts are
kept in mind throughout the book; the
sample programs adhere to them and,
when a choice must be made between
style and efficiency or portability, the
authors comment on their choice.
The second and third chapters are
a review of BASIC statements and a
short tutorial on the building of data
entry and error-checking routines. The
statements review focuses on those used
to input and manipulate data (e.g.,
LINE INPUT, MID$). Some funda¬
mental programming necessities, such
as IF .. . THEN statements and subrou¬
tines, are also reviewed.
Once they have covered procedures
for ensuring that information has been
properly entered, is of the proper type,
and falls within the proper range, the
authors discuss techniques for making
sure that the data are entered and dis¬
played in the desired format.
BASIC Engineering and
^Scientific Programs
“IBM PC
The fourth chapter of IBM PC
Data File Programming introduces the
concept of data files, beginning with se¬
quential data files. Through a series of
example programs and self-testing exer¬
cises, the reader is shown how to ini¬
tiate a file with the open statement;
how to tell the computer whether it is
an input, output, or existing file to
which data are to be added; and how to
read information from or write informa¬
tion to the file. The authors discuss
methods of copying information from
one sequential data file to another, cor¬
recting information on a sequential data
file, and merging the information from
two sequential data files.
Last to be covered are the random
access files. Their treatment is similar
to that given the sequential files;
through a series of example programs
and exercises, the reader can learn to
develop programs that read, modify, or
create random access data files.
The book proceeds at a good pace,
with exercises and example programs
that gradually increase in their level of
complexity. The reader is given pro¬
gramming exercises for each phase of
instruction, and the authors have pro¬
vided answers for all the exercises. This
in itself would make the book worth
buying, but the authors have done even
more: the example programs are practi¬
cal routines that can either be used as
they are or expanded to suit the indi¬
vidual requirements of the reader.
Some of the programs provided are:
a form-letter program that accepts ad¬
dresses from an address data file,- a pro¬
gram to read, display, and provide the
option to modify the contents of either
sequential or random access data files,-
an inventory control program,- and a
personal money management program.
These programs are also available on a
disk (SI9.95) for those who do not wish
to enter them manually.
- Marilyn V. Fleming
The DIF File: For Users of
VisiCalc and Other Software
Donald H. Bell
Reston Publishing Company,- Reston,
VA ; 1983
235 pages, $15.95 paper, $19.95 cloth
T he data interchange format (DIF)
was developed by Robert M. Frank-
ston, president of Software Arts, Inc.
(the creators of VisiCalc) as a way of
enabling data communication between
VisiCalc and other software packages.
The format can be used to organize data
on any storage device and, because it is
a concept rather than a product, it is
essentially hardware independent.
The purpose of this book is to ex¬
plain the process of exchanging data via
DIF files. People who are interested in
understanding DIF files, possible appli¬
cations for this concept, and data ex¬
change between different software pro¬
grams will find this book useful.
The steps involved to create a data
file from one program and read it into
another are presented, with an empha¬
sis on the concept that the common
data format is only a part of the process.
The procedure of moving data from one
program to another is presented as a
multi-step process in which each step
must be performed carefully.
Guidelines are offered for those
who wish to exchange data between
software products; a chapter is devoted
to documentation of the exchange pro¬
cess. The author presents actual exam¬
ples of data exchange between: VisiCalc
and VisiTrend/Plot; VisiCalc and
PFS:Graph ; DB Master and The Execu¬
tive Secretary,- VisiWord and VisiCalc
via LoadCalc,- CompuServe and VisiCalc
using MAINLINE,- DIF files and 1-2-3,-
and DIF files and TK.'Solver.
In addition, there is a tutorial on
the DIF format, a section on the DIF
Technical Specifications from Software
Arts, a discussion of references in other
August 1984
187
BOOK REVIEWS
books to listings of BASIC and Pascal
programs that process DIF files, and a
limited annotated listing of commercial
software that is capable of using data
files in the DIF format.
The author also correctly points
out many of the DIF format limitations,
including the fact that the DIF format
is designed for numeric data and is
awkward or unusable when transferring
both numeric and nonnumeric data.
Also mentioned are the problems with
unusual data that do not fit, such as Vi-
siCalc's repeating label. The author also
discusses the requirement that data
must be rectangular (that is, it must
have an equal number of records and
fields), which means that variable-
length records need reformatting.
Another problem mentioned here
is that only labels and values, not for¬
mulas and formats associated with data
entry, are stored. Finally, the author
touches on the fact that the DIF format
is not the universal standard for data in¬
terchange. Different programs that
create DIF files do not always create the
same DIF file from the same data.
This book is well written, easy to
read, and easy to understand. The au¬
thor has attempted to explain the DIF
files process and the steps necessary to
make it work for the user. Although
much of the book is devoted to VisiCalc
file transfers, the material presented
should also be helpful to people who
have other forms of spreadsheets, such
as MultiPlan and SuperCalc, that use
variations of the DIF format.
The DIF File is recommended for
anyone who is concerned with data
transfer between different software pro¬
grams and anyone who is interested in
the subject of DIF files and their use.
-James E. Crews
Basic Engineering and Scien¬
tific Programs for the IBM PC
Wolfe and Koelling
(Brady; Bowie, MD ; 1983)
358 pages, paper, $19.95
T his is one of Brady Publishing
Company's newest texts aimed at
the IBM PC and XT market. The book
contains many useful topics and pro¬
grams for the engineering-scientific
community, as well as an optional dis¬
kette containing all of the programs in
the book (38 major subroutines and pro¬
grams). Like most books published by
Brady, this one is easy to read, accurate,
and has plenty of appropriate examples.
The book is divided into 15 major
sections, covering the IBM Personal
Computer, data reduction, matrices and
vectors, curve fitting with linear regres¬
sion, solving simultaneous linear equa¬
tions, roots of polynomials, numerical
integration, numerical solutions to dif¬
ferential equations, linear programming,
forecasting with exponential smoothing,
project planning and scheduling with
CPM (Critical Path Method), sorting,
disk data files, data structures, and ran¬
dom numbers and simulation.
One of the features I like about
this book when compared to other
books for scientists and engineers is that
it is not just a collection of programs,
but an actual textbook that teaches the¬
ory, gives practical examples, and then
provides a program to solve those exam¬
ples. This approach helps readers ex¬
pand their horizons into applications
that may never have occurred to them
before. Another technique the authors
I use is that of progressive examples, each
I example building upon the one before I
Run More Than One Program With:
^ MULTI-JOB
FOR THE IBM
PERSONAL COMPUTER AND XT
* No special hardware is required (except memory).
* Multiple programs can run concurrently using PC DOS.
* Programs can be run simultaneously or one at a time.
* Up to 9 separate jobs.
* Free 30-day trial period.
* Have a true multi-user system with the MULTI-
TERMINAL-MONITOR (MTM) option.
* More cost effective than buying a second machine.
MULTI-JOB $159.00
Gives you multi tasking using PC DOS.
MULTI-JOB/MTM PACKAGE $295.00
Gives you multi tasking and multi users using PC DOS.
ELECTRONIC DISK $ 49.00
Creates one or more super fast disk drives from memory.
SPOOL PROGRAM $ 24.00
Will redirect printing to memory.
SET MEMORY UTILITY $ 24.00
Allows you to set the effective size of memory without
removing the cover or changing any switches.
PC CALCULATOR $ 35.00
Turns your computer into a calculator.
EXCITING NEW DISCOVERY! Have you ever had the need
for a letter quality printer? They are nice to have, but cost from
$600 to $3000. Although many of them allow different type
styles and fonts, changing fonts requires changing the physical
head on the machine. The FANCY FONT PROGRAM allows
different typestyles and font types and is printed by a stan¬
dard IBM graphic printer. Available now for $179.00
B&L COMPUTER CONSULTANTS, 7337 Northview, Suite B,
Boise, ID 83704, (208) 377-8088.
Dealers inquiries are welcome. Call or write for a free catalog.
CIRCLE NO. 153 ON READER SERVICE CARD
Moit^Ord
v x y
188
PC Tech Journal
Our "FILE CONNECTION" programs provide 8" diskette file exchange between
the IBM PC and most Micro-Mini-Main Frame computer systems.
Our "WORD CONNECTION" programs provide 8” diskette text document
exchange between the IBM PC and many word processing systems.
Our "DISPLAYWRITER CONNECTION" programs transform documents from
Textpack, Wordstar, Multimate, etc. to the new DisplayWrite 2 format.
In addition to our hardware and program products, we also provide a conversion
service for customer supplied diskettes. Please contact us for information about the
hundreds of 5 l A" and 8" diskette formats and systems which we currently support.
FLAGSTAFF ENGINEERING / 2820 West Darken / Flagstaff, AZ 86001
Telephone 602-774-5188 / Telex 705609 FLAG-ENG-UD
CIRCLE NO. 213 ON READER SERVICE CARD
BOOK REVIEWS
Pack
Complete
BUY!
Single Sided
Double Density
Soft sector h^k" flexible diskettes
‘Complete with hub reinforcing rings,
Tyvek sleeves, color coded user
labels, and write protect tabs.
Quality you expect
at a price you don’t.
Proven quality at a great price. BECK offers
you a full satisfaction money-back guaran¬
tee - you can’t lose! If you like the quality of
3M, Dysan, Verbatim, et al, you’ll like BECK.
• Satisfaction, Money-Back Guarantee
• 100% Certified, 100% Error-Free
• Full 7-Year Warranty
• Tested and Retested 21 Times to 42 Rigid
Specifications
• Meets or Exceeds ANSI Standards
For IBM, Apple, TRS, and 97% of popular
computers.
Order Toll Free 1-800-232-5634.
Available in 25-Pack only plus freight.
Bulk product inquiries welcome.
COD’S CASH ONLY
Corp. Accts Welcome
Order Now Toll Free
Door to Door in 48 hrs.
mmBBOCMIffi
(In New Hampshire call 924-3821)
as a chapter progresses. The second
chapter, on data reduction, will serve to
illustrate both of these points.
Initially, chapter 2 appears to be a
standard treatment of simple statistical
concepts, such as mean, median, mode,
range, variance, and standard deviation.
Indeed, the text does teach these con¬
cepts clearly, presenting several exam¬
ples. However, before a simple statisti¬
cal program can be written, the authors
suggest the need for plotting the data,
which immediately requires knowledge
of concepts such as sorting and scaling.
The main program is created first, and
these additional topics are brought into
that program as subroutines. The plot¬
ting routines in the main program use
the text screen for displaying the re¬
sults and therefore will work on both
the monochrome and color graphics
screens. The chapter ends with some
examples to help the reader verify and
debug his program once it is entered.
Chapter 3 is a more or less stan¬
dard treatment of matrices and vectors,
with examples of how to transpose, add,
subtract, multiply, and perform expo¬
nentiation. Chapter 4 is an outstanding
treatment of curve fitting with linear
regression. Topics such as simple linear
regression, multiple regression, and
stepwise regression are presented in ex¬
amples and in two programs. The sim¬
ple linear regression program teaches
the fundamentals of regression tech¬
niques, while the multiple and stepwise
regression program will form the foun¬
dation of a powerful analysis tool.
Many different examples are included
in this chapter to help the reader envi¬
sion possible applications in his work.
Chapters 5 through 8 also deal
with conventional topics, such as solv¬
ing linear equations, finding the roots
of polynomials, performing numerical
integration, and finding numerical solu¬
tions for differential equations. Of all of
these chapters—indeed, of the whole
book—chapter 8 ("Numerical Solutions
to Differential Equations") is the most
disappointing. There is such potential
in this chapter to give excellent engi¬
neering and scientific applications, and
the authors drop the ball. There is not
one example that is taken directly from
an engineering or scientific application.
Rather, all examples remind me of a
purely mathematical approach to differ¬
ential equations: "Example #2 Solve the
following differential equation using
the Runge-Kutta formula from equation
(7) at x = 0.2 and h=0.2."
Does this sound like engineering?
Does this sound like fun? The closest
they come to redemption in this chap¬
ter is to include two problems for the
reader to solve, one dealing with a clas¬
sical liquid mixture question and one
dealing with radioactive decay.
Chapters 9 and 10 are well written.
Chapter 9 presents the concepts and
definitions of linear programming. The
material suggests how to formulate a
problem and offers the traditional
graphical and linear algebra solutions
before discussing the Simplex method
of solution. The remainder of the chap¬
ter describes how to use the 350-line
Simplex program and provides many
practical examples. Chapter 10 returns
to graphing techniques and suggests sev¬
eral methods for exponential smoothing
of data. This topic is presented with the
anticipation of being able to project or
forecast future trends based on pre¬
viously collected data.
Chapter 11 is devoted to CPM
(Critical Path Method). This technique
is used for project planning and sched¬
uling. While the topic is interesting, it
probably should have been included in
a book for managers, not engineers.
The remaining four chapters cover
sorting techniques, disk data files, data
structures, and random numbers (used
for simulation). The topic of data struc¬
tures is probably a new concept for en¬
gineers and scientists. The authors cor¬
rectly point out that when large
amounts of data are to be handled, the
data structure can dramatically affect
execution time. Concepts for handling
data such as stacks, queues, linked lists,
and bidirectional lists are presented,
along with examples and programs.
Again, these programs can be used as
main programs or as subroutines.
This text will not be disappointing
for persons seeking engineering and
scientific methods of handling data.
The authors present their subject mat¬
ter clearly and concisely.
-William H. Murray
CIRCLE NO. 193 ON READER SERVICE CARD
PC Tech Journal
Breakpoint encountered, CS:IP=..MEMORY_TESTERI100
OP
ADDR CODE OPERAND(S)
064SB JMP $+0082 .MEMORY TESTERI99
. MEMORY TESTERI99'
064DD ADD WORD PTR 1F5B21.0040 ;.MEMADDR+0002
192E2 READ - DS - 00
192E3 READ - DS - 10
192E2 WRITE - DS - 40
192E3 WRITE - DS - 10
LOCAL VARIABLES OH THE STACK
BUFFER -- 09D3:0000 BUFFERLEMGTH = 001F
BUFFER CONTENTS
09D3 0000 54 45 53 54 4D 45 4D 4F 52 59 20 50 4F 49 4E 54 «TESTMEMORY POINT*
09D3:0010
AX 00A5
BX=03FF
CX 000b
DX 0000
l 00 00 00 00 00 00 00 00 00 00 0
SS= 09D3 DS=09D3 ES=1000
SP= F580 SI-F5B8 DI^09D3
BP=F580
FL= 00 D0 II T0 S0 Z0 A0 P0 C0
Assemble BP BYte COMpare CONsole DEIete DMa ECho EMacro EValuate Fill
So IF INIt INT LOAd LOGic LOOp MAcro MEnu MODule MOVe NEst
(C)Copyright Atron Corp. 1983,
Atron s PC Probe Version X1Q3
MOR
ATRON Announces
A State of the Art Advance in
Software Debugging—PC Probe
PROGRAMMERS AND
MANAGERS know that finding bugs
during new product development and
over the entire product life cycle adds up
to a significant portion of total product
deelopment cost and support time.
Investing in the right debugging tools will
greatly improve time to market as well as
minimize development cost. Atron Corp.
has the right debugging tools for the PC
environment. These are:
1) PC PROBE
2) SOFTWARE PROBE
3) PERFORMANCE ANALYZER
PC PROBE plugs into a PC or compatible.
It is a total system debugger with features
like:
Real Time Trace
Program flow is saved in trace memory
while running at full speed. PC PROBE
can display trace data as high level
language line numbers, procedure names
etc. — or as 8088 instructions. In addition,
DMA cycles, interrupt lines and external
logic probes can be traced. Real time
trace answers the question ‘ How did I
get here"?
Memory Protection
What good is a debugger that can be
wiped out by an undebugged program?
PROBE software is write protected and
can’t be changed.
Hardware Breakpoints
The PC PROBE has 8 breakpoints and
can trap conditions such as instruction
execution, read, write, 10, DMA, interrupt,
or external logic probes. Breakpoints can
also be set on ranges of address or
data — symbolically too!
Enhanced Human Interface
The PC PROBE designers know the
importance of EASE OF USE. The PC
PROBE interface has a menu window
which displays the syntax of each
command — so you never have to
remember how a command works. It also
recalls the previous invocation of each
command to save tedious typing — and
tedious thinking!
Symbolic Debugging
Avoid the tedium of sifting through link
maps to find out where things are. The
PC PROBE uses your C, PASCAL,
assembly language program symbols.
Macro Commands
Why be limited by a fixed set of de¬
bugging commands? PC PROBE lets you
create your own powerful macro com¬
mands with parameter passing, nesting,
LOOPING and IF/THEN/ELSE control.
ANNOUNCING
SOFTWARE PROBE
The same great software used on PC
PROBE is now available separately as
SOFTWARE PROBE -
ONLY $295
Software probe is the only software
debugger available which provides a
hardware reset and break box for
program crash recovery. What good is
a software debugger if you can’t get
control of run away programs?
PERFORMANCE ANALYZER
How do you find time critical program
problems or know where to start
performance tuning your software? Get
Atron's new Software Performance and
Timing Analyzer. Then you can display
histograms of how your programs run —
by time or by events. You can perform
many different timing measurements.
Atron has many happy customers who
have made critical product schedules
because of PC PROBE. Why waste time
on primitive debugging techniques? —
Call us today and ask for your 12-page
data sheet. Manuals also available for $25.
tSuEjh
- 20665 FOURTH STREET • SARATOGA. CA 95070 • (408) 741-5900
CIRCLE NO. 107 ON READER SERVICE CARD
“In the art
ofprogramming
the difference between
greatness and mediocrity
is often the quality of
the artist’s tools. ”
In every top programmer’s tool kit there are usually ;
few secret weapons. PolyMake and PolyLibrarian hav
become the newest essential secret weapons for hun
dreds of professionals who are setting new standards c
productivity and performance for themselves and th
industry.
Praise From Professionals
“PolyLibrarian is a powerful tool for serious
hobbyists and professional programmers. It
is a thing of beauty; a work of art. The docu¬
mentation is excellent, the large selection
of commands are intuitive to learn and easy
to use, and the program itself provides a
service of inestimable value. It is refreshing
to see a tool of this caliber available for seri¬
ous programmers. The design of this pro¬
gram shows foresight and ingenuity. It sets
the human engineering standard for pro¬
gramming utilities. If all of a programmer’s
tools were so simple to work with, better
programs could be developed in less time
and with fewer headaches. Bravo, Polytron!
I look forward to your next product.”
Dan Rollins,
Programmer and Author writing in PC Age
“PolyLibrarian is an extensive, friendly utility
. . . an excellent tool for serious program¬
mers. It combines professional quality with
a flexible user interface.”
Greg Estes
Editor, Programmers Journal
“I am thoroughly pleased [PolyLibrarian] is
definitely one of the best products of its
type that I have ever used on any system.”
An Unsolicited Comment from
Steve Kauffman
Consulting Engineer
To Order or Request Literature Call
1 - 800 - 547-4000
Ask For Dept. 310
VISA & MasterCard Accepted
Or Send Checks, P.O.’s To:
Polytron Corporation ds-310-fi
P.O. Box 787, Hillsboro, OR 97123
Add $1.25 Shipping Charge For Each
Product Ordered.
CIRCLE NO. 268 ON READER SERVICE CARD
The Object Module Library Manager for MS-DOS ™
PolyLibrarian lets you create a single library from related Objects Modules. Th
IBM PC Linker will then select only the modules necessary to produce an execu
able file. PolyLibrarian can: □ Create, organize, reconstruct, dissect, and compre:
libraries of object code modules. □ Add, delete and replace an object module
□ Extract a module from a library to create an OBJ file. □ Change public an
external names. □ Optimize a module to shorten overall size of a library
□ Modules are time-stamped within the library. □ Supports full path name:
□ Supports Microsofts’ original and latest Linker (Version 2.4). □ Includes insta
lation program to customize options to your specific needs. □ Features thre
Modes of Operation (Interactive, Command File, Command Line) that can b
freely intermixed. □ Surpasses performance of other primitive librarians. □ Fei
tures a highly functional user interface that uses simple meaningful key word:
□ Requires 128K RAM, MS-DOS (PC-DOS) 1.1, 1.2 or 2.0. □ Compatible wit
any compiler or assembler that uses the MS-DOS (PC-DOS) Linker. □ Shippe
with comprehensive Users Manual including step-by-step tutorial for. jQj
POLYLIBRARIAN
Extends PolyLibrarian’s power to lntel m Format Libraries.
PolyLibrarian II is an enhanced version of PolyLibrarian. In addition to all th
features and functions listed above for PolyLibrarian, this version adds a ne 1
dimension of productivity for programmers using Intel Language Product:
□ Compatible with any Intel Format Library and any Microsoft Format Libran
□ Compatible with Intel’s Link 86 under MS-DOS. ....... *14!
POLYMAK
The Intelligent Program Builder & Maintenance Tool for MS-DOi
PolyMake frees you from the need to remember which files depend on others an
which files have been modified. PolyMake will: □ Remember the exact sequence c
operations necessary to make a new version of a program. This will significantly r<
duce development time, prevent bugs & manage large software projects □ Aut<
matically invoke your compiler, assembler, linker, librarian, or do whatever is nece
sary to bring all dependent files up to date. □ Compare the date and time of all rel<
vant files and use internal rules to rebuild a program or complete software systen
□ Rules can be modified and expanded. □ Extensive debug capabilities help cor
struct efficient make files. □ Includes features superior to UNIX Make. □ Ful
automatic operation under MS-DOS 2.X. □ Full path name capabilities under M!
DOS 2.X. □ Requires 128K. Shipped with a comprehensive Users Manual
TM
A S E S
Hercules Color Card
Hardware, software,
and other developments
for the PC
HARDWARE
IBM has announced price
reductions on many of
its products. First, less expen¬
sive versions of the PC and
PC/XT have been intro¬
duced. These new machines
come with 256K memory
and one 360K disk drive. A
typical configuration consist¬
ing of a new 256K version
PC, one 360K disk drive and
adapter, and a monochrome
display and adapter costs
$2,520, a reduction of 23 per¬
cent. A new XT with 256K
and a monochrome display
and adapter now costs $4,920,
a reduction of 18 percent.
Other reductions were in
the price of the Portable PC
($2,595) and the PC/r (entry
model —$599; 128K model —
$999). In addition, a new
version of the Portable PC
with two factory-installed
disk drives has been intro¬
duced ($3,020). The price for
other PC system units has
been lowered as much as 23
percent, and new, lower
prices are also in effect for
many PC options.
IBM
Entry Systems Division
P.O. Box 2989
Delray Beach, FL 33444
305-241-7614
A color graphics card for the
PC and XT is now available
from Hercules Com¬
puter Technology. The
company claims that its
Hercules Color Card
matches the performance of
the IBM Graphics Monitor/
Adapter card and even offers
a parallel printer port not
found on the IBM product—
all for $1 more than the IBM
card. The Hercules Color
Card is one-half the size of
the IBM card and can fit
into one of the XT's short
expansion slots. The size re¬
duction was made possible
by advanced gate array tech¬
nology. The Hercules card is
compatible with all color
graphics software for the
IBM card. $245.
Hercules Computer
Technology
2550 Ninth Street
Berkeley, CA 94710
415-540-6000
CIRCLE 484 ON READER SERVICE CARD
A lightpen that functions on
both IBM's monochrome and
color displays has been devel¬
oped by The Lite-Pen
Company, Inc. The prod¬
uct, called the Lite-Pen
System, talks directly to
the computer through the
CRT when the pen touches
the screen. In addition to the
Lite-Pen itself, the company
is offering eight software pro¬
grams to be sold with the
pen, and plans to introduce
some overlay programs that
will enhance current sys¬
tems, including Lotus 1-2-3
and WordStar. The Lite-Pen
is made of anti-slip stainless
steel. It self-compensates for
screen intensities and main¬
tains a one-dot resolution.
The package comes with a
small, four-conductor I/O
cable that connects to the
computer. $295.
The Lite-Pen Company
P.O. Box 45255
Los Angeles, CA 90045
213-670-8658
CIRCLE 498 ON READER SERVICE CARD
The recently announced
Cabling System from
IBM is designed to reduce
the complexity and cost of
installing or moving com¬
puters within a building. To
be available in October 1984,
the system is similar to tele¬
phone lines, with connec¬
tions made to outlet plates in
office walls. The outlets are
connected by cable to a dis¬
tribution panel located in a
wiring closet. A panel can
accept up to 64 cables. Two
devices can be connected
with patch cables at the clos¬
ets where the cables con¬
verge. If a computer is
moved from one room to an¬
other, it is plugged into the
wall outlet at its new loca¬
tion and the patch cable in
the wiring closet is recon¬
nected. In conjunction with
the new cabling system, IBM
also announced a local area
network, to be implemented
in two to three years, that
would enable computers,
workstations, and other de¬
vices to share resources and
exchange information.
IBM
Information Systems
Group
900 King Street
Rye Brook, NY 10573
914-934-4829
CIRCLE 486 ON READER SERVICE CARD
The IBM Cabling System
CIRCLE 460 ON READER SERVICE CARD
August 1984
193
A new full-page display has
been designed for the IBM
PC and compatibles by Mi¬
cro Display Systems,
Inc. Called the Genius
VHR (for very high resolu¬
tion), the monitor is 15
inches high with a density
of 720 by 990 pixels. The
user can select a full page
either with the traditional
25-line mode or with 66
lines. The Genius VHR has
a tilt-screen and is available
in amber, green, or white
phosphor. $1,150.
Micro Display Systems
P.O. Box 455
Hastings, MN 55033
612-437-2233
CIRCLE 494 ON READER SERVICE CARD
MicroTouch Systems,
Inc. has announced the
touch-sensitive Point-1
Color Kit for the IBM PC
color display monitor. The
kit allows color monitors to
be equipped with a screen
that enables users to select
from menus, position the
cursor, and create graphics
merely by touching the
monitor with a fingertip.
The touch screen offers a
resolution of 1,024 by 1,024
touch points. Accurate ma¬
nipulation is possible down
to single letters. Besides the
13-inch-diagonal touch
screen, the kit includes an
intelligent controller and
RS-232-C serial interface. In¬
stallation is done by Micro-
Touch or a qualified techni¬
cian. Point-1 Color Kit is
fully programmable and is
supported by software devel¬
opment tools. OEM price:
$650; unit price: $1,045.
MicroTouch Systems, Inc.
400 W. Cummings Park
Woburn, MA 01801
617-935-0080
CIRCLE 496 ON READER SERVICE CARD
Point-1 Color Kit
Two new monitors are now
available from Princeton
Graphic Systems. They
are the MAX-12, a mono¬
chrome monitor with amber
phosphor,- and the SR-12, a
high-resolution RGB color
monitor. The MAX-12 de¬
livers 900-by-350 resolution
and features dynamic focus¬
ing circuitry, which ensures
sharpness from the center to
the edges and corners. The
SR-12 has 690 horizontal and
480 vertical resolution that is
achieved without using in¬
terlace technology. The re¬
sult is an image without
flickering, suitable for both
word processing and graph¬
ics. An interface card is re¬
quired to support the resolu¬
tion generated by the SR-12.
Princeton Graphic Systems
markets the Scan-Doubler in¬
terface card for an additional
$249. Prices: MAX-12, $249;
SR-12, $799.
Princeton Graphic Systems
1101-1 State Road
Princeton, N] 08540
800-221-1490
609-683-1660
CIRCLE 490 ON READER SERVICE CARD
The HiNet/PC Adapter
from Digital Micro¬
systems allows IBM PCs to
be a workstation on Digital's
HiNet LAN. The adapter
adds 64K RAM, a Z80 pro¬
cessor, RS-232-C interface
port, and HiNet network in¬
terface to its host PC. The
HiNet LAN system allows as
many as 63 workstations to
participate. It can simulta¬
neously support CP/M,
CP/M-86, and MS-DOS ap¬
plications. $495.
Digital Microsystems
1840 Embarcadero
Oakland, CA 94606
415-261-1034
CIRCLE 489 ON READER SERVICE CARD
HiNet/PC Adapter
Avatar Technologies,
Inc. has a new protocol con¬
verter that allows PCs to
emulate IBM 3278/79 termi¬
nals. The PA100 offers help
screens and single-key
switching between PC and
terminal operation, with
screen buffers to retain infor¬
mation from the mainframe
environment when a user
switches to PC mode. Multi¬
level security prevents unau¬
thorized access to mainframe
data base files. Avatar also
has introduced the PA100E,
194
PC Tech Journal
Diablo Systems' Series 36
which allows any PC or
ASCII terminal to access
IBM mainframe environ¬
ments and ASCII hosts. Like
the PA 100, the PA100E
features help screens, the
ability to switch between
the minicomputer and IBM
mainframe environments
and the PC mode, and multi¬
level security. For remote ap¬
plications, the PA100E has a
disconnect feature designed
to prevent modem tie-ups.
Prices: PA 100, $895;
PA100E, $1,095.
Avatar Technologies, Inc.
99 South Street
Hopkinton, MA 01748
617-435-6872
CIRCLE 487 ON READER SERVICE CARD
IDE Associates has intro¬
duced a plug-in multifunc¬
tion card with from 64K to
384K memory for the IBM
PC and XT. IDEAmax 384
allows cabling of both serial
and parallel interfaces, en¬
abling the computer to inter¬
face printers, disks, and com¬
munications devices. The
product uses a four-layer de¬
sign that has better noise im¬
munity than two-layer de¬
signs. Optional features in¬
clude serial interface, parallel
interface, clock/calendar,
and a game port. Every
IDEAmax 384 comes with
software for RAMFloppy
disk emulation, real-time
clock, parallel printer selec¬
tion, print spooler, and diag¬
nostic. Additional memory
and options can be added
later. Prices range from $320
for 64K memory and one op¬
tion to $795 for 384K and
four options.
IDE Associates
7 Oak Park Drive
Bedford, MA 01730
617-275-4430
CIRCLE 493 ON READER SERVICE CARD
Also introducing a multi¬
function card is Seattle
Computer. Its card for the
IBM PC and PC/XT is the
RAM+6, which allows up
to 384K additional RAM.
Features include a clock/cal¬
endar, RS-232-C serial port,
parallel port and game port.
Also provided with RAM+ 6
is FLASH DISK software,
which speeds up certain disk
operations, and FLASH
PRINT software, enabling
the printer to run at the
same time the computer is
being used. Seattle has 64K
expansion kits. Prices begin
at $395 for 64K memory.
Seattle Computer
1114 Industry Drive
Seattle, WA 98188
206-575-1830
CIRCLE 492 ON READER SERVICE CARD
Seattle Computer's RAM+6
Diablo Systems, Inc.
has a new daisywheel printer
known as the Series 36.
The printer runs at 30-40 cps
and includes Diablo's All
Purpose Interface with
RS-232-C, IEEE 488, and Cen¬
tronics. A 12-bit parallel in¬
terface is available, making
the printer compatible with
most computers. Accessories
for the Series 36 include sin¬
gle-bin electronic and me¬
chanical sheet feeders and a
bidirectional tractor for
graphics. The printwheel
library has 18 languages and
19 type styles. $1,595.
Diablo Systems, Inc.
24500 Industrial Blvd.
Hayward, CA 94545
415-498-7000
CIRCLE 491 ON READER SERVICE CARD
An auxiliary cooling system
is available from Analytic
Information Process¬
ing (AIP) to help lower
the temperature in a PC or
XT when expansion cards or
hard disk drives are used.
PCool is said to drop a PC's
temperature an average of 15
degrees Fahrenheit by pro¬
viding an intake air flow di¬
rectly across the expansion
cards. It is supposed to break
up hot spots by developing
turbulence. $99.95.
AIP
P.O. Box 966
Danville, CA 94526
415-837-2803
CIRCLE 483 ON READER SERVICE CARD
Hicomp Computer
Corporation is manufac¬
turing a bubble memory
board for the PC and XT.
Bubble Drive offers ei¬
ther 256K or 512K of non¬
volatile, high-speed mass
storage on a single card that
plugs into any I/O slot. It
functions as a floppy disk
and is compatible with PC
DOS 1.1 and 2.0. No hard¬
ware or software modifica¬
tions are necessary. Standard
features of the Bubble Drive
are the write-protect and
boot-enable switches and a
August 1984
195
self-installing feature that au¬
tomatically installs the Bub¬
ble Drive software after
power-up. Available as an op¬
tion is an RS-232-C port.
Prices: 256K version, $995;
512K version, $1,495.
Hicomp Computer Corp.
5016 148th Avenue NE
Redmond, WA 98052
206-881-6030
CIRCLE 485 ON READER SERVICE CARD
The Chairman, a new
graphics board from Mylex
Corporation, offers
graphics enhancements for
the PC and XT. Using a sin¬
gle expansion slot, The
Chairman combines color or
monochrome display options
in one board. It allows graph¬
ics modes on the mono¬
chrome display in four
shades of green, or drives the
color monitor in 16 colors.
The Mylex software diskette
that comes with the package
provides APL characters and
supports the enhancements
of The Chairman. $595.
Mylex Corporation
5217 NW 79th Avenue
Miami, FL 33166
305-592-9669
CIRCLE 495 ON READER SERVICE CARD
SOFTWARE
Micro Focus has intro¬
duced the High Perfor¬
mance Level II COBOL
compiler for the IBM PC.
The new compiler is in¬
tended for large corporate
and government data process¬
ing departments. It is GSA-
certified to the Federal High
Level ANSI 74 COBOL stan¬
dard and includes fast compi¬
lation (typically more than
1,000 lines per minute) and
an 8088 Native Code Genera¬
tor. Price: $1,995.
Micro Focus
2465 E. Bayshore Road
Palo Alto, CA 94303
415-856-4161
CIRCLE 475 ON READER SERVICE CARD
Ashton-Tate has intro¬
duced dBASE III, a new re¬
lational data base manage¬
ment software program de¬
signed for 16-bit and larger
computers. Initially, the
product will be available for
IBM PCs or XTs with at
least 256K and two disk
drives or a hard disk. Fea¬
tures include storage capabil¬
ities of up to 2 billion rec¬
ords per file and 128 fields
per data base. Ten data base
files can be used simulta¬
neously. Also offered are the
ability to establish relations
between files, full-screen re¬
port generation, and mailing
label capability. A dBASE
Assistant provides help with
the commands for new users,*
this feature can be turned off
when not needed. $695.
Ashton-Tate
10150 West Jefferson Blvd.
Culver City, CA 90230
213-204-5570
CIRCLE 482 ON READER SERVICE CARD
dBASE Ill's Report Facility
Microsoft Corporation
has announced a new ver¬
sion of Flight Simula¬
tor, a real-time simulator
program that puts the user
in the pilot's seat of a Cessna
182. More detailed scenery
and lifelike airplane perform¬
ance features have been ad¬
ded, and support for RGB
monitors is now provided.
The program requires 46K of
memory, one disk drive, and
a color/graphics adapter.
Price is $49.95.
Microsoft Corporation
10700 Northup Way
Bellevue, WA 98009
206-828-2020
CIRCLE 481 ON READER SERVICE CARD
REA Computer Tech¬
nology has introduced a
new design lab for engineers
and experimenters who
would like to use Program¬
mable Array Logic (PAL)
technology. The PAL design
lab consists of a programmer
called PALBLASTER, that
comes either in kit form or
assembled, and a PAL com¬
piler called PALCMP. The
PALBLASTER uses an
RS-232-C port and can pro¬
gram all AMD 20-pin PAL
devices. PALCMP takes in
PAL device specs in the form
of equations and outputs a
fuse map image. From $275
to $795, depending on the
amount of assembly needed.
REA Computer
Technology
P.O. Box 1408
Almonte, Ontario
Canada KOA 1A0
CIRCLE 480 ON READER SERVICE CARD
196
PC Tech Journal
sage capability, error detec¬
tion and loop control within
batch command files, and
built-in support for Hayes
300/1200 and Concord Data
Systems CDS 224 auto-dial
modems. $179.95 for two
complete sets of software and
documentation. $99.95 for
additional single-unit kits.
Gateway Microsystems
9401 Capital of Texas
Highway
Suite 105
Austin, TX 78759
512-345-7791
CIRCLE 478 ON READER SERVICE CARD
The new DATABUS
compiler from Sunbelt
Computer Systems,
Inc. is designed for use
with micros based on the In¬
tel 8086/88 that use MS-DOS
2.0 or PC-DOS 2.0. This com¬
piler can be used with most
terminals. It generates as¬
sembler source from the
DATABUS text, and when
this code is assembled into
absolute machine code, it re¬
sults in significantly faster
performance. $495.
Sunbelt Computer Systems
Suite 120
5525 East 51st Street
Tulsa, OK 74135
918-660-0670
CIRCLE 476 ON READER SERVICE CARD
SNA Exchange, a new
integrated hardware/software
package from Intelligent
Technologies, unbundles
the PC Exchange system's
extensive range of PC-to-
mainframe SNA emulation
software from its asynchro¬
nous communications soft¬
ware and telephone manage¬
ment system. The SNA Ex¬
change package provides
IBM PC users with a wide
variety of synchronous com¬
munications capabilities, in¬
cluding emulation of the
IBM 3278/9 terminal, 3274
cluster controller, and 3287
(LU3) printer. $895.
Intelligent Technologies
151 University Avenue
Palo Alto, CA 94301
415-328-2411
CIRCLE 479 ON READER SERVICE CARD
Xi Systems Technol¬
ogy has announced its
DSNM, a data distribution
and global network commu¬
nications utility. DSNM au¬
tomatically dials and distrib¬
utes data files and applica¬
tion programs to remote
workstations. The software
supports async, bisync, and
SDLC protocols. It allows
workstation users to load and
execute interactive applica¬
tion programs at other work¬
stations and permits remote
BLAST, from Commu¬
nications Research
Group, Inc., is an asyn¬
chronous communications
package that provides truly
bidirectional full duplex
operation, allowing a system
to receive one file while
sending another. The BLAST
protocol continuously inter¬
leaves unit blocks of data
with check and acknowledg¬
ment blocks, thus minimiz¬
ing delays because of echoes
and noise. BLAST operates
through RS-232-C ports and
asynchronous modems, over
dial-up lines or private net¬
works, or from port to port
over a direct connection at
speeds up to 19.2 Kbps. $250.
Communications Research
Group, Inc.
8939 Jefferson Highway
Baton Rouge, LA 708C79
504-923-0888
CIRCLE 471 ON READER SERVICE CARD
Gateway Microsys¬
tems has introduced Mi-
crogate/FT, a file transfer
package that employs the
IBM Bisync communications
protocol in an asyncronous
PC-to-PC environment. Fea¬
tures include interactive,
batch, and remote command
modes, conversational mes¬
job entry to the host main¬
frame computer. $395 for
IBM PC license.
Xi Systems Technology
P.O. Box 46126
Cincinnati, OH 45246
513-771-6263
CIRCLE 477 ON READER SERVICE CARD
Xi Systems Technology's DSNM
LABCODE-QC, a statisti¬
cal quality control system,
has been announced by
Granada Systems De¬
sign. The system produces
a variety of different control
charts, such as p, c, x-bar,
range, cusum, and other
Shewhart-type charts. As
many as 12 different sets of
data can be plotted simulta¬
neously. Statistical parame¬
ters, including the mean,
standard deviation, and mini¬
mum and maximum values,
are calculated. $380.
Granada Systems Design
303 Fifth Avenue
New York, NY 10016
212-686-6945
CIRCLE 468 ON READER SERVICE CARD
August 1984
197
A new programming lan¬
guage— Plain English—
has been announced by
Command Language
Systems, Inc. Plain
English employs a "building
block" technique to create a
unique, personalized vocabu¬
lary. Most users can become
proficient in the language in
only four hours. $595.
Common Language
Systems
100 E. Sybelia Avenue
Maitland, FL 32751
305-628-5973
CIRCLE 474 ON READER SERVICE CARD
Orchid Technology has
reduced the price of its
PCnet local area network
from $695 to $495. The com¬
pany has also introduced a
new PCnet advanced produc¬
tivity software package, Ver¬
sion 2.4. PCnet uses a non-
dedicated server and can
share IBM XT disk space.
The network allows up to
256 users with more than 16
servers. The new software
package gives PCnet faster
and better performance.
Orchid Technology
47790 Westinghouse Drive
Fremont, CA 94539
415-490-8586
CIRCLE 473 ON READER SERVICE CARD
Software Labs has intro¬
duced the C Utilities
Package for the IBM
PC/XT. This package ena¬
bles C programmers to call
functions for screen control,
graphics, animation, and
mathematical capabilities. In
addition, it provides compre¬
hensive omnibus I/O control
for all of the IBM PC/XT pe¬
ripherals. The package re¬
quires 128K, two disk drives,
and a C compiler. $119.
Software Labs
1221 Matisse Street
Sunnyvale, CA 94087
408-730-8108
CIRCLE 470 ON READER SERVICE CARD
m* W:
I C UTIMTJES
I
C Utilities
A new package from
Davong Systems, Inc.
allows the users of Davong's
MultiLink local area net¬
work to read, create, and
send mail to others on the
network or to other local
area networks. LAN: Mail
Monitor is a fully net¬
worked electronic mail pro¬
gram that includes mail
manager capabilities to add,
delete, or change user and
distribution lists and to mon¬
itor system usage. The LAN
package includes an editor,
an archive facility to save re¬
ceived letters, the ability to
send data files with letters,
and the ability to check on
letters sent but currently un¬
delivered. $695.
Davong also announced
that a print spooler will be
added to the software pack¬
age accompanying the Da¬
vong MultiLink local area
network. Current MultiLink
users can add the print
spooler to their LAN for a
nominal upgrade charge.
Davong Systems, Inc.
217 Humboldt Court
Sunnyvale, CA 94089
408-734-4900
CIRCLE 472 ON READER SERVICE CARD
Introl Corporation has
introduced a cross-software
version of the Introl-C/6809
C language compiler system.
The new cross-compiler,
called Introl p/n PC
6809 , permits the IBM PC to
be used for developing pro¬
grams in C for any 6809-
based target. The package
produces compact code that
is re-entrant, relocatable, and
ROMable. It can generate
either position-dependent or
position-independent code
and data, and it has features
that permit program seg¬
ments to be selectively
placed under any of 16
location counters. $200.
Introl Corporation
647 W. Virginia Street
Milwaukee, WI 53204
414-276-2937
CIRCLE 467 ON READER SERVICE CARD
OTHER WARES
NPC Photo Division
has come up with a device to
take photographs of a CRT
screen. Screenshooter
uses Polaroid 600 high-speed
color film, Polachrome
35mm instant slide film, or
conventional 35mm color
and black and white films.
The outfit includes a Pola¬
roid One-Step 600 camera, a
CRT hood and adapter,
diopter lens, and 35mm SLR
camera bracket. $169.
NPC Photo Division
1238 Chestnut Street
Newton, MA 02164
617-969-4522
CIRCLE 466 ON READER SERVICE CARD
198
PC Tech Journal
TECH BOOK
A Special Section for Product and Service Listings
Computer/Services
INT’L DOCUMENTATION
INTERNATIONAL DOCUMENTATION provides
reliable service in the preparation of foreign
documentation & mktg. materials. Service in¬
cludes translation, typesetting, & graphic art.
Clear and accurate documentation in any lan¬
guage is a must. Let INTERNATIONAL DOCU¬
MENTATION make your foreign documentation
speak for you.
INTERNATIONAL DOCUMENTATION
120 Barranca Ave. Suite A
Santa Barbara, CA 93109
(805)965-4761/(213)990-4886
Hardware/ Add-on
Boards
EPROM &MP PROGRAMMER
PC compatible APROM-2000 card can program
2716, 32,32A, 64,128, MCM 68764 EPROMS
and also 8748/49/51 processors. The software
(CP/M-86, MSDOS) can read, verify and pro¬
gram eproms and uses fast programming al¬
gorithm. The zero insertion socket is mounted
on an external box. The external box for BI-PO-
LAR proms and PAL is also available.
ADVANCED MICROCOMPUTER
SYSTEMS, INC.
6802 N.W. 20th Ave.
Ft. Lauderdale, FL 33309
305-975-9515
DT2801 SERIES ANALOG I/O
Plug-in data acquisition boards with 8DI/16SE
analog inputs, high or low level programmable
gains, 2 analog outputs, 16 lines of digital I/O,
DMA, on-board clock, and on-board micropro¬
cessor. Optional software subroutines and screw
terminal panels.
DATA TRANSLATION INC.
100 Locke Drive
Marlboro, MA 01752
(617)481-3700
256K NO SLOT MEMORY
IBM PC-1 owners. Let us install up to 256K RAM
on your EXISTING SYSTEM BOARD using NO
SLOTS. We improve your IBM PC so it can ad¬
dress the 64K RAM chip, 256K-S335 (expand¬
able and warranted). DO-IT-YOURSELF KITS—
PC-KPC-S69.95 ($99.95 assembled). 64K-
RAMS-S5.85 ea.
ADD-MEM
22151 Redwood Rd.
Castro Valley, CA 94546
(415)886-5443
BOOT PC FROM HARDDISK
FiXT boots from DATAMAC, DAVONG, PEGA¬
SUS, PERCOM, GREAT LAKES, others. Adds XT-
like BIOS interface for your disk to IBM PC2. Ends
need for installable device drivers. DOS 2.0/2.1
reqd. Plug-in installation. Specify disk/control¬
ler model with order $70 + $3 shipping. (CA or¬
ders add 6%).
GOLDEN BOW SYSTEMS
P.O. Box 3039
San Diego, CA 92103
(619)298-9349
TOTAL PC/XT COMMUNICATION
ELECTRONIC SYSTEMS ENGINEERING proudly
introduces two extremely versatile and powerful
communications adapters for the PC/XT and
compatibles. One is RS—232C serial, the other
has 3 fully programmable 8 line parallel ports.
Both have full 64K SELECTABLE I/O address
decoders. Price is $139.50 each.
ELECTRONIC SYSTEMS ENGINEERING
P.O. Box 572 D.T.S.
Portland, Maine 04112
MC/VISA (207) 773-7778
Hardware/
Peripherals
PC/STD BUS+ SOFTWARE $119
STD EMULINK is a paralell interface to any STD
Bus motherboard for IBM PC with Tecmar base¬
board. Comprised of STD Bus card, ribbon Ca¬
ble* BASIC drivers. STD EMULINK offers PC user
economical link to industrial quality STD Bus 1/
O boards, [ideal for PROCESS CONTROL & AU¬
TOMATION. Send check or money order.
STD EMULINK
P.O. Box 673
Upton, NY 11973
Mailing Lists
IBM MAILING LISTS
Over 100,000 names of IBM personal computer
owners (counts increase daily) available for rental
on labels or magnetic tape. Total 550,000 in¬
cluding other brands.
IRV BRECHNER
TARGETED MARKETING, INC.
Box 5125
Ridgewood, NJ 07451
(201)445-7196
Publications
DYNAMIC DUO RETURNS!
Two new disk magazines for the IBM-PC-PC
FIRING LINE (for programmers) and PC UN¬
DERGROUND (for non-tech folk) are available
now. Send a self-addressed stamped disk mailer
and two formatted DS/DD disks for your free
copy.
ABCOMPUTING
P.O. Box 5503
North Hollywood, CA 91616-5503
(818)509-9002
Security
DATA PADLOCK
DATA PADLOCK is a software implementation of
the National Bureau of Standard Data Encryp¬
tion Standard. Written in Assembler. DATA PAD¬
LOCK offers max speed with no increase in file
size. An 8 character password provides the key
for encryption. Protect sensitive data, text or
program files from unauthorized access. Works
with all DOS versions $150. VISA/MC.
GLENCO ENGINEERING
3920 Ridge Ave.
Arlington Hts.JL 60004
(312)392-2492
Software/Business
dINVOICER + PLUS
MENU-DRIVEN BILLING & ACCOUNTS RE¬
CEIVABLE MANAGEMENT SYSTEM. Produces
Invoices, Aged Statements, Invoice Journals,
Receipts Journals, Aged Customer Account
Status, Past Due Notices, etc. Available with
modifiable source code for dBASE II users $129
or as a stand-alone Run-time package $199.
DATAMAR SYSTEMS
819 Gage Dr.
San Diego, CA 92106
(619)223-6444
RATES AND INFORMATION
Listings are grouped by category and consist of a bold lead line (23 characters
maximum), 7 lines of ad copy (45 characters per line), plus 4 lines of com¬
pany name, address and telephone number.
Listings are available only on a 3 issue basis at $60. per issue ($180. total).
Copy will have a set format and remain the same for all 3 months. Enhance
the appearance of your ad by including your Logo at an additional cost of $25.
per issue ($75. minimum extra charge). Pre-payment is required by check,
money order, or American Express, Diners Club, MasterCard, Visa credit
cards. Closing Date: 1st of 2nd month preceding cover date.
Send copy and remittance to PC TECH JOURNAL, TECH BOOK, 12th
FLOOR, 1 PARK AVENUE, NEW YORK, NY 10016. Call (212) 725-4215 for
additional information or assistance.
Software/
Communications
TELEX LINK SOFTWARE
Link your computer to Western Union telex ser¬
vice via TWX or Easy Link. Cawthon’s telex soft¬
ware is specifically designed for telex
communications and is easy to use, has on-line
help, self-test diagnostics, frequently called
numbers, and an excellent User’s Guide. Caw¬
thon’s telex software is available for the IBM-PC
and many other computers.
Cawthon
Scientific
Group
CAWTHON SCIENTIFIC GROUP
24224 Michigan Avenue
Dearborn, Michigan 48124
(313) 565-4000 Telex: 810-221-1265
Software/Compiler
DESMET C—S109
Full K&R C compiler, assembler, linker, librarian,
full-screen editor and example software. Both
8087 and floating point libraries. OUTSTAND¬
ING PRICE/PERFORMANCE. Rated 1 st or 2nd in
August '83 BYTE benchmarks. No royalties on
generated code. C Ware newsletter. Unlimited
updates at $20 each. PC-DOS (Ver 1.1 & 2.0),
generic MS-DOS and CP/M-86 support. $109
for complete package, shipping included. Now
available with source level debugger. Price $159.
WARE
CORPORATION
C WARE CORPORATION-MAIL ORDER DEPT.
P.O. Box 710097
San Jose, CA 95171-0097
WIZARD C COMPILER
The power of C with the thorough diagnostics of
PASCAL. Full LINT diagnostic integrated with
compiler. Full UNIX SYSTEM 3 compatibility.
Floating point library: fast compact code; 1 reg¬
ister variable. In-line assembly code. UNIX em¬
ulation library. Uses MICRO-SOFT linker. PC/MS
DOS 2.0 only. $450.00.
WIZARD SYSTEMS SOFTWARE
11 Willow Court
Arlington, MA 02174
(617)641-2379
TECH BOOK
C SOFTWARE DEVELOPMENT
•Full C Compiler per K&R
Inline 8087 or Assembler Floating Point
Full 1 Mb Addressing for Code or Data
•MS DOS 1.1 12.0 Library Support
Program Chaining Using Exec
Environment Available to Main
•c-window' u C Source Code Debugger
COMBINED PACKAGE $199
c-systems
PO. Box 3253
Fullerton, CA 92634
(714)637-5362
Software Data
Mgmt.
THE FORMS DESIGNER'"
Attention IBM Pascal, FORTRAN, and Assembly
users! Save time in designing formatted screen
I/O. Interactive Forms Editor allows you to draw
lines and boxes, define fields, and edit text. Ac¬
cess forms or read keyboard entry by writing only
one line of code. Provides sequential data re¬
trieval and storage. Requires 128K RAM. Only
$275 complete. Demo and manual $35. Call or
write:
BIT SOFTWARE
PO Box 619
Milpitas, CA 95035
(408)262-1054
Software/
Development Tools
ACTIVE TRACE
A debugging & learning tool that lets you see how
your basic program works. As your program runs,
active trace shows you your variables & their
current value & line number. (Dynamic Sym¬
bolic Debugger). Output to screen, printer or disk.
No need to single step. Complete XREF map¬
ping. Review in BYTE 4/83, p. 334, & Micro¬
computing 12/83, p. 22. $79.95. Call toll free for
info, (800)358-9120, U.S.; (800)862-4948, CA.
AWARECO
P.O. Box 695
Gualala, CA 95445
(707)884-4019
FREE FREE FREE
BASIC AIDS FACT SHEETS and our guide titled
“MAKE YOUR PC PROFITABLE" are sent free to
persons who request them. Learn more about
developing Structured Programs in BASIC. This
new release of BASIC AIDS is the most powerful
program DEVELOPMENT and DOCUMENTA¬
TION tool available!
TULSA COMPUTER CONSORTIUM
P.O. Box 707,1004 North Dogwood
Owasso, OK 74055
(918)747-0151
BASIC/USER INTERFACE
Give your interpreted BASIC programs a profes¬
sional user interface with full screen menus and
data-entry forms, by BLOADing our 4K ma¬
chine-language module. This module con¬
verses with your users via keyboard and video
while you focus on the user’s needs. Send $30
for module and programming guide.
ALPENSTOCK ALGORITHMS
P.O. Box 65
Golden, CO 80402-0065
C-INDEX+
C index plus provides complete data manage¬
ment for C language applications development.
Includes variable length data storage, B+ Tree
ISAM indexing, interactive tutorial. Supported
compilers. Lattice & CI-C86. No application roy¬
alty fee. Object code license: $400. Demonstra¬
tion package: $25.
TRIO SYSTEMS
2210 Wilshire Blvd. Suite 289
Santa Monica, CA 90403
(213) 394-0796
BASIC/BASIC AX-REFERENCE
BXREF provides extensive cross reference ser¬
vices for the professional software developer.
BXREF handles both interpreter and compiler
source. Output is user selectable for VARI¬
ABLES/LINE NUMBERS, STATEMENTS, FUNC¬
TIONS, LITERALS, %INCLUDE’ed files for any
combination. BXREF may be started interac¬
tively with prompting or by the use of command
line parameters. $49.95 MC/VISA/CHECK/MO.
SYSTEMS CONSULTANTS
P.O. Box 116126
Carrollton, TX 75011
(214) 492-1315, tlx 4995 885 syscons.
SOFTWARE PERFORMANCE
PROFILER
THE PROFILER ” will tell you where your pro¬
gram is spending it's time and allows you to do
performance tuning on your code. Works with any
language, data printed in histogram form. Easy
to use and interpret. Complete user manual pro¬
vided. Requires DOS 2.0 or better and 64K.
$175.00 VISA/MC OK.
DWB ASSOCIATES
PO BOX 5777
BEAVERTON, OREGON 97006
(503)629-9645
PASCAL/FORTRAN/C UTIL
Written in assembly language, Pascal/Fortran/
C Utilities control screen, keyboard, graphics,
music, lightpen, mouse, joystick, printer, RS—
232, & I/O ports. Line/circle/ellipse/pie, clip¬
ping, windowing & animation. Terminal emula¬
tor, random #, BIOS/DOS calls. W/150 pg.
manual, demos. Specify compiler. $119. Check/
VS/MC.
SOFTWARE LABS
1221 Matisse Street
Sunnyvale, CA 94087
(408)730-8108
ANOTHER DEBUGGER??
This one has FULL SCREEN format and SCREEN
COEXISTENCE with test program (including
graphics-even SCROLLS THROUGH LISTING
FILES without disturbing the test session-all with
NO COMMANDS and only 10 function keys! It’s
fast (assembler), small (60K), and only $75 with
manual. DOS 2.0 or 2.1 IBM PC, XT, COMPAQ
PC-TEST
for the software developer
P.O. Box 54068
San Jose, CA 95154
FORTRAN CODE EDITOR
IFCE is a program that renumbers, aligns & de¬
tabs FORTRAN IV to 77 programs. IFCE works
on a routine by routine basis. IFCE is very out¬
standing in situations where statement num¬
bers are not ordered as a result of modifications
& program maintenance. IFCE is a FORTRAN 77
program. Dealers welcome. $85.
La Mesa Research & Development
P.O. Box 31
Louisville, CO 80027
C LIBRARY, TOOLS, SHELL
Library for lattice C compiler: all DOS, Some BIOS
function calls, enumerated and sorted file-names,
longjimp, quicksort, random numbers, others.
Tools: improved DIR, change mode, word count,
walk directories, others. Source included. $50.
Improved shell: all DOS internal commands,
command history, etc. $55.
LEMMA SYSTEMS. INC.
1508 Calle del RancheroNE
Albuquerque, New Mexico 87106
(505)268-7220
COBOL GENERATOR
Generates IBM PC or MS COBOL
• Screen Design/Data Dictionary
• Structured Program Generator
• Query/Report Generator
From $250—send for information
—The COBOL Experts—
• Manframe to PC conversions
BOMAC SYSTEMS
P.O. Box 10670
Pittsburgh, PA 15235
(412)795-3581
C LIBRARY UTILITIES
Don’t reinvent the wheel. Save time & money.
Do a better job. Extensive library with source. Best
screen handling available. Sound, graphics, DOS
2, printer, comm, date, time, and more. 150+
functions. DOS/BIOS gate gives complete con¬
trol of your PC. C86, Microsoft, Lattice. Intro, of¬
fer $79. Demo $30.
ESSENTIAL SOFTWARE, INC.
PO BOX 1003
Maplewood, N.J. 07040
(914)762-6605
Software/
Engineering
PELADA TEXT ENGINEER
Engineering and Scientific Word processing.
Technical symbols, special characters, super/
subscripts, italics, underlining, bolding. With
graphics hardware you can design any symbols
you want, up to 384 different characters. All
characters visible on screen and printable. Easy
English commands. $250.
PELADA INFORMATICS INC.
562 Johnson Street
Kingston, Canada K7L-2A1
(613)549-1747
ELECTRONIC CIRCUIT ANALYSIS
ECA is a high performance simulator for analog
electronic circuits. Features include full editing,
worst case, sensitivity analysis, ability to sweep
components, 64 nodes. It is easy to use and very
fast. Price $150. For all MS-DOS, CP/M, CP/M-
86 computers.
TATUM LABS
P.O. Box 698
Sandy Hook, CT 06482
(203)426-2184
PUBLIC DOMAIN FREEWARE
Rent PC Disk Libraries for 7 days, copy yourself
and return. Hundreds of business, games and
utilities free for the taking!
IBM PC-SIG—lOOVols. $99.50
IBM PC-Blue 73 Vols. $99.50
50' “flippy” Disks (blank) $99.50
Rental is for 7 days after receipt (sent by VPS),
3 more days grace to return. Credit cards ac¬
cepted, no deposit necessary.
NATIONAL PUBLIC DOMAIN
SOFTWARE CENTER
1062 Taylor St., Visat, CA 92083
(619)727-1015
24 hr. orders. (619) 941-0925 tech.
Software/General
ATTENTION SOFTWARE AUTHORS
Our established literary agency is seeking to
represent talented freelance programmers. We
open doors for our clients at the leading soft¬
ware houses and negotiate the best deal possi¬
ble. Put our years of experience to work for you.
For further information on the benefits of repre¬
sentation contact:
THE ROBERT JACOB AGENCY
1642 Eveningside Drive, Suite 110
Thousand Oaks, CA 91362
(805)492-3597
Software/Graphics
FORTRAN GRAPHICS PACK
60 Microsoft FORTRAN/Pascal (1.0 or 3.1)
SuperSoft FORTRAN callable subroutines.
Professional graphics power backed by a 90 page
user manual, filled with examples and designed
to be helpful to every level of user. Five packages
in one! General utility, 2-D interactive, 2-D plots,
3-D plots, and solid models (hidden line re¬
moval!) $95.
MICROCOMPATIBLES
11443 Oak Leaf Drive
Silver Spring, MD 20901
(301)593-0683
TECHTRONICS 4010 EMULATION
High resolution screen/printer graphics for the
IBM PC. Full interactive capabilities with file
transfer and cross-hair control. Utilizes PLOT 10,
ISSCOS DISSPLA, TEL-A-GRAF and SAS pro¬
tocols. OFF-line review of graphics output. This
emulation software is easy to use with high
quality graphics at an affordable price. $80.00.
Technological Systems Group
5044 Haley Court
Lilburn, GA 30247
(404)923-4980
TECH BOOK
GEOGRAF™
GEOGRAF™ helps you prepare high-quality,
customized graphs for business, engineering and
science. GE0GRAPH'“ cuts programming time
by up to 80%. Callable from BASIC, FORTRAN
or PASCAL. Versions available for most graph¬
ics cards and plotters. Fully compatible with
Colcomp’s FORTRAN standard plotting package.
GEOCOMP CORPORATION
342 Sudbury Road
Concord, MA 01742
(617)369-8304
FORTRAN/PASCAL PEN PLOTS
PLOTMATIC: Complete support for H-P, IBM,
Apple and HI pen plotters. All primitives avail¬
able as subroutine/procedure calls plus total 2D
plotting support package. INTERFACES with
GRAFMATIC. Specify compiler (version num¬
ber) and plotter. $135 Plotmatic from
Microcompatibles.
Microcompatibles Dept. P
11443 Oak Leaf Drive
Silver Spring, MD 20901
(301)593-0683
Software/
Languages
ADA ON A MICRO
JANUS/ADA is an exceptional programming
language for software development. Being a
subset of the Ada programming language
JANUS/ADA implements those features of Ada
which are directly needed by professional pro¬
grammers. These features include separate
compilation, user defined data types and helpful
program debugging.
R.R. SOFTWARE
P.O. Box 1512
Madison Wl 53701
(608)244-6436
RUN IBM’S APLW/O 8087
The 8087 ELIMINATOR allows you to run IBM’s
APL (version 1.0) on your IBM PC (DOS 2.0)
without an expensive 8087 chip. Software pack¬
age emulates functions of the 8087 required by
APL. 30—day money—back guarantee. $49.
(Visa, MC, Check, or MO).
FORT'S SOFTWARE
P.O. Box 396-TJ
Manhattan, KS 66502
PROFESSIONAL BASIC
A new version of BASIC language that can ac¬
cess the full memory of the IBM PC supports the
8087 co-processor. Professional BASIC is a
window oriented system of more than a dozen
trace screens for debugging and educational
purposes. Dynamic syntax checking labeled GO/
SUBS cross-ref & set break pts. $345.
MORGAN COMPUTING CO., INC.
10400 N. Central Expwy., Suite 210
Dallas, TX 75231
(214)739-5895
APPLICATION DEVELOPMENT
Build any application in a fraction of the time it
would take with BASIC or COBOL. TPL com¬
bines conventional programming language
constructs with a database manager, screen
handler, and report generator in a powerful, yet
flexible application development system. Full TPL
system $250. Manual/Demo $50.
Randak Systems
346 N. Kanan Road, #204
Agoura, CA 91301
(818)706-3737
Software/
Mailing Programs
PONY EXPRESS XL
Designed for commercial mailings or extra large
lists. Super fast machine code multi sort. Carrier
route sort. Prints labels: 1 -5 across, singale line
format, or user-defined format. Also CHESHIRE
FORMAT. Unlimited files. Multi file merge. Rec¬
ords can be selected by user-defined codes,
specific zips or zip ranges. Phone list option.
Unique correction & deletion routines for updat¬
ing. Instant access to all records. Auto repeat for
ease of record entry. Interfaces w/most word
processors. $238.
COMPUTECH
975 Forest Ave.
Lakewood, NJ 08701
(201)364-3005
Software/Operating
Systems
MULTIPLE USERS UNDER PC DOS
MultiLink turns PC-DOS into an efficient multi¬
user multi-tasking operating system. Additional
users are supported by attaching inexpensive
CRT terminals or modems to serial ports on the
PC, and can run normal applications designed
for PC-DOS. Includes host communications
software for public dial-in.
THE SOFTWARE LINK INCORPORATED
6700 23B Roswell Rd.
Atlanta, GA 30328
(404)255-1254
Software/Sort
OPT-TECH SORT/MERGE
Extremely fast Sort/Merge program for the IBM-
PC. Can sort or merge multiple files containing
fixed or variable length records. Run as a DOS
command or call as a subroutine, plus many
other features. Now also sorts dBASE II files!
Compare before you buy any other. Write or call
for more info. $99.
OPT-TECH DATA PROCESSING
P.O. Box 2167
Humble, TX 77347
(713)454-7428
INTERNAL SORT FOR BASIC
NSORT—A FAST and easy to use quicksort
subroutine written in C and assembler. CALL-
able from BASIC. Sorts an unlimited number of
records in memory on up to 8 keys of mixed types,
ascending/descending. Like having a SORT built
into the language. Works with compiled and in¬
terpreted BASIC, all DOS versions. $49.95!
NATIONAL SOFTWORKS
65 East Elizabeth Avenue
Bethlehem, PA 18018
(215)867-4800
Software/Statistics
AUTOBJ/AUTOBOX/BOX/SIM
These PC statistical forecasting and modelling
packages are as powerful as their mainframe
counterparts. “Smart software" optionally al¬
lows the user to automatically build the best
univariate and multivariate box-Jenkins models
including Intervention Models. Easily interfaced
with planning packages. Build B-J models in
minutes. From $195. Demo $5.
AUTOMATIC FORECASTING SYSTEMS, INC.
PO BOX 563
Hatboro, PA 19040
(215)675-0652
Software/Utilities
IBM-PC COBOL PROGRAMMERS
Screen coding is fun, fast and accurate with
Qwik-Screen Builder. “Paint” screen layout and
create true COBOL source code for screen sec¬
tion in minutes. 100 1 pages of documentation.
Satisfaction guaranteed or money back. Needs
DOS 1.1/2.0, two DS/DD drives, mono¬
chrome display and the COBRUN. EXE runtime
module. $50/Visa/MC.
THE COMPUTER WORKS
P.O. Box 1371
Coeur d'Alene, Idaho 83814
(208)667-6152
DOS PATH Command For Data
Now your programs can access data files under
DOS 2.0+ no matter where they are located.
DPATH, a system—resident program extending
the functionality of your DOS PATH command to
include data files, includes a screen—oriented
maintenance utility and a 60-page user manual.
Requires PC—DOS 2.0. $25.
PERSONAL BUSINESS SOLUTIONS, INC.
P.O. Drawer 757
Frederick, Maryland 21701
SNOOP DISKETTE UTILITY
Produce graphic maps of diskettes and files.
Comprehensive diskette analysis. Add, delete or
modify labels. Pageable directory. Change file
attributes. Display, modify or search sectors or
files. Much more, all in a single, easy-to-use
program. Documentation included. Introductory
price $40. SASE for information.
OTTER CREEK SOFTWARE
75 Hunting Lane
Goode, Virginia 24556
CONVERTS ANY CPM TO DOS
CROSSDATA CONVERTS ANY DATA/TEXT FILE
format from CPMxx to MS/PC-DOS, CPMxx to
CPMxx & MS/PC-DOS to CPMxx. Cross data
runs on IBM PC or comparable computer using
MS/DOS 2.0. Cross data is a self-contained
program. It comes with over 24 mats and user
can add own format. To order send $99. check
or money order to:
AWARD SOFTWARE, INC.
236 North Santa Cruz Ave.
Los Gatos, CA 95030
(408)395-2773
COPY PROTECTION
SLK/F places an assembled or compiled pro¬
gram on a diskette with 4 different copy-resis¬
tant features in such a way that it runs normally,
but cannot be copied by backup programs such
as COPYPC. The rest of the diskette is available
as normal, and DOS may be added. Price $150.
OLIVE
BRANCH
SOFTWARE
OLIVE BRANCH SOFTWARE
1715 Olive Street
Santa Barbara, CA 93101
(805)569-1682
COPY PROTECTION BY MSD
The ULTIMATE diskette copy protection system
designed by software developers and publish¬
ers. A variety of protection methods are avail¬
able to suit your protection requirements. All IBM
PC and XT environments are supported which
includes. DOS, BASIC (compiled and interpre¬
tive). Pascal, P-System and stand-a-lone sys¬
tems. Customized systems also available.
Requires: 64K, two disk drives.
MICRO-SOFTWARE DEVELOPERS, INC.
214V 2 West Main Street
St. Charles, Illinois 60174
(312)377-5151
THE SCREEN GENERATOR V3.0
If you can’t display a FULL COLOR data entry
screen with up to 200 values and process it for
Add, Update, Delete or Inquiry in LESS THAN TEN
Basic or Assembler statements, then YOU need
the NEW SCREEN GENERATOR v3.0. Total screen
management and data entry processing for the
Novice to the Professional. $125.
KS SYSTEMS
P.O. Box 643
Drexel Hill, PA 19026
(215)449-2754
TECH BOOK
DOS PATH Command For Data
Now your programs can access data files under
DOS 2.0+ no matter where they are located.
DPATH, a system—resident program extending
the functionality of your DOS PATH command to
include data files, includes a screen-oriented
maintenance utility and a 60-page user manual.
Requires PC-DOS 2.0. $25.
PERSONAL BUSINESS SOLUTIONS, INC.
P.O. Drawer 757
Frederick, Maryland 21701
SNOOP DISKETTE UTILITY
Produce graphic maps of diskettes and files.
Comprehensive diskette analysis. Add, delete or
modify labels. Pageable directory. Change file
attributes. Display, modify or search sectors or
files. Much more, all in a single, easy-to-use
program. Documentation included. Introductory
price $40. SASE for information.
OTTER CREEK SOFTWARE
75 Hunting Lane
Goode, Virginia 24556
FULL CONTROL FROM BASIC!
Cut development time, add speed & power to
your programs with NUB. A library of assembly
language sub-routines callable from BASIC: ex¬
ecute COM & EXE files, save & restore areas of
the screen, clear & scroll windows, much more!
Add DOS functions to your menus. Create fast
help screens. Unlimited uses. Complete manual
& sample programs. All DOS versions. $49.95.
Source avail. Call or write
NATIONAL SOFTWORKS
65 East Elizabeth Ave.
Bethlehem, PA 18018
(215)867-4800
TOOLS FOR PROGRAMMERS
• FILE TOOL KIT. COMPARE lists file differences
COMPRESS shrinks files, ENCRYPT secures
valuable data, HEXDUMP lists files in hex and
ASCII
• PASCAL TOOLKIT. PXREF prints program
cross-references; PNEAT prettyprints pro¬
grams, PCASE highlights variables. Just $29.95
each, both for $49.95. VISA/MC accepted.
SEVEN VALLEYS SOFTWARE
P.O. Box 99
Glen Rock, PA 17327
(717)235-5470
PADLOCK/PADLOCK II DISKS
PADLOCK furnishes the user with a method for
providing protection against unauthorized du¬
plication from DOS commands $99. PADLOCK
II disks come preformatted with finger-print and
serialization. PADLOCK II disks offer superior
protection. Ask about our fast data encryption
product. All work with hard disk, EXE/COM files
and all DOS versions. MC/VISA.
GLENCO ENGINEERING
3920 Ridge Ave.
Arlington Hts.,IL 60004
(312)392-2492
Software/Word
Processing
PELADA TEXT ENGINEER
Word processing for scientific and multilingual
text. All IBM characters. Super/subscripts, ital¬
ics, underlining, bolding. With graphics hard¬
ware, you can use any symbols and any alphabet,
up to 384 characters. All symbols visible on
screen and printable. Easy English commands.
$250.
PELADA INFORMATICS INC.
562 Johnson Street
Kingston, Canada K7L-2A1
(613)549-1747
PROGRAMMER'S GUIDE TO
|Q / min Edited b y
H ere’s an important collection of CP/M insights that you’ll never find
in any CP/M manual. CP/M is the most popular microcomputer
DOS in use today, and this widespread use has generated many
innovative techniques and enhancements of CP/M. Programmer’s
Guide to CP/M tells you what these enhancements are and how to put
them to use, how to get around apparent limitations of a CP/M system
and why CP/M is far more versatile than you might have imagined.
Every article in Programmer’s Guide to CP/M originally
appeared in MICROSYSTEMS be¬
tween January 1980 and February
1982. Except for this collection,
these articles are now unavailable!
Programmer's Guide to CP/M gives
you an in-depth look at CP/M from
the viewpoint of the programmer—
the individual who creates the soft¬
ware that interfaces directly with
CP/M, or who is installing CP/M on
systems for which configurations
do not already exist.
Contents include “An Introduc¬
tion to CP/M,” “The CP/M Connec¬
tion,” “CP/M Software Reviews,”
“CP/M Utilities & Enhancement,”
“CP/M 86” and “CP/M Software
Directories.” $12.95.
An in-depth look at the most widely used
mkro<omputer DOS in the world.
(please print full name)
Address.
City_
J\pt..
i
I"" MICROSYSTEMS PRESS 1
Dept. NM5H • 39 East Hanover Avenue
Morris Plains, NJ 07950
Please send me_ Programmer's Guide I
to CP/M at $12.95* plus $2.00 postage and S
handling each. Outside USA add $3.00 per I
order. #14C
□ PAYMENT ENCLOSED $_
* Residents of CA, NJ and NY State add
applicable sales tax.
□ CHARGE MY:
(Charge and phone orders $10 minimum.)
□ American Express □ MasterCard □ Visa
Card No-
Exp. Date_
Signature_
Mr./Mrs./Ms._
State__Zip-- |
□ Send me a FREE Creative Computing Catalog.
Also available at your
local bookstore or computer store.
For Faster Service,
PHONE TOLL FREE: 800-631-8112
(In NJ only: 201-540-0445)
202
PC Tech Journal
TECH MART
FORTRAN
or
PACPAT
PROGRAMMER?
READ
THIS
AD
!
GRAPHICS
• Text/graphics generics
• 2D interactive
• 2D plots (full support) including
auto-scaling, auto-axis genera¬
tion, auto-labeling, tabular/log/
parametric curves, splines, bars,
pies, you name it, we have it.
• 3D Plots incl. 2 hidden line remov¬
al options—not just old-fashioned
wire frame.
PEN PLOTS
• Standard plotter primitives plus
• FULL 2D support plus
• Interface to screen graphics,
• Limited 3D.
Clear and complete documentation.
GRAFMATIC $135.
PLOTMATIC 135.
MICROCOMPATIBLES
11443 Oak Leaf Drive
Silver Spring, MD 20901
(301) 593-0683
SALES I
POWER
PC: Tech Journal not only sells
itself at a nice profit, it helps sell
the hardware and software in
your store too. Because it goes
home with customers and con¬
tinues to influence buying deci¬
sions long after you’re closed for
the day. Let’s talk now.
CALL COLLECT:
(212) 725-7679
Or write:
EG Ziff-Davis Publishing j
‘ One Park Avenue
New York. NY 10016
I Minimum order, 10 copies. We pay all shipping costs-
« PROMPT DELIVERY!!!
9S SAME DAY SHIPPING (USUALLY)
64K DYNAMIC RAM ICs
200 ns @ $5.37
150 ns @ $5.37
256K DYNAMIC RAMS
150 ns @ $48.99
Place 512 Kbyte directly into IBM XT
motherboard sockets with 18 256K ICs
and proprietary information kit!!!!!!!!!!!!!!
Add 512 Kbyte into XT @ $847.00
CONSUME 0 EXPANSION SLOTS!
Increase your XT motherboard memory to 640 Kbyle!
We sell other memory ICs.
27128, 2764, 6264, 5565 etc.
MasterCard'VISA or UPS CASH COD
Factory New, Prime Parts JuPoo
MICROPROCESSORS UNLIMITED
24,000 South Peoria Ave. /r\-*o\ OC7 A nc h
BEGGS. OK 74421
Price* shown above are for May 21, 1964
Please call lor current & volume prices. Prices subiect to change Please expect higher
prices on some parts due to world wide shortages Shipping and Insurance extra Cash
discount prices shown Small orders received by 6 PM CST can usually be delivered to
you by the next morning, via Federal Express Standard Air (.1 S5.99!
CtU BUYERS GMDE
THE MASTER DIRECTORY
OF PRODUCTS FOR THE
IBM PC, PC XT, PCjr
AND MOST COMPATIBLES!
AVAILABLE AT YOUR
LOCAL NEWSSTAND AND
COMPUTER STORE.
The PD 100 allows rapid development of specialized
PC interfaces. It features a buffered data bus.
switch-selectable address decoder, and a large
prototype area (up to 40 1C sockets). The 116-page
manual covers basic interfacing concepts and details
implementing A/D. D/A converters. I/O ports,
connection of transducers and dozens of useful
circuits.
PD100 w/manual -.$99 REAL TIME DEVICES
plus $3.50 P&H 1930 Park Forest Ave.
Manual only - $20 Postpaid P 0. Box 906
PA residents add 6% State College. PA 16804
Check. MasterCard, or VISA (814) 234-8087
° IBM PC 0
64K, 1 /360K Drive
$1678
Typical Configurations
IBM PC 64K
1 Drive, Monochrome Monitor & Card
$2049
or add
10 meg Internal Hard Disk
with these features:
-Half-height hard disk —One year warranty
—Plug compatible w/IBM —Requires no extra power
xr
-Uses IBM DOS 2.1 $2939
Compaq 256K, 2/360K drives . . . $2395
Compaq 256K, 1/360K drive,
10 Meg Internal.$3065
10 Meg Internal Hard Disk.$895
64K RAM chips for PC’s.$49
Tandon TM 100-2, DS/DD.$210
Control Data 9409, DS/DD.$210
Taxan Monochrome.$175
Amdek 310 A Monochrome.$175
Princeton PGS HX-12 (RGB).$499
Quadram QuadColor I.$219
Persyst mono card w/parallel.... $239
Quadram Quadjet.$695
TI 855 .$849
Juki 6100.$469
Okidata ML92P.$469
Okidata ML93P.$729
Epson FX-80.$509
Epson FX-100.$739
AST SixPack Plus (64K).$259
Quadram Quadboard (64K).$289
MultiMate 3.20.$339
Multiplan.$149
ProKey 3.0.$89
Norton Utilities.$60
Dbasell.$349
Open Access..$349
Lotus 1-2-3.$349
Wordstar ProPack.$415
Prices subject to change without notice.
SHIPPING FREE WITHIN USA; EXTRA FOR NEXT DAY AIR
ALL EQUIPMENT CARRIES FACTORY WARRANTY
IBM is a trademark of IBM Corp.
Credit Cards add 3%. Quantity Pricing Available.
PC'S LIMITED
(512)452-0323
CALL FOR LATEST PRICES
7801 N. Lamar, #F-1
^_ Austin, Texas 78752 &
CIRCLE NO. 172 ON READER SERVICE CARD
PC TECH JOURNAL PRODUCT INDEX
RS# PRODUCT ADVERTISER PAGE #
OPERATING SYSTEMS
393 Multilink Software Link .93
160 Xenixt The Santa Cruz Operation,
Inc.149
COMPUTERS AND COMPATIBLE UNITS
Compaq Portables Compaq Computer Co.167-168
171 Corona PC Corona Data .95
152 Display Write IBM .50-51
277 Single Board PC 1-Bus-Systems .114
ACCESSORY CARDS/
MULTIFUNCTION BOARDS
° Colorcard Hercules Computer
Technology .9
168 Mr Chips Orange Micro .C-4
190 Pure Data Boards Pure Data Ltd .119
201 Quadboard Softcraft .97
225 Taurus Boards Taurus Computer Products,
Inc. 4
NETWORKING PRODUCTS
138 10 Net Fox Research, Inc.61
° Idea Net Ide Associates .98-99
192 PC Net Orchid Technology .47
OTHER ACCESSORY CARDS
273 ABM Superboard ABM Computer Systems .109
107 PC Probe Atron .191
COMMUNICATION
218 Network Station Watsoft Products Inc .180
MASS STORAGE HARDWARE
134 Micro Design .36
176 9 Track Tape Backup Overland Data, Inc .172
124 9-Track Mag IBEX Computer Corp .56
106 Apparat Harddisk Apparat, Inc .102-103
102 Bernoulli Box Iomega .131
101 Mega Flight 100 Kammerman Labs .13
117 PC Cont. Re Tape Sys Digi Data Corporation .85
122 Pegasus Hard Disk Pegasus .154
215 SCSI Interface Innovative Data Technology .123
234 Tallgrass Harddisk Tall Grass Technologies .2
111 Teammate Data Technology Corp.141
COMMUNICATIONS HARDWARE
155 Elan Tecmar Inc .117
213 File Connection Flagstaff Engineering .189
210 Irma Digital Commun. Assoc.10-11
191 Modem Quadram Corporation .C-2
270 Modems Bizcomp .101
204 MT212PC Board Modem Multi Tech Systems .8
143 Multilink Davong Systems .C-3
178 PC Exchange Intelligent Technologies .143
103 Smart-Cat Modem Novation Inc.57
158 Smartcon 11 Hayes Microcomputer
Products .152-153
184 X-Net X-Comp.63
187 XCOM Modem Delta Communications .89
INPUT HARDWARE
181 PC Mouse Mouse Systems .178-179
GRAPHICS SOFTWARE
120 Graphics Software Golden Software .165
SOFTWARE FOR PROFESSIONALS
162 Assemblers 2500 A.D. Software,
Inc.138-139
128 C-Compilers Lattice, Inc.171
Coherent C-Compiler Mark Williams Co, The .27
167 Engineering Software Physical Sciences Inc .108
142 Fortran-77 Genesis Microsystems .7
235 Printer Basher Connecticut Software .182
° Sidekick Borland International .105
170 Software PC Brand .40-41
169 Westico S/W Direct. Westico .176
WORD PROCESSING SOFTWARE
236 Word Perfect Satellite Software Int’l. SSL .17
LANGUAGES
165 mbp Cobol mbp Cobol .186
129 C-86 Compiler Computer Innovations .161
RS# PRODUCT ADVERTISER PAGE #
Ferocious Micro.Fort Microsoft Inc .53
222 HS/Forth Harvard Softworks .46
149 Janus ADA R&R Software Inc.167
243 LISP Integral Quality .184
159 PC/Forth Laboratory Microsystems .118
0 Raging C Microsoft Inc .55
° Turbo Pascal Borland International .31
PROGRAMMER'S TOOLS
166 Amerisoft Edit Tool Amerisoft .104
208 APL/Plus PC STSC .49
157 B-Tree Accudata Software .135
116 Basic C C-Source .146
271 Beamsort Phlexible Data Systems .150
140 Codesmith-86 Visual Age .24
110 Cross Assembler Avocet Systems Inc.147
131 Debugger D & V Systems Inc.150
173 Explain Document. Communication Sciences,
Inc.177
132 Firstime Spruce Technology .145
228 Fullscreen Editor Watsoft Products Inc .60
G Graphics Editor Micro Marketing Associates .180
198 Micro Ed/Script Micro Type .60
179 Opt Tech Sort Optimum Data Processing .172
115 Pascal and C Tools Blaise Computing .126
206 PDT-PC Answer Software .125
137 Peeks’n Pokes Data Base Decisions .62
143 PMate;PLink 86 Phoenix Software Associates .33
144 PMate;PLink 86 Phoenix Software Associates .35
145 PMate;PLink 86 Phoenix Software Associates .37
268 Poly make Polytron .192
127 Remote Control Kensington Microware .180
161 Set: Skill Systems Engineering .164
207 SPF/PC/The Add Coupl Rouge River Software .166
147 Symbolic Debugger RDT Software .56
141 Text Engineer Pelada Informatica .124
105 The Greenleaf Funct. Greenleaf Software .100
216 The Profiler DWB Associates .104
135 Trace 86 Debugger Morgan Computing .38
121 Windows for C Creative Solution .130
299 X-Shell Standard Datacom, Inc.207
126 vsi Amber Systems .136
DATA BASE MANAGEMENT SOFTWARE
139 B.O.S.S. American Planning Corp.185
282 CDI 100 CDI .90-91
221 Data Base Mgmt Sware Quick-N-Easy Software.106-107
146 Dataflex Data Access Corp .127
300 DBase 11 AshtonTate .174-175
Knowledge Man Micro Data Base Systems Inc.12
148 XIM Xanthe .1
ADDITIONAL SUPPLIES
258 Contemporary Computer
Wear .171
130 Datasaver Cuesta Systems Inc .118
193 Diskettes Beck Manufacturing .190
202 HW/SW Directory Data Sources .159
SOFTWARE UTILITIES
156 Autokey Straticic Automation Inc.110
194 Copy write Quaid Software .164
164 DFlow Wal Soft Systems Inc.140
° Jet Tall Tree Systems . 48
150 Key Swap Rickerdata .21
153 Multijob B & L Computer
Consultants .188
108 Visual Shell Bourbaki, Inc.177
113 Xeno-Copy Vertex .135
MAIL ORDER
123 Mail Order Microexpress .158
226 Mail Order Programmers Connections,
Inc.16
239 Mailorder Programmer Shop .54
175 Mailorder Software Horizons . 52
182 Mailorder PC Connection .62-63
174 Mailorder Microware .134
172 Mailorder P.C.’s Limited .203
183 MO PC Link .183
GRAPHIC MONITORS
188 Princeton HX-12 Princeton Grahics . Ill
For home or classroom
COMPUTERS IN
SCIENCE AND
SOCIAL.STUDIES
A SOURCEBOOK OF IDEAS
Edited By David H. Ahl
STEPHEN
pNCEltf 115
STUDENT POHION
,Compv tingPr0
Creative'
computers
in Mathematic*
A Sourceooo* of
^.iveConjpDjj^
Use these three books for state-of-the-art learning material!
COMPUTERS IN
SCIENCE AND
SOCIAL STUDIES
Edited by David H. Ahl
Are you involved with one of the physi¬
cal or social sciences? This new book
brings together 40 science-oriented
computer articles from the pages of
Creative Computing .
Fields covered include Social Stud¬
ies, Psychology, Chemistry, Biology,
Physics, Health, Ecology, Astronomy,
History, Economics, Geography, Medi¬
cine-even Interstellar Trade! You’ll find
games, brief tutorials and programs
that bring together the many exciting
uses of the computer in social studies
and science!
8 V 2 " x 11 ", softcover.
$14.95 ($2.00) #9X
PROBLEMS FOR
COMPUTER SOLUTION
By Stephen Rogowski
Here are 90 intriguing math and science
problems—most consisting of several
parts—that will provide hours of fasci¬
nation and challenge. Each problem is
clearly presented and thoroughly dis¬
cussed, with references made to stand¬
ard math texts. Problems cover eight
areas: arithmetic... geometry... trigo¬
nometry ... number theory... probabil¬
ity... statistics... calculus... science.
The Student Edition includes only the
problems, while the Teacher’s Edition
contains problems, solutions, a com¬
plete listing and run in BASIC for each,
and in-depth analyses explaining the
algorithms and theory for each problem.
8 V 2 "x 11 ", softcover.
Student Edition $4.95 ($1.00) #9Z;
Teacher Edition $9.95 ($2.00) #9Y
COMPUTERS IN
MATHEMATICS:
ASOURCEBOOK
OF IDEAS
Edited by David H. Ahl
Scores of ready-to-use, classroom-
tested ideas in dozens of areas such as
solving differential equations... trig¬
onometric functions and Tchebychev
approximations... computer simula¬
tions and problem-solving in probabil¬
ity... binary counting... regression
analysis. Practice programs, art and
graphing problems, program listings
and sample runs are included, plus over
250 problems, puzzles and program¬
ming ideas.
8 V 2 " x 11 ", softcover, illustrated.
$15.95 ($2.00) #12D
For faster service, PHONE TOLL FREE:600-631-8112 (m nj om y : 201 - 540 - 0445 )
Also available at your local bookstore or computer store.
CREATIVE COMPUTING PRESS • Dept. FA4F • 39 East Hanover Avenue • Morris Plains, N J 07950
Please send books listed below:
Book No.
Qty.
Title
Price Each
(P&H)Each
Total Price
CA, N J and NY State residents add applicable sales tax
Postage and handling charges appear in
parentheses ( ) next to price of book.
TOTAL AMOUNT
□ CHARGE MY: (Charge and phone orders $10 minimum.)
□ American Express □ MasterCard □ Visa
Card No._
_Exp. Date.
□ PAYMENT ENCLOSED $_
$3.00 per order.
. Outside USA add
Mr./Mrs./Ms.
Address
(please print full name)
Apt
City
State/Zip
□ Send me a FREE Creative Computing Catalog.
INDEX TO ADVERTISERS
Reader Service
Number Advertiser Page
162 2500 Software .138-139
273 ABM .109
157 Accudata Software .135
126 Amber Systems .136
104 American High Tech .173
139 American Planning Corp . 185
166 Amerisoft .104
206 Answer Software .125
106 Apparat .102-103
300 Ashton Tate .174-175
107 Atron .191
110 Avocet .147
153 B&tL Computer .188
193 Beck Manufacturing .190
114 Bellesoft .25
270 Bizcomp .101
115 Blaise Computing .126
* Borland International .31
* Borland International .49
108 Bourbaki, Inc.177
282 CDI .90-91
116 C-Source .146
173 Communication Sciences . 177
* Compaq Computer Co.
167-168
129 Computer Innovations .161
235 Connecticut Software .182
258 Contemporary Computer . 171
171 Corona Data .95
121 Creative Solution .130
130 Cuesta Systems .118
131 D St V Systems .150
210 DCA .10,11
216 DWB Associates .104
146 Data Access Corp .127
137 Data Base Decisions .62
202 Data Sources .159
111 Data Technology Corp ....141
143 Davong Systems .C-3
187 Delta Communications .89
117 Digi-Data Corp .85
109 Ecosoft .162
119 Faircom .142
213 Flagstaff Engineering .189
138 Fox Research .61
Reader Service
Number advertiser Page
142 Genesis Microsystems .7
120 Golden Software .165
105 Greenleaf Software .100
222 Harvard Softworks .46
158 Hayes Microcomputer
152-153
* Hercules . 9
124 IBEX Computer Corp .56
277 I-Bus Systems .114
* IBM .50-51
* IDE Associates .98-99
215 Innovative Data .123
243 Integral Quality .184
178 Intelligent Technologies .. 143
102 Iomega .131
101 Kammerman Labs .13
127 Kensington Microware .... 180
159 Laboratory Microsystems . 118
128 Lattice, Inc.171
185 Lintek, Inc .151
186 Mark Williams Co., The ... 27
165 mbp Cobal .186
118 Micro Data Base Systems .. 12
134 Micro Design Int'l .36
163 Micro Marketing Associates
180
198 Micro Type .60
* Microsoft .53
* Microsoft .55
174 Microware .134
123 Microxpress .132
135 Morgan Computing Co .38
181 Mouse Systems .178-179
204 Multi Tech Systems .8
103 Novation .57
179 Opt Tech ......172
168 Orange Micro .C-4
180 Orchid Technology .45
192 Orchid Technology .47
176 Overland Data .172
170 PC Brand .40-41
182 PC Connection .62-63
183 PC Link .183
172 PC's Limited .203
122 Pegasus .154
Reader Service
Number advertiser Page
141 Pelada Informatica .124
271 Phlexible Data Systems ... 150
143 Phoenix Software .33
144 Phoenix Software .35
145 Phoenix Software .37
167 Physical Sciences Inc.108
268 Polytron .192
188 Princeton Graphics .Ill
226 Programmer's Connection . 16
239 Programmer's Shop .54
190 Pure Data LTD.119
191 Quadram Corp.C-2
194 Quaid Software .164
221 Quic-N-Easi Products 106-107
147 RDT Software .56
149 R&R Software, Inc .167
150 Rickerdata .21
207 Rogue River Software .166
199 STB Systems .20
200 STB Systems .23
208 STSC .15
151 Sabadia Export Corp .180
160 Santa Cruz Operation .149
236 Satellite Software .17
201 Softcraft .97
175 Software Horizons .52
393 Software Link .93
132 Spruce Technology .145
299 Standard Datacom .207
156 Strategic Automation .110
161 System Engineering .164
234 Tall Grass Technology .2
* Tall Tree Systems .48
225 Taurus Computer .4
154 Tecmar .18,19
155 Tecmar .117
261 Thanks for The Memory 108
113 Vertex .135
140 Visual Age .24
164 Wallsoft Systems, Inc .140
218 Watsoft .180
228 Watsoft .60
169 Westico .148
184 X-comp .63
148 Zanthe .1
206
PC Tech Journal
Now,
X-shell™ brings
Unix™ capability to your PC
for an amazingly low
$ 225 ___
rsisg?"
--
Computers. You know at least two
things about them: One, they should
be a tool for solving your problems.
Not creating them. Two, you want
to spend as little time as possible
on one.
X-shell
Software Tools Package
That’s why Standard DataCom, Inc.
developed X-shell, a command
interpreter software tools package for
IBM PCs and MS-DOS/PC-DOS
operating systems.
X-shell helps your computer solve
your problems faster. Makes the
time you spend on the computer
more efficient. Squeezes more out of
your computer investment.
Proven
Unix Features
X-shell gives you Unix capability by
providing these proven Unix features:
1. Support for pipelines and
filters
2. Input & output redirection
3. Variable substitutions
4. Command substitutions
5. Filename expansion
6. Nested command files
7. Structured flow control:
if then/else, while/do/done,
until/do/done, case/esac,
for/do/done
Unix is a trademark of Bell Laboratories
X-shell is a trademark of Standard DataCom. Inc.
Hardware Requirements
(where you can save hard cash)
IBM PC or XT (or compatible)
256K bytes of RAM
2 Disk Drives—Hard or Floppy
Since X-shell can be run using floppy
disk drives, you can save a bundle of
money on your hardware. Hard disks
are expensive. Floppies aren’t. It’s
that simple.
Software Requirements
PC-DOS version 1.1 or 2.0
Software Disk Emulator
Since X-shell runs on PC-DOS, it
supports existing PC-DOS software.
Over 40
Commands
X-shell’s commands
include:
basename
i -strip extension from
num
-number lines
file name
pr
-format files for printing
cat
-concatenate files
print
-pr directed to printer
cd
-change directory
pwd
-print working directory
clear
-clear monitor screen
rm
-remove files (delete)
cmp
-compare files
sh
-shell (command
comm
-output lines common
interpreter)
to two files
size
-size of object code
cp
-copy files
sort
-sort numerically or
cpio
-file backup/archival
alphabetically
date
-get or set date and time
sum
-checksum file
echo
-echo arguments to stdout
tail
-output last lines of file
expand
-expand tabs into spaces
tee
-pipe fitting
expr
-string and arithmetic
test
-test file's or string's
evaluation
characteristics
false
-do nothing.
time
-determine time to execute
unsuccessfully
a command
find
-produce list of selected
tr
-translate or delete
files
characters
grep
-search files for specified
true
-do nothing,
pattern
successfully
hd
-hex file dumper
unexpand
-replace spaces with tabs
head
-output 1st lines of file
uniq
-remove duplicate lines
Is
-sorted directory list
wc
-count chars, words
more
-copy files to display
and lines
mv
-move files (rename)
words
-output file 1 word per line
Dealer Inquiries Invited
What You Get For $225
1. Complete Documentation,
including: Installation, Tutorial and
Reference Manuals.
2. Complete X-shell Software Tools
Package on two diskettes.
3. A more efficient use of your
computer time.
4. More effective use of your PC.
How To Order X-shell
Get the software package that gives
you Unix capability for an amazingly
low $225.
Call Standard DataCom, Inc.
415-775-8882 with your Visa or
MasterCard order, or for more
information.
Or ask your dealer.
Standard
DataCom!
Inc.
9
Ask us about X.25
Standard DataCom, Inc.,
1550 California Street #6195,
San Francisco, CA 94109
CIRCLE NO. 299 ON READER SERVICE CARD
CONSCIOUS?
Now you can organize your copies of
PC TECH
JOURNAL
Now your magazines can be a hand¬
some addition to your decor, well or¬
ganized, and easy to find, thanks to
these durable library-quality cases or
binders. They're made of luxury-look
leatherette over high-quality binder
board. And both styles are custom-de¬
signed for this or any other magazine
you save, with size, color and imprint
selected by the publisher. FREE
transfer foil included for marking dates
and volumes.
Magazine
binders
holds your issues on
individual snap-in rods,
combining them into
one volume. $7.95 each;
3 for $22.50; 6 for $42.95.
Mixed titles OK for
quantity prices.
Open-
back cases
store your issues for
individual reference.
$6.95 each; 3 for $19.75;
6 for $37.50. Mixed titles OK
for quantity prices.
For faster service,
CALL TOLL-FREE
800-526-0790
(In NJ only 201-540-0445)
r PC Tech Journal
P.O. Box 5120. Philadelphia. PA 19141
Please send: □ Cases □ Binders
title quantity
PC Tech Journal _
Other - -
□ PAYMENT ENCLOSED $_
____ _ _* Add
$1.00 per order for postage and handling. Out¬
side USA add $2.50 per unit ordered; send US
funds only.
□ CHARGE (Minimum $10):
□ American Express □ MasterCard
□ Visa
Card No._
_Exp. Date-
Signature-
Print Name-
Address-
City-
State/Zip_
L.
‘Residents of PA add 6% sales tax.
CALENDAR
AUGUST
August 2-5
Tampa Bay Computer Show
Tampa, FL
Contact: CompuShows, 800-368-2066
August 6-10
National Conference on
Artificial Intelligence
Austin, TX
Sponsor: ACM and the
American Association for
Artificial Intelligence
Contact: J. M. Tenebaum, Conference
Chairman, Artificial Intelligence
Laboratory, Fairchild Camera and
Instrument, 4001 Miranda, Palo Alto,
CA 94304, 415-926-5001
August 21-24
1984 International Conference
on Parallel Processing
Bellaire, MI
Sponsors: Ohio State University
and IEEE
Contact: Conference on Parallel
Processing, IEEE Computer Society, P.O.
Box 639, Silver Spring, MD 20901
August 22-24
1984 ACM Sigmetrics
Conference on Measurement
and Modeling of Computer
Systems
Cambridge, MA
Contact: Association for Computing
Machinery, 11 West 42nd Street,
New York, NY 10036
SEPTEMBER _
September 3-5
IBM System User Show
London
Sponsor: IBM System User Magazine
Contact: EMAP International
Exhibitions Ltd., 8 Herbal Hill, London,
EC1R 5JB, England
September 6-9
CompuLearn: International
Exposition and Conference on
Computers in Education
Atlanta, GA
Sponsors: Expoconsul International, Inc.
and A Better Way in cooper¬
ation with The United Negro
College Fund
Contact: Expoconsul International Inc.,
55 Princeton-Hightstown Rd., Princeton
Junction, NJ 08550
September 11-14
UNIX Systems EXPO/84
Los Angeles, CA
Sponsor: Computer Faire, Inc.
Contact: David Sudkin, 617-965-8350,-
Alan Kucheck, 415-364-4294
September 12-14
Eurographics '84
Copenhagen
Sponsor: SIGGRAPH
Contact: DIS Congress Service, Linde
Alle 48, DK-2720 Vanlose, Copenhagen,
Denmark
September 16-20
COMPCON Fall
Arlington, VA
Sponsor: IEEE
Contact: IEEE, P.O. Box 639, Silver
Spring, MD 20901
September 20-23
New York/Userfest
New York, NY
Sponsor: Northeast Expositions,
617-739-2000
September 24-25
World Conference on
Ergonomics in Computer
Systems
Los Angeles, CA
Contact: Crispin Littlehales or
Rosemarie Burnett, Thomas L.
Richmond, Inc., 1350 Avenue of the
Americas, New York, NY 10019
September 24-26
PCExpo
Anaheim, CA
Contact.- PCExpo Shows, 333 Sylvan
Avenue, Englewood Cliffs, NJ 07632,
201-569-8542
September 27-30
5th Annual Mid-Atlantic
Computer Show and Office
Equipment Exposition
Washington, D.C.
Sponsor: CompuShows, Inc.
Contact: CompuShows, Inc., P.O. Box
3315, Annapolis, MD 21403
OCTOBER
October 8-10
ACM 1984 Annual Conference
San Francisco, CA
Contact: Karen A. Duncan, Health
Information Systems, 15 Parsons Way,
Los Altos, CA 94022, 415-948-3941
PC Tech Journal
Davong makes it easy.
Utilities provide for initial checkout, copying
from hard disk to tape, and restoring files
from tape to hard disk. They also compare file
dates so that the most current f i le with the same
title is restored.
Protection plus. If you use a Davong hard disk
system under the Davong Multi-OS™ control
system, backup can be accomplished by volume
or individual file. A 15 megabyte disk can be
copied in about four minutes. Four error checking
methods ensure data integrity.
If you have
You can have peace of mind for onlyjpl'iSlj* And
it's available from more than 800 Ddvong deaf
Don't you deserve Davong backup.
an IBM® XT
or have
added a hard disk
to your IBM PC, Davong
can give you a happier
future. Just plug in Davong tape
backup.
Your IBM PC & XT deserve Davong.
Davong tape backup can prevent
that sinking feeling that comes from losing data.
One disk malfunction or programming error
could wipe out a week's work, but not if you have
Davong backup.
The Davong streaming tape drive backs up any
Winchester disk drive used with IBM PC or XT
microcomputers. Each tape cartridge gives you up
to 18 megabytes (formatted) of safe, secure
storage.
217 Humboldt Court
Sunnyvale, California 94089
(408) 734-4900
CIRCLE NO. 278 ON READER SERVICE CARD
® IBM is a registered trademark of IBM
Corporation
"* Multi-OS is a trademark of Davong Systems, Inc.
•Suggested retail price for standalone backup
tape drive with all cabling and adapters,
software utilities, comprehensive
documentation, and 180 -day parts and labor
warranty. Also ^gilableJgf.Davong hard disk
systems fore
TAPE BACKUP SYSTEM
Mr. Chips Plays Your PC
Like a One Man Band
Mr. Chips, the new multi-function
card from Orange Micro, adds a full
ensemble of features to your IBM®
PC. Memory, printer ports, and a
clock are standard, and you’d
expect them on a top quality board.
But computing is changing.
Soon computers will take care of
everyday things; like watering the
lawn, or turning on your lights when
it gets dark. And only Mr. Chips can
do this now. These capabilities are
standard, so your growing needs
won’t require additional equipment.
There’s also a dual game port, so
you can duel to the end, by yourself
or with a friend.
Every Mr. Chips comes with Chip-
disk™ software, for RAM disk and
print spooling. With RAM disk you
set up your PC’s memory to act like
a disk drive. This means much
faster execution and searching of
programs. Print spooling sets your
PC’s RAM to serve as a printer
buffer, so you can compute even
while your printer is printing.
You can orchestrate
remarkably low price.
Visit your dealer and see for your¬
self: Mr. Chips is the multi-function
card for today... and tomorrow.
The First Multi-function Card with 9 Standard Features
• Parallel Port*: Great for getting fast printouts on
efficient dot matrix printers.
• Serial Port: The most popular way to access high
4 grade letter quality printers or phone modem
communications.
• 64K-256K RAM: Upgrade your PC’s memory to
handle powerful integrated software and other larger
programs.
• Clock/Calendar: Accurately keep track of time and
date, even when your computer is turned off.
• Dual Game Port*: Accommodate two complete joy¬
sticks at once, so you can play alone or duel with a
friend. Also for use with CAD/CAM software.
• Real World Interface: This innovative port can moni¬
tor and control equipment like thermostats, moisture
detectors, photocells and other independent devices.
■ BSR is a registered trademark of the BSR Corporation
■ IBM is a registered trademark of International Business Machines Corporation
• BSR™AC Line Controller*: Control your lights, appli¬
ances, security systems, or anything that plugs into
an AC wall socket.
• Chipdisk RAM Disk: Set your PC memory to act like
a disk drive. Your programs will run much faster than
with conventional disk drives.
• Chipdisk Print Spooler: Your PC memory will serve
as a printer buffer, so you won’t have to wait for your
printer anymore.
‘Cables available separately
1400 N. LAKEVIEW AVE., ANAHEIM, CA 92807 USA
(714) 779-2772 TELEX: 183511CSMA
© Orange Micro, Inc., 1984
Orange micro
^ Inc.
CIRCLE NO. 168 ON READER SERVICE CARD