:JMP/JSR only
C000 $C000 Jump to cold start.
C003 $C003 Jump to warm start.
C006 $C006 Addresses of subroutines to handle each token (-1)
C0EA $C0EA BASIC tokens. The last character of each has its top bit set.
C3C6 $C3C6 Search the stack until a ‘FOR’ entry is found.
C3F4 $C3F4 A block move.
C437 $C437 Check stack for free space.
C444 $C444 Check an address against the top of memory
C471 $C471 Warm start entry (does not clear program).
C47C $C47C Input and process a line.
C55F $C55F Recreate links between each line.
C58C $C58C Input a line.
C5E8 $C5E8 Wait for a keypress and return the ASCII code.
C5FA $C5FA Translate a line into tokens.
C6B9 $C6B9 Find the address of a given line.
C6EE $C6EE The NEW command.
C708 $C708 The RUN command.
C70D $C70D The CLEAR command.
C726 $C726 Reset the stack.
C748 $C748 The LIST command.
C7FD $C7FD The LLIST command.
C809 $C809 The LPRINT command.
C855 $C855 The FOR command.
C8C1 $C8C1 Process a BASIC statement.
C952 $C952 The RESTORE command.
CCB0 $CCB0 Print ‘READY’.
CF17 $CF17 The formula evaluation subroutine.
D499 $D499 Integer to floating point.
D5AB $D5AB Allocate string space.
D5F4 $D5F4 Set up a new string.
D650 $D650 Garbage collection subroutine.
D8AC $D8AC Calculate the length of a string and clear temporary strings.
D92C $D92C Floating point to integer.
DB04 $DB04 Add 0.5 to accumulator.
DB0B $DB0B Subtract accumulator from memory.
DB22 $DB22 Add accumulator to memory.
DCAF $DCAF Calculate LOG
DCED $DCED Multiply the accumulator by memory.
DD51 $DD51 Move memory to the second accumulator.
DDA7 $DDA7 Multiply the accumulator by 10.
DDC3 $DDC3 Divide the accumulator by 10.
DDE4 $DDE4 Divide memory by the accumulator.
DDE9 $DDE9 Divide the second accumulator by the main accumulator.
DE77 $DE77 Move memory to the main accumulator.
DEAD $DEAD Move the accumulator to memory.
DED5 $DED5 Move the second accumulator to the main accumulator.
DEE5 $DEE5 Move the main accumulator to the second accumulator.
DF21 $DF21 Calculate SGN.
DF49 $DF49 Calculate ABS.
DFBD $DFBD Calculate INT.
DFE7 $DFE7 Input a floating-point number from a string of ASCII characters.
E0D5 $E0D5 Output a floating-point number into a string of ASCII characters.
E22E $E22E Calculate the square root.
E235 $E235 Raise the second accumulator to the power of a number in memory.
E271 $E271 Negate the main accumulator.
E34F $E34F Calculate RND.
E38B $E38B Calculate COS.
E392 $E392 Calculate SIN.
E3DB $E3DB Calculate TAN.
E43F $E43F Calculate ATN.
E56C $E56C Test for the end of a load from tape.
E5F5 $E5F5 Clear the top line.
E5EA $E5EA Print message at far left of top line.
E65E $E65E Output one byte to tape.
E6C9 $E6C9 Read byte from tape.
E735 $E735 Latch onto tape header.
E75A $E75A Output a tape header.
E76A $E76A Change the 6522 ready for cassette I/0.
E790 $E790 Compare filenames.
E93D $E93D Reset the 6522 after the completion of tape I/0.
EB78 $EB78 Read a key without waiting.
EC21 $EC21 Switch to text mode.
ECC3 $ECC3 Switch to high-resolution mode.
EE22 $EE22 Entry for interrupt handler.
EDE0 $EDE0 Start clock.
EE1A $EE1A Stop clock.
EE22 $EE22 Poll timers.
EE34 $EE34 Service timers.
EE8C $EE8C Clear timers.
EE9D $EE9D Read timer.
EEAB $EEAB Set timer.
EEC9 $EEC9 Wait for a given time.
F0C8 $F0C8 CURSET
F0FD $F0FD CURMOV
F110 $F110 DRAW
F12D $F12D CHAR
F1C8 $F1C8 POINT
F204 $F204 PAPER
F210 $F210 INK
F268 $F268 FILL
F37F $F37F CIRCLE
FA9F $FA9F PING
FAB5 $FAB5 SHOOT
FACB $FACB EXPLODE
FAE1 $FAE1 ZAP
FB40 $FB40 SOUND
FBD0 $FBD0 PLAY
FC18 $FC18 MUSIC
F77C $F77C Output character from X register to screen.
F8B2 $F8B2 Entry point for non-maskable interrupt (NMI)
F865 $F865 Output message to top line at position X.
F523 $F523 Poll keyboard.
F590 $F590 Write to the 8912 chip.
F5C1 $F5C1 Output character in A to the printer.
F8D0 $F8D0 Set up the ASCII character set.
FA86 $FA86 Load up all the 8912 registers.
FB14 $FB14 The high-pitched click.
FB2A $FB2A The low-pitched click.

:ALL
0010 Address of current HIRES position.
0012 Address of start of current line (in TEXT mode).
0014 Used by the 8912 register load subroutine.
0018 Used to point to the start of error messages.
001A Contains a jump to the routine which prints ‘Ready’.
001F Address of last PLOT position.
0021 Contains the DEF USR jump.
0028 The type of data which resulted from formula evaluation; 0 means numeric, #FF means a string.
0029 A flag that indicates whether the last variable used was an integer.
002A A flag which is used in several places.
0033 Various uses, but often used to store a line number that is being located.
0035 The BASIC input buffer. 
0086 Address of last temporary string.
0088 A table of temporary strings.
009A Start of BASIC pointer.
009C Start of variables pointer.
009E Start of arrays pointer.
00A0 End of arrays pointer.
00A2 Pointer to next free string space.
00A6 Highest available memory location available to BASIC.
00A8 Current line number (read-only).
00AA The current line number – saved for error messages.
00AC Address of the start of the current instruction – 1.
00AE Current DATA line number – used only when printing error messy ges.
00B0 The address of the next DATA item – 1.
00B4 The identity of the last variable used.
00D0 The main floating-point accumulator.
00D8 The second accumulator.
00E2 The get-character routine.
00E8 The second part of the get-character routine.
00FA The current random number is stored here as a floating-point number
0204 Used when checking the range of values used in sound and graphics commands.
0208 Contains details of the last ordinary key pressed (but not the ASCII code).
0209 Contains details about the last shift or control key pressed.
020C Caps lock. This contains either #7F or #FF – no other value will work!
0212 Contains the HIRES FB flag to indicate whether to draw, erase, or invert.
0213 The pattern register is stored here. You can POKE values here instead of using the PATTERN command.
0215 The graphics cursor mask.
0219 The HIRES cursor X value.
021A The HIRES cursor Y value (do not forget to alter #10 and #11 as well)
021F A graphics flag; 0 is TEXT, 1 is graphics.
0220 Memory size indicator; 0 means 48K, 1 means 16K.
0228 (version 1.0) Jump vector to the fast interrupt routine.
022B (version 1.0) Jump vector to the non-maskable interrupt routine.
0230 (version 1.0) Jump vector to the slow interrupt routine.
0228 (version 1.1) Unused.
0238 (version 1.0) Unused.
0238 (version 1.1) Jump vector to VDU output routine.
023B (version 1.1) Jump vector to the KEY$ routine.
023E (version 1.1) Jump vector to the printer output subroutine.
0241 (version 1.1) Jump vector to the routine that prints on the top line of the screen.
0244 (version 1.1) Jump vector to the fast interrupt routine.
0247 (version 1.1) Jump vector to the NMI routine.
024A (version 1.1) Jump vector to the slow interrupt routine.
024D (version 1.1) Various uses in cassette I/0 – see Chapter 4.
0268 Cursor position down the screen, relative to the start address of the screen.
0269 Cursor position across the screen.
026A Oric status byte.
026B Text screen paper colour.
026C Text screen ink colour.
026D (version 1.0) Start of the TEXT screen – #28.
026F (version 1.0) Number of lines to scroll.
0272 Timer 1 (used for reading the keyboard). W274 – t275 – Timer 2 (used by the flashing cursor).
0276 Timer 3 (used by WAIT, HIRES, and TEXT). #278 – #2BF – (version 1.0)
0278 (version 1.1) Start of TEXT screen + #28.
027A (version 1.1) Start of the text screen.
027C (version 1.1) Number of bytes to scroll – (#27E – 1) * #28
027E (version 1.1) Number of lines to scroll.
027F (version 1.1) Used by the tape routines – (Chap. 4).
02C0 Graphics enable: 0 means TEXT with GRAB, 1 means TEXT with RELEASE, and 3 means HIRES.
02C1 Highest address with graphics enabled + 1.
02DF The AS’CII code for the last key pressed (with top bit set).
02E0 The parameter area for graphics and sound commands.
02F1 Print flag – set to 128 to make all print go to the printer, 0 for it to go to the screen.
02F2 A flag set by the EDIT command.
02F4 The trace flag.
02F5 Address of the ! extension command.
02F7 (version 1.0 only). The inverse flag. Try out different values!
02FB A jump command to the & extension.
