Splitting the Atom back exit forward page 23
FBEE to FC2A A subroutine to get a byte from tape. This routine is indirected by (214), normally called by JSR OSBGET (FFD4), and operates at 300 baud. The routine reads individual bytes from the tape and is called by the LOAD routines, and by BGET, SGET, etc. The byte fetched is passed back in the accumulator, the X and Y registers are preserved. The accumulator value is also added to the checksum total in hex DC.
FC38 to FC7B A subroutine used by COS commands to write PLAY, RECORD or REWIND TAPE, then wait for a key to be pressed before returning. Entry at FC38 with C=1 gives "RECORD TAPE", while C=0 gives "PLAY TAPE". Entry at FC40 gives "REWIND TAPE". FC4F - message "PLAY TAPE".
FC7C to FCBC A subroutine to put a byte to tape. This routine is indirected via (216), normally called by JSR OSBPUT (FFD1), and operates at 300 baud. The routine is called by the SAVE and BPUT commands, and passes the value of the accumulator to tape. The X and Y registers are preserved. The accumulator is also added to the checksum total, kept in hex DC.
FC88 - synchronise to 2.4 kHz edge.
FC92 - output a logical 1.
FC9C - output a logical 0.
FCD8 to FCE9 A subroutine used by OSBPUT to synchronise the bits being output to 2.4 kHz reference oscillator. Entry at FCD8 waits for the first occurrence of a high-to-low transition on bit 7 of port C of the PIA (the 2.4 kHz reference). Entry at FCDA with the X register set to a number from 0 to 7F counts that number of 2.4 kHz transitions before returning. This can be used for timing since X=1 gives about 400 microseconds, X=2 gives about 800 microseconds, etc.
FCEA to FE51 A collection of subroutines associated with the print channel OSWRCH, including execution of the control codes 0 through 1F. Useful ones are given below.

FD0B - <CTRL> F (screen off).
FD11 - <CTRL> U (screen on).
FD1A - <CTRL> G (bell).
FD1C - short bell
FD40 - move cursor to start of line without deletion.
FD44 - invert character at current cursor position.
FD50 - delete a character.
FD5C - backspace.
FD62 - linefeed.
FD65 - Invert character under the cursor. If the screen has previously been turned off (i.e. ?E0<0) then a CLEAR SCREEN is executed.
FD69 - <CTRL> L (Clear, Home Up Left).
FD7D - <CTRL> UP-ARROW (Home Up Left). - pencilled correction: FD6D
FD87 - cursor up.
FD8D - <CTRL> N (Page mode On)
FD92 - <CTRL> O (Page mode Off)

back exit forward