System information

Table 6-4. (continued)
Value Meaning
PUNCH field (bits 4,5)
0 PUNCH is the teletype device (TTY:)
1 PUNCH is the high speed punch device (PTP:)
2 user-defined punch #1 (UPI:)
3 user-defined punch #2 (UP2:)
LIST field (bits 6,7)
0 LIST is the teletype device (TTY:)
1 LIST is the CRT device (CRT:)
2 LIST is the line printer device (LPT:)
3 user-defined list device (UL1:)
The implementation of the IOBYTE is optional and effects only the organization of the CBIOS.
No CP/M systems use the IOBYTE (although they tolerate the existence of the IOBYTE at
location 0003H) except for PIP, which allows access to the physical devices, and STAT, which
allows logical-physical assignments to be made or displayed. For more information see Section
1. In any case the IOBYTE implementation should be omitted until the basic CBIOS is fully
implemented and tested; then you should add the IOBYTE to increase the facilities.
Disk I/O is always performed through a sequence of calls on the various disk access subroutines
that set up the disk number to access, the track and sector on a particular disk, and the Direct
Memory Access (DMA) address involved in the I/O operation. After all these parameters have
been set up, a call is made to the READ or WRITE function to perform the actual I/O operation.
There is often a single call to SELDSK to select a disk drive, followed by a number of read or
write operations to the selected disk before selecting another drive for subsequent operations.
Similarly, there might be a single call to set the DMA address, followed by several calls that read
or write from the selected DMA address before the DMA address is changed. The track and
sector subroutines are always called before the READ or WRITE operations are performed.
6.6 BIOS Entry Points CP/M Operating System Manual
6-19