CP/M 2 Input/Output mapping
Under CP/M 2, input and output device selection are performed by the
BIOS. Some BIOSes may implement a feature called the
IOBYTE which allows the user to change which device the screen, printer etc.
output go to.
The IOBYTE lives at address 3 (in the Zero Page) and should be changed
using BDOS calls 7 and 8 (get/set IOBYTE). The value is bitmapped:
Bits Bits 6,7 Bits 4,5 Bits 2,3 Bits 0,1
Device LIST PUNCH READER CONSOLE
Value
00 TTY: TTY: TTY: TTY:
01 CRT: PTP: PTR: CRT:
10 LPT: UP1: UR1: BAT:
11 UL1: UP2: UR2: UC1:
- BAT = batch mode. Use the current Reader for console input, and
the current List (printer) device as the console output.
- CRT = Standard console (keyboard and terminal screen).
- LPT = Standard line printer.
- PTP = Standard Paper Tape Punch.
- PTR = Standard Paper Tape Reader.
- TTY = Teletype device, eg a serial port.
- UC1 = User defined (ie implementation dependent) console device.
- UL1 = User defined (ie implementation dependent) printer device.
- UPn = User defined (ie implementation dependent) output device.
- URn = User defined (ie implementation dependent) input device.