- "TurboDOS spans the Horizon"
Karl Sterne, North Star Computers, Inc.
"Microsystems", August 1984, Vol.5, No.8, p.114
(Retyped by Emmanuel ROCHE.)
The North Star Horizon, now 6 years old, is one of the few pre-1980
microcomputers still in demand. However, the Horizon, as it is built in 1984,
is a very different system from its 1978 ancestor. Today's Horizon is a multi-
user multi-processor that uses North Star's version of TurboDOS operating
system from Software 2000, Inc., for both 8-bit CP/M and 16-bit CP/M-86
By the end of 1982, it was apparent that the Horizon's lifespan would be far
longer than had been forecast. Its chief limitation was its time-sharing
operating system. To replace it, North Star evaluated a number of operating
systems before choosing TurboDOS. Among the reasons for the decision were:
1. TurboDOS has a multi-processor networking architecture. (In fact,
North Star's latest computer, the Dimension, uses a similar
architecture. The Dimension, however, incorporates a multiple-user IBM
XT-compatible operating system rather than TurboDOS, as well as the
Intel 80186 processor rather than the Zilog Z-80, and the IBM bus
rather than the S-100 Bus.)
2. TurboDOS provides true multi-user operation, including file sharing
and record lockout.
3. TurboDOS permits simultaneous operation of 8-bit and 16-bit
4. TurboDOS outperforms many other operating systems in timed benchmarks.
5. TurboDOS has powerful networking facilities, including support of
multiple circuits, node-to-node communications, and the ability of any
node to be a server. This allows, for example, direct access to the S-
100 Bus for control of special boards.
6. TurboDOS comes as close to being a minicomputer operating system as is
practical on a microcomputer.
Given all its advantages, TurboDOS can still be improved. This article will
discuss some of the improvements made by North Star.
North Star's principal problem with TurboDOS was that Release 1.22, the latest
available in 1983, emulated only 8-bit CP/M, and did not have 16-bit
capabilities. Software 2000's assurance, that a new release incorporating
CP/M-86 emulation was imminent, allowed North Star to proceed with the
development of new hardware: an 8-bit Zilog Z-80 satellite board, a 16-bit
Intel 8088-2 satellite board, and a memory expansion board to give the Intel
8088-2 as much as 512K of RAM. The existing Horizon hardware was used without
modification for the server (master). Although both the 16-bit hardware and
the new TurboDOS release took longer than expected, they have been in use
since April 1984, and have had excellent acceptance.
Installation and configuration
TurboDOS runs on a large variety of hardware, and one result of its
versatility is that it tends to be difficult to install. Having once succeeded
in installing the "vanilla" system, the user is confronted with the task of
tailoring it to that particular hardware. This usually requires a word-
processor to create lists of operating system functions and other parameters.
This process is a radical departure from the straightforward installation of
other North Star operating systems.
The North Star approach was to split the process into 2 functions:
configuration and installation. The configuration program asks the user
questions in English, and does not require a word-processor; installation is
automated, using the operator's responses.
The North Star TurboDOS operating system is distributed as a 4-diskette set.
Each diskette is named for its particular function in the installation
process: SYSTEM DISK, CONFIG DISK, HELP DISK, and SYSCON DISK. The SYSTEM
DISKette is a bootable TurboDOS operating system that contains a maximum
hardware configuration. Some users will never need to generate another
Two manuals come with North Star TurboDOS: the TurboDOS User's Guide and the
TurboDOS Reference Manual. The preface to the TurboDOS User's Guide contains
step-by-step instructions for helping the system install itself. Three simple
commands are entered from any user's console. The rest of the process requires
only a few Carriage Returns and diskette changes.
The installation process uses the TurboDOS command file batch utility -- an
enhancement of the CP/M SUBMIT facility -- and performs the system
initialization tasks such as verifying the hard disk data tracks and
formatting the TurboDOS directory area. The user is then asked to insert one
of the 4 distribution diskettes. The proper user areas of the hard disk are
loaded with the appropriate files. This process is repeated for each of the 4
At this point, the installation creates a bootable diskette for daily use. The
distribution diskette set can be set aside, and the computer is fully
operational. If customizing of the operating system is not desired, this
completes the process.
The operating system on the SYSTEM DISK contains software drivers for a
maximum system. It includes hard disk drivers for both types of North Star
hard disks, and 2 different kinds of printer drivers. Should the user wish a
different configuration, the CONFIG program is run.
CONFIG asks the user questions in simple English about the desired hardware
configuration. It builds the TurboDOS GENeration and PARameter files required
by the TurboDOS GEN command. No other programs are required. After the user
finishes answering all the questions, a system summary is displayed on the
screen. This can be accepted or aborted, and the user can change any desired
At the end of the session, the user can opt not to have the TurboDOS operating
system actually generated. In this mode, CONFIG acts as a teaching tool,
allowing the user to see how different configurations change the form of the
GEN and PAR files.
If additional TurboDOS operating systems are desired, another command file
batch is executed. This file, created by CONFIG, performs the TurboDOS
operating system generation and copies the new TurboDOS operating systems to
the proper area of the hard disk. The old TurboDOS operating system files are
saved with an ORG filetype. Should any problems occur with the newly-generated
TurboDOS operating systems, the old ones can be recovered.
Bad spot de-allocation
All hard disk systems must deal with the question of how to detect and avoid
defects (known as bad spots) on the hard disk medium. Typically, a disk drive
will be shipped by the manufacturer with a few bad spots already on it, and
additional bad spots will "grow" as the result of vibration (especially during
shipping), power failures, or aging of the machine.
A good hard disk system must, therefore, deal with 2 different bad spot
1. A hard disk arrives with bad spots already on it.
2. A hard disk grows bad spots while it is in use.
Hard disk systems must also deal with 2 kinds of bad spots: "hard" (permanent)
bad spots and "soft" (intermittent) ones. It is good practice to recognize and
avoid the soft ones as well as the hard ones (even though you can often retry
enough times to get past the soft ones) because they tend to get worse with
The issue is complicated by the fact that the location of the bad spot can
make a big difference in how bad it really is. A bad spot in an unused part of
the disk is not a problem, as long as one can tell the operating system how to
avoid it. A bad spot in a data area is a problem, because data has very likely
been lost. A bad spot in the directory can be fatal.
Generic TurboDOS comes with a program, VERIFY, which de-allocates bad spots;
i.e., it removes them from the pool of available disk space. VERIFY has 2
deficiencies, however. First, it finds only hard errors, because it is forced
to do read-only tests via the normal hard disk drivers, which are fault-
tolerant by design. Soft errors will trigger retries at the driver level, but
these retries are not reported to VERIFY unless many successive failures
occur. Second, it can be run only at startup -- the directory must be empty
for it to work properly. Therefore, it does not help at all with bad spots
that grow during use.
North Star's answer was to create a program named MARKBAD. MARKBAD is similar
to VERIFY in that it de-allocates disk blocks that contain bad spots. It
differs from VERIFY in 2 important ways. First, it accepts manual input of bad
spots. This allows identification of both soft and hard spots, which are taken
from the manufacturer's disk label, from a hard disk test program, or from
disk error messages put out by TurboDOS itself. Second, it can be run at any
time, so that a bad spot that grows during use can be removed from the
VERIFY and MARKBAD both deal with bad spots in the disk's data area. Neither
can help if the bad spot is in the directory, because directory blocks cannot
be de-allocated. TurboDOS requires the entire directory area (including
allocation table) to be free of defects. On a 30MB hard disk with a 2K block
size, for example, this area occupies 30 tracks, or about 240K. (ROCHE> The
size of a standard IBM 3740 8" floppy disk...)
To alleviate this situation, North Star developed a means of swapping bad
directory tracks with good data tracks in a manner invisible to TurboDOS, so
that the bad blocks end up in the data area (where they can be de-allocated by
MARKBAD) and the good blocks end up in the directory. This preserves the
maximum amount of good disk space possible. Another approach would have been
to slide the beginning of the directory out into the first clear space big
enough to hold it, but a potentially large amount of good disk space might
have to be skipped, and that space would be lost.
The swapping of tracks takes place on power up, when a special section of the
hard disk driver reads the North Star bad-spot table from a reserved portion
of the disk. This bad-spot table is initially written in the factory, and can
be updated in the field by running the hard disk test-and-format program.
When a disk is shipped with a bad spot in the directory, the first system boot
will swap the bad track out into the data area, and MARKBAD will be told to
de-allocate the affected data blocks. The system will then appear like any
other North Star TurboDOS system.
If a bad spot grows in the directory later, some or all of the disk will be
unreadable. The procedure is to recover what can be read, then run the hard
disk test-and-format program, and tell it where the new bad spot is. On the
next boot, the new bad track will be swapped out of the directory, and the
system will again be usable. Any lost data has to be recovered from the backup
Even though TurboDOS provides a considerably more pleasant user interface than
CP/M, it is designed for computer professionals rather than for the small
businesses that are North Star's principal customers. To present a more easily
understood set of screens, North Star has bundled Turbo-Plus into North Star
TurboDOS. This is an enhancement package that provides powerful additional
facilities for TurboDOS. The utilities included are: DIRDUMP displays the
master directory of any disk; WHO displays a list of all the current users;
LOCATE searches any or all drives for a file; BB (Background Batch) schedules
jobs to the background queue; STATUS monitors the activity of users and
peripherals; HELP provides on-line help menus that users may customize; TWX
(ROCHE> TeletypeWriter eXchange. An old US and Canadian dial-up communications
service that became part of Telex.) sends messages to other users immediately;
MAIL is an electronic mail facility.
Turbo-Plus is a set of utilities developed by Microserve Inc. for TurboDOS. It
was chosen primarily for its extensive on-line HELP messages, as well as for
its versatile electronic mail facility. In addition, Turbo-Plus contains a
group of commands that allows the network manager to track utilization, keep a
log of user time, and control other users.
Besides these aids for less sophisticated users, Turbo-Plus also has a
powerful Background Batch utility, BB, that allows users to schedule low-
priority non-interactive jobs for execution in background mode or at times
when the system is lightly used.
By adding TurboDOS and the new multi-processor hardware developed for it to
the Horizon, North Star has extended the usage of this popular computer for
years to come. And North Star's implementation of TurboDOS brings the power of
a sophisticated operating system to non-professional users who need only to
follow a step-by-step procedure for successful installation and operation.