5B52 | 2 | OLDHL | Temp store while switching roms | |
5B54 | 2 | OLDBC | Temp store while switching roms | |
5B56 | 2 | OLDAF | Temp store while switching roms | |
5B58 | 2 | TARGET | Subroutine address in ROM 3 | |
5B5A | 2 | RETADDR | Return address in ROM1 | |
5B5C | 1 | BANKM | Copy last byte output to Port 7FFD | |
5B5E | 1 | RAMERR | Error passed from ROM 1 to 3 via RAMRST. Also used by SAVE/LOAD as temp drive store | |
5B5F | 2 | BAUD | RS232 bit period in T states/26. Set by FORMAT LINE | |
5B61 | 2 | SERFL | Second-character-received flag & data | |
5B63 | 1 | COL | Current column from 1 to width | |
5B64 | 1 | WIDTH | Paper column width | 80 |
5B65 | 1 | TVPARS | Number of inline parameters expected by RS232 | |
5B66 | 1 | FLAGS3 | Various Flags
Bit 2 |
Set when tokens are expanded on printing |
Bit 3 |
Set if print output is RS232 |
Bit 4 |
Set if a disk interface is present |
Bit 5 |
Set if drive B: is present |
| |
5B67 | 1 | BANK678 | Copy of last byte output to port 1FFD | |
5B68 | 1 | XLOC | Hold X location when using the unexpanded COPY command | |
5B69 | 1 | YLOC | Hold Y location when using the unexpanded COPY command | |
5B6A | 2 | OLDSP | Old SP (stack pointer) when TSTACK is in use. | |
5B6C | 2 | SYNRET | Return address for ONERR | |
5B6E | 5 | LASTTV | Last value printed by calculator | |
5B73 | 2 | RCLINE | Current line being renumbered | |
5B75 | 2 | RCSTART | Starting line number for renumbering | 10 |
5B77 | 2 | RCSTEP | Incremental value for renumbering | 10 |
5B79 | 1 | LODDRV | Drive for LOAD VERIFY or MERGE
A |
Drive A |
B |
Drive B |
M |
Ram Disk |
T |
For tape |
| |
5B7A | 1 | SAVDRV | Drive for SAVE
A |
Drive A |
B |
Drive B |
M |
Ram Disk |
T |
For tape |
| |
5B7B | 1 | DUMPLF | Holds the number of 1/216ths user for line feeds in 'COPY EXP'. If a dump cannot fit A4 set to 8 to reduce size of dump. | 9 |
5B7C | 8 | STRIP1 | Stripe 1 bitmap | |
5B84 | 8 | STRIP2 | Strip2 2 bitmap. Extends to 5B8B | |
5BFF | -115 | TSTACK | Temp stack (Grows DOWN from here). Used when Page 7 is switched in at top of memory while editing or using +3DOS. It can grow down to STRIP1 safely giving 115 bytes | |
5C00 | 8 | KSTATE | Used for reading keyboard | |
5C08 | 1 | LASTK | Stores newly pressed key | |
5C09 | 1 | REPDEL | Time in 1/50s before key repeats | 35 |
5C0A | 1 | REPPER | Delay in 1/50s between key repeats | 5 |
5C0D | 1 | KDATA | Stores 2nd byte of colour controls entered from keyboard | |
5C0E | 2 | TVDATA | Stores bytes of colour, AT and TAB controls going to TV | |
5C10 | 38 | STRMS | Addresses of channels attached to streams | |
5C36 | 2 | CHARS | 256 less than address of character set starting with space and up to (C). | |
5C38 | 1 | RASP | Length of warning buzz | |
5C39 | 1 | PIP | Length of keyboard click | |
5C3A | 1 | ERRNR | 1 less than report code. Starts at 255 for -1 | |
5C3B | 1 | FLAGS | Various flags for BASIC | |
5C3C | 1 | TVFLAG | Flags associated with the TV | |
5C3D | 2 | ERRSP | Address of item on machine stack to be used as error return | |
5C3F | 2 | LISTSP | Address of return address from automatic listing | |
5C41 | 1 | MODE | Specifies K, L, C, E or G cursor | |
5C42 | 2 | NEWPPC | Line to be jumped to | |
5C44 | 1 | NSPPC | Statement number in line to be jumped to. Poking first NEWPPC then NSPPC forces a jump to a specific statement in a line. | |
5C45 | 2 | PPC | Line number of statement currently being executed | |
5C47 | 1 | SUBPPC | Number within line of statement currently being executed | |
5C48 | 1 | BORDCR | Border colour multiplied by 8; also contains attributes normally used for lower half of the screen | |
5C49 | 2 | EPPC | Number of current line (with program cursor) | |
5C4B | 2 | VARS | Address of variables | |
5C4D | 2 | DEST | Address of variable in assignment | |
5C4F | 2 | CHANS | Address of channel data | |
5C51 | 2 | CHURCHL | Address of information currently being used for IO | |
5C53 | 2 | PROG | Address of BASIC program | |
5C55 | 2 | NXTLIN | Address of next line in program | |
5C57 | 2 | DATADD | Address of terminator of last DATA item | |
5C59 | 2 | ELINE | Address of command being typed in | |
5C5B | 2 | KCUR | Address of cursor | |
5C5D | 2 | CHADD | Address of next character after the argument of PEEK or the NEWLINE at the end of a POKE statement. | |
5C5F | 2 | XPTR | Address of character after the [] marker | |
5C61 | 2 | WORKSP | Address of temporary workspace | |
5C63 | 2 | STKBOT | Address of bottom of calculator stack | |
5C65 | 2 | STKEND | Address of start of space space | |
5C67 | 1 | BREG | Calculators B register | |
5C68 | 2 | MEM | Address of area used for calculators memory, usually MEMBOT | MEMBOT |
5C6A | 1 | FLAGS2 | More flags
Bit 3 |
Set when CAPS SHIFT or CAPS LOCK is on |
| |
5C6B | 1 | DFSZ | Number of lines (including one blank) in lower part of the screen | |
5C6C | 2 | STOP | Number of the top program line in automatic listings | |
5C6E | 2 | OLDPPC | Line number to which CONTINUE jumps | |
5C70 | 1 | OSPPC | Number within line of statement to which CONTINUE jumps | |
5C71 | 1 | FLAGX | Various flags | |
5C72 | 2 | STRLEN | Length of string type destination in assignment | |
5C74 | 2 | TADDR | Address of next item in syntax table | |
5C76 | 2 | SEED | The seed for the RNG. Variable set using RANDOMIZE | |
5C78 | 3 | FRAMES | 3 byte (least significant first) frame counter incremented every 20ms | |
5C7B | 2 | UDG | Address of first user defined graphic | |
5C7D | 1 | COORDX | X coordinate of last point plotted | |
5C7E | 1 | COORDY | Y coordinate of last point plotted | |
5C7F | 1 | PPOSN | 33 column number of printer position | |
5C80 | 2 | PRCC | Full address of next position for LPRINT. Only used for ZX printer, not in 128K mode. | |
5C82 | 2 | ECHOE | 33 column number & 24 line number of end of input buffer | |
5C84 | 2 | DFCC | Address in display file of PRINT position | |
5C86 | 2 | DFCCL | Like DFCC but for lower part of screen | |
5C88 | 2 | SPOSN | 33 col & 24 line number for PRINT position | |
5C8A | 2 | SPOSNL | Like SPOSN but for lower part of screen | |
5C8C | 1 | SCRCT | Counts scrolls, always 1 more than number of scrolls to perform before scroll. | |
5C8D | 1 | ATTRP | Permanent current colours | |
5C8E | 1 | MASKP | Used for transparent colour. Any bit that is 1 shows bit taken from screen and not ATTRP | |
5C8F | 1 | ATTRT | Like ATTRP but for temporary colours | |
5C90 | 1 | MASKT | Like MASKP but for temporary colours | |
5C91 | 1 | PFLAG | More flags | |
5C92 | 30 | MEMBOT | Calculators memory area used to store numbers not convenient to store on the calculator stack | |
5CB0 | 2 | NMIADD | Address of users NMI routine. Older machines NMI didn't work well so was marked as UNUSED so can cause issues on +3 if user code uses this | |
5CB2 | 2 | RAMTOP | Address of last byte of BASIC system area | |
5CB4 | 2 | PRAMT | Address of last byte of physical RAM | |
5CB6 | | SYSVAREND | Start of Channel information, usually value in (CHANS) | |
5CC0 | 12 | RESERVED_MMAP | Marked reserved in 48k memory map | |
5CCB | | BASE_AVAIL_MEM | Base of available memory | |