![]() |
Routines |
| Prev: 171C | Up: Map | Next: 1736 |
|
This subroutine returns in the BC register pair the stream data for a given stream.
|
||||||||||
| STR_DATA | 171E | CALL FIND_INT1 | The given stream number is taken off the calculator stack. | |||||||
| 1721 | CP $10 | Give an error if the stream number is greater than +0F. | ||||||||
| 1723 | JR C,STR_DATA1 | |||||||||
|
This entry point is used by the routines at OPEN and CAT_ETC.
Report O - Invalid stream.
|
||||||||||
| REPORT_O_2 | 1725 | RST $08 | Call the error handling routine. | |||||||
| 1726 | DEFB $17 | |||||||||
|
Continue with valid stream numbers.
|
||||||||||
| STR_DATA1 | 1727 | ADD A,$03 | Range now +03 to +12. | |||||||
| 1729 | RLCA | And now +06 to +24. | ||||||||
| 172A | LD HL,$5C10 | The base address of the stream data area. | ||||||||
| 172D | LD C,A | Move the stream code to the BC register pair. | ||||||||
| 172E | LD B,$00 | |||||||||
| 1730 | ADD HL,BC | Index into the data area and fetch the the two data bytes into the BC register pair. | ||||||||
| 1731 | LD C,(HL) | |||||||||
| 1732 | INC HL | |||||||||
| 1733 | LD B,(HL) | |||||||||
| 1734 | DEC HL | Make the pointer address the first of the data bytes before returning. | ||||||||
| 1735 | RET | |||||||||
| Prev: 171C | Up: Map | Next: 1736 |