CP/M Online User Manual

On this page, the User’s Guide to CP/M for the Timex FDD3000 is available in HTML format for easy search. This manual is very basic only describing briefly the CP/M system, resident commands, and how to make a backup copy of the boot disk. 
Does not contain any technical info.

Important warning:

There are monitors and TV sets in the market that, emit strong electromagnetic radiations, which provoke interferences with FDD 3000 system making it to operate incorrectly and corrupting diskettes.

Thus, before placing any monitor or TV set on the unit Timex FDD 3000, it should be certified that this is not verified, coming in the following way:

1 – Connect the system and turn it on, placing the TV set or the monitor initially to the side, distant, of the Timex FDD 3000 system.

2 – Confirm if it boots, pressing the reset button on Timex FDD 3000.

3 – Make a copy for a new diskette, of any program and keep the original in a safe place.

4 – Using the copy diskette, place the monitor or the TV set now on the FDD 3000 system, seeking the most favorable position that it doesn’t provoke interferences, that is, the FDD 3000 system boots in a normal way. Notice that this situation can only be gotten to the end of some attempts.

5 – In case of insucess in this operation, you should never place on the Timex FDD 3000 system, the monitor or TV set. However, it can verify that in most of the cases, elevating the monitor or the TV set in the perpendicular, the interference effect will tend to disappear. The user must choose the best solution.

For any additional knowledge, contact your Timex distribuitor or:

TMX PORTUGAL LTD.
Apartado 2
2826 MONTE DA CAPARICA

TIMEX

CP/M* Version 2.2 for the Timex 3000 F.D.D.

Preliminary distribution version: 86.01.17
Copyright by:

TMX PORTUGAL
APARTADO 2
MONTE DA CAPARICA
PORTUGAL

* – CP/M is a registered trademark of Digital Research

About this manual,

This manual is not intended as a learning or even as a reference guide for CP/M it merely gives you enough information to get you started and it describes some features inherent to the hardware.

If you are an application user may be sufficient, if you are a software writer it most certainly won’t. In any case, the Digital Research CP/M manual or some other appropriate literature, referenced later in this manual, will surely be of invaluable help.

This manual starts by briefly describing the hardware and the software included in your system, then it shows you how to get the system up and how to obtain a copy of your CP/M master disk. The CP/M command structure is then summarized along with its resident commands and the utilities programs resident on your disk.

The initial sections of this manual refer to two slightly different hardware setups:

-One where a terminal is emulated by a TC computer and therefore the software (monitor program) to emulate this terminal is loaded from T.O.S.

-The other possible setup uses a full keyboard (the TIMEX Terminal 3000). In this case, the software is resident in an internal ROM and there is no need to use T.O.S. at all.

A Foreword:

The Control Program for Microcomputers, commonly known as CP/M, was developed by Digital Research Inc. as an operating system for systems based on the 8085 Intel microprocessor.

This operating system has an overall advantage over all other operating systems. It is capable of operating in any hardware environment.

This feature made CP/M one of the most popular operating systems yet and literary thousands of applications have been written to run under CP/M.

CP/M was later adapted to run with the Z80 microprocessor but many of the utilities programs are still prepared to work with the 8085 set of instructions, such is the case of the ASM and the DDT programs with your CP/M diskette.

Due to its popularity and from the feedback it got from users Digital Research Inc. has since released upgraded versions of the CP/M. The version supplied on your disk is VERSION 2.2.


I – THE BASIC SYSTEM

The basic CP/M system consists of hardware, what you can physically perceive, and the software, which is the interface between the machine and you, the user.

Only for users with the TIMEX 3000 Terminal:

THE HARDWARE

This includes a TIMEX FDD 3000 unit that incorporates a controller, two disk drives, a console (in this case a dedicated keyboard, the TIMEX Terminal 3000), a Visual Display Unit, and a diskette that contains the basic software to get your system going. Possibly a printer is also included in your package.

THE SOFTWARE

The CP/M master disk, which besides the CP/M operating system has the following standard CP/M utility programs:

– ASM.COM
– DDT.COM
– STAT.COM
– PIP.COM
– MOVCPM.COM
– ED.COM
– COPY.COM
– FORMAT.COM
– CONFIGUR.COM

Only for users with a TC computer as a console:

THE HARDWARE

Again this includes a TIMEX FDD 3000 unit with 64k RAM, a Visual Display unit, and possibly a printer but here the console is emulated by a TC computer.

So if you are already familiar with T.O.S. you should bear in mind that CP/M runs in a different way. All the actual processing and hence the ‘heart’ of the system lies in your F.D.D. controller. The TC computer function is that of a terminal. In other words, all it does is read the keyboard, send the characters to the CP/M and receive them from CP/M and print them on the screen.

Since the TC computer keyboard has less keys than the standard CP/M terminal it was necessary to simulate these keys through a combination of keys. Here is the table of equivalences:

CONTROL   – CAPS SHIFT + SYMBOL SHIFT
DELETE     – CAPS SHIFT + 0
BACKSPACE – CAPS SHIFT + 4
ESCAPE    – CAPS SHIFT + SPACE
TAB       – CAPS SHIFT + 1
CAPS LOCK – CAPS SHIFT + 2

THE SOFTWARE

For users using a TC computer as a console, side A of the diskette contains a monitor program, that is loaded through T.O.S., that emulates a terminal. You do not have to specify which computer you are using as a console. That is because the start program will automatically select the appropriate monitor for your computer be it a TC 2068, TC 2048, or even a ZX Spectrum.

Side B of your disk has the CP/M operating system and all the utility programs refered above for the TIMEX Terminal 3000 users.

IMPORTANT NOTE:

Before you lurch forward and start typing away commands you are well advised to follow the step-by-step approach, described in the next section, and before all else got a backup of the master disk.

STEP BY STEP
II – Bringing up CP/M


IIa – Only for users with TIMEX Terminal 3000:

To install CP/M, in this case, is very simple.

1 – Do not insert any diskettes in the drives at this point!!

2 – Connect the TIMEX FDD 3000 to the TIMEX Terminal 3000 using the curly cable on the front right-hand side of the controller.

3 – Then connect the coaxial cable coming from your monitor to the video input socket (labeled ‘MONITOR’) located at the rear of the controller.

4 – If you own an RS232C printer, such as the TIMEX 2080, you can connect it to the RS232 input labeled ‘CH_A’ at the rear of the controller.

5 – Now power up all the peripherals (i.e. printer, monitor, and any others you wish to use), and lastly power up the controller.

Do not attempt to type in any commands. Carry on reading from section III -‘Booting CP/M’.

IIb – Only for users using a TC computer as a console:

Installing CP/M in the Timex Floppy Disk Drive is very simple as long as you always carry out the following procedure in the correct order.

1 – Before you power up connect the FDD interface to your TC computer. Do not insert any diskettes at this stage!!

2 – Connect the curly cable from the front right-hand side of the TIMEX FDD 3000 to the the FDD interface.

3 – If you own a monitor connect its coaxial cable to the video output of your TC computer, if you don’t then connect your TV to the TV output as shown in the computer manual.

4 – If you own a RS 232_C printer, such as the TIMEX 2080, you can connect it to the RS232C input, labeled ‘CH_A’, at the rear of the controller.

5 – Now switch on the peripherals and lastly turn on the Floppy power supply and the computer.

6 – Put the diskette with the monitor program in drive A and press the controller reset button.

7 – Press the interface reset button.

A few seconds after, the following message will appear on the screen:

*** MONITOR EMULATOR for the TC 2068 Version P1.0 ***

** Copyright by TMX PORTUGAL **

Please put the CP/M diskette in drive A
Then press the controller reset button

The monitor program has now been loaded into your TC computer. Do not press any keys !! and read on.

III – Booting CP/M

Now all that you need to do is to insert the CP/M diskette in drive A and then press the controller reset button you will then see the following logo on the screen:.

CP/M Version 2.2 Copyright by
DIGITAL RESEARCH, Inc.

Cbios Version A1.0 copyright by TMX PORTUGAL

A>


Where the A> prompt means that CP/M is ready, waiting for your command. For example, type “DIR” followed by ENTER:

A>DIR

A: FORMAT   COM : COPY     COM : PIP       COM : ED       COM
A: STAT     COM : ASH      COM : ZSID      COM : DDT      COM
A: DSKFIX   COM : RMAC     COM : LINK      COM : MOVCPM   COM
A: CONFIGUR COM


The screen will display the names of all the programs on your CP/M master disk.

This command and the rest of the CP/M commands will be explained later.

But first, you should…

MAKE A COPY OF YOUR CP/M MASTER DISK!!!

and save the original in a safe, dry, non-magnetic place. In fact, it is a good idea to make more than one copy.

Copying a CP/M disk is a two-step process. The first step is to use the FORMAT program to prepare a blank disk to accept data. Next, you use the COPY program to copy the master disk onto the newly formatted backup disk.

IV – Formatting a backup disk

When CP/M is up and running and you still have the CP/M Master Disk in drive A:, type after the A> prompt:

A>FORMAT

and press key ENTER. The CP/M will respond by displaying:

*** TC COMPUTERS CP/M DISK FORMAT version 1.0 ***
    Copyright by TMX PORTUGAL

ATTENTION: This program erases and formats
           the diskettes in the specified drive

Select drive (A: B: C: D: ) or Q to return to CP/M


Type ‘B’. The FORMAT program will then ask you to put the diskette to be formatted into the specified drive and to press ENTER.

A new message appears;

Format: (Y/N)?

Once you have made sure that you have a blank diskette inserted in the correct drive then answer affirmatively by typing in ‘Y’.

When the FORMAT operation is completed, the disk will stop, and the message:

Format completed
Another format (Y/N)?


If you want to format another diskette type ‘Y’ or type ‘N’ if you do not.

V – Copying the master disk

Now you are ready to copy your CP/M Master disk with the COPY program.

Type:

A>COPY

After a few seconds, the CP/M will display:

*** TC COMPUTERS CP/M COPY Version 1.0 ***
    Copyright by TMX PORTUGAL

Copy utility can be used to transfer.

TYPE:
      S)YS – To copy system [track 0 to 1]
      A)LL – To copy whole disk [track 0 to 39]


Type A to indicate that you want to copy the whole disk. The system answers:

Copy all as been selected

Source drive —– >


type A to copy from drive A:

Destinaton drive — >
type B to copy to drive B:, the program then answers:

Press ENTER to copy or Q to reboot CP/M

Now you must press ENTER to start copying the master diskette. When the copy is completed the COPY program displays the following message;

Copy completed
bytes total disk space 160k
bytes used by system 12k
bytes available on disk 148k

Another copy (Y/N)?

If you don’t need another copy type ‘N’. Since the disk in drive B: is an exact copy of the CP/M master disk remove it from drive B: and insert it into drive A:. Check the CP/M booting process according to the previous section. If the backup works successfully, you will not need to re-use the CP/M master disk again.

If for some reason you use only one drive then the ‘COPY’ program will instruct you as to when to change diskettes, for further details see the ‘UTILITIES’ section below.

You should now store it in a safe, dry, nonmagnetic place.

WARNING

Do not switch the controller off or on with the diskettes inserted. If you do transient peaks may cause irreparable loss of data on your disk.

VI – At the keyboard

Now that you got the CP/M master diskette safe and your newly copied diskette in drive A: you needn’t reload the monitor program again but type in ^C to let CP/M know you have changed diskettes (see below).

You can now start to type in a few commands. However, if you are using a TC computer as a console bear in mind that the keys have different functions to those described on the keyboard.

Henceforth the control key is abbreviated by the ‘^’ symbol.

For users with a TC computer as a console, a control function is typed by holding both shift keys down and simultaneously pressing the key you desire.

For users with a TIMEX 3000 terminal, the control functions are achieved by holding the control key down and simultaneously pressing the key you desire.

Here is a list of CP/M line editing functions that will help you to edit commands:

BACKSPACE – Backspaces the cursor in one character position. Erases the character behind the cursor. (Also invoked with ^H)

DEL       – Erases the last character from the internal buffer and echoes it to the console (The display may look somewhat confusing).

^X        – Backspaces to the beginning of the line, deleting the line.

^R        – Retypes the current line.

^U        – Deletes the current, prints a ‘#’ and moves to a new line.

^J        – Terminates input, Same as ENTER.

^E        – Terminates a line. The cursor moves on to the beginning of the next line, but the line is not interpreted until ENTER is pressed.

Output control :

There are two control functions that CP/M uses to control output to the printer and the screen.

^S – Suspends character output and program execution until any key is pressed.

^P – Echoes character output to the printer as well as to the screen. Character “echo” to the printer continues in effect until ^P is typed once more.

Changing diskettes, ‘Warm boot” and ^C.

There is one more control character that CP/M recognizes:

^C – Every time this character is typed in CP/M responds with a “Warm boot” causing CP/M to be loaded from disk to memory.

When using T.O.S. you are allowed to change diskettes indiscriminately. However, this is not possible with CP/M since certain diskette directory information is kept in memory at all times. So when you change diskettes this information must be reread onto memory.

Therefore you should make sure that you type in ^C AFTER you change the diskette. If you don’t and you attempt to write on a changed diskette CP/M will answer:

BDOS ERR ON X: DISK R/O

Where X: is a disk drive (A: to D:) and ‘R/0’ means read only. In this came type ENTER and a warm boot will be executed. No error should occur if merely attempting to read a changed diskette.

VII – The CP/M Command struture


After you have “Booted” CP/M or after a warm boot you will see the “A>” prompt, this means that CP/M is ready for your next command. The letter “A” means drive A: is the current logged-in drive. If no drive name is specified CP/M looks for transient commands and filenames in the currently logged-in drive.

To change the currently logged-in drive you type the letter corresponding to the drive you wish to select followed by a colon. Suppose you wanted to log in drive B: then you would type at the prompt:

B:   Followed by enter.

The system will answer:

B>   Showing that drive B: is now selected.

To get back to drive A: you repeat the above sequence by typing in ‘A:’ plus ENTER instead of ‘B:’

You mustn’t try this example if you do not have drive B: connected to the system or CP/M will “hang up” on you and you will have to press the reset button on the controller.

By now you have probably noticed that CP/M accepts commands in lower or upper case and furthermore it “folds” the characters you type in i.e. it converts lower case characters to upper case.

So, if you type in, say, ‘hello’ in lower case CP/M answers:

HELLO?

As you see it “folded” the characters you typed and added a question mark meaning, it does not know any command called ‘HELLO’,

Actually, there are very few commands that CP/M does recognize initially. These are called the resident or built-in commands. DIR is an example of a resident command.

However, CP/M is structured so that certain disk files can be executed as commands, these are called transient commands.

Examples of these are the files on your disk STAT.COM, DDT.COM and in fact, any file on the currently logged disk that has filetype ‘COM’ CP/M will try to execute when you type in its name.

When you duplicated your CP/M master disk, you typed in ‘FORMAT’ and ‘COPY’ these are not resident commands they are disk files with the extension ‘COM’ and are equivalent to commands. Note that you only type in the file name but not its extension.

This structure allows you to write in assembler your own commands which CP/M will execute as soon as you type in its name.

If you know assembler and you want to try to start to develop your own commands you should consult one of the recommended books on how to use the text editor and the assembler.

VIII – File name specifications and wildcards

Files are specified by typing their names (up to 8 characters) optionally followed by a period ‘.’ and the file type or extension up to 3 characters. It is also possible to indicate the drive in which the file is located. If no drive is specified the currently logged drive is assumed.

So if you’d wish to refer to a file in drive B: named ‘EXAMPLE.TST’ and your currently logged-in drive was A: you would type in, after ‘A>’:

DIR B:EXAMPLE.TST 

However, through the use a ‘WILDCARDS’, you can refer to one or more files with a single specification. The two wildcard characters that CP/M uses are the question mark ‘?’ and the asterisk ‘*’.

The question mark replaces any single character and the asterisk replaces any string of characters when searching the directory for file name match. T.O.S. users will be familiar with this concept.

So, say, you wanted to see all the files located in drive B: that had the extension ‘.COM’ and that your currently logged drive was A:, then you would type:

DIR B:????????.COM

or

DIR B:*.COM

As another example if you wanted to see all the files on the currently logged drive whose name started with the letter ‘C’ you would type:

DIR C*.*

Note that ‘*.*’ is equivalent to ????????.??? and to no argument at all. Did you notice the small difference from the T.O.S. templates?

IX – The Resident Commands

If you have been following our step-by-step method you have already used quite a few of the resident commands. Here is their list and a brief description of their uses.

The DIR command.

This command has already been described to some extent in the above section. So we will only point out that if no files match the file specification that you’ve entered CP/M will answer:

NO FILE

Also, note that this command gives no information about file size or to as how much space you have left on your diskette. For this information, you should use the transient command ‘STAT’. (See below).

The ERA command

The BRA command is used to ERAse files from the disk. You should be particularly careful when you use this command as CP/M does not ask for confirmation of your request. It will not be wise to experiment with this command until you become familiar with the system and have your own test files.

All the wildcards mentioned above are valid with the use of this command. If you type:

ERA *.*

CP/M will ask; ‘ALL (Y/N)?

If you don’t wish to erase all the files on the currently logged drive type: ‘N’

Also if your diskette is hardware write protected and you attempt to erase a file, or in fact any disk write operation, the system will execute a warm boot and display the following error message:

Diskette hardware protected

The REN command.

This command is used to REName files. The syntax of the command is :

REN newname=oldname

You can precede the first file specification with the drive name. For example, if you wanted to change the name of a file ‘TEMP.OLD’ in drive B: and your currently logged drive was A: then you would enter:

REN B:temp.new=temp.old

Use of wildcards is not allowed with this command.
The TYPE command.

This command is used to display the contents of text files on the screen. You can use ^P to “echo” character output to the printer. A file specification must be included and wildcards are not allowed.

This command is intended to be used with ASCII text files only. If use it with code files such as the files with ‘COM’, as the extension, the result will be very messy indeed.

The SAVE command.

Perhaps the most complex of the resident commands. It will not be of any use to you unless you are a machine code programmer.

The SAVE command places 256-byte blocks, otherwise referred to as memory pages, onto the disk from the T.P.A, (Temporary Program Area ). This ‘area’ starts at 100H.

The syntax of the command is:

SAVE n filename

The number of memory pages you wish to SAVE is denoted by the number ‘n’

VII – CP/M UTILITIES

As mentioned previously all the files on the CP/M master disk that have the extension ‘.COM’ function as commands. To invoke them you type out their filename (without the extension) sometimes follow it with one or more arguments and finally ENTER.

The utilities supplied on your disk fall into two categories most are standard CP/M and you should consult Digital’s Research manual or some other relevant literature on the details of their usage. Below is a brief description of their functions.

STAT – The stat command is a simple way to display available space. It can also be used to display and modify device assignments.

PIP  – Stands for ‘Peripheral Interchange Program’. As the name implies it transfers files between two devices.

ED   – This allows you to create, edit and alter text files.

ASM  – An 8080 assembler. The Z80 accepts all the 8080 instructions (though the converse is not true) but they do have different mnemonics.

DDT  – Dynamic Debug Tool. A disassembler with trace facilities. Once more it works with 8080 instructions and does not recognize instructions exclusive to the Z80.

The other 3 utility programs are hardware-dependent and hence not CP/M standard. These are described in some detail below:

FORMAT – As the name implies it is used to format new diskettes. It will irreversibly erase any information that was contained on the disk.

Since this utility was already described above (‘How to make a backup’) it will only be pointed out that it is a good idea to ensure that your master disk is hardware write protected so that you will not accidentally erase the information it contains.

Also, you should bear in mind that the newly formatted diskette does not have the operating system so if you just formatted a diskette in drive A: you will need to introduce a system diskette before you can proceed.

COPY – Again this has been described above. If select ALL the whole diskette (files and system tracks) will be copied. If you select SYS only the system tracks will be copied.

If for some reason you wish to use only one drive you should select A: for both source and destination drives then press and the program will ask you to introduce the master and the slave diskettes alternatively.

CONFIGUR – This utility permits you to change the RS232C protocol characteristics. You can change them temporarily so if you reboot the system (cold start) the system you revert to its previous characteristics (typing in ^C i.e. warm boot will have no effect) or you can save them on the disk. In this case, every time you boot from that disk you set the serial channels to the protocol you saved onto that disk.

To use this utility type in its name then move the cursor, by using the arrow keys, to the field whose value you wish to alter, type ‘A’ to indicate that you wish to Alter it. Then type in the new value followed by enter. After you have altered all the parameters type in ‘S’ if you wish to save the changes on disk or ‘E’ if you only want to keep them temporarly.

UPDATE TO USER’S GUIDE to CP/M

Due to some improvements on the BIOS (Basic Input Output System) of the distribution version of CP/M 2.2 some parts of the manual released on the 17th of January 1986 are no longer consistent with the software on your diskette.

Some more utility programs have been added to this distribution diskette. The BIOS listing is also provided in a text file so as to allow the user to customize CP/M to his use.

The monitor program on side A of your diskette has also been updated and the message it now displays is:

Monitor Emulator for the TC2068/TC2048

Copyright by TMX PORTUGAL

Version A1.1 11, April 1986

Please put the CP/M diskette in drive A:
and press the controller reset button

Of course, this only applies to users emulating a terminal with a TC computer.

The files now being supplied on your distribution disk are:

A: MOVCPM   COM : PIP      COM : SUBMIT    COM : XSUB     COM
A: ED       COM : ASM      COM : DDT       COM : LOAD     COM
A: STAT     COM : SYSGEN   COM : DUMP      COM : BACKUP   COM
A: BIOS     ASM : FORMAT   COM : CBIOS     MAC : CONFIGUR COM

Refer to Digital’s Research ‘Command Summary’ for a description of these utilities.

Upon ‘booting’ CP/M the screen should now display the following message:

CP/M Version 2.2
Copyright by DIGITAL RESEARCH, Inc

Cbios Version A1.1 Copyright by TMX PORTUGAL

3, June 1986

The ‘COPY’ utility has been replaced by a ‘BACKUP’ utility that duplicates a diskette, using any two or even just one drive. If you only want to copy the operating system use the ‘SYSGEN’ utility. To make a backup of your master disk use the following procedure:

After formatting your new diskette using the procedure described in section IV of your USER’S GUIDE to CP/M.

Type:

A>BACKUP

After a few seconds, the CP/M will display:

** TC COMPUTERS CP/M BACKUP Version 1.0 **
          Copyright by TMX PORTUGAL

       Backup utility copy and verify the whole disk

Source drive          >

Type A to indicate that the source diskette will be placed in drive A:

The system will answer:

Destination drive    >

This time type B to copy to drive B:, and the program answers:

Press enter to execute or Q
to reboot CP/M

Upon pressing enter the program will start to copy the diskette in drive A: to the diskette in drive B: and checking every track it writes. When the copy is finished the program prompts you with the following message:

Backup completed

Another backup [Y/N] ?

Unless you want another backup type ‘N’. The diskette in drive B: is an exact copy of the diskette in drive A:. Insert it in drive A: and repeat the booting procedure. If it works you will not need to use the CP/M distribution diskette again.

You should now store it in a safe, dry, nonmagnetic place.

If you wish you can use only one drive for the backup operation, the program will instruct you as to when you need to change diskettes.

TMX PORTUGAL, LDA.
APARTADO 2
2825 MONTE DA CAPARICA
TEL. 2952069