cp/m

Kermit Setup and CP/M

  • by

Don’t expect fancy setup utilities in CP/M. This is the process to create a machine compatible version of Kermit (terminal emulator software). MLOAD.COM takes the main program file in HEX and modifies it using the machine specific HEX file. The result is an executable file (COM) of the desired program.

Although there were text-based DOS programs around even in the 90s, their interface was usually far more user friendly with all the setup utilities, pull-down menus and other cool features. CP/M and early DOS programs were a perfect example of how simple and crude the software from the early- and mid- 80s was.

Kermit also reminds me a big advantage of the “PC compatibility”. In theory, the CP/M software was universal. However, different floppy formats, different pinouts on serial/parallel ports and different screen handling commands made life much tougher for both software developers and users.

CP/M running on Sinclair ZX Spectrum +3

  • by

Unlike previous ZX Spectrum computers, +3 is equipped with an internal 3-inch floppy drive (compatible with Amstrad computers) and it is fully capable of running CP/M. The system runs snappier and more responsive than Commodore 128 in the CP/M mode but there are two caveats. Multiple keys are missing in the crippled keyboard layout and these are replaced with cumbersome keyboard shortcuts. This can be especially annoying when working with spreadsheets.

Another issue comes from the fact that the video circuit works in a resolution of 256×192 so it cannot handle the standard 80×24 text-mode typical for CP/M machines. The computer normally displays only 32 characters per row which would not be enough for any CP/M program. The +3 version of CP/M therefore uses a reduced font resolution with just 5×8 pixels for each character (including space between characters). Such font allows to display 51×24 characters and that’s the default text mode when +3 is booted in CP/M.

Of course not all programs work correctly with the reduced screen size so there is a program called SET24x80.COM. It provides a virtual 80×24 screen and you can quickly switch between displaying the first 51 columns or last 51 columns of the screen using a keystroke.

Disk Utility Program for Osborne Executive

  • by

CP/M doesn’t care about disk formats and each computer needs its own formatting utility. Therefore, the disks are usually not compatible between different CP/M computers (even if the floppy drive hardware is the same).

The issue was present on CP/M platform even after PC-compatibles took the lead. The life with DOS/PC-compatible computers was somehow much easier.

CP/M and Input/Output Redirection

  • by

It is nice about CP/M how easily the input from a keyboard and output to a CRT can be redirected to another computer over a serial port using a single command.

SAPI-1 (1983)

  • by

On the left side, you can see SAPI-1 – a professional computer that was made in the Czechoslovak Socialist Republic and was used mainly for industrial applications. Its architecture was modular and not very far from S100-bus computers. One of the cards contained CPU (Zilog Z80 in this case) while other cards contained RAM, ROM and communication interfaces. It was able to run CP/M which was loaded from 8-inch floppy drives.

This photo is from the last Bytefest show a few weeks ago. We were copying files over a null-modem cable from Amstrad CPC6128. File transfers between different CP/M computers were not an easy task back in the 80s. Each computer had different floppy drives or at least a different logical format of the disks. This was very similar to terminal incompatibilities where every full-screen program had to support tens of terminals in order to be compatible with most CP/M computers. If your computer was not on the list, you ended up with incorrect layout of the text on the screen.

Because of these incompatibilities, serial and modem connections were the best ways to transfer files back then and they are even today. Don’t expect something “plug and play”. Although I could set the transfer speed in software on Amstrad CPC6128, the owner of the SAPI-1 had to remove the communication card and change the serial link configuration using a soldering gun. Another issue was to find programs with compatible transfer protocols but that’s a different story. Finally, after less than an hour, we were able to copy all our precious files.

Amstrad (Schneider) CPC 6128

  • by

Although Amstrad CPC is not the preferred choice among vintage computer fans, it’s definitely a very interesting series of 8-bit computers and was sold in millions of units. This model combines 80-column display (screen resolution of 640×200), integrated 3-inch disk drive (each diskette can hold 360kB of data), AY sound and surprisingly good keyboard.

 This was one of the cheapest computers that could run CP/M, the operating system with many professional programs available. Although Wikipedia says that there were a lot of games on CPC computers, I saw only people using this machine for actual work. This particular machine was used in the late 80s by a scientist in a geophysical institute for simulations and word processing. He sold the machine with an 5.25-inch external drive (made by Robotron and modified to work with CPC), an RS232c interface and a box full of disks containing development tools, his own Pascal programs and a customized version of WordStar (that allowed users to write and read Czech characters).

 The keyboard is better that those on 8-bit Atari and Commodore computers and the computer gives more professional overall feeling. I like how CP/M has been integrated in the system. You can easily switch between BASIC (AMSDOS) and CP/M environments by using |CPM and AMSDOS commands and both use the same way to store files on disks.

 I know that it is possible to run CP/M also on Spectrum +3 and Commodore 128. However, the former supports only 40-column display and the latter is significantly slower due to hardware design limits. This was a better choice for those who wanted to use CP/M on a home computer back then.

Osborne Executive (1983)

  • by

Portable devices of early 80s were intended only for strong people because carrying a 12-kg computer was definitely not for everyone. This “luggable” was equipped with 4-MHz Zilog Z80, ~120kB of RAM and two 5.25” floppy disk drives which made it a standard CP/M machine. It was cleverly designed with a sturdy case where all ports and vents were covered (this was not typical for its competitors). There were also cool features like an easy way to load a different character set and a fast video circuit with dedicated video RAM.

Although Osborne Executive can display 80 characters per row the CRT screen is so small that longer work is not very comfortable. I don’t like the screen much not only because of letters with size of few millimeters but also because I see heavy flickering. This is definitely not a long persistence screen. Fortunately, you can attach an external screen using (monochrome) composite video output which can work with both standards (software selectable) – PAL 50Hz and NTSC 60Hz (NTSC looks better because of higher refresh rate).

The keyboard provides good tactile feedback and with an external screen attached you have no-compromise CP/M compatible computer. I don’t see this very portable but there were different standards back then. It was nice to have a way to transport a computer in a single package.

Infoworld resources: Osborne Executive ad, “When Your Micro Becomes an Orphan”