Wednesday, March 19, 2014

The Briel Altair 8800: External Serial Port/Console

A new feature included in the most recent build of Altair 8800 systems is an external serial port. It allows the console to be a serial port rather than the on-board VGA or composite video display and PS/2 keyboard.

It consists of a small card which plugs into the expansion connector. The board can piggyback on top of the RAM card if you have one installed in the expansion connector (you don't need the RAM disk board to use it). The board has a small ribbon cable and 9-pin serial port connector which can be installed on the rear panel in a cutout which is provided in the most recent build of systems. (If you want to buy a serial board and back panel for an existing Altair 8800, contact Vince Briel about pricing and availability.)

The serial board circuitry only consists of a MAX232 level shifter and connectors. The actual serial port is on the main 8800 motherboard. The serial board just converts it to and from RS-232 voltage levels and routes it out to the rear connector.

To use it, connect the serial port to a serial terminal or computer serial port running terminal emulation software (I use the Minicom program on Linux). You will typically need a "null modem" serial cable to do this. You can use a USB to serial adaptor if your computer does not have a serial port. The serial port defaults to 9600 bps with no hardware flow control. You can change the port speed using F7 (from the PS/2 keyboard). The setting is persistent.

You need to be running the latest (version 5.2) firmware on the Altair 8800 to support a serial console.

The serial port is the same one that is used between the Propeller and ATMEL AVR that emulates the 8080. If a PS/2 keyboard is not present, the Propeller chip "stays out of the way" and the external serial port can be used as a console.

On boot up you should see on the video display:

Keyboard offline    (this means the PS/2 keyboard is not present)
Serial port off     (this means the internal serial is off and will use an external console)

With a PS/2 keyboard attached you can also use F7 to turn the on board serial on or off. If a keyboard plugged in you will still see output to the serial port but the system will not use it for input. One implication of this is that you cannot use the TUTILS to transfer files between the SD card and RAM disk when using the serial console.

On powerup the ATMEL AVR chip tries to contact the Propeller chip. If a terminal is connected at that time it seems to confuse the system and cause it to flash an error code on the INP LED. The procedure that worked for me was the following steps:

  1. Unplug PS/2 keyboard.
  2. Power up the Altair.
  3. Connect serial port to the PC.

The main purpose of this is to run the system, such as CP/M, from an external terminal or computer. If the terminal emulates the same terminal type as your software is configured, you can run applications like WordStar or SuperCalc.

You can transfer files between your PC and computer if your terminal emulator program supports file sending and receiving. It might also be interesting to try running a file transfer program like KERMIT or XMODEM to transfer files as was done in the old days of CP/M and BBS systems.

No comments: