To convert SPECTRUM software to the 2068, you need the location and function of ROM routines in each. You can buy the annotated ROM disassembly from Melbourne House or Zebra Systems. Timex sells the 2068 technical manual. Our cross-index links the two ROMs.
This atlas lists routines in order of their hex address in the SPECTRUM ROM and provides the hex address for the corresponding 2068 routine. Labels and names for the SPECTRUM routines come from The Complete Spectrum ROM Disassembly by Ian Logan and Frank O’Hara. All labels and names for 2068 functions come from Corcoran and Branigin‘s Timex 2068 Technical Manual.
To disassemble the TS2068 Home ROM and 8K Extension ROM (EXROM), you will need a program like HOT Z (Reviewed in SYNTAX May 84). HOT Z has a large names file which you can load along with the program to provide subroutine names and some labels for the disassembly. HOT Z self-starts in disassembly mode, to display the Home ROM from 0000h.
In order to disassemble or use EXROM routines, you must enable the bank-switching logic, perform the desired task, then de-activate the EXROM. The 8K EXROM overlays the first 8K chunk of the 16K Home ROM.
To illustrate, the following code copies EXROM to RAM at 8000h, from which you can disassemble or display it.
DI : LD BC,2000 LD A,01 : LDIR OUT (F4),A : XOR A IN A,(FF) : OUT (FF),A SET 7,A : OUT (F4),A OUT (FF),A : EI LD HL,0000 : RET LD DE,8000 :
Headscan (SYNTAX Sep.84) MC is an example of EXROM use. If you want to change the header storage location in RAM, change LD IX,FA3C to, say, LD IX,8000.
Finally, a note concerning the cassette routines of the 2068. All are located in the EXROM, but use subroutines and RST’s in the Home ROM. When a call to the Home ROM or RST occurs, bank switching must take place. This adds code to the SPECTRUM documented by Logan.
Corresponding to every CALL or RST in SPECTRUM cassette routines, you find, in the TS2068 EXROM, a 23-byte code segment which starts with PUSH IX and ends with POP IX. This code preserves and sets up registers and calls the service routine at 0F99h in the EXROM. The service routine transfers the calls to the bank switching code in 2068 RAM, which in turn completes the call to the Home ROM.
| SPECTRUM LABEL, NAME | SPECTRUM ROM Addr | TS 2068 ROM Addr | TS 2068 LABEL, NAME |
|---|---|---|---|
| START | 0000 | 0000 | PLUGIN |
| ERROR-1 | 0008 | 0008 | |
| PRINT-A-1 | 0010 | 0010 | WRCH |
| GET-CHAR | 0018 | 0018 | |
| NEXT-CHAR | 0020 | 0020 | |
| FP-CALC | 0028 | 0028 | |
| BC-SPACES | 0030 | 0030 | |
| MASK-INT | 0038 | 0030 | |
| 004F | 004F | PHLAF | |
| ERROR-2 | 0053 | 0053 | |
| ERROR-3 | 0055 | 0055 | LE3 |
| RESET | 0066 | 0066 | |
| NO-RESET | 0070 | 0070 | |
| CH-ADD+1 | 0074 | 0074 | NEXTCH |
| TEMP-PTR1 | 0077 | 0077 | NC-HL |
| TEMP-PTR2 | 0078 | 0078 | TC-HL |
| SKIP-OVER | 007D | 007D | |
| TOKENS | 0095 | 0098 | TOKENS |
| KEYTBL | 0227 | 0245 | |
| KEY-SCAN | 028E | 02B0 | K-SCAN |
| KEYBOARD | 02BF | 02E1 | UPD-K |
| K-REPEAT | 0310 | 0336 | |
| K-TEST | 031E | 035C | K-BASE |
| K-DECODE | 0333 | 0371 | CHCODE |
| BEEPER | 03B5 | 03F3 | PARP |
| BEEP | 03F8 | 0436 | BEEP |
| PRINT-OUT | 09F4 | 0500 | SEND-TV |
| PO-BACK-1 | 0A23 | 053A | P-LFT |
| PO-RIGHT | 0A3D | 0554 | P-RT |
| PO-ENTER | 0A4F | 0566 | P-NL |
| PO-COMMA | 0A5F | 0576 | |
| PO-QUEST | 0A69 | 0580 | |
| PO-TV-2 | 0A6D | 0584 | |
| 0A9B | 05B2 | SET-AT | |
| PO-ABLE | 0AD9 | 05F0 | |
| PO-STORE | 0ADC | 05F3 | STTVCU |
| PO-FETCH | 0B03 | 061A | LDTVCU |
| PO-ANY | 0B24 | 063B | |
| PO-ALL | 0B7F | 06B4 | |
| PO-ATTR | 0BDB | 0710 | ATTBYT |
| PO-MSG | 0C0A | 073F | PUTMES |
| PO-SAVE | 0C3B | 0776 | PR-TV2 |
| PO-SEARCH | 0C41 | 077C | |
| PO-SCR | 0C55 | 0790 | TVFUL? |
| REPORT-5 | 0C86 | 07C1 | ERR5 |
| TEMPS | 0D4D | 0888 | R-ATTS |
| CLS | 0D6B | 08A6 | K-CLS |
| CLS-LOWER | 0D6E | 08A9 | CLLHS |
| CL-ALL | 0DAF | 08EA | CLS |
| CL-SET | 0DD9 | 0914 | SET-CUR |
| CL-SC-ALL | 0DFE | 0939 | SCRL |
| CL-LINE | 0E44 | 097F | CLS-B |
| CL-ATR | 0E88 | 09C3 | |
| CL-ADDR | 0E9B | 09D6 | |
| COPY | 0EAC | 0A02 | K-DUMP |
| COPY-BUFF | 0ECD | 0A23 | DUMPPR |
| CLEAR-PRB | 0EDF | 0A35 | CLPR |
| COPY-LINE | 0EF4 | 0A4A | PRSCAN |
| EDITOR | 0F2C | 0A82 | EDIT-K |
| ADD-CHAR | 0F81 | 0AE7 | INSA |
| ED-EDIT | 0FA9 | 0B12 | |
| ED-DOWN | 0FF3 | 0B59 | |
| ED-LEFT | 1007 | 0B6B | |
| ED-RIGHT | 100C | 0B73 | |
| ED-DELETE | 1015 | 0B7B | DELSYM |
| ED-ENTER | 1024 | 0B8A | |
| ED-EDGE | 1031 | 0B97 | |
| ED-UP | 1059 | 0BBF | |
| ED-SYMBOL | 1076 | 0BDC | |
| ED-ERROR | 107F | 0BE9 | |
| CLEAR-SP | 1097 | 0BFE | DEL-K |
| KEY-INPUT | 10A8 | 0C0E | IN-K |
| ED-COPY | 111D | 0C83 | ECHO |
| REMOVE-FP | 11A7 | 0D0D | DESLUG |
| NEW | 11B7 | 0D1D | K-NEW |
| START/NEW | 11CB | 0D31 | INIT |
| RAM-SET | 1219 | 0D7F | NEW |
| MAIN-EXEC | 12A2 | 0E28 | |
| MAIN-1 | 12A9 | 0E2F | LED18 |
| MAIN-4 | 1303 | 0ED8 | LED4 |
| REPORT-MSG | 1391 | 0F65 | |
| MAIN-ADD | 155D | 1158 | |
| CH-INFO | 15AF | 11AA | CHINIT |
| INIT-STR | 15C6 | 11C1 | SMINIT |
| WAIT-KEY | 15D4 | 11CF | RDCH |
| INPUT-AD | 15E6 | 11E1 | INCH |
| OUT-CODE | 15EF | 11EA | PUTDIG |
| PRINT-A-2 | 15F2 | 11ED | SENDCH |
| CHAN-OPEN | 1601 | 1230 | SELECT |
| REPORT-O | 160E | 123D | ERRO |
| CHAN-FLAG | 1615 | 1248 | SEL-HL |
| CHAN-K | 1634 | 129A | |
| CHAN-s | 1642 | 12A8 | |
| CHAN-P | 164D | 12B3 | |
| ONE-SPACE | 1652 | 12B8 | INS1 |
| MAKE-ROOM | 1655 | 12BB | INSERT |
| POINTERS | 1664 | 12CA | REMGSZ |
| LINE-ZERO | 168F | 131E | |
| LINE-NO | 1695 | 1324 | GET-LN |
| RESERVE | 169E | 132D | LCU2 |
| SET-MIN | 16B0 | 133F | CLEL |
| SET-WORK | 16BF | 134E | X-CALC |
| REC-EDIT | 16D4 | 1363 | X-T-HL |
| SET-STK | 16C5 | 1354 | RESET |
| INDEXER | 16DC | 136B | SEARCH |
| 1374 | SRCHSC | ||
| CLOSE | 16E5 | 139F | CLOSE |
| 16EB | 13A8 | RSTSTR | |
| CLOSE-2 | 1701 | 13BE | CLCHAN |
| OPEN | 1736 | 142A | OPEN |
| OPEN-1 | 1756 | 145E | |
| OPEN-2 | 175D | 1465 | OPCHAN |
| CAT-ETC. | 1793 | 25C8 | CAT |
| AUTO-LIST | 1795 | 14E1 | LIST |
| LLIST | 17F5 | 1541 | K-LLST |
| LIST | 17F9 | 1545 | K-LIST |
| 1860 | 15AC | LPO | |
| OUT-LINE | 1855 | 15A1 | PUT-SR? |
| OUT-LINE2 | 187D | 15C9 | PUT |
| NUMBER | 18B6 | 1602 | |
| OUT-FLASH | 18C1 | 160D | FLASHA |
| OUT-CURS | 18E1 | 162D | PR-CUR |
| LN-FETCH | 190F | 165B | NEXT-L |
| LN-STORE | 191C | 1668 | DE-HL |
| OUT-SP2 | 1925 | 1671 | |
| LINE-ADDR | 196E | 16D6 | FIND-L |
| CP-LINES | 1980 | 16E8 | CP-BC |
| 1988 | 16F0 | SUBLIN | |
| EACH-STMT | 198B | 16F3 | SUBLN1 |
| NEXT-ONE | 19B8 | 1720 | RECLEN |
| DIFFER | 19DD | 1745 | |
| RECLAIM-1 | 19E5 | 174D | DEL-DE |
| RECLAIM-2 | 19E8 | 1750 | DELREC |
| E-LINE-NO | 19BF | 1768 | LINENO |
| OUT-NUM-1 | 1A1B | 1788 | PUT-BC |
| OUT-NUM-2 | 1A28 | 1795 | PU-LN |
| OUT-NUM-3 | 1A30 | 179D | |
| LINE-SCAN | 1B17 | 1A27 | SYNTAX |
| STMT-LOOP | 1B28 | 1A44 | LS4 |
| SEPARATOR | 1B6F | 1AB2 | |
| STMT-RET | 1B76 | 1AB9 | |
| LINE-RUN | 1B8A | 1AD8 | EXCUTE |
| LINE-NEW | 1AEC | 1B9E | |
| REM | 1BB2 | 1B00 | |
| LINE-END | 1BB3 | 1B09 | |
| LINE-USE | 1BBF | 1B15 | |
| NEXT-LINE | 1BD1 | 1B27 | |
| STMT-RET | 1B76 | 1AB9 | ENDSTT |
| CHECK-END | 1Bee | 1B44 | END? |
| STMT-NEXT | 1BF4 | 1B4A | ENDTEM |
| CLASS-01 | 1C1F | 1B82 | TEM1 |
| REPORT-2 | 1C2E | 1B91 | ERR2 |
| VAL-FET-2 | 1C59 | 1BBC | LT22 |
| NEXT-2-NUM | 1C79 | 1BDC | DYADIC |
| CLASS-06 | 1C82 | 1BE5 | TEM6 |
| REPORT-C | 1C8A | 1BED | SYNERR |
| CLASS-0A | 1C8C | 1BEF | TEM10 |
| PERMS | 1C96 | 1BF9 | |
| FETCH-NUM | 1CDE | 1C49 | OPTNO |
| USE-ZERO | 1CE6 | 1C51 | STK-0 |
| STOP | 1CEE | 1C59 | STOP |
| IF | 1CF0 | 1C5B | |
| FOR | 1D03 | 1C78 | FOR |
| LOOK-PROG | 1D86 | 1D28 | SKIP |
| NEXT | 1DAB | 1D55 | NEXT |
| READ | 1DEC | 1D96 | READ |
| DATA | 1E27 | 1E82 | DATA |
| RESTORE | 1E42 | 1E9D | |
| RANDOMIZE | 1E4F | 1ED4 | RAND |
| REST-RUN | 1E45 | 1ECA | RESTBC |
| CONTINUE | 1E5F | 1EE4 | CONT |
| GO TO | 1E67 | 1EF1 | JUMP |
| OUT | 1E7A | 1F04 | |
| POKE | 1E80 | 1F0A | |
| TWO-PARAM | 1E85 | 1F0F | |
| FIND-INT1 | 1E94 | 1F1E | FIX-U1 |
| FIND-INT2 | 1E99 | 1F23 | FIX-U |
| REPORT-B | 1E9F | 1F29 | ERRB |
| RUN | 1EA1 | 1F2E | |
| CLEAR | 1EAC | 1F36 | CLEAR |
| CLEAR-RUN | 1EAF | 1F39 | CLR-BC |
| GOSUB | 1EED | 1F99 | GO-SUB |
| TEST-ROOM | 1F05 | 1FBB | CHK-SZ |
| REPORT-4 | 1F15 | 1FCF | ERR4 |
| RETURN | 1F23 | 1FD4 | RETURN |
| PAUSE | 1F3A | 1FEF | PAUSE |
| BREAK-KEY | 1F54 | 2009 | BREAK |
| DEF FN | 1F60 | 201D | DEF |
| **** | **** | 2128 | SOUND |
| UNSTACK-Z | 1FC3 | 214F | |
| LPRINT | 1FC9 | 2155 | K-LPR |
| 1FCD | 2159 | K-PRN | |
| PRINT-2 | 1FDF | 217E | P-SEQ |
| PRINT-CR | 1FF5 | 2194 | |
| PRINT-ITEM1 | 1FFC | 219B | |
| PR-STRING | 203C | 21DB | |
| PR-END-Z | 2045 | 21E4 | |
| PR-ST-END | 2048 | 21E7 | TERM? |
| PR-POS-1 | 204E | 21ED | |
| STR-ALTER | 2070 | 220F | STRITO |
| INPUT | 2089 | 222B | INPUT |
| IN-ITEM-1 | 20C1 | 226B | I-SEQ |
| IN-ASSIGN | 21B9 | 2363 | |
| REPORT-H | 21D4 | 237E | ERRH |
| IN-CHAN-K | 21D6 | 2380 | NOTKB? |
| CO-TEMP-1 | 21E1 | 238B | |
| CO-TEMP-2 | 21E2 | 238C | GR-COL |
| CO-TEMP-4 | 21FC | 23A6 | COLITM |
| CO-TEMP-7 | 2234 | 23DE | COLOUR |
| CO-CHANGE | 226C | 2416 | |
| CO-TEMP-C | 2273 | 241D | HIFLSH |
| BORDER | 2294 | 243E | BORDER |
| **** | **** | 24D2 | NEWDEV |
| **** | **** | 25B9 | PASSEM |
| PIXEL-ADD | 22AA | 2603 | SCRMBL |
| POINT | 22CB | 2624 | F-PNT |
| PLOT | 22DC | 2635 | PLOT |
| PLOT-SUB | 22E5 | 263E | PLOTBC |
| STK-TO-BC | 2307 | 2660 | GETXY |
| STK-TO-A | 2314 | 266D | |
| CIRCLE | 2320 | 2679 | CIRCLE |
| DRAW | 2382 | 26DB | DRAW |
| CD-PRMS1 | 247D | 27D6 | |
| DRAW-LINE | 24B7 | 2810 | DRAW-L |
| SCANNING | 24FB | 2854 | EXPRN |
| SYNTAX-Z | 2530 | 2889 | INTPT? |
| S-ATTR-s | 2580 | 28D7 | F-ATTR |
| S-U-PLUS | 25AF | 296D | |
| S-LETTER | 26C9 | 2A87 | |
| S-FN-SBRN | 27BD | 2B7B | |
| S-SCREEN$-S | 2535 | 288E | F-SCRN |
| S-RND | 25F8 | 29B6 | RND |
| S-PI | 2627 | 29E5 | F-PI |
| S-INKEY$ | 2634 | 29F2 | F-INKEY |
| FN-SKPOVER | 28AB | 2C69 | NXT-HL |
| LOOK-VARS | 28B2 | 2C70 | FIND-N |
| STK-F-ARG | 2951 | 2D0F | |
| STK-VAR | 2996 | 2D54 | GET-EL |
| SLICING | 2A52 | 2E10 | SLICER |
| STK-ST-0 | 2AB1 | 2E6F | |
| STK-STO-1 | 2AB2 | 2E70 | PSHSTR |
| STK-STORE | 2AB6 | 2E74 | PAEDCB |
| INT-EXP-1 | 2ACC | 2E8A | |
| DE,(DE+1) | 2AEE | 2EAC | |
| GET-HL*DE | 2AF4 | 2EB2 | |
| LET | 2AFF | 2EBD | LET |
| L-ENTER | 2BA6 | 2F64 | |
| L-ADD-$ | 2BAF | 2F6D | |
| L-STRING | 2BC6 | 2F84 | |
| L-FIRST | 2BEA | 2FA8 | |
| STK-FETCH | 2BF1 | 2FAF | POPSTR |
| DIM | 2C02 | 2FC0 | DIM |
| ALPHANUM | 2C88 | 3046 | ALNUM? |
| ALPHA | 2C8D | 304B | ALPHA? |
| DEC-TO-FP | 2C9B | 3059 | STKSUM |
| NUMERIC | 2D1B | 30D9 | DIGIT? |
| STK-DIGIT | 2D22 | 30E0 | |
| STACK-A | 2D28 | 30E6 | STK-A |
| STACK-BC | 2D2B | 30E9 | STK-BC |
| INT-TO-FP | 2D3B | 30F9 | ININT |
| E-TO-FP | 2D4F | 3100 | |
| INT-FETCH | 2D7F | 313D | LDDE |
| P-INT-STO | 2D8C | 314A | STDE-U |
| INT-STORE | 2D8E | 314C | STDE-S |
| FP-TO-BC | 2DA2 | 3160 | FP2BC |
| LOG(2↑A) | 2DC1 | 317F | |
| FP-TO-A | 2DD5 | 3193 | FP2A |
| PRINT-FP | 2DE3 | 31A1 | OUTPUT |
| CA=10*A+C | 2F8B | 334A | |
| PREP-ADD | 2F9B | 335A | |
| FETCH-TWO | 2FBA | 3379 | SUMSLD |
| SHIFT-FP | 2Fdd | 339C | SHIFT |
| ADD-BACK | 3004 | 33C3 | |
| SUBTRACT | 300F | 33CE | SUB |
| addition | 3014 | 33D3 | ADD |
| HL=HL*DE | 30A9 | 3468 | MULT |
| PREP-M/D | 30C0 | 347F | |
| multiply | 30CA | 3489 | |
| REPORT-6 | 31AD | 356C | ERR6 |
| division | 31AF | 356E | DIVIDE |
| truncate | 3214 | 35D3 | TRUNC |
| RE-ST-TWO | 3293 | 3052 | |
| multiply | 30CA | 3489 | TIMES |
| RE-STACK | 3297 | 3656 | FLOAT |
| FP calculator start: | 32C5 | 3684 | |
| CALCULATE | 335B | 371A | CTRO |
| fp-calc-2 | 33A2 | 3761 | |
| TEST-5-SP | 33a9 | 3768 | ROOM? |
| STACK-NUM | 33B4 | 3773 | STK-M |
| MOVE-FP | 33C0 | 377F | RAMNO |
| STK-DATA | 33C6 | 3785 | |
| SKIP-CONS | 33F7 | 37B6 | |
| LOC-MEM | 3406 | 37C5 | ARRAY |
| get-mem-0 | 340F | 37CF | |
| stk-zero | 341B | 37DA | |
| st-mem-0 | 342D | 37EC | |
| EXCHANGE | 343C | 37FB | |
| series-06 | 346A | 3829 | |
| NEGATE | 346E | 382D | NEGATE |
| sgn | 3492 | 3851 | |
| in | 34A5 | 3864 | |
| peek | 34AC | 386B | |
| usr-no | 34B3 | 3872 | |
| usr-$ | 34BC | 38D7 | |
| TEST-ZERO | 34E9 | 3904 | TEST0 |
| GREATER-0 | 34F9 | 3914 | |
| NOT | 3501 | 391C | |
| less-0 | 3506 | 3921 | |
| FP-0/1 | 350B | 3926 | STBOOL |
| or | 351B | 3936 | |
| no-&-no | 3524 | 393F | |
| str-&-no | 352D | 3948 | |
| no-l-eql | 353B | 3956 | |
| strs-add | 359C | 39B7 | |
| STK-PNTRS | 35BF | 39DD | |
| chr$ | 35C9 | 39E4 | |
| val-&-val$ | 35DE | 39F9 | |
| str$ | 361F | 3A3A | |
| read-in | 3645 | 3A60 | |
| code | 3669 | 3A84 | |
| len | 3674 | 3A8F | |
| dec-jr-nz | 367A | 3A95 | |
| JUMP | 3686 | 3AA1 | |
| jump-true | 368F | 3AAA | |
| end-calc | 369B | 3AB6 | |
| n-mod-m | 36A0 | 3ABB | INTDIV |
| **** | **** | 3AC5 | LDMES |
| int | 36AF | 3ACA | INT |
| EXP | 36C4 | 3ADF | EXP |
| ln | 3713 | 3B2E | |
| get-argt | 3783 | 3B9E | ANGLE |
| cos | 37AA | 3BC5 | COS |
| sin | 37B5 | 3BD0 | SIN |
| tan | 37DA | 3BF5 | TAN |
| atn | 37E2 | 3BFD | ATN |
| asn | 3833 | 3C4E | ASN |
| acs | 3843 | 3C5E | ACS |
| sqr | 384A | 3C65 | ROOT |
| to-power | 3851 | 3C6C | TO-THE |
| **** | **** | 3C89 | SEPRMT |
| (note:SEPRMT are tape msgs.) | |||
| ‘spare’ | 386E | 3CDC | ‘EMPTY’ |
| charctr-set | 3D00 | 3D00 | CH-SET |
The Spectrum does not support the following routines:
| SPECTRUM LABEL, NAME | SPECTRUM ROM Addr | TS 2068 ROM Addr | TS 2068 LABEL, NAME |
|---|---|---|---|
| **** | **** | 17B5 | AROS |
| **** | **** | 17CF | GETAL |
| **** | **** | 17EA | AR-LN |
| **** | **** | 17FF | AR-NXT |
| **** | **** | 18C6 | AAROS |
TIMEX EXROM
| SPECTRUM LABEL, NAME | SPECTRUM ROM Addr | TS 2068 ROM Addr | TS 2068 LABEL, NAME |
|---|---|---|---|
| SA-BYTES | 04C2 | 0068 | W-TAPE |
| SA-LEADER | 04D8 | 007E | |
| SA-LOOP | 04FE | 00A4 | |
| SA-BIT-2 | 0511 | 00B7 | |
| SA-8-BITS | 0525 | 00CB | |
| SA/LD-RET | 053F | 00E5 | W-BORD |
| REPORT-D | 0552 | 00F8 | |
| LD-BYTES | 0556 | 00FC | R-TAPE |
| LD-BREAK | 056B | 0111 | |
| LD-LEADER | 0580 | 0126 | |
| LD-SYNC | 058F | 0135 | |
| LD-8-BITS | 05CA | 0170 | |
| LD-EDGE-2 | 05E3 | 0189 | RD-BIT |
| LD-EDGE-1 | 05E7 | 018D | RD-EDGE |
| LD-SAMPLE | 05ED | 0193 | |
| SAVE-ETC | 0605 | 01AB | SLVM |
| REPORT-F | 0642 | 0228 | |
| SA-NAME | 064B | 0231 | |
| SA-DATA | 0652 | 0238 | |
| SA-V-OLD | 0672 | 029A | |
| SA-V-NEW | 0685 | 02A9 | |
| SA-SCR$ | 06A0 | 02F2 | |
| SA-CODE | 06C3 | 032E | |
| SA-LINE | 0716 | 0447 | |
| SA-ALL | 075A | 04C9 | |
| LD-LOOK-H | 0767 | 04D6 | |
| LD-NAME | 07A6 | 053D | |
| VR-CONTROL | 07CB | 058F | VERIFY |
| LD-BLOCK | 0802 | 05C6 | |
| LD-CONTROL | 0808 | 05CC | LOAD |
| LD-DATA | 082E | 0606 | |
| LD-PROG | 0873 | 0673 | |
| ME-CONTROL | 08B6 | 06E5 | MERGE |
| ME-OLD-VP | 08F9 | 0752 | |
| ME-ENTER | 092C | 0799 | |
| ME-ENT-1 | 093E | 07CF | |
| ME-ENT-3 | 0958 | 0825 | |
| SA-CONTROL | 0970 | 0851 | SAVE |
| SA-1-SEC | 0991 | 089A |
The balance of EXROM contains the Function Dispatcher , Bank Switching Code , and various other routines , which does not have counterparts in the Spectrum. A total of approximately 2K Bytes of EXROM is unused.