Last issue, we learned little bit about CP/M. We now have the important system addresses and the function calls that are common to most all CP/M systems. We will explore the use of these items in subsequent issues so, keep this information close at hand.
Also, I mentioned CP/M public domain software last issue. The public domain software is generally very good. There are application programs for any use you can imagine and generally the source is included, as well as documentation! There are also utilities, games, languages and virtually anything you can imagine. The best source is the original CP/M user group, SIG/M. SIG/M have over 300 CP/M disks full of public domain software. You will not find any ‘Shareware’ on these disks, everything is truly public domain. SIG/M can be contacted at:
SIG/M-Amateur Computer Group of New Jersey, Inc.
P. O. Box 97
Iselin, N. J. 08830
On a more local basis, there are still many active CP/M user groups, most of which have the SIG/M library available. Contrary to the PC Cloner’s opinion, CP/M is not dead. CP/M has matured so there is not much new being developed but many of the old programs are constantly being improved. Also, there are many bulletin boards that cater to CP/M by having the latest revision of the more popular programs available for download. Many of these boards are free but the small access fees charged by the others are cheap, compared to the price of good software.
The following list is just a few of the programs I find indispensable and which I strongly recommend you obtain. It is certainly not exhaustive, but are a few that I use almost daily.
SD .COM Super Directory is much improved over the
CP/M internal command DIR. SD.COM allows
complete control over the output of the
disk directory information.
DU .COM Disk Utility allows editing of individual
disk sectors. The control DU gives you
is similar but much greater than SEKTOR
which, is written for the FD-68, Timex mode,
by Mowgli Assor.
NSWP .COM New Sweep is a user friendly replacement for
CP/M's PIP.COM and does much more. NSWP
contains abilities that would otherwise
require several utilities. I consider NSWP
to be indispensable.
Z8E .COM Z8E is an interactive debugger/disassembler
that will run circles around CP/M's DDT.COM.
If you are an assembly language programmer,
this is a must have.
UNERASE .COM UNERASE will recover erased files. Great
for accidental erasures.
MODEM7 .COM There are many updates to this original
version but, it remains the best generic
communications program, particularly the
updated version MEX.COM.
NULU .COM New Library Utility is needed as your number
of files grows and you need to conserve disk
space. It combines several files into one
which recovers the excess space that your
system requires for its smallest disk file.
For Example, a normal DSDD drive will have a
minimum file size of 2048 bytes (2K). This
is true even if the file is only one byte.
NULU reduces the minimum file size to CP/M's
128 byte record size
I should explain filenames for those of you that unfamiliar with CP/M file naming conventions. All programs, text, data, etc. are called a file. Each file name has two parts, the individual filename which is 1-8 characters and an optional file extension of 1-3 characters. A generic file name is often used which is “filename.ext”.
Like the Timex mode of the FD-68, the CP/M file extensions have definite meanings however, CP/M does not require a file extension. The recognized meanings are listed below. Again, this is not an exhaustive list but they are the most often used file extensions.
Ext Type Ext Meaning
COM COMmand files are your programs. This file
type is automatically loaded into the TPA
and executed by typing its filename, without
the extension, at the CP/M prompt.
BAS These are BASic program files. They cannot
be directly executed. You must first load
MBASIC.COM in order to be 'in Basic.' The
MBASIC interpreter will load and execute the
Basic program. Note: This is not the very
user friendly Sinclair Basic that you have
become accustomed to but, is the MicroSoft
Basic-80 interpreter.
SUB These files are Ascii text files which con-
tain several CP/M commands. Use SUBMIT.COM
to execute these files.
DOC DOCumention files are rather obviously the
instructional files for the .COM file of
the same filename. This extension is also
used by several wordprocessors to designate
the working DOCument.
TXT TeXT files are simply Ascii text files of
any nature.
ASC ASCii is an alternate for TXT or DOC.
BAK BAcKup files are copies of other files of
the same filename. Most wordprocessors use
these files to retain the integrity of the
original DOCument file.
HLP HeLP files are special Ascii text files that
are used by HELP.COM to provide help for
many programs and CP/M instructions.
ASM ASseMbly files are Ascii text source files.
These files must be assembled by ASM.COM to
produce executable .COM files.
C These are extensions which are Ascii text
FOR source files that are used by that
PAS language's compiler.
REL RELocatable object code files are output by
the MicroSoft assembler.
DAT DATa files are in various formats and they
contain.
LBR LiBRary files are collections of files that
usually related and written to the disk in a
compressed format. See NULU.COM explanation
above.
HEX HEX files are Ascii files that are in the
Intel Hex format which is very similar to a
standard hex dump.
You will find file extensions that have a letter ‘Q’ for the second letter. These are ‘squeezed’ files and you must unsqueeze these files prior to use. Lastly, many applications use an extension that is unique to them. For example, .CAL is used by the SUPERCALC spreadsheet (not public domain).
Let’s stop there until next issue. Next time I’ll give a couple routines to move files between Timex mode and CP/M, as a means to demonstrate the use of a CP/M function call.
Syd Wyncoop
[address omitted]