Purpose: Read status word Call address: $FFB7 (hex) 65463 (decimal) Communication registers: A Preparatory routines: None Error returns: None Stack requirements: 2 Registers affected: A |
Description:
This routine returns the current status of the I/O devices in the accumulator. The routine is usually called after new communication to an I/O device. The routine gives you information about device status, or errors that have occurred during the I/O operation.
The bits returned in the accumulator contain the following information: (see table below)
ST BIT POSITION |
ST NUMERIC VALUE |
CASSETTE READ |
SERIAL R/W | TAPE VERIFY + LOAD |
---|---|---|---|---|
0 | 1 | Time out write | ||
1 | 2 | Time out read | ||
2 | 4 | Short block | Short block | |
3 | 8 | Long block | Long block | |
4 | 16 | Unrecoverable read error | Any mismatch | |
5 | 32 | Checksum error | Checksum error | |
6 | 64 | End of file | EOI line | |
7 | 128 | End of tape | Device not present | End of tape |
How to Use:
EXAMPLE:
;CHECK FOR END OF FILE DURING READ JSR READST AND #64 ;CHECK EOF BIT (EOF=END OF FILE) BNE EOF ;BRANCH ON EOF