Rev 550 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 550 | Rev 596 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | 1 | ||
| 2 | ;www.fruitcake.plus.com |
2 | ;www.fruitcake.plus.com |
| 3 | 3 | ||
| 4 | ;LAST UPDATE: 23.01.2012 savelij |
4 | ;LAST UPDATE: 10.02.2013 savelij |
| 5 | 5 | ||
| 6 | include ../../macros.a80 |
6 | include ../../macros.a80 |
| 7 | 7 | ||
| 8 | ; ************************************** |
8 | ; ************************************** |
| 9 | ; *** SPECTRUM 128 ROM 0 DISASSEMBLY *** |
9 | ; *** SPECTRUM 128 ROM 0 DISASSEMBLY *** |
| Line 1046... | Line 1046... | ||
| 1046 | L0121: JP L06D8 ; RS232 byte input routine. |
1046 | L0121: JP L06D8 ; RS232 byte input routine. |
| 1047 | L0124: JP L07CA ; RS232 text output routine. |
1047 | L0124: JP L07CA ; RS232 text output routine. |
| 1048 | L0127: JP L08A3 ; RS232 byte output routine. |
1048 | L0127: JP L08A3 ; RS232 byte output routine. |
| 1049 | L012A: JP L08F0 ; COPY (screen dump) routine. |
1049 | L012A: JP L08F0 ; COPY (screen dump) routine. |
| 1050 | L012D: RST 28H ; Call keypad scan routine in ROM 1. |
1050 | L012D: RST 28H ; Call keypad scan routine in ROM 1. |
| 1051 | DEFW KP_SCAN;-$0100 ; $3B01. [*BUG* - The address jumps into the middle of the keypad decode routine in ROM 1. It |
1051 | DEFW KP_SCAN-$0100 ; $3B01. [*BUG* - The address jumps into the middle of the keypad decode routine in ROM 1. It |
| 1052 | RET ; looks like it is supposed to deal with the keypad and so the most likely |
1052 | RET ; looks like it is supposed to deal with the keypad and so the most likely |
| 1053 | ; addresses are $3A42 (read keypad) or $39A0 (scan keypad). At $3C01 in |
1053 | ; addresses are $3A42 (read keypad) or $39A0 (scan keypad). At $3C01 in |
| 1054 | ; ROM 1 is a vector jump command to $39A0 to scan the keypad and this is |
1054 | ; ROM 1 is a vector jump command to $39A0 to scan the keypad and this is |
| 1055 | ; similar enough to the $3B01 to imply a simple error in one of the bytes. Credit: Paul Farrow] |
1055 | ; similar enough to the $3B01 to imply a simple error in one of the bytes. Credit: Paul Farrow] |
| 1056 | 1056 | ||
| Line 7332... | Line 7332... | ||
| 7332 | POP HL ; Remove error handler address. |
7332 | POP HL ; Remove error handler address. |
| 7333 | 7333 | ||
| 7334 | LD HL,MAIN_4 ; $1303. The main execution loop within ROM 1. |
7334 | LD HL,MAIN_4 ; $1303. The main execution loop within ROM 1. |
| 7335 | PUSH HL ; |
7335 | PUSH HL ; |
| 7336 | 7336 | ||
| 7337 | LD HL,3 ; $0003. Address of a $FF byte within ROM 1, used to generate error report "0 OK". |
7337 | LD HL,0X13;3 ; $0003. Address of a $FF byte within ROM 1, used to generate error report "0 OK". |
| 7338 | PUSH HL ; |
7338 | PUSH HL ; |
| 7339 | LD HL,ERROR_1 ; $0008. The address of the error handler within ROM 1. |
7339 | LD HL,ERROR_1 ; $0008. The address of the error handler within ROM 1. |
| 7340 | PUSH HL ; |
7340 | PUSH HL ; |
| 7341 | 7341 | ||
| 7342 | ; [*BUG* - Although the channel 'P' information has been reconfigured to use the ZX Printer, the ZX printer buffer and |
7342 | ; [*BUG* - Although the channel 'P' information has been reconfigured to use the ZX Printer, the ZX printer buffer and |