Files
Z8C-Homebrew-Computer/OperatingSystem/iictest/zout/test.lst
2024-01-12 13:29:20 +01:00

4638 lines
196 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
1: .include "include/extern_symbols.s" ;include monitor symbols.
**** include/extern_symbols.s ****
1: ;This file is generated by the build script.
2: ;Do not make any changes here!
3:
4: - 00D0 ADDR_RTC equ 0xD0
5: - 014F A_RTS_OFF equ 0x14F
6: - 0158 A_RTS_ON equ 0x158
7: - 0050 BOOT_PHASE0 equ 0x50
8: - 006E BOOT_PHASE1 equ 0x6E
9: - 0077 BOOT_PHASE1_LOOP equ 0x77
10: - 0082 BOOT_PHASE2 equ 0x82
11: - 11CD COMMAND equ 0x11CD
12: - 1208 COMMAND_BACKSPACE equ 0x1208
13: - 1166 COMMAND_LUT equ 0x1166
14: - 122E COMMAND_PROCESS equ 0x122E
15: - 1269 COMMAND_PROCESS_FOUND equ 0x1269
16: - 1231 COMMAND_PROCESS_LOOP equ 0x1231
17: - 123A COMMAND_PROCESS_LOOP_STR1 equ 0x123A
18: - 1250 COMMAND_PROCESS_LOOP_STR2 equ 0x1250
19: - 1255 COMMAND_PROCESS_NEXT_ENTRY equ 0x1255
20: - 1254 COMMAND_PROCESS_NEXT_ENTRYI equ 0x1254
21: - 1260 COMMAND_PROCESS_NOT_FOUND equ 0x1260
22: - 11D9 COMMAND_READ equ 0x11D9
23: - 009B CONSOLE_INIT equ 0x9B
24: - 009B CONSOLE_INIT_CTC equ 0x9B
25: - 00A3 CONSOLE_INIT_SIO equ 0xA3
26: - 00F9 CS_APU_CTRL equ 0xF9
27: - 00F8 CS_APU_DATA equ 0xF8
28: - 0000 CS_BANK equ 0x00
29: - 0004 CS_CTC_0 equ 0x04
30: - 0005 CS_CTC_1 equ 0x05
31: - 0006 CS_CTC_2 equ 0x06
32: - 0007 CS_CTC_3 equ 0x07
33: - 0001 CS_DIP equ 0x01
34: - 0033 CS_PIA_CR equ 0x33
35: - 0030 CS_PIA_PA equ 0x30
36: - 0031 CS_PIA_PB equ 0x31
37: - 0032 CS_PIA_PC equ 0x32
38: - 00F6 CS_PIO_AC equ 0xF6
39: - 00F4 CS_PIO_AD equ 0xF4
40: - 00F7 CS_PIO_BC equ 0xF7
41: - 00F5 CS_PIO_BD equ 0xF5
42: - 0009 CS_SIO_A_C equ 0x09
43: - 0008 CS_SIO_A_D equ 0x08
44: - 000B CS_SIO_B_C equ 0x0B
45: - 000A CS_SIO_B_D equ 0x0A
46: - 0161 DHEX_TO_BYTE equ 0x161
47: - 017D DHEX_TO_BYTE_FAILED equ 0x17D
48: - 127F ERR_SYNTAX equ 0x127F
49: - 0D01 EXEC_RST_08 equ 0xD01
50: - 0D05 EXEC_RST_10 equ 0xD05
51: - 0D11 EXEC_RST_18 equ 0xD11
52: - 0181 HEX_TO_BIN equ 0x181
53: - 018F HEX_TO_BIN_2 equ 0x18F
54: - 0196 HEX_TO_INVALID_2 equ 0x196
55: - 00EC IDE_CMD_IDENT equ 0xEC
56: - 0020 IDE_CMD_READSEC equ 0x20
57: - 0E91 IDE_DEF_TABLE equ 0xE91
58: - 0040 IDE_RD equ 0x40
59: - 0016 IDE_REG_ALTSTS equ 0x16
60: - 000F IDE_REG_CMDSTS equ 0x0F
61: - 0008 IDE_REG_DATA equ 0x08
62: - 0017 IDE_REG_DRVADDR equ 0x17
63: - 0009 IDE_REG_ERROR equ 0x09
64: - 000D IDE_REG_HCYL equ 0x0D
65: - 000E IDE_REG_HEAD equ 0x0E
66: - 000C IDE_REG_LCYL equ 0x0C
67: - 000A IDE_REG_SECTOR equ 0x0A
68: - 000B IDE_REG_SSECTOR equ 0x0B
69: - 0080 IDE_RST equ 0x80
70: - 0020 IDE_WR equ 0x20
71: - 0001 IIC_CLK equ 0x01
72: - 0042 IIC_DATA equ 0x42
73: - 001B INT_VEC equ 0x1B
74: - 402B IN_BUFFER equ 0x402B
75: - 0040 IO_AY0_ADDR equ 0x40
76: - 0041 IO_AY0_DATA equ 0x41
77: - 0042 IO_AY1_ADDR equ 0x42
78: - 0043 IO_AY1_DATA equ 0x43
79: - 0020 IO_REG0 equ 0x20
80: - 0025 IO_RTC_AMPM equ 0x25
81: - 002D IO_RTC_CTR_D equ 0x2D
82: - 002E IO_RTC_CTR_E equ 0x2E
83: - 002F IO_RTC_CTR_F equ 0x2F
84: - 0026 IO_RTC_DAY0 equ 0x26
85: - 0027 IO_RTC_DAY1 equ 0x27
86: - 0024 IO_RTC_HOUR equ 0x24
87: - 0022 IO_RTC_MIN0 equ 0x22
88: - 0023 IO_RTC_MIN1 equ 0x23
89: - 0028 IO_RTC_MON0 equ 0x28
90: - 0029 IO_RTC_MON1 equ 0x29
91: - 0020 IO_RTC_SEC0 equ 0x20
92: - 0021 IO_RTC_SEC1 equ 0x21
93: - 002C IO_RTC_WEEK equ 0x2C
94: - 002B IO_RTC_YEAR1 equ 0x2B
95: - 002A IO_RTC_YERR0 equ 0x2A
96: - 5000 MEM_IDE_BASE equ 0x5000
97: - 5062 MEM_IDE_BUFFER equ 0x5062
98: - 5000 MEM_IDE_DEVICE equ 0x5000
99: - 5041 MEM_IDE_DEV_TABLE equ 0x5041
100: - 5002 MEM_IDE_PARTITION equ 0x5002
101: - 5006 MEM_IDE_POINTER equ 0x5006
102: - 5061 MEM_IDE_SELECTED equ 0x5061
103: - 5001 MEM_IDE_STATUS equ 0x5001
104: - 0147 MSG_CLEAR equ 0x147
105: - 1278 NOT_IMPLEMENTED equ 0x1278
106: - 12DA OP_CALL equ 0x12DA
107: - 146E OP_CLR equ 0x146E
108: - 135B OP_DASM equ 0x135B
109: - 12FA OP_DUMP equ 0x12FA
110: - 12C1 OP_EXEC equ 0x12C1
111: - 1422 OP_IIC_IN equ 0x1422
112: - 13C2 OP_IIC_OUT equ 0x13C2
113: - 138B OP_IO_IN equ 0x138B
114: - 13A1 OP_IO_OUT equ 0x13A1
115: - 1472 OP_RTIME equ 0x1472
116: - 132A OP_SET equ 0x132A
117: - 160A OP_STIME equ 0x160A
118: - 16B8 POST_CHECK_APU equ 0x16B8
119: - 16E3 POST_CHECK_IDE_30 equ 0x16E3
120: - 16F7 POST_CHECK_IDE_40 equ 0x16F7
121: - 1693 POST_CHECK_PIO equ 0x1693
122: - 1683 POST_START equ 0x1683
123: - 1712 POST_TEST_RTC equ 0x1712
124: - 4110 PRG_RAM_START equ 0x4110
125: - FF00 PRG_RAM_TOP equ 0xFF00
126: - 4000 PROG_MEM_START equ 0x4000
127: - 0100 PROG_ROM_START equ 0x100
128: - 0000 RST_00 equ 0x00
129: - 0008 RST_08 equ 0x08
130: - 0010 RST_10 equ 0x10
131: - 0018 RST_18 equ 0x18
132: - FFFF STACK_RAM_TOP equ 0xFFFF
133: - 0000 START_ROM equ 0x00
134: - 0198 STRCONV_BYTES_TO_HEX equ 0x198
135: - 01A7 STRCONV_BYTES_TO_HEX_1 equ 0x1A7
136: - 01B1 STRCONV_BYTES_TO_HEX_2 equ 0x1B1
137: - 1817 STR_Banner_Start equ 0x1817
138: - 111F STR_PD_HEADER equ 0x111F
139: - 4010 SYS_BUF_START equ 0x4010
140: - 4000 SYS_RAM_START equ 0x4000
141: - 0018 VAR_CONSOLE_BAUD equ 0x18
142: - 000F VAR_CONSOLE_CONF equ 0x0F
143: - 0080 VDP_MEM equ 0x80
144: - 0081 VDP_REG equ 0x81
145: - 1277 _COMMAND_PROCESS_FOUND equ 0x1277
146: - 12F9 _OP_CALL equ 0x12F9
147: - 1407 _OP_IIC_ACK_ERR equ 0x1407
148: - 140E _OP_IIC_ACK_ERR_str equ 0x140E
149: - 1454 _OP_IIC_IN_LOOP equ 0x1454
150: - 1461 _OP_IIC_IN_LOOP_TEXT equ 0x1461
151: - 13D8 _OP_IIC_OUT_LOOP equ 0x13D8
152: - 13F4 _OP_IIC_OUT_SEND equ 0x13F4
153: - 1475 _OP_RTIME_NN equ 0x1475
154: - 152D _OP_RTIME_RD_CMD equ 0x152D
155: - 1342 _OP_SET_LOOP equ 0x1342
156: - 15D0 _OP_STIME_INVALID equ 0x15D0
157: - 15E7 _OP_STIME_PROMPT equ 0x15E7
158: - 15FF _OP_STIME_PROMPT_ERR equ 0x15FF
159: - 152E _OP_STIME_STR_DAY equ 0x152E
160: - 157F _OP_STIME_STR_HOUR equ 0x157F
161: - 159A _OP_STIME_STR_MIN equ 0x159A
162: - 1549 _OP_STIME_STR_MON equ 0x1549
163: - 15B5 _OP_STIME_STR_SEC equ 0x15B5
164: - 1564 _OP_STIME_STR_YEAR equ 0x1564
165: - 16D7 _POST_CHECK_APU_FAILED equ 0x16D7
166: - 170B _POST_CHECK_IDE_FAILED equ 0x170B
167: - 16AC _POST_CHECK_PIO_FAILED equ 0x16AC
168: - 174C _POST_TEST_RTC_INVALID equ 0x174C
169: - 1745 _POST_TEST_RTC_NOTFOUND equ 0x1745
170: - 129A _STR_NOT_FOUND equ 0x129A
171: - 1286 _STR_NOT_IMPLEMENTED equ 0x1286
172: - 12AE _STR_SYNTAX equ 0x12AE
173: - 0144 _read_bcd_invalid equ 0x144
174: - 167E _shift4 equ 0x167E
175: - 0D14 beep equ 0xD14
176: - 0D17 beep_loop equ 0xD17
177: - 0D34 beep_pause equ 0xD34
178: - 0919 dasm_00 equ 0x919
179: - 0C05 dasm_01 equ 0xC05
180: - 099F dasm_02 equ 0x99F
181: - 0BD7 dasm_03 equ 0xBD7
182: - 0A1C dasm_08 equ 0xA1C
183: - 0BAA dasm_09 equ 0xBAA
184: - 0981 dasm_0A equ 0x981
185: - 0BEE dasm_0B equ 0xBEE
186: - 0961 dasm_10 equ 0x961
187: - 09AA dasm_12 equ 0x9AA
188: - 0924 dasm_18 equ 0x924
189: - 098B dasm_1A equ 0x98B
190: - 093E dasm_20 equ 0x93E
191: - 0C4B dasm_22 equ 0xC4B
192: - 09E4 dasm_27 equ 0x9E4
193: - 0937 dasm_28 equ 0x937
194: - 0C1C dasm_2A equ 0xC1C
195: - 09E8 dasm_2F equ 0x9E8
196: - 092F dasm_30 equ 0x92F
197: - 09B5 dasm_32 equ 0x9B5
198: - 09F4 dasm_37 equ 0x9F4
199: - 0928 dasm_38 equ 0x928
200: - 0995 dasm_3A equ 0x995
201: - 09F0 dasm_3F equ 0x9F0
202: - 09F8 dasm_76 equ 0x9F8
203: - 0A75 dasm_80C6 equ 0xA75
204: - 0A12 dasm_BE equ 0xA12
205: - 091D dasm_C3 equ 0x91D
206: - 0A9B dasm_C88E equ 0xA9B
207: - 096D dasm_C9 equ 0x96D
208: - 0967 dasm_CD equ 0x967
209: - 0A29 dasm_D9 equ 0xA29
210: - 094F dasm_DD equ 0x94F
211: - 0C0C dasm_DD_01 equ 0xC0C
212: - 0BC5 dasm_DD_09 equ 0xBC5
213: - 0C61 dasm_DD_22 equ 0xC61
214: - 0BDC dasm_DD_23 equ 0xBDC
215: - 0C33 dasm_DD_2A equ 0xC33
216: - 0BF3 dasm_DD_2B equ 0xBF3
217: - 0B75 dasm_DD_34 equ 0xB75
218: - 0B92 dasm_DD_35 equ 0xB92
219: - 0A7D dasm_DD_86 equ 0xA7D
220: - 0AA3 dasm_DD_8E equ 0xAA3
221: - 0AC6 dasm_DD_96 equ 0xAC6
222: - 0AE6 dasm_DD_9E equ 0xAE6
223: - 0B07 dasm_DD_A6 equ 0xB07
224: - 0B3E dasm_DD_AE equ 0xB3E
225: - 0B23 dasm_DD_B6 equ 0xB23
226: - 0B5A dasm_DD_BE equ 0xB5A
227: - 0CB3 dasm_DD_E1 equ 0xCB3
228: - 0A39 dasm_DD_E3 equ 0xA39
229: - 0C9D dasm_DD_E5 equ 0xC9D
230: - 0C83 dasm_DD_F9 equ 0xC83
231: - 0CAD dasm_E1 equ 0xCAD
232: - 0A2D dasm_E3 equ 0xA2D
233: - 0C97 dasm_E5 equ 0xC97
234: - 0946 dasm_E9 equ 0x946
235: - 0BBC dasm_ED_42 equ 0xBBC
236: - 0C57 dasm_ED_43 equ 0xC57
237: - 09EC dasm_ED_44 equ 0x9EC
238: - 0977 dasm_ED_45 equ 0x977
239: - 0A03 dasm_ED_46 equ 0xA03
240: - 0BB3 dasm_ED_4A equ 0xBB3
241: - 0C28 dasm_ED_4B equ 0xC28
242: - 0972 dasm_ED_4D equ 0x972
243: - 0A08 dasm_ED_56 equ 0xA08
244: - 0A0D dasm_ED_5E equ 0xA0D
245: - 0A51 dasm_ED_A0 equ 0xA51
246: - 0A63 dasm_ED_A1 equ 0xA63
247: - 0A5A dasm_ED_A8 equ 0xA5A
248: - 0A6C dasm_ED_A9 equ 0xA6C
249: - 0A55 dasm_ED_B0 equ 0xA55
250: - 0A67 dasm_ED_B1 equ 0xA67
251: - 0A5E dasm_ED_B8 equ 0xA5E
252: - 0A70 dasm_ED_B9 equ 0xA70
253: - 09FD dasm_F3 equ 0x9FD
254: - 0C79 dasm_F9 equ 0xC79
255: - 0A00 dasm_FB equ 0xA00
256: - 0958 dasm_FD equ 0x958
257: - 0C14 dasm_FD_01 equ 0xC14
258: - 0BCE dasm_FD_09 equ 0xBCE
259: - 0C6D dasm_FD_22 equ 0xC6D
260: - 0BE5 dasm_FD_23 equ 0xBE5
261: - 0C3F dasm_FD_2A equ 0xC3F
262: - 0BFC dasm_FD_2B equ 0xBFC
263: - 0B81 dasm_FD_34 equ 0xB81
264: - 0B9E dasm_FD_35 equ 0xB9E
265: - 0A8C dasm_FD_86 equ 0xA8C
266: - 0AB2 dasm_FD_8E equ 0xAB2
267: - 0AD2 dasm_FD_96 equ 0xAD2
268: - 0AF4 dasm_FD_9E equ 0xAF4
269: - 0B13 dasm_FD_A6 equ 0xB13
270: - 0B4A dasm_FD_AE equ 0xB4A
271: - 0B2E dasm_FD_B6 equ 0xB2E
272: - 0B65 dasm_FD_BE equ 0xB65
273: - 0CBB dasm_FD_E1 equ 0xCBB
274: - 0A45 dasm_FD_E3 equ 0xA45
275: - 0CA5 dasm_FD_E5 equ 0xCA5
276: - 0C8D dasm_FD_F9 equ 0xC8D
277: - 097C dasm_FF equ 0x97C
278: - 0CC3 dasm_UU equ 0xCC3
279: - 0CC7 dasm_UW equ 0xCC7
280: - 0B02 dasm__AND equ 0xB02
281: - 0B56 dasm__CP equ 0xB56
282: - 0B8D dasm__DEC equ 0xB8D
283: - 09D4 dasm__ED_47 equ 0x9D4
284: - 09DC dasm__ED_4F equ 0x9DC
285: - 09C4 dasm__ED_57 equ 0x9C4
286: - 09CC dasm__ED_5F equ 0x9CC
287: - 0B70 dasm__INC equ 0xB70
288: - 09C0 dasm__LD equ 0x9C0
289: - 0B1F dasm__OR equ 0xB1F
290: - 0ADE dasm__SBC equ 0xADE
291: - 0AC1 dasm__SUB equ 0xAC1
292: - 0B39 dasm__XOR equ 0xB39
293: - 04C1 dasm_opcode_table equ 0x4C1
294: - 02EE dasm_print16hex_addr equ 0x2EE
295: - 0306 dasm_print8hex equ 0x306
296: - 0CCC dasm_printFlags_table equ 0xCCC
297: - 0CDC dasm_printRegister8_table equ 0xCDC
298: - 0CFC dasm_printRegister8_table_HL equ 0xCFC
299: - 0CE4 dasm_printRegisterIX_table equ 0xCE4
300: - 0CEC dasm_printRegisterIY_table equ 0xCEC
301: - 0CF4 dasm_printRegisterSP_table equ 0xCF4
302: - 01B2 disassemble equ 0x1B2
303: - 0298 disassemble_continue equ 0x298
304: - 0288 disassemble_err equ 0x288
305: - 01B6 disassemble_next equ 0x1B6
306: - 0285 disassemble_print_opcode_params_end equ 0x285
307: - 0231 disassemble_print_opcode_params_loop equ 0x231
308: - 01F3 disassemble_print_opcode_raw equ 0x1F3
309: - 0207 disassemble_print_opcode_raw_fill equ 0x207
310: - 02CA disassemble_table_first_match equ 0x2CA
311: - 02E4 disassemble_table_found equ 0x2E4
312: - 02E8 disassemble_table_notfound equ 0x2E8
313: - 02A6 disassemble_table_seek equ 0x2A6
314: - 02AA disassemble_table_seek_loop equ 0x2AA
315: - 10C4 dump_pretty equ 0x10C4
316: - 10EE dump_pretty_ascii equ 0x10EE
317: - 110C dump_pretty_ascii_cont equ 0x110C
318: - 10F6 dump_pretty_ascii_loop equ 0x10F6
319: - 1107 dump_pretty_ascii_none equ 0x1107
320: - 10E1 dump_pretty_col equ 0x10E1
321: - 111E dump_pretty_end equ 0x111E
322: - 1112 dump_pretty_nextrow equ 0x1112
323: - 10CC dump_pretty_row equ 0x10CC
324: - 0E0B ide_printerror equ 0xE0B
325: - 0D8A ide_readsector_256 equ 0xD8A
326: - 0DB9 ide_readsector_256_done equ 0xDB9
327: - 0D8C ide_readsector_256_waitloop equ 0xD8C
328: - 0DBA ide_readsector_512_inv equ 0xDBA
329: - 0DBF ide_readsector_512_inv_waitloop equ 0xDBF
330: - 0DF5 ide_readsector_timeout equ 0xDF5
331: - 0D6C ide_regread_8 equ 0xD6C
332: - 0D50 ide_regwrite_8 equ 0xD50
333: - 0D43 ide_reset equ 0xD43
334: - 0E0A ide_writesector_256 equ 0xE0A
335: - 0EB1 ideif_init_drive equ 0xEB1
336: - 0EDF ideif_init_drive_detected equ 0xEDF
337: - 0EC5 ideif_init_drive_loop1 equ 0xEC5
338: - 0ED8 ideif_init_drive_nodrv equ 0xED8
339: - 0EB1 ideif_init_dtable equ 0xEB1
340: - 0FD8 iic_init equ 0xFD8
341: - 1017 iic_read_ack equ 0x1017
342: - 0FA9 iic_receive_buffer equ 0xFA9
343: - 0FCC iic_receive_buffer_done equ 0xFCC
344: - 0FD2 iic_receive_buffer_err equ 0xFD2
345: - 0FBA iic_receive_buffer_loop equ 0xFBA
346: - 109D iic_receive_byte equ 0x109D
347: - 10AA iic_receive_byte_loop equ 0x10AA
348: - 103D iic_send_ack equ 0x103D
349: - 0F7F iic_send_buffer equ 0xF7F
350: - 0F9D iic_send_buffer_done equ 0xF9D
351: - 0FA3 iic_send_buffer_err equ 0xFA3
352: - 0F8F iic_send_buffer_loop equ 0xF8F
353: - 1077 iic_send_byte equ 0x1077
354: - 1083 iic_send_byte_loop equ 0x1083
355: - 0FF6 iic_send_ebit equ 0xFF6
356: - 105A iic_send_nack equ 0x105A
357: - 0FE1 iic_send_sbit equ 0xFE1
358: - 0044 mon_var_template equ 0x44
359: - 0070 mon_var_template_end equ 0x70
360: - 0314 param_01 equ 0x314
361: - 033B param_02 equ 0x33B
362: - 0358 param_03 equ 0x358
363: - 0390 param_03_done equ 0x390
364: - 0379 param_03_neg equ 0x379
365: - 0394 param_04 equ 0x394
366: - 03A4 param_04_i equ 0x3A4
367: - 03AA param_05 equ 0x3AA
368: - 03B7 param_06 equ 0x3B7
369: - 03D1 param_07 equ 0x3D1
370: - 03DE param_08 equ 0x3DE
371: - 03F3 param_09 equ 0x3F3
372: - 03F9 param_09_0A equ 0x3F9
373: - 03EA param_0A equ 0x3EA
374: - 0408 param_10 equ 0x408
375: - 0418 param_11 equ 0x418
376: - 0427 param_11_12 equ 0x427
377: - 0447 param_11_12_all equ 0x447
378: - 043A param_11_12_def equ 0x43A
379: - 043F param_11_12_ix equ 0x43F
380: - 0444 param_11_12_iy equ 0x444
381: - 0420 param_12 equ 0x420
382: - 0458 param_13 equ 0x458
383: - 0477 param_80 equ 0x477
384: - 047E param_80_seek equ 0x47E
385: - 046E param_81 equ 0x46E
386: - 04B2 param_comma equ 0x4B2
387: - 048D param_printRegister equ 0x48D
388: - 04AB param_printRegisterA equ 0x4AB
389: - 04A3 param_printRegisterHL equ 0x4A3
390: - 0104 print_a_hex equ 0x104
391: - 0116 print_bcd equ 0x116
392: - 00D4 print_char equ 0xD4
393: - 00E7 print_clear equ 0xE7
394: - 00EE print_newLine equ 0xEE
395: - 00DC print_str equ 0xDC
396: - 00E6 print_str_end equ 0xE6
397: - 115E print_str_fixed equ 0x115E
398: - 00F9 print_wait_out equ 0xF9
399: - 012E read_bcd equ 0x12E
400: - 011C read_char equ 0x11C
401: - 0F13 read_lba_sector equ 0xF13
402: - 0F74 str_dev_notfound equ 0xF74
403: - 0F5E str_dev_ready equ 0xF5E
404: - 0F6B str_dev_ready2 equ 0xF6B
405: - 0F46 str_dev_waitready equ 0xF46
406: - 0E3E str_error_start equ 0xE3E
407: - 0E5B str_error_start1 equ 0xE5B
408: - 0E64 str_error_start2 equ 0xE64
409: - 0E6D str_error_time equ 0xE6D
410: - 17A4 str_post_apu equ 0x17A4
411: - 1753 str_post_ide_30 equ 0x1753
412: - 176E str_post_ide_40 equ 0x176E
413: - 17DA str_post_nd equ 0x17DA
414: - 1812 str_post_ok equ 0x1812
415: - 1789 str_post_pio equ 0x1789
416: - 17BF str_post_rtc equ 0x17BF
417: - 17E8 str_post_rtc_iv equ 0x17E8
418: - 400A var_apu_present equ 0x400A
419: - 402B var_buffer equ 0x402B
420: - 4000 var_buffer_len equ 0x4000
421: - 411A var_bytes_count equ 0x411A
422: - 4006 var_curserchar equ 0x4006
423: - 4007 var_curserlastaddr equ 0x4007
424: - 4005 var_curseron equ 0x4005
425: - 4004 var_curserstate equ 0x4004
426: - 4002 var_curserx equ 0x4002
427: - 4003 var_cursery equ 0x4003
428: - 4001 var_last_char equ 0x4001
429: - 4114 var_opcode equ 0x4114
430: - 4116 var_opcode_length equ 0x4116
431: - 4119 var_opcode_pcount equ 0x4119
432: - 4110 var_opcode_start equ 0x4110
433: - 4117 var_opcode_string equ 0x4117
434: - 4112 var_opcode_table equ 0x4112
435: - 4115 var_opcode_x equ 0x4115
436: - 4009 var_pio_present equ 0x4009
437: - 401B var_ps2mem equ 0x401B
438: - 400B var_scratch equ 0x400B
**** test.asm ****
2: - 8000 org 0x8000
3:
4: 0+17 8000 CD0880 call TermInit
5: 17+10 8003 C9 ret
6: ;-------------------------------------------------
7: ; Z8C/MEGA80 VDP Console IO Functions
8: ; by Dennis Gunia 2022/02
9: ; Version 0.1
10: ;
11: ; For Z8C Monitor
12: ;-------------------------------------------------
13:
14: ; Constant Values
15: - 40E0 TermVarMemoryLocation equ 0x40E0
16:
17:
18: ; Dynamic VARs
19: - 8004 TermVarTemplate:
20: - 40E0 phase TermVarMemoryLocation ;Change pointers to this template to the specified location
21: - 40E0 TermCurrentX: ; Start sector
22: - 40E0 01 defb 0x01
23: - 40E1 TermCurrentY: ; Start sector
24: - 40E1 04 defb 0x04
25: - 40E2 TermCursorState:
26: - 40E2 00 defb 0x00
27: - 40E3 TermCursorEnabled:
28: - 40E3 00 defb 0x00
29: - 40E4 TermVarTemplateEnd:
30: - 8008 dephase
31:
32:
33:
34: - 8008 TermInit:
35: ; Copy TermVarTemplate to memory
36: 27+10 8008 21E040 LD HL, TermVarMemoryLocation ;Load destination into HL
37: 37+10 800B 010480 LD BC, [TermVarTemplate] ;Load source into BC
38: 47+10 800E 11E440 LD DE, [TermVarTemplateEnd] ;Load end into DE
39: - 8011 TermInit_copy_loop:
40: 57+7 8011 0A LD A,(BC) ;Copy value
41: 64+7 8012 77 LD (HL),A
42: 71+6 8013 03 INC BC ;Increment pointers
43: 77+6 8014 23 INC HL
44: 83+11 8015 E5 PUSH HL ;Backup HL
45: 94+15 8016 ED52 SBC HL,DE ;Check if next pointer matches end
46: 109+10 8018 E1 POP HL ;Restore HL
47: 119+10 8019 C21180 JP NZ, TermInit_copy_loop ;Loop if pointer != end
48: ; template copy done
49:
50:
51: ; install font
52: 129+17 801C CDF181 call setup_vars
53: 146+10 801F 21E084 ld hl, TmsFont
54: 156+17 8022 CD3783 call TmsTextMode ; initialize text mode
55:
56: 173+7 8025 3E0C ld a, TmsDarkGreen ; set colors
57: 180+17 8027 CD9C82 call TmsBackground
58: 197+7 802A 3E0F ld a, TmsWhite
59: 204+17 802C CD4D84 call TmsTextColor
60:
61: 221+7 802F 3E00 ld a, 0 ; put title at 11, 1
62: 228+7 8031 1E00 ld e, 0
63: 235+17 8033 CD6084 call TmsTextPos
64: 252+10 8036 216981 ld hl, TitleMessage ; output title
65: 262+17 8039 CD7784 call TmsStrOut
66:
67: 279+7 803C 3E00 ld a, 0 ; put title at 11, 1
68: 286+7 803E 1E04 ld e, 4
69: 293+17 8040 CD6084 call TmsTextPos
70:
71:
72: 310+10 8043 C9 ret
73:
74: - 8044 TermSetCursor:
75: 320+13 8044 3AE140 ld a, (TermCurrentY)
76: 333+4 8047 5F ld e, a
77: 337+13 8048 3AE040 ld a, (TermCurrentX)
78:
79: 350+17 804B CD6084 call TmsTextPos
80: 367+10 804E C9 ret
81:
82: - 804F TermPrintStr:
83: ; BC contains String offset
84: ; Prints null terminated string
85: 377+11 804F F5 PUSH AF
86: 388+11 8050 C5 PUSH BC
87: - 8051 TermPrintStr_LOOP:
88: 399+7 8051 0A LD A,(BC)
89:
90: ; Return if nullbyte
91: 406+7 8052 F600 OR 0
92: 413+7+5 8054 2807 JR Z, TermPrintStr_EXIT
93: ; Print Char
94: 420+17 8056 CD6080 CALL TermPrintChar
95:
96: ; INC BC and JP start of loop
97: 437+6 8059 03 INC BC
98: 443+10 805A C35180 jp TermPrintStr_LOOP
99: - 805D TermPrintStr_EXIT:
100: 453+10 805D C1 POP BC
101: 463+10 805E F1 POP AF
102: 473+10 805F C9 RET
103:
104: - 8060 TermPrintChar:
105: 483+11 8060 F5 push AF
106: 494+11 8061 C5 push BC
107: 505+11 8062 D5 push DE
108: 516+11 8063 E5 push HL
109: ; check if special char
110: 527+7 8064 FE7F cp 0x7F ; Backspace
111: 534+10 8066 CAA180 jp z, TermPrintCharSPDelete
112: 544+7 8069 FE0D cp 13
113: 551+10 806B CAF480 jp z, TermPrintCharSPCR
114: 561+7 806E FE0A cp 10
115: 568+10 8070 CAD480 jp z, TermPrintCharSPLF
116: ; a has char
117: 578+17 8073 CD8082 call TmsChrOut
118: 595+13 8076 3AE040 ld a,(TermCurrentX)
119: 608+4 8079 3C inc a
120: 612+7 807A FE27 cp 39
121: 619+10 807C CA8B80 jp z,TermPrintCharWrap; if line end
122: 629+10 807F D28B80 jp nc,TermPrintCharWrap; if line end
123: 639+13 8082 32E040 ld (TermCurrentX), a
124: 652+17 8085 CD4480 call TermSetCursor
125: 669+10 8088 C3FE80 jp TermPrintCharDone
126: - 808B TermPrintCharWrap:
127: 679+4 808B AF xor a
128: 683+13 808C 32E040 ld (TermCurrentX), a
129: 696+13 808F 3AE140 ld a,(TermCurrentY)
130: 709+7 8092 FE17 cp 23 ; if already last line
131: 716+10 8094 CAE680 jp z, TermPrintCharSPLFScroll
132: 726+4 8097 3C inc a
133: 730+13 8098 32E140 ld (TermCurrentY),a
134: 743+17 809B CD4480 call TermSetCursor
135: 760+10 809E C3FE80 jp TermPrintCharDone
136: - 80A1 TermPrintCharSPDelete:
137: 770+13 80A1 3AE040 ld a,(TermCurrentX)
138: 783+4 80A4 A7 and a
139: 787+10 80A5 CABA80 jp z, TermPrintCharSPDeleteWrap ; if at pos X 0 then go previous line
140: 797+4 80A8 3D dec a ; else decrement X
141: 801+13 80A9 32E040 ld (TermCurrentX), a
142: 814+17 80AC CD4480 call TermSetCursor
143: 831+7 80AF 3E20 ld a, " "
144: 838+17 80B1 CD8082 call TmsChrOut
145: 855+17 80B4 CD4480 call TermSetCursor
146: 872+10 80B7 C3FE80 jp TermPrintCharDone
147: - 80BA TermPrintCharSPDeleteWrap:
148: 882+7 80BA 3E27 ld a,39
149: 889+13 80BC 32E040 ld (TermCurrentX), a
150: 902+13 80BF 3AE140 ld a,(TermCurrentY)
151: 915+4 80C2 3D dec a
152: 919+13 80C3 32E140 ld (TermCurrentY),a
153: 932+17 80C6 CD4480 call TermSetCursor
154: 949+7 80C9 3E20 ld a, " "
155: 956+17 80CB CD8082 call TmsChrOut
156: 973+17 80CE CD4480 call TermSetCursor
157: 990+10 80D1 C3FE80 jp TermPrintCharDone
158:
159: - 80D4 TermPrintCharSPLF: ; linefeed
160: 1000+13 80D4 3AE140 ld a,(TermCurrentY)
161: 1013+7 80D7 FE17 cp 23 ; if already last line
162: 1020+10 80D9 CAE680 jp z, TermPrintCharSPLFScroll
163: 1030+4 80DC 3C inc a
164: 1034+13 80DD 32E140 ld (TermCurrentY),a
165: 1047+17 80E0 CD4480 call TermSetCursor
166: 1064+10 80E3 C3FE80 jp TermPrintCharDone
167: - 80E6 TermPrintCharSPLFScroll:
168: 1074+17 80E6 CD0381 call TermScroll
169: 1091+7 80E9 3E17 ld a,23
170: 1098+13 80EB 32E140 ld (TermCurrentY),a
171: 1111+17 80EE CD4480 call TermSetCursor
172: 1128+10 80F1 C3FE80 jp TermPrintCharDone
173: - 80F4 TermPrintCharSPCR: ; linefeed
174: 1138+4 80F4 AF xor a
175: 1142+13 80F5 32E040 ld (TermCurrentX),a
176: 1155+17 80F8 CD4480 call TermSetCursor
177: 1172+10 80FB C3FE80 jp TermPrintCharDone
178:
179: - 80FE TermPrintCharDone:
180: 1182+10 80FE E1 pop HL
181: 1192+10 80FF D1 pop DE
182: 1202+10 8100 C1 pop BC
183: 1212+10 8101 F1 pop AF
184: 1222+10 8102 C9 ret
185:
186: - 8103 TermScroll:
187: 1232+10 8103 010038 ld bc, 0x3800 ; load start of text-buffer into pointer
188:
189: - 8106 TermScrollLine:
190: 1242+4 8106 60 ld h,b
191: 1246+4 8107 69 ld l,c
192:
193: 1250+10 8108 112800 ld de, 40 ; line width
194: 1260+11 810B 19 add hl, de
195:
196: 1271+4 810C 7D ld a,l ; setup VDP address
197: 1275+11 810D D381 out (0x81),a
198: 1286+4 810F 7C ld a,h
199: 1290+7 8110 E63F and 3fh
200: 1297+11 8112 D381 out (0x81),a
201: 1308+17 8114 CD6481 call VDPWait
202: 1325+11 8117 DB80 in a, (0x80) ; read byte
203: 1336+11 8119 F5 push af
204:
205: 1347+4 811A 79 ld a,c ; setup VDP address
206: 1351+11 811B D381 out (0x81),a
207: 1362+4 811D 78 ld a,b
208: 1366+7 811E E63F and 3fh
209: 1373+7 8120 F640 or 40h ; write bit
210: 1380+11 8122 D381 out (0x81),a
211: 1391+10 8124 F1 pop af
212: 1401+17 8125 CD6481 call VDPWait
213: 1418+11 8128 D380 out (0x80),a
214:
215: 1429+6 812A 03 inc bc
216:
217: 1435+4 812B 60 ld h,b
218: 1439+4 812C 69 ld l,c
219: 1443+10 812D 11983B ld de, VDPTextBufferEnd ; buffer end
220: 1453+15 8130 ED52 sbc hl, de
221:
222: 1468+10 8132 C20681 jp nz, TermScrollLine
223:
224: ; clear last line
225: 1478+10 8135 019803 ld bc,920
226: 1488+4 8138 79 ld a,c ; setup VDP address
227: 1492+11 8139 D381 out (0x81),a
228: 1503+4 813B 78 ld a,b
229: 1507+7 813C E63F and 3fh
230: 1514+7 813E F640 or 40h ; write bit
231: 1521+11 8140 D381 out (0x81),a
232: 1532+7 8142 0E28 ld c,40
233: - 8144 TermScrollClearLine:
234: 1539+10 8144 01983B ld bc, 0x3800 + 920
235: - 8147 TermScrollClearLineLoop:
236:
237: 1549+4 8147 79 ld a,c ; setup VDP addressh
238: 1553+11 8148 D381 out (0x81),a
239: 1564+4 814A 78 ld a,b
240: 1568+7 814B E63F and 3fh
241: 1575+7 814D F640 or 40h ; write bit
242: 1582+11 814F D381 out (0x81),a
243: 1593+7 8151 3E20 ld a, ' '
244: 1600+11 8153 D380 out (0x80),a
245: 1611+17 8155 CD6481 call VDPWait
246:
247: 1628+6 8158 03 inc bc
248: 1634+4 8159 60 ld h,b
249: 1638+4 815A 69 ld l,c
250: 1642+10 815B 11C03B ld de, 0x3800 + 960 ; buffer end
251: 1652+15 815E ED52 sbc hl, de
252:
253: 1667+10 8160 C24781 jp nz, TermScrollClearLineLoop
254: 1677+10 8163 C9 ret
255:
256: - 8164 VDPWait:
257: 1687+4 8164 00 nop
258: 1691+4 8165 00 nop
259: 1695+4 8166 00 nop
260: 1699+4 8167 00 nop
261: 1703+10 8168 C9 ret
262:
263: - 0000 VDPTextBufferStart equ 0
264: - 3B98 VDPTextBufferEnd equ 0x3800 + 920
265:
266: - 8169 TitleMessage:
267: - 8169 20205A38 db ' Z8C Mk IV - A Z80 Homebrew Computer '
43204D6B
20495620
2D204120
5A383020
486F6D65
62726577
20436F6D
70757465
72202020
268: - 8191 2020524F db ' ROM Ver. 1.0 by Dennis Gunia (2022) '
4D205665
722E2031
2E302062
79204465
6E6E6973
2047756E
69612028
32303232
29202020
269: - 81B9 20202020 db ' 48k RAM - 4MHz Z80 CPU ',0
20202020
2034386B
2052414D
202D2034
4D487A20
5A383020
43505520
20202020
20202020
00
270:
271: - 81E2 TmsSubs:
272: .include "tms.s" ; TMS graphics routines
**** include/tms.s ****
1: ; TMS9918A graphics subroutines
2: ; Copyright 2018-2020 J.B. Langston
3: ;
4: ; Permission is hereby granted, free of charge, to any person obtaining a
5: ; copy of this software and associated documentation files (the "Software"),
6: ; to deal in the Software without restriction, including without limitation
7: ; the rights to use, copy, modify, merge, publish, distribute, sublicense,
8: ; and/or sell copies of the Software, and to permit persons to whom the
9: ; Software is furnished to do so, subject to the following conditions:
10: ;
11: ; The above copyright notice and this permission notice shall be included in
12: ; all copies or substantial portions of the Software.
13: ;
14: ; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15: ; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16: ; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17: ; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18: ; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19: ; FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20: ; DEALINGS IN THE SOFTWARE.
21:
22: ; VDP Programmer's Guide: http://map.grauw.nl/resources/video/ti-vdp-programmers-guide.pdf
23:
24: - E400 phase 0xE400
25: ; ---------------------------------------------------------------------------
26: ; configuration parameters; can be changed at runtime
27: - E400 TmsPort:
28: - E400 E0 defb 0xE0 ; port for TMS vram (reg is 1 higher)
29: - E401 TmsWait:
30: - E401 40 defb 64 ; iterations to wait after ram access
31: - E402 TmsMode:
32: - E402 0000 defw 0 ; mode registers
33: - E404 TmsNameAddr:
34: - E404 0038 defw 3800h ; name table address (multiples of 400H)
35: - E406 TmsColorAddr:
36: - E406 0020 defw 2000h ; color table address (multiples of 40H)
37: - E408 TmsPatternAddr:
38: - E408 0000 defw 0 ; pattern table (multiples of 800H)
39: - E40A TmsSpritePatternAddr:
40: - E40A 0018 defw 1800h ; sprite attribute table (multiples of 80H)
41: - E40C TmsSpriteAttrAddr:
42: - E40C C03B defw 3bc0h ; sprite pattern table (multiples of 800H)
43: - E40E TmsScreenColors:
44: - E40E 00 defb 0 ; background (low nybble), text color (high nybble)
45: ; ---------------------------------------------------------------------------
46: ; register constants
47: - 81F1 dephase
48: - 81F1 setup_vars:
49:
50: 1713+7 81F1 3EE0 ld a,0xE0
51: 1720+13 81F3 3200E4 ld (TmsPort),a
52:
53: 1733+7 81F6 3E02 ld a,2
54: 1740+13 81F8 3201E4 ld (TmsWait),a
55:
56: 1753+7 81FB 3E00 ld a,0
57: 1760+13 81FD 3202E4 ld (TmsMode),a
58: 1773+7 8200 3E00 ld a,0
59: 1780+13 8202 3203E4 ld (TmsMode+1),a
60:
61: 1793+7 8205 3E00 ld a,0
62: 1800+13 8207 3204E4 ld (TmsNameAddr),a
63: 1813+7 820A 3E38 ld a,38h
64: 1820+13 820C 3205E4 ld (TmsNameAddr+1),a
65:
66: 1833+7 820F 3E00 ld a,0
67: 1840+13 8211 3208E4 ld (TmsPatternAddr),a
68: 1853+7 8214 3E00 ld a,0
69: 1860+13 8216 3209E4 ld (TmsPatternAddr+1),a
70:
71: 1873+7 8219 3E00 ld a,0
72: 1880+13 821B 3206E4 ld (TmsColorAddr),a
73: 1893+7 821E 3E20 ld a,20h
74: 1900+13 8220 3207E4 ld (TmsColorAddr+1),a
75:
76:
77: 1913+7 8223 3E00 ld a,0
78: 1920+13 8225 320AE4 ld (TmsSpritePatternAddr),a
79: 1933+7 8228 3E18 ld a,0x18
80: 1940+13 822A 320BE4 ld (TmsSpritePatternAddr+1),a
81:
82:
83: 1953+7 822D 3EC0 ld a,0xc0
84: 1960+13 822F 320CE4 ld (TmsSpriteAttrAddr),a
85: 1973+7 8232 3E3B ld a,0x3b
86: 1980+13 8234 320DE4 ld (TmsSpriteAttrAddr+1),a
87:
88: 1993+10 8237 C9 ret
89:
90: - 0040 TmsWriteBit: equ 40h ; bit to indicate memory write
91:
92: ; Registers
93: - 0080 TmsCtrl0Reg: equ 80h
94: - 0081 TmsCtrl1Reg: equ 81h
95: - 0082 TmsNameReg: equ 82h
96: - 0083 TmsColorTableReg: equ 83h
97: - 0084 TmsPatternReg: equ 84h
98: - 0085 TmsSpriteAttrReg: equ 85h
99: - 0086 TmsSpritePatternReg: equ 86h
100: - 0087 TmsColorReg: equ 87h
101:
102: ; Control Register Bits
103: - 0200 TmsM3: equ 200h
104: - 0100 TmsExtVideo: equ 100h
105: - 0080 Tms16k: equ 80h
106: - 0040 TmsDisplayEnable: equ 40h
107: - 0020 TmsIntEnableBit: equ 20h
108: - 0010 TmsM1: equ 10h
109: - 0008 TmsM2: equ 8
110: - 0002 TmsSprite32: equ 2
111: - 0001 TmsSpriteMag: equ 1
112:
113: ; ---------------------------------------------------------------------------
114: ; table lengths
115:
116: - 0300 TmsTileNameLen: equ 300h
117: - 03C0 TmsTextNameLen: equ 3c0h
118:
119: - 0020 TmsTileColorLen: equ 20h
120: - 0800 TmsBitmapColorLen: equ 800h
121:
122: - 0800 TmsTilePatternLen: equ 800h
123: - 0800 TmsTextPatternLen: equ 800h
124: - 0600 TmsMulticolorPatternLen: equ 600h
125: - 1800 TmsBitmapPatternLen: equ 1800h
126:
127: ; ---------------------------------------------------------------------------
128: ; color constants
129:
130: - 0000 TmsTransparent: equ 0
131: - 0001 TmsBlack: equ 1
132: - 0002 TmsMediumGreen: equ 2
133: - 0003 TmsLightGreen: equ 3
134: - 0004 TmsDarkBlue: equ 4
135: - 0005 TmsLightBlue: equ 5
136: - 0006 TmsDarkRed: equ 6
137: - 0007 TmsCyan: equ 7
138: - 0008 TmsMediumRed: equ 8
139: - 0009 TmsLightRed: equ 9
140: - 000A TmsDarkYellow: equ 0ah
141: - 000B TmsLightYellow: equ 0bh
142: - 000C TmsDarkGreen: equ 0ch
143: - 000D TmsMagenta: equ 0dh
144: - 000E TmsGray: equ 0eh
145: - 000F TmsWhite: equ 0fh
146:
147: ; ---------------------------------------------------------------------------
148: ; port I/O routines
149:
150: ; These routines access the ports configured in TmsPort.
151:
152: ; These memory locations can be set at runtime to support different hardware
153: ; configurations from the same binary. TmsProbe automatically detects the
154: ; TMS9918A on common ports.
155:
156: ; The TMS9918A RAM must not be accessed more than once every 8 us or display
157: ; corruption may occur. During vblank and with the display disabled,
158: ; accesses can be 2 us apart, but we will always use 8 us minimum delay.
159:
160: ; TmsRamIn/TmsRamOut include a configurable delay loop, which waits for the
161: ; configured iterations between VRAM writes to work properly with faster CPUs
162:
163: ; Minimum time to execute each procedure call:
164: ; Z80: 88 cycles, 8.8 us @ 10 MHz
165: ; Z180: 80 cycles, 8.64 us @ 9.216 MHz, 4.32 us @ 18.432, 2.16 us @ 36.864
166: ;
167: ; Additional delay per djnz iteration:
168: ; Z80: 8 cycles * (iterations - 1)
169: ; 0.8 us @ 10 MHz
170: ; Z180: 7 cycles * (iterations - 1)
171: ; 0.756 us @ 9.216 MHz, 0.378 us @ 18.432, 0.189 us @ 36.864
172:
173: ; Delay loop iterations required for different CPU speeds:
174: ; Z80 @ 10 MHz or less: 1
175: ; Z180 @ 9.216 MHz or less: 1
176: ; Z180 @ 18.432 MHz: 10
177: ; Z180 @ 36.864 MHz: 31
178: - 8238 010A1F TmsWaits: defb 1, 10, 31 ; wait iterations to add for different CPU speeds
179:
180: ; set up wait time based on clock multiplier in E
181: - 823B TmsSetWait:
182: 2003+7 823B 3E01 ld a,1
183: 2010+13 823D 3201E4 ld (TmsWait), a
184: 2023+10 8240 C9 ret
185:
186: ; try to find TMS9918A on common ports
187: - 8241 TmsProbe:
188: 2033+10 8241 216582 ld hl, TmsPorts
189: 2043+7 8244 0603 ld b, TmsNumPorts
190: - 8246 TmsProbeNext:
191: 2050+7 8246 7E ld a, (hl)
192: 2057+13 8247 3200E4 ld (TmsPort), a
193: 2070+17 824A CD7682 call TmsRegIn ; clear vsync bit
194: 2087+17 824D CD7682 call TmsRegIn ; check it again
195: 2104+10 8250 FA6082 jp m, TmsProbeFailed ; if still set, not a TMS9918A
196: 2114+10 8253 11FFFF ld de, 0ffffh ; long enough for another vsync
197: - 8256 TmsProbeWait:
198: 2124+17 8256 CD7682 call TmsRegIn ; check vsync bit again
199: 2141+5+6 8259 F8 ret m ; if set, it's a TMS9918A (and Z is clear)
200: 2146+6 825A 1B dec de ; otherwise, keep waiting
201: 2152+4 825B 7B ld a, e
202: 2156+4 825C B2 or d
203: 2160+10 825D C25682 jp nz, TmsProbeWait
204: - 8260 TmsProbeFailed:
205: 2170+6 8260 23 inc hl ; if still clear after this long, try next port
206: 2176+8+5 8261 10E3 djnz TmsProbeNext
207: 2184+4 8263 AF xor a ; set Z if we ran out of ports to check
208: 2188+10 8264 C9 ret
209:
210: - 8265 TmsPorts: ; List of ports to probe:
211: - 8265 80 defb 0x80 ; ColecoVision / SG-1000
212: - 8266 98 defb 98h ; MSX
213: - 8267 10 defb 10h ; Sord M5 (conflicts with z80ctrl SIO port)
214: ;defb 8 ; Tatung Einstein (conflicts with z80ctrl drive ports)
215: ;defb 1 ; MTX (not supported by TMS9918A video card)
216: ; add additional ports to check here
217: - 0003 TmsNumPorts: equ $ - TmsPorts
218:
219: ; set a single register value
220: ; A = register value
221: ; E = register to set
222: - 8268 TmsSetReg:
223: 2198+17 8268 CD6C82 call TmsRegOut
224: 2215+4 826B 7B ld a, e
225: ; fallthrough to TmsRegOut
226:
227: ; write to configured register port
228: ; parameters:
229: ; A = value to write
230: - 826C TmsRegOut:
231: 2219+11 826C C5 push bc
232: 2230+20 826D ED4B00E4 ld bc, (TmsPort)
233: 2250+4 8271 0C inc c
234: 2254+12 8272 ED79 out (c), a
235: 2266+10 8274 C1 pop bc
236: 2276+10 8275 C9 ret
237:
238: ; read from configured register port
239: ; returns:
240: ; A = value read
241: - 8276 TmsRegIn:
242: 2286+11 8276 C5 push bc
243: 2297+20 8277 ED4B00E4 ld bc, (TmsPort)
244: 2317+4 827B 0C inc c
245: 2321+12 827C ED78 in a, (c)
246: 2333+10 827E C1 pop bc
247: 2343+10 827F C9 ret
248:
249: ; write to configured VRAM port
250: ; parameters:
251: ; A = value to write
252: ; Z80 | Z180 cycles...
253: - 8280 TmsRamOut: ; 17 | 16 (call)
254: 2353+11 8280 C5 push bc ; 11 | 11
255: 2364+20 8281 ED4B00E4 ld bc, (TmsPort) ; 20 | 18
256: 2384+12 8285 ED79 out (c), a ; 12 | 10
257: - 8287 TmsRamOutDelay:
258: 2396+8+5 8287 10FE djnz TmsRamOutDelay ; 8 | 7 plus (13 | 9) * (iterations-1)
259: 2404+10 8289 C1 pop bc ; 10 | 9
260: 2414+10 828A C9 ret ; 10 | 9
261:
262: ; read from configured VRAM port
263: ; returns:
264: ; A = value read
265: - 828B TmsRamIn:
266: 2424+11 828B C5 push bc
267: 2435+20 828C ED4B00E4 ld bc, (TmsPort)
268: - 8290 TmsRamInDelay:
269: 2455+8+5 8290 10FE djnz TmsRamInDelay
270: 2463+12 8292 ED78 in a, (c)
271: 2475+20 8294 ED4B00E4 ld bc, (TmsPort)
272: - 8298 TmsRamInDelay2:
273: 2495+8+5 8298 10FE djnz TmsRamInDelay2
274: 2503+10 829A C1 pop bc
275: 2513+10 829B C9 ret
276:
277: ; ---------------------------------------------------------------------------
278: ; register configuration routines
279:
280: ; set the background color
281: ; A = requested color
282: - 829C TmsBackground:
283: 2523+7 829C E60F and 0fh
284: 2530+4 829E 47 ld b, a
285: 2534+13 829F 3A0EE4 ld a, (TmsScreenColors)
286: 2547+7 82A2 E6F0 and 0f0h
287: 2554+4 82A4 B0 or b
288: 2558+13 82A5 320EE4 ld (TmsScreenColors), a
289: 2571+7 82A8 1E87 ld e, TmsColorReg
290: 2578+10 82AA C36882 jp TmsSetReg
291:
292: ; set the sprite configuration
293: ; A = sprite options
294: - 82AD TmsSpriteConfig:
295: 2588+7 82AD E603 and TmsSprite32|TmsSpriteMag
296: 2595+4 82AF 47 ld b, a
297: 2599+13 82B0 3A02E4 ld a, (TmsMode)
298: 2612+7 82B3 E6FC and ~(TmsSprite32|TmsSpriteMag)
299: 2619+4 82B5 B0 or b
300: 2623+13 82B6 3202E4 ld (TmsMode), a
301: 2636+7 82B9 1E81 ld e, TmsCtrl1Reg
302: 2643+10 82BB C36882 jp TmsSetReg
303:
304:
305: ; enable vblank interrupts
306: - 82BE TmsIntEnable:
307: 2653+13 82BE 3A02E4 ld a, (TmsMode)
308: 2666+7 82C1 F620 or TmsIntEnableBit
309: 2673+13 82C3 3202E4 ld (TmsMode), a
310: 2686+7 82C6 1E81 ld e, TmsCtrl1Reg
311: 2693+10 82C8 C36882 jp TmsSetReg
312:
313: ; disable vblank interrupts
314: - 82CB TmsIntDisable:
315: 2703+13 82CB 3A02E4 ld a, (TmsMode)
316: 2716+7 82CE E6DF and ~TmsIntEnableBit
317: 2723+13 82D0 3202E4 ld (TmsMode), a
318: 2736+7 82D3 1E81 ld e, TmsCtrl1Reg
319: 2743+10 82D5 C36882 jp TmsSetReg
320:
321: ; ---------------------------------------------------------------------------
322: ; initialization routines
323:
324: - 0080 TmsBlankFlags: equ Tms16k
325: - 00C0 TmsTileFlags: equ Tms16k | TmsDisplayEnable
326: - 00D0 TmsTextFlags: equ Tms16k | TmsDisplayEnable | TmsM1
327: - 00C8 TmsMulticolorFlags: equ Tms16k | TmsDisplayEnable | TmsM2
328: - 02C0 TmsBitmapFlags: equ Tms16k | TmsDisplayEnable | TmsM3
329:
330: ; reset registers and clear all 16KB of video memory
331: - 82D8 TmsReset:
332: 2753+10 82D8 218000 ld hl, TmsBlankFlags ; blank the screen with 16KB enabled
333: 2763+16 82DB 2202E4 ld (TmsMode), hl
334: 2779+4 82DE 7D ld a, l
335: 2783+7 82DF 1E81 ld e, TmsCtrl1Reg
336: 2790+17 82E1 CD6882 call TmsSetReg
337: 2807+4 82E4 7C ld a, h
338: 2811+7 82E5 1E80 ld e, TmsCtrl0Reg
339: 2818+17 82E7 CD6882 call TmsSetReg
340: 2835+7 82EA 3E00 ld a, TmsTransparent
341: 2842+17 82EC CD9C82 call TmsBackground
342: 2859+7 82EF 3E00 ld a, TmsTransparent
343: 2866+17 82F1 CD4D84 call TmsTextColor
344: 2883+10 82F4 110000 ld de, 0 ; clear entire VRAM
345: 2893+10 82F7 010040 ld bc, 4000h
346: 2903+7 82FA 3E00 ld a, 0
347: 2910+17 82FC CD3E84 call TmsFill
348: 2927+10 82FF C9 ret
349:
350: ; initialize for multicolor mode
351: - 8300 TmsMulticolor:
352: 2937+17 8300 CDD882 call TmsReset
353: 2954+20 8303 ED5B04E4 ld de, (TmsNameAddr)
354: 2974+17 8307 CD1784 call TmsWriteAddr
355: 2991+7 830A 1606 ld d, 6 ; name table has 6 sections
356: 2998+7 830C 1E00 ld e, 0 ; lines in first section start at 0
357: - 830E TmsSectionLoop:
358: 3005+7 830E 0E04 ld c, 4 ; each section has 4 identical lines
359: - 8310 TmsLineLoop:
360: 3012+7 8310 0620 ld b, 32 ; each line is 32 bytes long
361: 3019+4 8312 7B ld a, e ; same starting value for each line in section
362: - 8313 TmsByteLoop:
363: 3023+17 8313 CD8082 call TmsRamOut
364: 3040+4 8316 3C inc a ; byte value
365: 3044+8+5 8317 10FA djnz TmsByteLoop
366: 3052+4 8319 0D dec c ; line counter
367: 3056+10 831A C21083 jp nz, TmsLineLoop
368: 3066+4 831D 5F ld e, a ; next starting value = current + 32
369: 3070+4 831E 15 dec d ; section counter
370: 3074+10 831F C20E83 jp nz, TmsSectionLoop
371: 3084+10 8322 21C800 ld hl, TmsMulticolorFlags
372: 3094+16 8325 2202E4 ld (TmsMode), hl
373: 3110+10 8328 C34C83 jp TmsInitNonBitmap
374:
375: ; initialize for tiled graphics
376: - 832B TmsTile:
377: 3120+17 832B CDD882 call TmsReset
378: 3137+10 832E 21C000 ld hl, TmsTileFlags
379: 3147+16 8331 2202E4 ld (TmsMode), hl
380: 3163+10 8334 C34C83 jp TmsInitNonBitmap
381:
382: ; initialize for text mode
383: ; HL = address of font to load
384: - 8337 TmsTextMode:
385: 3173+11 8337 E5 push hl
386: 3184+17 8338 CDD882 call TmsReset
387: 3201+10 833B E1 pop hl
388: 3211+20 833C ED5B08E4 ld de, (TmsPatternAddr) ; load font from address in hl
389: 3231+10 8340 010008 ld bc, TmsTextPatternLen
390: 3241+17 8343 CD2F84 call TmsWrite
391: 3258+10 8346 21D000 ld hl, TmsTextFlags
392: 3268+16 8349 2202E4 ld (TmsMode), hl
393: ; fallthrough to TmsInitNonBitmap
394:
395: ; non-bitmap color and pattern table configuration
396: - 834C TmsInitNonBitmap:
397: ; set up color table address (register = address / 400H)
398: 3284+13 834C 3A06E4 ld a, (TmsColorAddr)
399: 3297+7 834F E6C0 and 0c0h
400: 3304+13 8351 3206E4 ld (TmsColorAddr), a
401: 3317+4 8354 57 ld d, a
402: 3321+13 8355 3A07E4 ld a, (TmsColorAddr+1)
403: 3334+7 8358 E63F and 3fh
404: 3341+13 835A 3207E4 ld (TmsColorAddr+1), a
405: 3354+8 835D CB12 rl d
406: 3362+4 835F 17 rla
407: 3366+8 8360 CB12 rl d
408: 3374+4 8362 17 rla
409: 3378+7 8363 1E83 ld e, TmsColorTableReg
410: 3385+17 8365 CD6882 call TmsSetReg
411:
412: ; set up pattern table address (register = address / 800H)
413: 3402+4 8368 AF xor a
414: 3406+13 8369 3208E4 ld (TmsPatternAddr), a
415: 3419+13 836C 3A09E4 ld a, (TmsPatternAddr+1)
416: 3432+7 836F E638 and 38h
417: 3439+13 8371 3209E4 ld (TmsPatternAddr+1), a
418: 3452+4 8374 0F rrca
419: 3456+4 8375 0F rrca
420: 3460+4 8376 0F rrca
421: 3464+7 8377 1E84 ld e, TmsPatternReg
422: 3471+17 8379 CD6882 call TmsSetReg
423: 3488+10 837C C3CA83 jp TmsInitCommon
424:
425: ; initialize for bitmapped graphics
426: - 837F TmsBitmap:
427: 3498+17 837F CDD882 call TmsReset
428: 3515+20 8382 ED5B04E4 ld de, (TmsNameAddr) ; initialize name table with 3 sets
429: 3535+17 8386 CD1784 call TmsWriteAddr ; of 256 bytes ranging from 00-FF
430: 3552+7 8389 0603 ld b, 3
431: 3559+4 838B AF xor a
432: - 838C TmsBitmapLoop:
433: 3563+17 838C CD8082 call TmsRamOut
434: 3580+4 838F 3C inc a
435: 3584+10 8390 C28C83 jp nz, TmsBitmapLoop
436: 3594+8+5 8393 10F7 djnz TmsBitmapLoop
437: 3602+10 8395 21C002 ld hl, TmsBitmapFlags
438: 3612+16 8398 2202E4 ld (TmsMode), hl
439:
440: ; set up color table at 0H (register = 7FH) or 2000H (register = 0FFH)
441: 3628+4 839B AF xor a
442: 3632+13 839C 3206E4 ld (TmsColorAddr), a
443: 3645+13 839F 3208E4 ld (TmsPatternAddr), a
444: 3658+13 83A2 3A07E4 ld a, (TmsColorAddr+1)
445: 3671+7 83A5 E620 and 20h
446: 3678+13 83A7 3207E4 ld (TmsColorAddr+1), a
447: 3691+7 83AA 3EFF ld a, 0ffh ; color table at 2000H
448: 3698+10 83AC C2B183 jp nz, TmsColorTableHigh
449: 3708+7 83AF 3E7F ld a, 7fh ; color table at 0H
450: - 83B1 TmsColorTableHigh:
451: 3715+7 83B1 1E83 ld e, TmsColorTableReg
452: 3722+17 83B3 CD6882 call TmsSetReg
453:
454: ; set up pattern table at 0H (register = 3) or 2000H (register = 7)
455: 3739+13 83B6 3A09E4 ld a, (TmsPatternAddr+1)
456: 3752+7 83B9 E620 and 20h
457: 3759+13 83BB 3209E4 ld (TmsPatternAddr+1), a
458: 3772+7 83BE 3E07 ld a, 7 ; pattern table at 2000H
459: 3779+10 83C0 C2C583 jp nz, TmsPatternTableHigh
460: 3789+7 83C3 3E03 ld a, 3 ; pattern table at 0H
461: - 83C5 TmsPatternTableHigh:
462: 3796+7 83C5 1E84 ld e, TmsPatternReg
463: 3803+17 83C7 CD6882 call TmsSetReg
464: ; fall through to TmsInitCommon
465:
466:
467: ; common initialization for all modes
468: - 83CA TmsInitCommon:
469: ; set up name table address (register = address / 400H)
470: 3820+4 83CA AF xor a
471: 3824+13 83CB 3204E4 ld (TmsNameAddr), a
472: 3837+13 83CE 3A05E4 ld a, (TmsNameAddr+1)
473: 3850+7 83D1 E63C and 3ch
474: 3857+13 83D3 3205E4 ld (TmsNameAddr+1), a
475: 3870+4 83D6 0F rrca
476: 3874+4 83D7 0F rrca
477: 3878+7 83D8 1E82 ld e, TmsNameReg
478: 3885+17 83DA CD6882 call TmsSetReg
479:
480: ; set up sprite pattern table address (register = address / 80H)
481: 3902+13 83DD 3A0CE4 ld a, (TmsSpriteAttrAddr)
482: 3915+7 83E0 E680 and 80h
483: 3922+13 83E2 320CE4 ld (TmsSpriteAttrAddr), a
484: 3935+4 83E5 57 ld d, a
485: 3939+13 83E6 3A0DE4 ld a, (TmsSpriteAttrAddr+1)
486: 3952+7 83E9 E67F and 7fh
487: 3959+8 83EB CB12 rl d
488: 3967+4 83ED 17 rla
489: 3971+7 83EE 1E85 ld e, TmsSpriteAttrReg
490: 3978+17 83F0 CD6882 call TmsSetReg
491:
492: ; set up sprite attribute table address (register = address / 800H)
493: 3995+4 83F3 AF xor a
494: 3999+13 83F4 320AE4 ld (TmsSpritePatternAddr), a
495: 4012+13 83F7 3A0BE4 ld a, (TmsSpritePatternAddr+1)
496: 4025+7 83FA E638 and 38h
497: 4032+13 83FC 320BE4 ld (TmsSpritePatternAddr+1), a
498: 4045+4 83FF 0F rrca
499: 4049+4 8400 0F rrca
500: 4053+4 8401 0F rrca
501: 4057+7 8402 1E86 ld e, TmsSpritePatternReg
502: 4064+17 8404 CD6882 call TmsSetReg
503:
504: ; set up control registers
505: 4081+7 8407 1E81 ld e, TmsCtrl1Reg
506: 4088+13 8409 3A02E4 ld a, (TmsMode)
507: 4101+17 840C CD6882 call TmsSetReg
508: 4118+13 840F 3A03E4 ld a, (TmsMode+1)
509: 4131+7 8412 1E80 ld e, TmsCtrl0Reg
510: 4138+10 8414 C36882 jp TmsSetReg
511:
512: ; ---------------------------------------------------------------------------
513: ; memory access routines
514:
515: ; set the next address of vram to write
516: ; DE = address
517: - 8417 TmsWriteAddr:
518: 4148+4 8417 7B ld a, e ; send lsb
519: 4152+17 8418 CD6C82 call TmsRegOut
520: 4169+4 841B 7A ld a, d ; mask off msb to max of 16KB
521: 4173+7 841C E63F and 3fh
522: 4180+7 841E F640 or TmsWriteBit ; indicate that this is a write
523: 4187+17 8420 CD6C82 call TmsRegOut
524: 4204+10 8423 C9 ret
525:
526: ; set the next address of vram to read
527: ; DE = address
528: - 8424 TmsReadAddr:
529: 4214+4 8424 7B ld a, e ; send lsb
530: 4218+17 8425 CD6C82 call TmsRegOut
531: 4235+4 8428 7A ld a, d ; mask off msb to max of 16KB
532: 4239+7 8429 E63F and 3Fh
533: 4246+17 842B CD6C82 call TmsRegOut
534: 4263+10 842E C9 ret
535:
536: ; copy bytes from ram to vram
537: ; HL = ram source address
538: ; DE = vram destination address
539: ; BC = byte count
540: - 842F TmsWrite:
541: 4273+17 842F CD1784 call TmsWriteAddr
542: - 8432 TmsWriteLoop:
543: 4290+7 8432 7E ld a, (hl)
544: 4297+17 8433 CD8082 call TmsRamOut
545: 4314+6 8436 23 inc hl
546: 4320+6 8437 0B dec bc
547: 4326+4 8438 78 ld a, b
548: 4330+4 8439 B1 or c
549: 4334+10 843A C23284 jp nz, TmsWriteLoop
550: 4344+10 843D C9 ret
551:
552: ; fill a section of memory with a single value
553: ; A = value to fill
554: ; DE = vram destination address
555: ; BC = byte count
556: - 843E TmsFill:
557: 4354+11 843E F5 push af
558: 4365+17 843F CD1784 call TmsWriteAddr
559: 4382+10 8442 F1 pop af
560: - 8443 TmsFillLoop:
561: 4392+17 8443 CD8082 call TmsRamOut
562: 4409+4 8446 0D dec c
563: 4413+10 8447 C24384 jp nz, TmsFillLoop
564: 4423+8+5 844A 10F7 djnz TmsFillLoop
565: 4431+10 844C C9 ret
566:
567: ; ---------------------------------------------------------------------------
568: ; text routines
569: ; set text color
570: ; A = requested color
571: - 844D TmsTextColor:
572: 4441+4 844D 87 add a, a ; text color into high nybble
573: 4445+4 844E 87 add a, a
574: 4449+4 844F 87 add a, a
575: 4453+4 8450 87 add a, a
576: 4457+4 8451 47 ld b, a ; save for later
577: 4461+13 8452 3A0EE4 ld a, (TmsScreenColors) ; get current colors
578: 4474+7 8455 E60F and 0fh ; mask off old text color
579: 4481+4 8457 B0 or b ; set new text color
580: 4485+13 8458 320EE4 ld (TmsScreenColors), a
581: 4498+7 845B 1E87 ld e, TmsColorReg
582: 4505+10 845D C36882 jp TmsSetReg ; save it back
583:
584: ; set the address to place text at X/Y coordinate
585: ; A = X
586: ; E = Y
587: - 8460 TmsTextPos:
588: 4515+7 8460 1600 ld d, 0
589: 4522+10 8462 210000 ld hl, 0
590: 4532+11 8465 19 add hl, de ; Y x 1
591: 4543+11 8466 29 add hl, hl ; Y x 2
592: 4554+11 8467 29 add hl, hl ; Y x 4
593: 4565+11 8468 19 add hl, de ; Y x 5
594: 4576+11 8469 29 add hl, hl ; Y x 10
595: 4587+11 846A 29 add hl, hl ; Y x 20
596: 4598+11 846B 29 add hl, hl ; Y x 40
597: 4609+4 846C 5F ld e, a
598: 4613+11 846D 19 add hl, de ; add X for final address
599: 4624+20 846E ED5B04E4 ld de, (TmsNameAddr) ; add name table base address
600: 4644+11 8472 19 add hl, de
601: 4655+4 8473 EB ex de, hl
602: 4659+10 8474 C31784 jp TmsWriteAddr
603:
604: ; copy a null-terminated string to VRAM
605: ; HL = ram source address
606: - 8477 TmsStrOut:
607: 4669+7 8477 7E ld a, (hl)
608: 4676+7 8478 FE00 cp 0 ; return when NULL is encountered
609: 4683+5+6 847A C8 ret z
610: 4688+17 847B CD8082 call TmsRamOut
611: 4705+6 847E 23 inc hl
612: 4711+10 847F C37784 jp TmsStrOut
613:
614: ; repeat a character a certain number of times
615: ; A = character to output
616: ; B = count
617: - 8482 TmsRepeat:
618: 4721+17 8482 CD8082 call TmsRamOut
619: 4738+8+5 8485 10FB djnz TmsRepeat
620: 4746+10 8487 C9 ret
621:
622: ; output a character
623: ; A = character to output
624: - 8280 TmsChrOut: equ TmsRamOut
625:
626: ; ---------------------------------------------------------------------------
627: ; bitmap routines
628:
629: - A02F TmsClearPixel: equ 0A02Fh ; cpl, and b
630: - 00B0 TmsSetPixel: equ 0B0h ; nop, or b
631:
632: ; set operation for TmsPlotPixel to perform
633: ; HL = pixel operation (TmsClearPixel, TmsSetPixel)
634: - 8488 TmsPixelOp:
635: 4756+16 8488 22A984 ld (TmsPixelOpPlaceHolder), hl
636: 4772+10 848B C9 ret
637:
638: ; set or clear pixel at X, Y position
639: ; B = Y position
640: ; C = X position
641: - 848C TmsPlotPixel:
642: 4782+4 848C 78 ld a, b ; bail out if Y coord > 191
643: 4786+7 848D FEC0 cp 192
644: 4793+5+6 848F D0 ret nc
645: 4798+17 8490 CDCF84 call TmsXYAddr ; get address in DE for X/Y coord in BC
646: 4815+4 8493 79 ld a, c ; get lower 3 bits of X coord
647: 4819+7 8494 E607 and 7
648: 4826+7 8496 0600 ld b, 0
649: 4833+4 8498 4F ld c, a
650: 4837+10 8499 21B384 ld hl, TmsMaskLookup ; address of mask in table
651: 4847+11 849C 09 add hl, bc
652: 4858+7 849D 46 ld b, (hl) ; save mask in B
653: 4865+16 849E 2A08E4 ld hl, (TmsPatternAddr) ; get base address for pattern table
654: 4881+11 84A1 19 add hl, de
655: 4892+4 84A2 EB ex de, hl
656: 4896+17 84A3 CD2484 call TmsReadAddr ; set read within pattern table
657: 4913+17 84A6 CD8B82 call TmsRamIn
658: - 84A9 TmsPixelOpPlaceHolder:
659: 4930+4 84A9 B0 or b ; mask bit in previous byte
660: 4934+4 84AA 00 nop ; place holder for 2 byte mask operation
661: 4938+11 84AB F5 push af
662: 4949+17 84AC CD1784 call TmsWriteAddr ; set write address within pattern table
663: 4966+10 84AF F1 pop af
664: 4976+10 84B0 C38082 jp TmsRamOut
665:
666: - 84B3 TmsMaskLookup:
667: - 84B3 80402010 defb 80h, 40h, 20h, 10h, 8h, 4h, 2h, 1h
08040201
668:
669: ; set the color for a block of pixels in bitmap mode
670: ; B = Y position
671: ; C = X position
672: ; A = foreground/background color to set
673: - 84BB TmsPixelColor:
674: 4986+11 84BB F5 push af
675: 4997+4 84BC 78 ld a, b ; bail out if Y coord > 191
676: 5001+7 84BD FEC0 cp 192
677: 5008+5+6 84BF D0 ret nc
678: 5013+17 84C0 CDCF84 call TmsXYAddr ; get address in DE for X/Y coord in BC
679: 5030+16 84C3 2A06E4 ld hl, (TmsColorAddr) ; add the color table base address
680: 5046+11 84C6 19 add hl, de
681: 5057+4 84C7 EB ex de, hl
682: 5061+17 84C8 CD1784 call TmsWriteAddr ; set write address within color table
683: 5078+10 84CB F1 pop af
684: 5088+10 84CC C38082 jp TmsRamOut
685:
686: ; calculate address byte containing X/Y coordinate
687: ; B = Y position
688: ; C = X position
689: ; returns address in DE
690: - 84CF TmsXYAddr:
691: 5098+4 84CF 78 ld a, b ; d = (y / 8)
692: 5102+4 84D0 0F rrca
693: 5106+4 84D1 0F rrca
694: 5110+4 84D2 0F rrca
695: 5114+7 84D3 E61F and 1fh
696: 5121+4 84D5 57 ld d, a
697:
698: 5125+4 84D6 79 ld a, c ; e = (x & f8)
699: 5129+7 84D7 E6F8 and 0f8h
700: 5136+4 84D9 5F ld e, a
701:
702: 5140+4 84DA 78 ld a, b ; e += (y & 7)
703: 5144+7 84DB E607 and 7
704: 5151+4 84DD B3 or e
705: 5155+4 84DE 5F ld e, a
**** test.asm ****
273: 5159+10 84DF C9 ret
274: ; .include "utility.s" ; BDOS utility routines
275: .include "font1.s"
**** include/font1.s ****
1: - 84E0 TmsFont:
2: ; 6x8 bitmap font by Oleg Kosenkov
3: ; Source: https://github.com/idispatch/raster-fonts/blob/master/font-6x8.c
4:
5: ; code=0, hex=0x00, ascii="^@"
6: - 84E0 00 defb 00000000b
7: - 84E1 00 defb 00000000b
8: - 84E2 00 defb 00000000b
9: - 84E3 00 defb 00000000b
10: - 84E4 00 defb 00000000b
11: - 84E5 00 defb 00000000b
12: - 84E6 00 defb 00000000b
13: - 84E7 00 defb 00000000b
14:
15: ; code=1, hex=0x01, ascii="^A"
16: - 84E8 38 defb 00111000b
17: - 84E9 44 defb 01000100b
18: - 84EA 6C defb 01101100b
19: - 84EB 44 defb 01000100b
20: - 84EC 54 defb 01010100b
21: - 84ED 44 defb 01000100b
22: - 84EE 38 defb 00111000b
23: - 84EF 00 defb 00000000b
24:
25: ; code=2, hex=0x02, ascii="^B"
26: - 84F0 38 defb 00111000b
27: - 84F1 7C defb 01111100b
28: - 84F2 54 defb 01010100b
29: - 84F3 7C defb 01111100b
30: - 84F4 44 defb 01000100b
31: - 84F5 7C defb 01111100b
32: - 84F6 38 defb 00111000b
33: - 84F7 00 defb 00000000b
34:
35: ; code=3, hex=0x03, ascii="^C"
36: - 84F8 00 defb 00000000b
37: - 84F9 28 defb 00101000b
38: - 84FA 7C defb 01111100b
39: - 84FB 7C defb 01111100b
40: - 84FC 7C defb 01111100b
41: - 84FD 38 defb 00111000b
42: - 84FE 10 defb 00010000b
43: - 84FF 00 defb 00000000b
44:
45: ; code=4, hex=0x04, ascii="^D"
46: - 8500 00 defb 00000000b
47: - 8501 10 defb 00010000b
48: - 8502 38 defb 00111000b
49: - 8503 7C defb 01111100b
50: - 8504 7C defb 01111100b
51: - 8505 38 defb 00111000b
52: - 8506 10 defb 00010000b
53: - 8507 00 defb 00000000b
54:
55: ; code=5, hex=0x05, ascii="^E"
56: - 8508 10 defb 00010000b
57: - 8509 38 defb 00111000b
58: - 850A 38 defb 00111000b
59: - 850B 10 defb 00010000b
60: - 850C 7C defb 01111100b
61: - 850D 7C defb 01111100b
62: - 850E 10 defb 00010000b
63: - 850F 00 defb 00000000b
64:
65: ; code=6, hex=0x06, ascii="^F"
66: - 8510 00 defb 00000000b
67: - 8511 10 defb 00010000b
68: - 8512 38 defb 00111000b
69: - 8513 7C defb 01111100b
70: - 8514 7C defb 01111100b
71: - 8515 10 defb 00010000b
72: - 8516 38 defb 00111000b
73: - 8517 00 defb 00000000b
74:
75: ; code=7, hex=0x07, ascii="^G"
76: - 8518 00 defb 00000000b
77: - 8519 00 defb 00000000b
78: - 851A 00 defb 00000000b
79: - 851B 30 defb 00110000b
80: - 851C 30 defb 00110000b
81: - 851D 00 defb 00000000b
82: - 851E 00 defb 00000000b
83: - 851F 00 defb 00000000b
84:
85: ; code=8, hex=0x08, ascii="^H"
86: - 8520 FC defb 11111100b
87: - 8521 FC defb 11111100b
88: - 8522 FC defb 11111100b
89: - 8523 CC defb 11001100b
90: - 8524 CC defb 11001100b
91: - 8525 FC defb 11111100b
92: - 8526 FC defb 11111100b
93: - 8527 FC defb 11111100b
94:
95: ; code=9, hex=0x09, ascii="^I"
96: - 8528 00 defb 00000000b
97: - 8529 00 defb 00000000b
98: - 852A 78 defb 01111000b
99: - 852B 48 defb 01001000b
100: - 852C 48 defb 01001000b
101: - 852D 78 defb 01111000b
102: - 852E 00 defb 00000000b
103: - 852F 00 defb 00000000b
104:
105: ; code=10, hex=0x0A, ascii="^J"
106: - 8530 FC defb 11111100b
107: - 8531 FC defb 11111100b
108: - 8532 84 defb 10000100b
109: - 8533 B4 defb 10110100b
110: - 8534 B4 defb 10110100b
111: - 8535 84 defb 10000100b
112: - 8536 FC defb 11111100b
113: - 8537 FC defb 11111100b
114:
115: ; code=11, hex=0x0b, ascii="^K"
116: - 8538 00 defb 00000000b
117: - 8539 1C defb 00011100b
118: - 853A 0C defb 00001100b
119: - 853B 34 defb 00110100b
120: - 853C 48 defb 01001000b
121: - 853D 48 defb 01001000b
122: - 853E 30 defb 00110000b
123: - 853F 00 defb 00000000b
124:
125: ; code=12, hex=0x0C, ascii="^L"
126: - 8540 38 defb 00111000b
127: - 8541 44 defb 01000100b
128: - 8542 44 defb 01000100b
129: - 8543 38 defb 00111000b
130: - 8544 10 defb 00010000b
131: - 8545 38 defb 00111000b
132: - 8546 10 defb 00010000b
133: - 8547 00 defb 00000000b
134:
135: ; code=13, hex=0x0D, ascii="^M"
136: - 8548 10 defb 00010000b
137: - 8549 18 defb 00011000b
138: - 854A 14 defb 00010100b
139: - 854B 10 defb 00010000b
140: - 854C 30 defb 00110000b
141: - 854D 70 defb 01110000b
142: - 854E 60 defb 01100000b
143: - 854F 00 defb 00000000b
144:
145: ; code=14, hex=0x0E, ascii="^N"
146: - 8550 0C defb 00001100b
147: - 8551 34 defb 00110100b
148: - 8552 2C defb 00101100b
149: - 8553 34 defb 00110100b
150: - 8554 2C defb 00101100b
151: - 8555 6C defb 01101100b
152: - 8556 60 defb 01100000b
153: - 8557 00 defb 00000000b
154:
155: ; code=15, hex=0x0F, ascii="^O"
156: - 8558 00 defb 00000000b
157: - 8559 54 defb 01010100b
158: - 855A 38 defb 00111000b
159: - 855B 6C defb 01101100b
160: - 855C 38 defb 00111000b
161: - 855D 54 defb 01010100b
162: - 855E 00 defb 00000000b
163: - 855F 00 defb 00000000b
164:
165: ; code=16, hex=0x10, ascii="^P"
166: - 8560 20 defb 00100000b
167: - 8561 30 defb 00110000b
168: - 8562 38 defb 00111000b
169: - 8563 3C defb 00111100b
170: - 8564 38 defb 00111000b
171: - 8565 30 defb 00110000b
172: - 8566 20 defb 00100000b
173: - 8567 00 defb 00000000b
174:
175: ; code=17, hex=0x11, ascii="^Q"
176: - 8568 08 defb 00001000b
177: - 8569 18 defb 00011000b
178: - 856A 38 defb 00111000b
179: - 856B 78 defb 01111000b
180: - 856C 38 defb 00111000b
181: - 856D 18 defb 00011000b
182: - 856E 08 defb 00001000b
183: - 856F 00 defb 00000000b
184:
185: ; code=18, hex=0x12, ascii="^R"
186: - 8570 10 defb 00010000b
187: - 8571 38 defb 00111000b
188: - 8572 7C defb 01111100b
189: - 8573 10 defb 00010000b
190: - 8574 7C defb 01111100b
191: - 8575 38 defb 00111000b
192: - 8576 10 defb 00010000b
193: - 8577 00 defb 00000000b
194:
195: ; code=19, hex=0x13, ascii="^S"
196: - 8578 28 defb 00101000b
197: - 8579 28 defb 00101000b
198: - 857A 28 defb 00101000b
199: - 857B 28 defb 00101000b
200: - 857C 28 defb 00101000b
201: - 857D 00 defb 00000000b
202: - 857E 28 defb 00101000b
203: - 857F 00 defb 00000000b
204:
205: ; code=20, hex=0x14, ascii="^T"
206: - 8580 3C defb 00111100b
207: - 8581 54 defb 01010100b
208: - 8582 54 defb 01010100b
209: - 8583 34 defb 00110100b
210: - 8584 14 defb 00010100b
211: - 8585 14 defb 00010100b
212: - 8586 14 defb 00010100b
213: - 8587 00 defb 00000000b
214:
215: ; code=21, hex=0x15, ascii="^U"
216: - 8588 38 defb 00111000b
217: - 8589 44 defb 01000100b
218: - 858A 30 defb 00110000b
219: - 858B 28 defb 00101000b
220: - 858C 18 defb 00011000b
221: - 858D 44 defb 01000100b
222: - 858E 38 defb 00111000b
223: - 858F 00 defb 00000000b
224:
225: ; code=22, hex=0x16, ascii="^V"
226: - 8590 00 defb 00000000b
227: - 8591 00 defb 00000000b
228: - 8592 00 defb 00000000b
229: - 8593 00 defb 00000000b
230: - 8594 00 defb 00000000b
231: - 8595 78 defb 01111000b
232: - 8596 78 defb 01111000b
233: - 8597 00 defb 00000000b
234:
235: ; code=23, hex=0x17, ascii="^W"
236: - 8598 10 defb 00010000b
237: - 8599 38 defb 00111000b
238: - 859A 7C defb 01111100b
239: - 859B 10 defb 00010000b
240: - 859C 7C defb 01111100b
241: - 859D 38 defb 00111000b
242: - 859E 10 defb 00010000b
243: - 859F 38 defb 00111000b
244:
245: ; code=24, hex=0x18, ascii="^X"
246: - 85A0 10 defb 00010000b
247: - 85A1 38 defb 00111000b
248: - 85A2 7C defb 01111100b
249: - 85A3 10 defb 00010000b
250: - 85A4 10 defb 00010000b
251: - 85A5 10 defb 00010000b
252: - 85A6 10 defb 00010000b
253: - 85A7 00 defb 00000000b
254:
255: ; code=25, hex=0x19, ascii="^Y"
256: - 85A8 10 defb 00010000b
257: - 85A9 10 defb 00010000b
258: - 85AA 10 defb 00010000b
259: - 85AB 10 defb 00010000b
260: - 85AC 7C defb 01111100b
261: - 85AD 38 defb 00111000b
262: - 85AE 10 defb 00010000b
263: - 85AF 00 defb 00000000b
264:
265: ; code=26, hex=0x1A, ascii="^Z"
266: - 85B0 00 defb 00000000b
267: - 85B1 10 defb 00010000b
268: - 85B2 18 defb 00011000b
269: - 85B3 7C defb 01111100b
270: - 85B4 18 defb 00011000b
271: - 85B5 10 defb 00010000b
272: - 85B6 00 defb 00000000b
273: - 85B7 00 defb 00000000b
274:
275: ; code=27, hex=0x1B, ascii="^["
276: - 85B8 00 defb 00000000b
277: - 85B9 10 defb 00010000b
278: - 85BA 30 defb 00110000b
279: - 85BB 7C defb 01111100b
280: - 85BC 30 defb 00110000b
281: - 85BD 10 defb 00010000b
282: - 85BE 00 defb 00000000b
283: - 85BF 00 defb 00000000b
284:
285: ; code=28, hex=0x1C, ascii="^\"
286: - 85C0 00 defb 00000000b
287: - 85C1 00 defb 00000000b
288: - 85C2 00 defb 00000000b
289: - 85C3 40 defb 01000000b
290: - 85C4 40 defb 01000000b
291: - 85C5 40 defb 01000000b
292: - 85C6 7C defb 01111100b
293: - 85C7 00 defb 00000000b
294:
295: ; code=29, hex=0x1D, ascii="^]"
296: - 85C8 00 defb 00000000b
297: - 85C9 28 defb 00101000b
298: - 85CA 28 defb 00101000b
299: - 85CB 7C defb 01111100b
300: - 85CC 28 defb 00101000b
301: - 85CD 28 defb 00101000b
302: - 85CE 00 defb 00000000b
303: - 85CF 00 defb 00000000b
304:
305: ; code=30, hex=0x1E, ascii="^^"
306: - 85D0 10 defb 00010000b
307: - 85D1 10 defb 00010000b
308: - 85D2 38 defb 00111000b
309: - 85D3 38 defb 00111000b
310: - 85D4 7C defb 01111100b
311: - 85D5 7C defb 01111100b
312: - 85D6 00 defb 00000000b
313: - 85D7 00 defb 00000000b
314:
315: ; code=31, hex=0x1F, ascii="^_"
316: - 85D8 7C defb 01111100b
317: - 85D9 7C defb 01111100b
318: - 85DA 38 defb 00111000b
319: - 85DB 38 defb 00111000b
320: - 85DC 10 defb 00010000b
321: - 85DD 10 defb 00010000b
322: - 85DE 00 defb 00000000b
323: - 85DF 00 defb 00000000b
324:
325: ; code=32, hex=0x20, ascii=" "
326: - 85E0 00 defb 00000000b
327: - 85E1 00 defb 00000000b
328: - 85E2 00 defb 00000000b
329: - 85E3 00 defb 00000000b
330: - 85E4 00 defb 00000000b
331: - 85E5 00 defb 00000000b
332: - 85E6 00 defb 00000000b
333: - 85E7 00 defb 00000000b
334:
335: ; code=33, hex=0x21, ascii="!"
336: - 85E8 10 defb 00010000b
337: - 85E9 38 defb 00111000b
338: - 85EA 38 defb 00111000b
339: - 85EB 10 defb 00010000b
340: - 85EC 10 defb 00010000b
341: - 85ED 00 defb 00000000b
342: - 85EE 10 defb 00010000b
343: - 85EF 00 defb 00000000b
344:
345: ; code=34, hex=0x22, ascii="""
346: - 85F0 6C defb 01101100b
347: - 85F1 6C defb 01101100b
348: - 85F2 48 defb 01001000b
349: - 85F3 00 defb 00000000b
350: - 85F4 00 defb 00000000b
351: - 85F5 00 defb 00000000b
352: - 85F6 00 defb 00000000b
353: - 85F7 00 defb 00000000b
354:
355: ; code=35, hex=0x23, ascii="#"
356: - 85F8 00 defb 00000000b
357: - 85F9 28 defb 00101000b
358: - 85FA 7C defb 01111100b
359: - 85FB 28 defb 00101000b
360: - 85FC 28 defb 00101000b
361: - 85FD 7C defb 01111100b
362: - 85FE 28 defb 00101000b
363: - 85FF 00 defb 00000000b
364:
365: ; code=36, hex=0x24, ascii="$"
366: - 8600 20 defb 00100000b
367: - 8601 38 defb 00111000b
368: - 8602 40 defb 01000000b
369: - 8603 30 defb 00110000b
370: - 8604 08 defb 00001000b
371: - 8605 70 defb 01110000b
372: - 8606 10 defb 00010000b
373: - 8607 00 defb 00000000b
374:
375: ; code=37, hex=0x25, ascii=""
376: - 8608 64 defb 01100100b
377: - 8609 64 defb 01100100b
378: - 860A 08 defb 00001000b
379: - 860B 10 defb 00010000b
380: - 860C 20 defb 00100000b
381: - 860D 4C defb 01001100b
382: - 860E 4C defb 01001100b
383: - 860F 00 defb 00000000b
384:
385: ; code=38, hex=0x26, ascii="&"
386: - 8610 20 defb 00100000b
387: - 8611 50 defb 01010000b
388: - 8612 50 defb 01010000b
389: - 8613 20 defb 00100000b
390: - 8614 54 defb 01010100b
391: - 8615 48 defb 01001000b
392: - 8616 34 defb 00110100b
393: - 8617 00 defb 00000000b
394:
395: ; code=39, hex=0x27, ascii="'"
396: - 8618 30 defb 00110000b
397: - 8619 30 defb 00110000b
398: - 861A 20 defb 00100000b
399: - 861B 00 defb 00000000b
400: - 861C 00 defb 00000000b
401: - 861D 00 defb 00000000b
402: - 861E 00 defb 00000000b
403: - 861F 00 defb 00000000b
404:
405: ; code=40, hex=0x28, ascii="("
406: - 8620 10 defb 00010000b
407: - 8621 20 defb 00100000b
408: - 8622 20 defb 00100000b
409: - 8623 20 defb 00100000b
410: - 8624 20 defb 00100000b
411: - 8625 20 defb 00100000b
412: - 8626 10 defb 00010000b
413: - 8627 00 defb 00000000b
414:
415: ; code=41, hex=0x29, ascii=")"
416: - 8628 20 defb 00100000b
417: - 8629 10 defb 00010000b
418: - 862A 10 defb 00010000b
419: - 862B 10 defb 00010000b
420: - 862C 10 defb 00010000b
421: - 862D 10 defb 00010000b
422: - 862E 20 defb 00100000b
423: - 862F 00 defb 00000000b
424:
425: ; code=42, hex=0x2A, ascii="*"
426: - 8630 00 defb 00000000b
427: - 8631 28 defb 00101000b
428: - 8632 38 defb 00111000b
429: - 8633 7C defb 01111100b
430: - 8634 38 defb 00111000b
431: - 8635 28 defb 00101000b
432: - 8636 00 defb 00000000b
433: - 8637 00 defb 00000000b
434:
435: ; code=43, hex=0x2B, ascii="+"
436: - 8638 00 defb 00000000b
437: - 8639 10 defb 00010000b
438: - 863A 10 defb 00010000b
439: - 863B 7C defb 01111100b
440: - 863C 10 defb 00010000b
441: - 863D 10 defb 00010000b
442: - 863E 00 defb 00000000b
443: - 863F 00 defb 00000000b
444:
445: ; code=44, hex=0x2C, ascii=","
446: - 8640 00 defb 00000000b
447: - 8641 00 defb 00000000b
448: - 8642 00 defb 00000000b
449: - 8643 00 defb 00000000b
450: - 8644 00 defb 00000000b
451: - 8645 30 defb 00110000b
452: - 8646 30 defb 00110000b
453: - 8647 20 defb 00100000b
454:
455: ; code=45, hex=0x2D, ascii="-"
456: - 8648 00 defb 00000000b
457: - 8649 00 defb 00000000b
458: - 864A 00 defb 00000000b
459: - 864B 7C defb 01111100b
460: - 864C 00 defb 00000000b
461: - 864D 00 defb 00000000b
462: - 864E 00 defb 00000000b
463: - 864F 00 defb 00000000b
464:
465: ; code=46, hex=0x2E, ascii="."
466: - 8650 00 defb 00000000b
467: - 8651 00 defb 00000000b
468: - 8652 00 defb 00000000b
469: - 8653 00 defb 00000000b
470: - 8654 00 defb 00000000b
471: - 8655 30 defb 00110000b
472: - 8656 30 defb 00110000b
473: - 8657 00 defb 00000000b
474:
475: ; code=47, hex=0x2F, ascii="/"
476: - 8658 00 defb 00000000b
477: - 8659 04 defb 00000100b
478: - 865A 08 defb 00001000b
479: - 865B 10 defb 00010000b
480: - 865C 20 defb 00100000b
481: - 865D 40 defb 01000000b
482: - 865E 00 defb 00000000b
483: - 865F 00 defb 00000000b
484:
485: ; code=48, hex=0x30, ascii="0"
486: - 8660 38 defb 00111000b
487: - 8661 44 defb 01000100b
488: - 8662 4C defb 01001100b
489: - 8663 54 defb 01010100b
490: - 8664 64 defb 01100100b
491: - 8665 44 defb 01000100b
492: - 8666 38 defb 00111000b
493: - 8667 00 defb 00000000b
494:
495: ; code=49, hex=0x31, ascii="1"
496: - 8668 10 defb 00010000b
497: - 8669 30 defb 00110000b
498: - 866A 10 defb 00010000b
499: - 866B 10 defb 00010000b
500: - 866C 10 defb 00010000b
501: - 866D 10 defb 00010000b
502: - 866E 38 defb 00111000b
503: - 866F 00 defb 00000000b
504:
505: ; code=50, hex=0x32, ascii="2"
506: - 8670 38 defb 00111000b
507: - 8671 44 defb 01000100b
508: - 8672 04 defb 00000100b
509: - 8673 18 defb 00011000b
510: - 8674 20 defb 00100000b
511: - 8675 40 defb 01000000b
512: - 8676 7C defb 01111100b
513: - 8677 00 defb 00000000b
514:
515: ; code=51, hex=0x33, ascii="3"
516: - 8678 38 defb 00111000b
517: - 8679 44 defb 01000100b
518: - 867A 04 defb 00000100b
519: - 867B 38 defb 00111000b
520: - 867C 04 defb 00000100b
521: - 867D 44 defb 01000100b
522: - 867E 38 defb 00111000b
523: - 867F 00 defb 00000000b
524:
525: ; code=52, hex=0x34, ascii="4"
526: - 8680 08 defb 00001000b
527: - 8681 18 defb 00011000b
528: - 8682 28 defb 00101000b
529: - 8683 48 defb 01001000b
530: - 8684 7C defb 01111100b
531: - 8685 08 defb 00001000b
532: - 8686 08 defb 00001000b
533: - 8687 00 defb 00000000b
534:
535: ; code=53, hex=0x35, ascii="5"
536: - 8688 7C defb 01111100b
537: - 8689 40 defb 01000000b
538: - 868A 40 defb 01000000b
539: - 868B 78 defb 01111000b
540: - 868C 04 defb 00000100b
541: - 868D 44 defb 01000100b
542: - 868E 38 defb 00111000b
543: - 868F 00 defb 00000000b
544:
545: ; code=54, hex=0x36, ascii="6"
546: - 8690 18 defb 00011000b
547: - 8691 20 defb 00100000b
548: - 8692 40 defb 01000000b
549: - 8693 78 defb 01111000b
550: - 8694 44 defb 01000100b
551: - 8695 44 defb 01000100b
552: - 8696 38 defb 00111000b
553: - 8697 00 defb 00000000b
554:
555: ; code=55, hex=0x37, ascii="7"
556: - 8698 7C defb 01111100b
557: - 8699 04 defb 00000100b
558: - 869A 08 defb 00001000b
559: - 869B 10 defb 00010000b
560: - 869C 20 defb 00100000b
561: - 869D 20 defb 00100000b
562: - 869E 20 defb 00100000b
563: - 869F 00 defb 00000000b
564:
565: ; code=56, hex=0x38, ascii="8"
566: - 86A0 38 defb 00111000b
567: - 86A1 44 defb 01000100b
568: - 86A2 44 defb 01000100b
569: - 86A3 38 defb 00111000b
570: - 86A4 44 defb 01000100b
571: - 86A5 44 defb 01000100b
572: - 86A6 38 defb 00111000b
573: - 86A7 00 defb 00000000b
574:
575: ; code=57, hex=0x39, ascii="9"
576: - 86A8 38 defb 00111000b
577: - 86A9 44 defb 01000100b
578: - 86AA 44 defb 01000100b
579: - 86AB 3C defb 00111100b
580: - 86AC 04 defb 00000100b
581: - 86AD 08 defb 00001000b
582: - 86AE 30 defb 00110000b
583: - 86AF 00 defb 00000000b
584:
585: ; code=58, hex=0x3A, ascii=":"
586: - 86B0 00 defb 00000000b
587: - 86B1 00 defb 00000000b
588: - 86B2 30 defb 00110000b
589: - 86B3 30 defb 00110000b
590: - 86B4 00 defb 00000000b
591: - 86B5 30 defb 00110000b
592: - 86B6 30 defb 00110000b
593: - 86B7 00 defb 00000000b
594:
595: ; code=59, hex=0x3B, ascii=";"
596: - 86B8 00 defb 00000000b
597: - 86B9 00 defb 00000000b
598: - 86BA 30 defb 00110000b
599: - 86BB 30 defb 00110000b
600: - 86BC 00 defb 00000000b
601: - 86BD 30 defb 00110000b
602: - 86BE 30 defb 00110000b
603: - 86BF 20 defb 00100000b
604:
605: ; code=60, hex=0x3C, ascii="<"
606: - 86C0 08 defb 00001000b
607: - 86C1 10 defb 00010000b
608: - 86C2 20 defb 00100000b
609: - 86C3 40 defb 01000000b
610: - 86C4 20 defb 00100000b
611: - 86C5 10 defb 00010000b
612: - 86C6 08 defb 00001000b
613: - 86C7 00 defb 00000000b
614:
615: ; code=61, hex=0x3D, ascii="="
616: - 86C8 00 defb 00000000b
617: - 86C9 00 defb 00000000b
618: - 86CA 7C defb 01111100b
619: - 86CB 00 defb 00000000b
620: - 86CC 00 defb 00000000b
621: - 86CD 7C defb 01111100b
622: - 86CE 00 defb 00000000b
623: - 86CF 00 defb 00000000b
624:
625: ; code=62, hex=0x3E, ascii=">"
626: - 86D0 20 defb 00100000b
627: - 86D1 10 defb 00010000b
628: - 86D2 08 defb 00001000b
629: - 86D3 04 defb 00000100b
630: - 86D4 08 defb 00001000b
631: - 86D5 10 defb 00010000b
632: - 86D6 20 defb 00100000b
633: - 86D7 00 defb 00000000b
634:
635: ; code=63, hex=0x3F, ascii="?"
636: - 86D8 38 defb 00111000b
637: - 86D9 44 defb 01000100b
638: - 86DA 04 defb 00000100b
639: - 86DB 18 defb 00011000b
640: - 86DC 10 defb 00010000b
641: - 86DD 00 defb 00000000b
642: - 86DE 10 defb 00010000b
643: - 86DF 00 defb 00000000b
644:
645: ; code=64, hex=0x40, ascii="@"
646: - 86E0 38 defb 00111000b
647: - 86E1 44 defb 01000100b
648: - 86E2 5C defb 01011100b
649: - 86E3 54 defb 01010100b
650: - 86E4 5C defb 01011100b
651: - 86E5 40 defb 01000000b
652: - 86E6 38 defb 00111000b
653: - 86E7 00 defb 00000000b
654:
655: ; code=65, hex=0x41, ascii="A"
656: - 86E8 38 defb 00111000b
657: - 86E9 44 defb 01000100b
658: - 86EA 44 defb 01000100b
659: - 86EB 44 defb 01000100b
660: - 86EC 7C defb 01111100b
661: - 86ED 44 defb 01000100b
662: - 86EE 44 defb 01000100b
663: - 86EF 00 defb 00000000b
664:
665: ; code=66, hex=0x42, ascii="B"
666: - 86F0 78 defb 01111000b
667: - 86F1 44 defb 01000100b
668: - 86F2 44 defb 01000100b
669: - 86F3 78 defb 01111000b
670: - 86F4 44 defb 01000100b
671: - 86F5 44 defb 01000100b
672: - 86F6 78 defb 01111000b
673: - 86F7 00 defb 00000000b
674:
675: ; code=67, hex=0x43, ascii="C"
676: - 86F8 38 defb 00111000b
677: - 86F9 44 defb 01000100b
678: - 86FA 40 defb 01000000b
679: - 86FB 40 defb 01000000b
680: - 86FC 40 defb 01000000b
681: - 86FD 44 defb 01000100b
682: - 86FE 38 defb 00111000b
683: - 86FF 00 defb 00000000b
684:
685: ; code=68, hex=0x44, ascii="D"
686: - 8700 78 defb 01111000b
687: - 8701 44 defb 01000100b
688: - 8702 44 defb 01000100b
689: - 8703 44 defb 01000100b
690: - 8704 44 defb 01000100b
691: - 8705 44 defb 01000100b
692: - 8706 78 defb 01111000b
693: - 8707 00 defb 00000000b
694:
695: ; code=69, hex=0x45, ascii="E"
696: - 8708 7C defb 01111100b
697: - 8709 40 defb 01000000b
698: - 870A 40 defb 01000000b
699: - 870B 78 defb 01111000b
700: - 870C 40 defb 01000000b
701: - 870D 40 defb 01000000b
702: - 870E 7C defb 01111100b
703: - 870F 00 defb 00000000b
704:
705: ; code=70, hex=0x46, ascii="F"
706: - 8710 7C defb 01111100b
707: - 8711 40 defb 01000000b
708: - 8712 40 defb 01000000b
709: - 8713 78 defb 01111000b
710: - 8714 40 defb 01000000b
711: - 8715 40 defb 01000000b
712: - 8716 40 defb 01000000b
713: - 8717 00 defb 00000000b
714:
715: ; code=71, hex=0x47, ascii="G"
716: - 8718 38 defb 00111000b
717: - 8719 44 defb 01000100b
718: - 871A 40 defb 01000000b
719: - 871B 5C defb 01011100b
720: - 871C 44 defb 01000100b
721: - 871D 44 defb 01000100b
722: - 871E 3C defb 00111100b
723: - 871F 00 defb 00000000b
724:
725: ; code=72, hex=0x48, ascii="H"
726: - 8720 44 defb 01000100b
727: - 8721 44 defb 01000100b
728: - 8722 44 defb 01000100b
729: - 8723 7C defb 01111100b
730: - 8724 44 defb 01000100b
731: - 8725 44 defb 01000100b
732: - 8726 44 defb 01000100b
733: - 8727 00 defb 00000000b
734:
735: ; code=73, hex=0x49, ascii="I"
736: - 8728 38 defb 00111000b
737: - 8729 10 defb 00010000b
738: - 872A 10 defb 00010000b
739: - 872B 10 defb 00010000b
740: - 872C 10 defb 00010000b
741: - 872D 10 defb 00010000b
742: - 872E 38 defb 00111000b
743: - 872F 00 defb 00000000b
744:
745: ; code=74, hex=0x4A, ascii="J"
746: - 8730 04 defb 00000100b
747: - 8731 04 defb 00000100b
748: - 8732 04 defb 00000100b
749: - 8733 04 defb 00000100b
750: - 8734 44 defb 01000100b
751: - 8735 44 defb 01000100b
752: - 8736 38 defb 00111000b
753: - 8737 00 defb 00000000b
754:
755: ; code=75, hex=0x4B, ascii="K"
756: - 8738 44 defb 01000100b
757: - 8739 48 defb 01001000b
758: - 873A 50 defb 01010000b
759: - 873B 60 defb 01100000b
760: - 873C 50 defb 01010000b
761: - 873D 48 defb 01001000b
762: - 873E 44 defb 01000100b
763: - 873F 00 defb 00000000b
764:
765: ; code=76, hex=0x4C, ascii="L"
766: - 8740 40 defb 01000000b
767: - 8741 40 defb 01000000b
768: - 8742 40 defb 01000000b
769: - 8743 40 defb 01000000b
770: - 8744 40 defb 01000000b
771: - 8745 40 defb 01000000b
772: - 8746 7C defb 01111100b
773: - 8747 00 defb 00000000b
774:
775: ; code=77, hex=0x4D, ascii="M"
776: - 8748 44 defb 01000100b
777: - 8749 6C defb 01101100b
778: - 874A 54 defb 01010100b
779: - 874B 44 defb 01000100b
780: - 874C 44 defb 01000100b
781: - 874D 44 defb 01000100b
782: - 874E 44 defb 01000100b
783: - 874F 00 defb 00000000b
784:
785: ; code=78, hex=0x4E, ascii="N"
786: - 8750 44 defb 01000100b
787: - 8751 64 defb 01100100b
788: - 8752 54 defb 01010100b
789: - 8753 4C defb 01001100b
790: - 8754 44 defb 01000100b
791: - 8755 44 defb 01000100b
792: - 8756 44 defb 01000100b
793: - 8757 00 defb 00000000b
794:
795: ; code=79, hex=0x4F, ascii="O"
796: - 8758 38 defb 00111000b
797: - 8759 44 defb 01000100b
798: - 875A 44 defb 01000100b
799: - 875B 44 defb 01000100b
800: - 875C 44 defb 01000100b
801: - 875D 44 defb 01000100b
802: - 875E 38 defb 00111000b
803: - 875F 00 defb 00000000b
804:
805: ; code=80, hex=0x50, ascii="P"
806: - 8760 78 defb 01111000b
807: - 8761 44 defb 01000100b
808: - 8762 44 defb 01000100b
809: - 8763 78 defb 01111000b
810: - 8764 40 defb 01000000b
811: - 8765 40 defb 01000000b
812: - 8766 40 defb 01000000b
813: - 8767 00 defb 00000000b
814:
815: ; code=81, hex=0x51, ascii="Q"
816: - 8768 38 defb 00111000b
817: - 8769 44 defb 01000100b
818: - 876A 44 defb 01000100b
819: - 876B 44 defb 01000100b
820: - 876C 54 defb 01010100b
821: - 876D 48 defb 01001000b
822: - 876E 34 defb 00110100b
823: - 876F 00 defb 00000000b
824:
825: ; code=82, hex=0x52, ascii="R"
826: - 8770 78 defb 01111000b
827: - 8771 44 defb 01000100b
828: - 8772 44 defb 01000100b
829: - 8773 78 defb 01111000b
830: - 8774 48 defb 01001000b
831: - 8775 44 defb 01000100b
832: - 8776 44 defb 01000100b
833: - 8777 00 defb 00000000b
834:
835: ; code=83, hex=0x53, ascii="S"
836: - 8778 38 defb 00111000b
837: - 8779 44 defb 01000100b
838: - 877A 40 defb 01000000b
839: - 877B 38 defb 00111000b
840: - 877C 04 defb 00000100b
841: - 877D 44 defb 01000100b
842: - 877E 38 defb 00111000b
843: - 877F 00 defb 00000000b
844:
845: ; code=84, hex=0x54, ascii="T"
846: - 8780 7C defb 01111100b
847: - 8781 10 defb 00010000b
848: - 8782 10 defb 00010000b
849: - 8783 10 defb 00010000b
850: - 8784 10 defb 00010000b
851: - 8785 10 defb 00010000b
852: - 8786 10 defb 00010000b
853: - 8787 00 defb 00000000b
854:
855: ; code=85, hex=0x55, ascii="U"
856: - 8788 44 defb 01000100b
857: - 8789 44 defb 01000100b
858: - 878A 44 defb 01000100b
859: - 878B 44 defb 01000100b
860: - 878C 44 defb 01000100b
861: - 878D 44 defb 01000100b
862: - 878E 38 defb 00111000b
863: - 878F 00 defb 00000000b
864:
865: ; code=86, hex=0x56, ascii="V"
866: - 8790 44 defb 01000100b
867: - 8791 44 defb 01000100b
868: - 8792 44 defb 01000100b
869: - 8793 44 defb 01000100b
870: - 8794 44 defb 01000100b
871: - 8795 28 defb 00101000b
872: - 8796 10 defb 00010000b
873: - 8797 00 defb 00000000b
874:
875: ; code=87, hex=0x57, ascii="W"
876: - 8798 44 defb 01000100b
877: - 8799 44 defb 01000100b
878: - 879A 54 defb 01010100b
879: - 879B 54 defb 01010100b
880: - 879C 54 defb 01010100b
881: - 879D 54 defb 01010100b
882: - 879E 28 defb 00101000b
883: - 879F 00 defb 00000000b
884:
885: ; code=88, hex=0x58, ascii="X"
886: - 87A0 44 defb 01000100b
887: - 87A1 44 defb 01000100b
888: - 87A2 28 defb 00101000b
889: - 87A3 10 defb 00010000b
890: - 87A4 28 defb 00101000b
891: - 87A5 44 defb 01000100b
892: - 87A6 44 defb 01000100b
893: - 87A7 00 defb 00000000b
894:
895: ; code=89, hex=0x59, ascii="Y"
896: - 87A8 44 defb 01000100b
897: - 87A9 44 defb 01000100b
898: - 87AA 44 defb 01000100b
899: - 87AB 28 defb 00101000b
900: - 87AC 10 defb 00010000b
901: - 87AD 10 defb 00010000b
902: - 87AE 10 defb 00010000b
903: - 87AF 00 defb 00000000b
904:
905: ; code=90, hex=0x5A, ascii="Z"
906: - 87B0 78 defb 01111000b
907: - 87B1 08 defb 00001000b
908: - 87B2 10 defb 00010000b
909: - 87B3 20 defb 00100000b
910: - 87B4 40 defb 01000000b
911: - 87B5 40 defb 01000000b
912: - 87B6 78 defb 01111000b
913: - 87B7 00 defb 00000000b
914:
915: ; code=91, hex=0x5B, ascii="["
916: - 87B8 38 defb 00111000b
917: - 87B9 20 defb 00100000b
918: - 87BA 20 defb 00100000b
919: - 87BB 20 defb 00100000b
920: - 87BC 20 defb 00100000b
921: - 87BD 20 defb 00100000b
922: - 87BE 38 defb 00111000b
923: - 87BF 00 defb 00000000b
924:
925: ; code=92, hex=0x5C, ascii="\"
926: - 87C0 00 defb 00000000b
927: - 87C1 40 defb 01000000b
928: - 87C2 20 defb 00100000b
929: - 87C3 10 defb 00010000b
930: - 87C4 08 defb 00001000b
931: - 87C5 04 defb 00000100b
932: - 87C6 00 defb 00000000b
933: - 87C7 00 defb 00000000b
934:
935: ; code=93, hex=0x5D, ascii="]"
936: - 87C8 38 defb 00111000b
937: - 87C9 08 defb 00001000b
938: - 87CA 08 defb 00001000b
939: - 87CB 08 defb 00001000b
940: - 87CC 08 defb 00001000b
941: - 87CD 08 defb 00001000b
942: - 87CE 38 defb 00111000b
943: - 87CF 00 defb 00000000b
944:
945: ; code=94, hex=0x5E, ascii="^"
946: - 87D0 10 defb 00010000b
947: - 87D1 28 defb 00101000b
948: - 87D2 44 defb 01000100b
949: - 87D3 00 defb 00000000b
950: - 87D4 00 defb 00000000b
951: - 87D5 00 defb 00000000b
952: - 87D6 00 defb 00000000b
953: - 87D7 00 defb 00000000b
954:
955: ; code=95, hex=0x5F, ascii="_"
956: - 87D8 00 defb 00000000b
957: - 87D9 00 defb 00000000b
958: - 87DA 00 defb 00000000b
959: - 87DB 00 defb 00000000b
960: - 87DC 00 defb 00000000b
961: - 87DD 00 defb 00000000b
962: - 87DE 00 defb 00000000b
963: - 87DF FC defb 11111100b
964:
965: ; code=96, hex=0x60, ascii="`"
966: - 87E0 30 defb 00110000b
967: - 87E1 30 defb 00110000b
968: - 87E2 10 defb 00010000b
969: - 87E3 00 defb 00000000b
970: - 87E4 00 defb 00000000b
971: - 87E5 00 defb 00000000b
972: - 87E6 00 defb 00000000b
973: - 87E7 00 defb 00000000b
974:
975: ; code=97, hex=0x61, ascii="a"
976: - 87E8 00 defb 00000000b
977: - 87E9 00 defb 00000000b
978: - 87EA 38 defb 00111000b
979: - 87EB 04 defb 00000100b
980: - 87EC 3C defb 00111100b
981: - 87ED 44 defb 01000100b
982: - 87EE 3C defb 00111100b
983: - 87EF 00 defb 00000000b
984:
985: ; code=98, hex=0x62, ascii="b"
986: - 87F0 40 defb 01000000b
987: - 87F1 40 defb 01000000b
988: - 87F2 78 defb 01111000b
989: - 87F3 44 defb 01000100b
990: - 87F4 44 defb 01000100b
991: - 87F5 44 defb 01000100b
992: - 87F6 78 defb 01111000b
993: - 87F7 00 defb 00000000b
994:
995: ; code=99, hex=0x63, ascii="c"
996: - 87F8 00 defb 00000000b
997: - 87F9 00 defb 00000000b
998: - 87FA 38 defb 00111000b
999: - 87FB 44 defb 01000100b
1000: - 87FC 40 defb 01000000b
1001: - 87FD 44 defb 01000100b
1002: - 87FE 38 defb 00111000b
1003: - 87FF 00 defb 00000000b
1004:
1005: ; code=100, hex=0x64, ascii="d"
1006: - 8800 04 defb 00000100b
1007: - 8801 04 defb 00000100b
1008: - 8802 3C defb 00111100b
1009: - 8803 44 defb 01000100b
1010: - 8804 44 defb 01000100b
1011: - 8805 44 defb 01000100b
1012: - 8806 3C defb 00111100b
1013: - 8807 00 defb 00000000b
1014:
1015: ; code=101, hex=0x65, ascii="e"
1016: - 8808 00 defb 00000000b
1017: - 8809 00 defb 00000000b
1018: - 880A 38 defb 00111000b
1019: - 880B 44 defb 01000100b
1020: - 880C 78 defb 01111000b
1021: - 880D 40 defb 01000000b
1022: - 880E 38 defb 00111000b
1023: - 880F 00 defb 00000000b
1024:
1025: ; code=102, hex=0x66, ascii="f"
1026: - 8810 18 defb 00011000b
1027: - 8811 20 defb 00100000b
1028: - 8812 20 defb 00100000b
1029: - 8813 78 defb 01111000b
1030: - 8814 20 defb 00100000b
1031: - 8815 20 defb 00100000b
1032: - 8816 20 defb 00100000b
1033: - 8817 00 defb 00000000b
1034:
1035: ; code=103, hex=0x67, ascii="g"
1036: - 8818 00 defb 00000000b
1037: - 8819 00 defb 00000000b
1038: - 881A 3C defb 00111100b
1039: - 881B 44 defb 01000100b
1040: - 881C 44 defb 01000100b
1041: - 881D 3C defb 00111100b
1042: - 881E 04 defb 00000100b
1043: - 881F 38 defb 00111000b
1044:
1045: ; code=104, hex=0x68, ascii="h"
1046: - 8820 40 defb 01000000b
1047: - 8821 40 defb 01000000b
1048: - 8822 70 defb 01110000b
1049: - 8823 48 defb 01001000b
1050: - 8824 48 defb 01001000b
1051: - 8825 48 defb 01001000b
1052: - 8826 48 defb 01001000b
1053: - 8827 00 defb 00000000b
1054:
1055: ; code=105, hex=0x69, ascii="i"
1056: - 8828 10 defb 00010000b
1057: - 8829 00 defb 00000000b
1058: - 882A 10 defb 00010000b
1059: - 882B 10 defb 00010000b
1060: - 882C 10 defb 00010000b
1061: - 882D 10 defb 00010000b
1062: - 882E 18 defb 00011000b
1063: - 882F 00 defb 00000000b
1064:
1065: ; code=106, hex=0x6A, ascii="j"
1066: - 8830 08 defb 00001000b
1067: - 8831 00 defb 00000000b
1068: - 8832 18 defb 00011000b
1069: - 8833 08 defb 00001000b
1070: - 8834 08 defb 00001000b
1071: - 8835 08 defb 00001000b
1072: - 8836 48 defb 01001000b
1073: - 8837 30 defb 00110000b
1074:
1075: ; code=107, hex=0x6B, ascii="k"
1076: - 8838 40 defb 01000000b
1077: - 8839 40 defb 01000000b
1078: - 883A 48 defb 01001000b
1079: - 883B 50 defb 01010000b
1080: - 883C 60 defb 01100000b
1081: - 883D 50 defb 01010000b
1082: - 883E 48 defb 01001000b
1083: - 883F 00 defb 00000000b
1084:
1085: ; code=108, hex=0x6C, ascii="l"
1086: - 8840 10 defb 00010000b
1087: - 8841 10 defb 00010000b
1088: - 8842 10 defb 00010000b
1089: - 8843 10 defb 00010000b
1090: - 8844 10 defb 00010000b
1091: - 8845 10 defb 00010000b
1092: - 8846 18 defb 00011000b
1093: - 8847 00 defb 00000000b
1094:
1095: ; code=109, hex=0x6D, ascii="m"
1096: - 8848 00 defb 00000000b
1097: - 8849 00 defb 00000000b
1098: - 884A 68 defb 01101000b
1099: - 884B 54 defb 01010100b
1100: - 884C 54 defb 01010100b
1101: - 884D 44 defb 01000100b
1102: - 884E 44 defb 01000100b
1103: - 884F 00 defb 00000000b
1104:
1105: ; code=110, hex=0x6E, ascii="n"
1106: - 8850 00 defb 00000000b
1107: - 8851 00 defb 00000000b
1108: - 8852 70 defb 01110000b
1109: - 8853 48 defb 01001000b
1110: - 8854 48 defb 01001000b
1111: - 8855 48 defb 01001000b
1112: - 8856 48 defb 01001000b
1113: - 8857 00 defb 00000000b
1114:
1115: ; code=111, hex=0x6F, ascii="o"
1116: - 8858 00 defb 00000000b
1117: - 8859 00 defb 00000000b
1118: - 885A 38 defb 00111000b
1119: - 885B 44 defb 01000100b
1120: - 885C 44 defb 01000100b
1121: - 885D 44 defb 01000100b
1122: - 885E 38 defb 00111000b
1123: - 885F 00 defb 00000000b
1124:
1125: ; code=112, hex=0x70, ascii="p"
1126: - 8860 00 defb 00000000b
1127: - 8861 00 defb 00000000b
1128: - 8862 78 defb 01111000b
1129: - 8863 44 defb 01000100b
1130: - 8864 44 defb 01000100b
1131: - 8865 44 defb 01000100b
1132: - 8866 78 defb 01111000b
1133: - 8867 40 defb 01000000b
1134:
1135: ; code=113, hex=0x71, ascii="q"
1136: - 8868 00 defb 00000000b
1137: - 8869 00 defb 00000000b
1138: - 886A 3C defb 00111100b
1139: - 886B 44 defb 01000100b
1140: - 886C 44 defb 01000100b
1141: - 886D 44 defb 01000100b
1142: - 886E 3C defb 00111100b
1143: - 886F 04 defb 00000100b
1144:
1145: ; code=114, hex=0x72, ascii="r"
1146: - 8870 00 defb 00000000b
1147: - 8871 00 defb 00000000b
1148: - 8872 58 defb 01011000b
1149: - 8873 24 defb 00100100b
1150: - 8874 20 defb 00100000b
1151: - 8875 20 defb 00100000b
1152: - 8876 70 defb 01110000b
1153: - 8877 00 defb 00000000b
1154:
1155: ; code=115, hex=0x73, ascii="s"
1156: - 8878 00 defb 00000000b
1157: - 8879 00 defb 00000000b
1158: - 887A 38 defb 00111000b
1159: - 887B 40 defb 01000000b
1160: - 887C 38 defb 00111000b
1161: - 887D 04 defb 00000100b
1162: - 887E 38 defb 00111000b
1163: - 887F 00 defb 00000000b
1164:
1165: ; code=116, hex=0x74, ascii="t"
1166: - 8880 00 defb 00000000b
1167: - 8881 20 defb 00100000b
1168: - 8882 78 defb 01111000b
1169: - 8883 20 defb 00100000b
1170: - 8884 20 defb 00100000b
1171: - 8885 28 defb 00101000b
1172: - 8886 10 defb 00010000b
1173: - 8887 00 defb 00000000b
1174:
1175: ; code=117, hex=0x75, ascii="u"
1176: - 8888 00 defb 00000000b
1177: - 8889 00 defb 00000000b
1178: - 888A 48 defb 01001000b
1179: - 888B 48 defb 01001000b
1180: - 888C 48 defb 01001000b
1181: - 888D 58 defb 01011000b
1182: - 888E 28 defb 00101000b
1183: - 888F 00 defb 00000000b
1184:
1185: ; code=118, hex=0x76, ascii="v"
1186: - 8890 00 defb 00000000b
1187: - 8891 00 defb 00000000b
1188: - 8892 44 defb 01000100b
1189: - 8893 44 defb 01000100b
1190: - 8894 44 defb 01000100b
1191: - 8895 28 defb 00101000b
1192: - 8896 10 defb 00010000b
1193: - 8897 00 defb 00000000b
1194:
1195: ; code=119, hex=0x77, ascii="w"
1196: - 8898 00 defb 00000000b
1197: - 8899 00 defb 00000000b
1198: - 889A 44 defb 01000100b
1199: - 889B 44 defb 01000100b
1200: - 889C 54 defb 01010100b
1201: - 889D 7C defb 01111100b
1202: - 889E 28 defb 00101000b
1203: - 889F 00 defb 00000000b
1204:
1205: ; code=120, hex=0x78, ascii="x"
1206: - 88A0 00 defb 00000000b
1207: - 88A1 00 defb 00000000b
1208: - 88A2 48 defb 01001000b
1209: - 88A3 48 defb 01001000b
1210: - 88A4 30 defb 00110000b
1211: - 88A5 48 defb 01001000b
1212: - 88A6 48 defb 01001000b
1213: - 88A7 00 defb 00000000b
1214:
1215: ; code=121, hex=0x79, ascii="y"
1216: - 88A8 00 defb 00000000b
1217: - 88A9 00 defb 00000000b
1218: - 88AA 48 defb 01001000b
1219: - 88AB 48 defb 01001000b
1220: - 88AC 48 defb 01001000b
1221: - 88AD 38 defb 00111000b
1222: - 88AE 10 defb 00010000b
1223: - 88AF 60 defb 01100000b
1224:
1225: ; code=122, hex=0x7A, ascii="z"
1226: - 88B0 00 defb 00000000b
1227: - 88B1 00 defb 00000000b
1228: - 88B2 78 defb 01111000b
1229: - 88B3 08 defb 00001000b
1230: - 88B4 30 defb 00110000b
1231: - 88B5 40 defb 01000000b
1232: - 88B6 78 defb 01111000b
1233: - 88B7 00 defb 00000000b
1234:
1235: ; code=123, hex=0x7B, ascii="{"
1236: - 88B8 18 defb 00011000b
1237: - 88B9 20 defb 00100000b
1238: - 88BA 20 defb 00100000b
1239: - 88BB 60 defb 01100000b
1240: - 88BC 20 defb 00100000b
1241: - 88BD 20 defb 00100000b
1242: - 88BE 18 defb 00011000b
1243: - 88BF 00 defb 00000000b
1244:
1245: ; code=124, hex=0x7C, ascii="|"
1246: - 88C0 10 defb 00010000b
1247: - 88C1 10 defb 00010000b
1248: - 88C2 10 defb 00010000b
1249: - 88C3 00 defb 00000000b
1250: - 88C4 10 defb 00010000b
1251: - 88C5 10 defb 00010000b
1252: - 88C6 10 defb 00010000b
1253: - 88C7 00 defb 00000000b
1254:
1255: ; code=125, hex=0x7D, ascii="}"
1256: - 88C8 30 defb 00110000b
1257: - 88C9 08 defb 00001000b
1258: - 88CA 08 defb 00001000b
1259: - 88CB 0C defb 00001100b
1260: - 88CC 08 defb 00001000b
1261: - 88CD 08 defb 00001000b
1262: - 88CE 30 defb 00110000b
1263: - 88CF 00 defb 00000000b
1264:
1265: ; code=126, hex=0x7E, ascii="~"
1266: - 88D0 28 defb 00101000b
1267: - 88D1 50 defb 01010000b
1268: - 88D2 00 defb 00000000b
1269: - 88D3 00 defb 00000000b
1270: - 88D4 00 defb 00000000b
1271: - 88D5 00 defb 00000000b
1272: - 88D6 00 defb 00000000b
1273: - 88D7 00 defb 00000000b
1274:
1275: ; code=127, hex=0x7F, ascii="^?"
1276: - 88D8 10 defb 00010000b
1277: - 88D9 38 defb 00111000b
1278: - 88DA 6C defb 01101100b
1279: - 88DB 44 defb 01000100b
1280: - 88DC 44 defb 01000100b
1281: - 88DD 7C defb 01111100b
1282: - 88DE 00 defb 00000000b
1283: - 88DF 00 defb 00000000b
1284:
1285: ; code=128, hex=0x80, ascii="!^@"
1286: - 88E0 38 defb 00111000b
1287: - 88E1 44 defb 01000100b
1288: - 88E2 40 defb 01000000b
1289: - 88E3 40 defb 01000000b
1290: - 88E4 44 defb 01000100b
1291: - 88E5 38 defb 00111000b
1292: - 88E6 10 defb 00010000b
1293: - 88E7 30 defb 00110000b
1294:
1295: ; code=129, hex=0x81, ascii="!^A"
1296: - 88E8 48 defb 01001000b
1297: - 88E9 00 defb 00000000b
1298: - 88EA 48 defb 01001000b
1299: - 88EB 48 defb 01001000b
1300: - 88EC 48 defb 01001000b
1301: - 88ED 58 defb 01011000b
1302: - 88EE 28 defb 00101000b
1303: - 88EF 00 defb 00000000b
1304:
1305: ; code=130, hex=0x82, ascii="!^B"
1306: - 88F0 0C defb 00001100b
1307: - 88F1 00 defb 00000000b
1308: - 88F2 38 defb 00111000b
1309: - 88F3 44 defb 01000100b
1310: - 88F4 78 defb 01111000b
1311: - 88F5 40 defb 01000000b
1312: - 88F6 38 defb 00111000b
1313: - 88F7 00 defb 00000000b
1314:
1315: ; code=131, hex=0x83, ascii="!^C"
1316: - 88F8 38 defb 00111000b
1317: - 88F9 00 defb 00000000b
1318: - 88FA 38 defb 00111000b
1319: - 88FB 04 defb 00000100b
1320: - 88FC 3C defb 00111100b
1321: - 88FD 44 defb 01000100b
1322: - 88FE 3C defb 00111100b
1323: - 88FF 00 defb 00000000b
1324:
1325: ; code=132, hex=0x84, ascii="!^D"
1326: - 8900 28 defb 00101000b
1327: - 8901 00 defb 00000000b
1328: - 8902 38 defb 00111000b
1329: - 8903 04 defb 00000100b
1330: - 8904 3C defb 00111100b
1331: - 8905 44 defb 01000100b
1332: - 8906 3C defb 00111100b
1333: - 8907 00 defb 00000000b
1334:
1335: ; code=133, hex=0x85, ascii="!^E"
1336: - 8908 30 defb 00110000b
1337: - 8909 00 defb 00000000b
1338: - 890A 38 defb 00111000b
1339: - 890B 04 defb 00000100b
1340: - 890C 3C defb 00111100b
1341: - 890D 44 defb 01000100b
1342: - 890E 3C defb 00111100b
1343: - 890F 00 defb 00000000b
1344:
1345: ; code=134, hex=0x86, ascii="!^F"
1346: - 8910 38 defb 00111000b
1347: - 8911 28 defb 00101000b
1348: - 8912 38 defb 00111000b
1349: - 8913 04 defb 00000100b
1350: - 8914 3C defb 00111100b
1351: - 8915 44 defb 01000100b
1352: - 8916 3C defb 00111100b
1353: - 8917 00 defb 00000000b
1354:
1355: ; code=135, hex=0x87, ascii="!^G"
1356: - 8918 00 defb 00000000b
1357: - 8919 38 defb 00111000b
1358: - 891A 44 defb 01000100b
1359: - 891B 40 defb 01000000b
1360: - 891C 44 defb 01000100b
1361: - 891D 38 defb 00111000b
1362: - 891E 10 defb 00010000b
1363: - 891F 30 defb 00110000b
1364:
1365: ; code=136, hex=0x88, ascii="!^H"
1366: - 8920 38 defb 00111000b
1367: - 8921 00 defb 00000000b
1368: - 8922 38 defb 00111000b
1369: - 8923 44 defb 01000100b
1370: - 8924 78 defb 01111000b
1371: - 8925 40 defb 01000000b
1372: - 8926 38 defb 00111000b
1373: - 8927 00 defb 00000000b
1374:
1375: ; code=137, hex=0x89, ascii="!^I"
1376: - 8928 28 defb 00101000b
1377: - 8929 00 defb 00000000b
1378: - 892A 38 defb 00111000b
1379: - 892B 44 defb 01000100b
1380: - 892C 78 defb 01111000b
1381: - 892D 40 defb 01000000b
1382: - 892E 38 defb 00111000b
1383: - 892F 00 defb 00000000b
1384:
1385: ; code=138, hex=0x8A, ascii="!^J"
1386: - 8930 30 defb 00110000b
1387: - 8931 00 defb 00000000b
1388: - 8932 38 defb 00111000b
1389: - 8933 44 defb 01000100b
1390: - 8934 78 defb 01111000b
1391: - 8935 40 defb 01000000b
1392: - 8936 38 defb 00111000b
1393: - 8937 00 defb 00000000b
1394:
1395: ; code=139, hex=0x8B, ascii="!^K"
1396: - 8938 28 defb 00101000b
1397: - 8939 00 defb 00000000b
1398: - 893A 10 defb 00010000b
1399: - 893B 10 defb 00010000b
1400: - 893C 10 defb 00010000b
1401: - 893D 10 defb 00010000b
1402: - 893E 18 defb 00011000b
1403: - 893F 00 defb 00000000b
1404:
1405: ; code=140, hex=0x8C, ascii="!^L"
1406: - 8940 10 defb 00010000b
1407: - 8941 28 defb 00101000b
1408: - 8942 00 defb 00000000b
1409: - 8943 10 defb 00010000b
1410: - 8944 10 defb 00010000b
1411: - 8945 10 defb 00010000b
1412: - 8946 18 defb 00011000b
1413: - 8947 00 defb 00000000b
1414:
1415: ; code=141, hex=0x8D, ascii="!^M"
1416: - 8948 20 defb 00100000b
1417: - 8949 00 defb 00000000b
1418: - 894A 10 defb 00010000b
1419: - 894B 10 defb 00010000b
1420: - 894C 10 defb 00010000b
1421: - 894D 10 defb 00010000b
1422: - 894E 18 defb 00011000b
1423: - 894F 00 defb 00000000b
1424:
1425: ; code=142, hex=0x8E, ascii="!^N"
1426: - 8950 28 defb 00101000b
1427: - 8951 00 defb 00000000b
1428: - 8952 10 defb 00010000b
1429: - 8953 28 defb 00101000b
1430: - 8954 44 defb 01000100b
1431: - 8955 7C defb 01111100b
1432: - 8956 44 defb 01000100b
1433: - 8957 00 defb 00000000b
1434:
1435: ; code=143, hex=0x8F, ascii="!^O"
1436: - 8958 38 defb 00111000b
1437: - 8959 28 defb 00101000b
1438: - 895A 38 defb 00111000b
1439: - 895B 6C defb 01101100b
1440: - 895C 44 defb 01000100b
1441: - 895D 7C defb 01111100b
1442: - 895E 44 defb 01000100b
1443: - 895F 00 defb 00000000b
1444:
1445: ; code=144, hex=0x90, ascii="!^P"
1446: - 8960 0C defb 00001100b
1447: - 8961 00 defb 00000000b
1448: - 8962 7C defb 01111100b
1449: - 8963 40 defb 01000000b
1450: - 8964 78 defb 01111000b
1451: - 8965 40 defb 01000000b
1452: - 8966 7C defb 01111100b
1453: - 8967 00 defb 00000000b
1454:
1455: ; code=145, hex=0x91, ascii="!^Q"
1456: - 8968 00 defb 00000000b
1457: - 8969 00 defb 00000000b
1458: - 896A 78 defb 01111000b
1459: - 896B 14 defb 00010100b
1460: - 896C 7C defb 01111100b
1461: - 896D 50 defb 01010000b
1462: - 896E 3C defb 00111100b
1463: - 896F 00 defb 00000000b
1464:
1465: ; code=146, hex=0x92, ascii="!^R"
1466: - 8970 3C defb 00111100b
1467: - 8971 50 defb 01010000b
1468: - 8972 50 defb 01010000b
1469: - 8973 7C defb 01111100b
1470: - 8974 50 defb 01010000b
1471: - 8975 50 defb 01010000b
1472: - 8976 5C defb 01011100b
1473: - 8977 00 defb 00000000b
1474:
1475: ; code=147, hex=0x93, ascii="!^S"
1476: - 8978 38 defb 00111000b
1477: - 8979 00 defb 00000000b
1478: - 897A 30 defb 00110000b
1479: - 897B 48 defb 01001000b
1480: - 897C 48 defb 01001000b
1481: - 897D 48 defb 01001000b
1482: - 897E 30 defb 00110000b
1483: - 897F 00 defb 00000000b
1484:
1485: ; code=148, hex=0x94, ascii="!^T"
1486: - 8980 28 defb 00101000b
1487: - 8981 00 defb 00000000b
1488: - 8982 30 defb 00110000b
1489: - 8983 48 defb 01001000b
1490: - 8984 48 defb 01001000b
1491: - 8985 48 defb 01001000b
1492: - 8986 30 defb 00110000b
1493: - 8987 00 defb 00000000b
1494:
1495: ; code=149, hex=0x95, ascii="!^U"
1496: - 8988 60 defb 01100000b
1497: - 8989 00 defb 00000000b
1498: - 898A 30 defb 00110000b
1499: - 898B 48 defb 01001000b
1500: - 898C 48 defb 01001000b
1501: - 898D 48 defb 01001000b
1502: - 898E 30 defb 00110000b
1503: - 898F 00 defb 00000000b
1504:
1505: ; code=150, hex=0x96, ascii="!^V"
1506: - 8990 38 defb 00111000b
1507: - 8991 00 defb 00000000b
1508: - 8992 48 defb 01001000b
1509: - 8993 48 defb 01001000b
1510: - 8994 48 defb 01001000b
1511: - 8995 58 defb 01011000b
1512: - 8996 28 defb 00101000b
1513: - 8997 00 defb 00000000b
1514:
1515: ; code=151, hex=0x97, ascii="!^W"
1516: - 8998 60 defb 01100000b
1517: - 8999 00 defb 00000000b
1518: - 899A 48 defb 01001000b
1519: - 899B 48 defb 01001000b
1520: - 899C 48 defb 01001000b
1521: - 899D 58 defb 01011000b
1522: - 899E 28 defb 00101000b
1523: - 899F 00 defb 00000000b
1524:
1525: ; code=152, hex=0x98, ascii="!^X"
1526: - 89A0 28 defb 00101000b
1527: - 89A1 00 defb 00000000b
1528: - 89A2 48 defb 01001000b
1529: - 89A3 48 defb 01001000b
1530: - 89A4 48 defb 01001000b
1531: - 89A5 38 defb 00111000b
1532: - 89A6 10 defb 00010000b
1533: - 89A7 60 defb 01100000b
1534:
1535: ; code=153, hex=0x99, ascii="!^Y"
1536: - 89A8 48 defb 01001000b
1537: - 89A9 30 defb 00110000b
1538: - 89AA 48 defb 01001000b
1539: - 89AB 48 defb 01001000b
1540: - 89AC 48 defb 01001000b
1541: - 89AD 48 defb 01001000b
1542: - 89AE 30 defb 00110000b
1543: - 89AF 00 defb 00000000b
1544:
1545: ; code=154, hex=0x9A, ascii="!^Z"
1546: - 89B0 28 defb 00101000b
1547: - 89B1 00 defb 00000000b
1548: - 89B2 48 defb 01001000b
1549: - 89B3 48 defb 01001000b
1550: - 89B4 48 defb 01001000b
1551: - 89B5 48 defb 01001000b
1552: - 89B6 30 defb 00110000b
1553: - 89B7 00 defb 00000000b
1554:
1555: ; code=155, hex=0x9B, ascii="!^["
1556: - 89B8 00 defb 00000000b
1557: - 89B9 10 defb 00010000b
1558: - 89BA 38 defb 00111000b
1559: - 89BB 40 defb 01000000b
1560: - 89BC 40 defb 01000000b
1561: - 89BD 38 defb 00111000b
1562: - 89BE 10 defb 00010000b
1563: - 89BF 00 defb 00000000b
1564:
1565: ; code=156, hex=0x9C, ascii="!^\"
1566: - 89C0 18 defb 00011000b
1567: - 89C1 24 defb 00100100b
1568: - 89C2 20 defb 00100000b
1569: - 89C3 78 defb 01111000b
1570: - 89C4 20 defb 00100000b
1571: - 89C5 24 defb 00100100b
1572: - 89C6 5C defb 01011100b
1573: - 89C7 00 defb 00000000b
1574:
1575: ; code=157, hex=0x9D, ascii="!^]"
1576: - 89C8 44 defb 01000100b
1577: - 89C9 28 defb 00101000b
1578: - 89CA 10 defb 00010000b
1579: - 89CB 7C defb 01111100b
1580: - 89CC 10 defb 00010000b
1581: - 89CD 7C defb 01111100b
1582: - 89CE 10 defb 00010000b
1583: - 89CF 00 defb 00000000b
1584:
1585: ; code=158, hex=0x9E, ascii="!^^"
1586: - 89D0 60 defb 01100000b
1587: - 89D1 50 defb 01010000b
1588: - 89D2 50 defb 01010000b
1589: - 89D3 68 defb 01101000b
1590: - 89D4 5C defb 01011100b
1591: - 89D5 48 defb 01001000b
1592: - 89D6 48 defb 01001000b
1593: - 89D7 00 defb 00000000b
1594:
1595: ; code=159, hex=0x9F, ascii="!^_"
1596: - 89D8 08 defb 00001000b
1597: - 89D9 14 defb 00010100b
1598: - 89DA 10 defb 00010000b
1599: - 89DB 38 defb 00111000b
1600: - 89DC 10 defb 00010000b
1601: - 89DD 10 defb 00010000b
1602: - 89DE 50 defb 01010000b
1603: - 89DF 20 defb 00100000b
1604:
1605: ; code=160, hex=0xA0, ascii="! "
1606: - 89E0 18 defb 00011000b
1607: - 89E1 00 defb 00000000b
1608: - 89E2 38 defb 00111000b
1609: - 89E3 04 defb 00000100b
1610: - 89E4 3C defb 00111100b
1611: - 89E5 44 defb 01000100b
1612: - 89E6 3C defb 00111100b
1613: - 89E7 00 defb 00000000b
1614:
1615: ; code=161, hex=0xA1, ascii="!!"
1616: - 89E8 18 defb 00011000b
1617: - 89E9 00 defb 00000000b
1618: - 89EA 10 defb 00010000b
1619: - 89EB 10 defb 00010000b
1620: - 89EC 10 defb 00010000b
1621: - 89ED 10 defb 00010000b
1622: - 89EE 18 defb 00011000b
1623: - 89EF 00 defb 00000000b
1624:
1625: ; code=162, hex=0xA2, ascii="!""
1626: - 89F0 18 defb 00011000b
1627: - 89F1 00 defb 00000000b
1628: - 89F2 30 defb 00110000b
1629: - 89F3 48 defb 01001000b
1630: - 89F4 48 defb 01001000b
1631: - 89F5 48 defb 01001000b
1632: - 89F6 30 defb 00110000b
1633: - 89F7 00 defb 00000000b
1634:
1635: ; code=163, hex=0xA3, ascii="!#"
1636: - 89F8 18 defb 00011000b
1637: - 89F9 00 defb 00000000b
1638: - 89FA 48 defb 01001000b
1639: - 89FB 48 defb 01001000b
1640: - 89FC 48 defb 01001000b
1641: - 89FD 58 defb 01011000b
1642: - 89FE 28 defb 00101000b
1643: - 89FF 00 defb 00000000b
1644:
1645: ; code=164, hex=0xA4, ascii="!$"
1646: - 8A00 28 defb 00101000b
1647: - 8A01 50 defb 01010000b
1648: - 8A02 00 defb 00000000b
1649: - 8A03 70 defb 01110000b
1650: - 8A04 48 defb 01001000b
1651: - 8A05 48 defb 01001000b
1652: - 8A06 48 defb 01001000b
1653: - 8A07 00 defb 00000000b
1654:
1655: ; code=165, hex=0xA5, ascii="!"
1656: - 8A08 28 defb 00101000b
1657: - 8A09 50 defb 01010000b
1658: - 8A0A 00 defb 00000000b
1659: - 8A0B 48 defb 01001000b
1660: - 8A0C 68 defb 01101000b
1661: - 8A0D 58 defb 01011000b
1662: - 8A0E 48 defb 01001000b
1663: - 8A0F 00 defb 00000000b
1664:
1665: ; code=166, hex=0xA6, ascii="!&"
1666: - 8A10 38 defb 00111000b
1667: - 8A11 04 defb 00000100b
1668: - 8A12 3C defb 00111100b
1669: - 8A13 44 defb 01000100b
1670: - 8A14 3C defb 00111100b
1671: - 8A15 00 defb 00000000b
1672: - 8A16 3C defb 00111100b
1673: - 8A17 00 defb 00000000b
1674:
1675: ; code=167, hex=0xA7, ascii="!'"
1676: - 8A18 30 defb 00110000b
1677: - 8A19 48 defb 01001000b
1678: - 8A1A 48 defb 01001000b
1679: - 8A1B 48 defb 01001000b
1680: - 8A1C 30 defb 00110000b
1681: - 8A1D 00 defb 00000000b
1682: - 8A1E 78 defb 01111000b
1683: - 8A1F 00 defb 00000000b
1684:
1685: ; code=168, hex=0xA8, ascii="!("
1686: - 8A20 10 defb 00010000b
1687: - 8A21 00 defb 00000000b
1688: - 8A22 10 defb 00010000b
1689: - 8A23 30 defb 00110000b
1690: - 8A24 40 defb 01000000b
1691: - 8A25 44 defb 01000100b
1692: - 8A26 38 defb 00111000b
1693: - 8A27 00 defb 00000000b
1694:
1695: ; code=169, hex=0xA9, ascii="!)"
1696: - 8A28 00 defb 00000000b
1697: - 8A29 00 defb 00000000b
1698: - 8A2A 7C defb 01111100b
1699: - 8A2B 40 defb 01000000b
1700: - 8A2C 40 defb 01000000b
1701: - 8A2D 40 defb 01000000b
1702: - 8A2E 00 defb 00000000b
1703: - 8A2F 00 defb 00000000b
1704:
1705: ; code=170, hex=0xAA, ascii="!*"
1706: - 8A30 00 defb 00000000b
1707: - 8A31 00 defb 00000000b
1708: - 8A32 FC defb 11111100b
1709: - 8A33 04 defb 00000100b
1710: - 8A34 04 defb 00000100b
1711: - 8A35 00 defb 00000000b
1712: - 8A36 00 defb 00000000b
1713: - 8A37 00 defb 00000000b
1714:
1715: ; code=171, hex=0xAB, ascii="!+"
1716: - 8A38 40 defb 01000000b
1717: - 8A39 48 defb 01001000b
1718: - 8A3A 50 defb 01010000b
1719: - 8A3B 38 defb 00111000b
1720: - 8A3C 44 defb 01000100b
1721: - 8A3D 08 defb 00001000b
1722: - 8A3E 1C defb 00011100b
1723: - 8A3F 00 defb 00000000b
1724:
1725: ; code=172, hex=0xAC, ascii="!,"
1726: - 8A40 40 defb 01000000b
1727: - 8A41 48 defb 01001000b
1728: - 8A42 50 defb 01010000b
1729: - 8A43 2C defb 00101100b
1730: - 8A44 54 defb 01010100b
1731: - 8A45 1C defb 00011100b
1732: - 8A46 04 defb 00000100b
1733: - 8A47 00 defb 00000000b
1734:
1735: ; code=173, hex=0xAD, ascii="!-"
1736: - 8A48 10 defb 00010000b
1737: - 8A49 00 defb 00000000b
1738: - 8A4A 10 defb 00010000b
1739: - 8A4B 10 defb 00010000b
1740: - 8A4C 38 defb 00111000b
1741: - 8A4D 38 defb 00111000b
1742: - 8A4E 10 defb 00010000b
1743: - 8A4F 00 defb 00000000b
1744:
1745: ; code=174, hex=0xAE, ascii="!."
1746: - 8A50 00 defb 00000000b
1747: - 8A51 00 defb 00000000b
1748: - 8A52 24 defb 00100100b
1749: - 8A53 48 defb 01001000b
1750: - 8A54 24 defb 00100100b
1751: - 8A55 00 defb 00000000b
1752: - 8A56 00 defb 00000000b
1753: - 8A57 00 defb 00000000b
1754:
1755: ; code=175, hex=0xAF, ascii="!/"
1756: - 8A58 00 defb 00000000b
1757: - 8A59 00 defb 00000000b
1758: - 8A5A 48 defb 01001000b
1759: - 8A5B 24 defb 00100100b
1760: - 8A5C 48 defb 01001000b
1761: - 8A5D 00 defb 00000000b
1762: - 8A5E 00 defb 00000000b
1763: - 8A5F 00 defb 00000000b
1764:
1765: ; code=176, hex=0xB0, ascii="!0"
1766: - 8A60 54 defb 01010100b
1767: - 8A61 00 defb 00000000b
1768: - 8A62 A8 defb 10101000b
1769: - 8A63 00 defb 00000000b
1770: - 8A64 54 defb 01010100b
1771: - 8A65 00 defb 00000000b
1772: - 8A66 A8 defb 10101000b
1773: - 8A67 00 defb 00000000b
1774:
1775: ; code=177, hex=0xB1, ascii="!1"
1776: - 8A68 54 defb 01010100b
1777: - 8A69 A8 defb 10101000b
1778: - 8A6A 54 defb 01010100b
1779: - 8A6B A8 defb 10101000b
1780: - 8A6C 54 defb 01010100b
1781: - 8A6D A8 defb 10101000b
1782: - 8A6E 54 defb 01010100b
1783: - 8A6F A8 defb 10101000b
1784:
1785: ; code=178, hex=0xB2, ascii="!2"
1786: - 8A70 A8 defb 10101000b
1787: - 8A71 FC defb 11111100b
1788: - 8A72 54 defb 01010100b
1789: - 8A73 FC defb 11111100b
1790: - 8A74 A8 defb 10101000b
1791: - 8A75 FC defb 11111100b
1792: - 8A76 54 defb 01010100b
1793: - 8A77 FC defb 11111100b
1794:
1795: ; code=179, hex=0xB3, ascii="!3"
1796: - 8A78 10 defb 00010000b
1797: - 8A79 10 defb 00010000b
1798: - 8A7A 10 defb 00010000b
1799: - 8A7B 10 defb 00010000b
1800: - 8A7C 10 defb 00010000b
1801: - 8A7D 10 defb 00010000b
1802: - 8A7E 10 defb 00010000b
1803: - 8A7F 10 defb 00010000b
1804:
1805: ; code=180, hex=0xB4, ascii="!4"
1806: - 8A80 10 defb 00010000b
1807: - 8A81 10 defb 00010000b
1808: - 8A82 10 defb 00010000b
1809: - 8A83 F0 defb 11110000b
1810: - 8A84 10 defb 00010000b
1811: - 8A85 10 defb 00010000b
1812: - 8A86 10 defb 00010000b
1813: - 8A87 10 defb 00010000b
1814:
1815: ; code=181, hex=0xB5, ascii="!5"
1816: - 8A88 10 defb 00010000b
1817: - 8A89 F0 defb 11110000b
1818: - 8A8A 10 defb 00010000b
1819: - 8A8B F0 defb 11110000b
1820: - 8A8C 10 defb 00010000b
1821: - 8A8D 10 defb 00010000b
1822: - 8A8E 10 defb 00010000b
1823: - 8A8F 10 defb 00010000b
1824:
1825: ; code=182, hex=0xB6, ascii="!6"
1826: - 8A90 50 defb 01010000b
1827: - 8A91 50 defb 01010000b
1828: - 8A92 50 defb 01010000b
1829: - 8A93 D0 defb 11010000b
1830: - 8A94 50 defb 01010000b
1831: - 8A95 50 defb 01010000b
1832: - 8A96 50 defb 01010000b
1833: - 8A97 50 defb 01010000b
1834:
1835: ; code=183, hex=0xB7, ascii="!7"
1836: - 8A98 00 defb 00000000b
1837: - 8A99 00 defb 00000000b
1838: - 8A9A 00 defb 00000000b
1839: - 8A9B F0 defb 11110000b
1840: - 8A9C 50 defb 01010000b
1841: - 8A9D 50 defb 01010000b
1842: - 8A9E 50 defb 01010000b
1843: - 8A9F 50 defb 01010000b
1844:
1845: ; code=184, hex=0xB8, ascii="!8"
1846: - 8AA0 00 defb 00000000b
1847: - 8AA1 F0 defb 11110000b
1848: - 8AA2 10 defb 00010000b
1849: - 8AA3 F0 defb 11110000b
1850: - 8AA4 10 defb 00010000b
1851: - 8AA5 10 defb 00010000b
1852: - 8AA6 10 defb 00010000b
1853: - 8AA7 10 defb 00010000b
1854:
1855: ; code=185, hex=0xB9, ascii="!9"
1856: - 8AA8 50 defb 01010000b
1857: - 8AA9 D0 defb 11010000b
1858: - 8AAA 10 defb 00010000b
1859: - 8AAB D0 defb 11010000b
1860: - 8AAC 50 defb 01010000b
1861: - 8AAD 50 defb 01010000b
1862: - 8AAE 50 defb 01010000b
1863: - 8AAF 50 defb 01010000b
1864:
1865: ; code=186, hex=0xBA, ascii="!:"
1866: - 8AB0 50 defb 01010000b
1867: - 8AB1 50 defb 01010000b
1868: - 8AB2 50 defb 01010000b
1869: - 8AB3 50 defb 01010000b
1870: - 8AB4 50 defb 01010000b
1871: - 8AB5 50 defb 01010000b
1872: - 8AB6 50 defb 01010000b
1873: - 8AB7 50 defb 01010000b
1874:
1875: ; code=187, hex=0xBB, ascii="!;"
1876: - 8AB8 00 defb 00000000b
1877: - 8AB9 F0 defb 11110000b
1878: - 8ABA 10 defb 00010000b
1879: - 8ABB D0 defb 11010000b
1880: - 8ABC 50 defb 01010000b
1881: - 8ABD 50 defb 01010000b
1882: - 8ABE 50 defb 01010000b
1883: - 8ABF 50 defb 01010000b
1884:
1885: ; code=188, hex=0xBC, ascii="!<"
1886: - 8AC0 50 defb 01010000b
1887: - 8AC1 D0 defb 11010000b
1888: - 8AC2 10 defb 00010000b
1889: - 8AC3 F0 defb 11110000b
1890: - 8AC4 00 defb 00000000b
1891: - 8AC5 00 defb 00000000b
1892: - 8AC6 00 defb 00000000b
1893: - 8AC7 00 defb 00000000b
1894:
1895: ; code=189, hex=0xBD, ascii="!="
1896: - 8AC8 50 defb 01010000b
1897: - 8AC9 50 defb 01010000b
1898: - 8ACA 50 defb 01010000b
1899: - 8ACB F0 defb 11110000b
1900: - 8ACC 00 defb 00000000b
1901: - 8ACD 00 defb 00000000b
1902: - 8ACE 00 defb 00000000b
1903: - 8ACF 00 defb 00000000b
1904:
1905: ; code=190, hex=0xBE, ascii="!>"
1906: - 8AD0 10 defb 00010000b
1907: - 8AD1 F0 defb 11110000b
1908: - 8AD2 10 defb 00010000b
1909: - 8AD3 F0 defb 11110000b
1910: - 8AD4 00 defb 00000000b
1911: - 8AD5 00 defb 00000000b
1912: - 8AD6 00 defb 00000000b
1913: - 8AD7 00 defb 00000000b
1914:
1915: ; code=191, hex=0xBF, ascii="!?"
1916: - 8AD8 00 defb 00000000b
1917: - 8AD9 00 defb 00000000b
1918: - 8ADA 00 defb 00000000b
1919: - 8ADB F0 defb 11110000b
1920: - 8ADC 10 defb 00010000b
1921: - 8ADD 10 defb 00010000b
1922: - 8ADE 10 defb 00010000b
1923: - 8ADF 10 defb 00010000b
1924:
1925: ; code=192, hex=0xC0, ascii="!@"
1926: - 8AE0 10 defb 00010000b
1927: - 8AE1 10 defb 00010000b
1928: - 8AE2 10 defb 00010000b
1929: - 8AE3 1C defb 00011100b
1930: - 8AE4 00 defb 00000000b
1931: - 8AE5 00 defb 00000000b
1932: - 8AE6 00 defb 00000000b
1933: - 8AE7 00 defb 00000000b
1934:
1935: ; code=193, hex=0xC1, ascii="!A"
1936: - 8AE8 10 defb 00010000b
1937: - 8AE9 10 defb 00010000b
1938: - 8AEA 10 defb 00010000b
1939: - 8AEB FC defb 11111100b
1940: - 8AEC 00 defb 00000000b
1941: - 8AED 00 defb 00000000b
1942: - 8AEE 00 defb 00000000b
1943: - 8AEF 00 defb 00000000b
1944:
1945: ; code=194, hex=0xC2, ascii="!B"
1946: - 8AF0 00 defb 00000000b
1947: - 8AF1 00 defb 00000000b
1948: - 8AF2 00 defb 00000000b
1949: - 8AF3 FC defb 11111100b
1950: - 8AF4 10 defb 00010000b
1951: - 8AF5 10 defb 00010000b
1952: - 8AF6 10 defb 00010000b
1953: - 8AF7 10 defb 00010000b
1954:
1955: ; code=195, hex=0xC3, ascii="!C"
1956: - 8AF8 10 defb 00010000b
1957: - 8AF9 10 defb 00010000b
1958: - 8AFA 10 defb 00010000b
1959: - 8AFB 1C defb 00011100b
1960: - 8AFC 10 defb 00010000b
1961: - 8AFD 10 defb 00010000b
1962: - 8AFE 10 defb 00010000b
1963: - 8AFF 10 defb 00010000b
1964:
1965: ; code=196, hex=0xC4, ascii="!D"
1966: - 8B00 00 defb 00000000b
1967: - 8B01 00 defb 00000000b
1968: - 8B02 00 defb 00000000b
1969: - 8B03 FC defb 11111100b
1970: - 8B04 00 defb 00000000b
1971: - 8B05 00 defb 00000000b
1972: - 8B06 00 defb 00000000b
1973: - 8B07 00 defb 00000000b
1974:
1975: ; code=197, hex=0xC5, ascii="!E"
1976: - 8B08 10 defb 00010000b
1977: - 8B09 10 defb 00010000b
1978: - 8B0A 10 defb 00010000b
1979: - 8B0B FC defb 11111100b
1980: - 8B0C 10 defb 00010000b
1981: - 8B0D 10 defb 00010000b
1982: - 8B0E 10 defb 00010000b
1983: - 8B0F 10 defb 00010000b
1984:
1985: ; code=198, hex=0xC6, ascii="!F"
1986: - 8B10 10 defb 00010000b
1987: - 8B11 1C defb 00011100b
1988: - 8B12 10 defb 00010000b
1989: - 8B13 1C defb 00011100b
1990: - 8B14 10 defb 00010000b
1991: - 8B15 10 defb 00010000b
1992: - 8B16 10 defb 00010000b
1993: - 8B17 10 defb 00010000b
1994:
1995: ; code=199, hex=0xC7, ascii="!G"
1996: - 8B18 50 defb 01010000b
1997: - 8B19 50 defb 01010000b
1998: - 8B1A 50 defb 01010000b
1999: - 8B1B 5C defb 01011100b
2000: - 8B1C 50 defb 01010000b
2001: - 8B1D 50 defb 01010000b
2002: - 8B1E 50 defb 01010000b
2003: - 8B1F 50 defb 01010000b
2004:
2005: ; code=200, hex=0xC8, ascii="!H"
2006: - 8B20 50 defb 01010000b
2007: - 8B21 5C defb 01011100b
2008: - 8B22 40 defb 01000000b
2009: - 8B23 7C defb 01111100b
2010: - 8B24 00 defb 00000000b
2011: - 8B25 00 defb 00000000b
2012: - 8B26 00 defb 00000000b
2013: - 8B27 00 defb 00000000b
2014:
2015: ; code=201, hex=0xC9, ascii="!I"
2016: - 8B28 00 defb 00000000b
2017: - 8B29 7C defb 01111100b
2018: - 8B2A 40 defb 01000000b
2019: - 8B2B 5C defb 01011100b
2020: - 8B2C 50 defb 01010000b
2021: - 8B2D 50 defb 01010000b
2022: - 8B2E 50 defb 01010000b
2023: - 8B2F 50 defb 01010000b
2024:
2025: ; code=202, hex=0xCA, ascii="!J"
2026: - 8B30 50 defb 01010000b
2027: - 8B31 DC defb 11011100b
2028: - 8B32 00 defb 00000000b
2029: - 8B33 FC defb 11111100b
2030: - 8B34 00 defb 00000000b
2031: - 8B35 00 defb 00000000b
2032: - 8B36 00 defb 00000000b
2033: - 8B37 00 defb 00000000b
2034:
2035: ; code=203, hex=0xCB, ascii="!K"
2036: - 8B38 00 defb 00000000b
2037: - 8B39 FC defb 11111100b
2038: - 8B3A 00 defb 00000000b
2039: - 8B3B DC defb 11011100b
2040: - 8B3C 50 defb 01010000b
2041: - 8B3D 50 defb 01010000b
2042: - 8B3E 50 defb 01010000b
2043: - 8B3F 50 defb 01010000b
2044:
2045: ; code=204, hex=0xCC, ascii="!L"
2046: - 8B40 50 defb 01010000b
2047: - 8B41 5C defb 01011100b
2048: - 8B42 40 defb 01000000b
2049: - 8B43 5C defb 01011100b
2050: - 8B44 50 defb 01010000b
2051: - 8B45 50 defb 01010000b
2052: - 8B46 50 defb 01010000b
2053: - 8B47 50 defb 01010000b
2054:
2055: ; code=205, hex=0xCD, ascii="!M"
2056: - 8B48 00 defb 00000000b
2057: - 8B49 FC defb 11111100b
2058: - 8B4A 00 defb 00000000b
2059: - 8B4B FC defb 11111100b
2060: - 8B4C 00 defb 00000000b
2061: - 8B4D 00 defb 00000000b
2062: - 8B4E 00 defb 00000000b
2063: - 8B4F 00 defb 00000000b
2064:
2065: ; code=206, hex=0xCE, ascii="!N"
2066: - 8B50 50 defb 01010000b
2067: - 8B51 DC defb 11011100b
2068: - 8B52 00 defb 00000000b
2069: - 8B53 DC defb 11011100b
2070: - 8B54 50 defb 01010000b
2071: - 8B55 50 defb 01010000b
2072: - 8B56 50 defb 01010000b
2073: - 8B57 50 defb 01010000b
2074:
2075: ; code=207, hex=0xCF, ascii="!O"
2076: - 8B58 10 defb 00010000b
2077: - 8B59 FC defb 11111100b
2078: - 8B5A 00 defb 00000000b
2079: - 8B5B FC defb 11111100b
2080: - 8B5C 00 defb 00000000b
2081: - 8B5D 00 defb 00000000b
2082: - 8B5E 00 defb 00000000b
2083: - 8B5F 00 defb 00000000b
2084:
2085: ; code=208, hex=0xD0, ascii="!P"
2086: - 8B60 50 defb 01010000b
2087: - 8B61 50 defb 01010000b
2088: - 8B62 50 defb 01010000b
2089: - 8B63 FC defb 11111100b
2090: - 8B64 00 defb 00000000b
2091: - 8B65 00 defb 00000000b
2092: - 8B66 00 defb 00000000b
2093: - 8B67 00 defb 00000000b
2094:
2095: ; code=209, hex=0xD1, ascii="!Q"
2096: - 8B68 00 defb 00000000b
2097: - 8B69 FC defb 11111100b
2098: - 8B6A 00 defb 00000000b
2099: - 8B6B FC defb 11111100b
2100: - 8B6C 10 defb 00010000b
2101: - 8B6D 10 defb 00010000b
2102: - 8B6E 10 defb 00010000b
2103: - 8B6F 10 defb 00010000b
2104:
2105: ; code=210, hex=0xD2, ascii="!R"
2106: - 8B70 00 defb 00000000b
2107: - 8B71 00 defb 00000000b
2108: - 8B72 00 defb 00000000b
2109: - 8B73 FC defb 11111100b
2110: - 8B74 50 defb 01010000b
2111: - 8B75 50 defb 01010000b
2112: - 8B76 50 defb 01010000b
2113: - 8B77 50 defb 01010000b
2114:
2115: ; code=211, hex=0xD3, ascii="!S"
2116: - 8B78 50 defb 01010000b
2117: - 8B79 50 defb 01010000b
2118: - 8B7A 50 defb 01010000b
2119: - 8B7B 7C defb 01111100b
2120: - 8B7C 00 defb 00000000b
2121: - 8B7D 00 defb 00000000b
2122: - 8B7E 00 defb 00000000b
2123: - 8B7F 00 defb 00000000b
2124:
2125: ; code=212, hex=0xD4, ascii="!T"
2126: - 8B80 10 defb 00010000b
2127: - 8B81 1C defb 00011100b
2128: - 8B82 10 defb 00010000b
2129: - 8B83 1C defb 00011100b
2130: - 8B84 00 defb 00000000b
2131: - 8B85 00 defb 00000000b
2132: - 8B86 00 defb 00000000b
2133: - 8B87 00 defb 00000000b
2134:
2135: ; code=213, hex=0xD5, ascii="!U"
2136: - 8B88 00 defb 00000000b
2137: - 8B89 1C defb 00011100b
2138: - 8B8A 10 defb 00010000b
2139: - 8B8B 1C defb 00011100b
2140: - 8B8C 10 defb 00010000b
2141: - 8B8D 10 defb 00010000b
2142: - 8B8E 10 defb 00010000b
2143: - 8B8F 10 defb 00010000b
2144:
2145: ; code=214, hex=0xD6, ascii="!V"
2146: - 8B90 00 defb 00000000b
2147: - 8B91 00 defb 00000000b
2148: - 8B92 00 defb 00000000b
2149: - 8B93 7C defb 01111100b
2150: - 8B94 50 defb 01010000b
2151: - 8B95 50 defb 01010000b
2152: - 8B96 50 defb 01010000b
2153: - 8B97 50 defb 01010000b
2154:
2155: ; code=215, hex=0xD7, ascii="!W"
2156: - 8B98 50 defb 01010000b
2157: - 8B99 50 defb 01010000b
2158: - 8B9A 50 defb 01010000b
2159: - 8B9B DC defb 11011100b
2160: - 8B9C 50 defb 01010000b
2161: - 8B9D 50 defb 01010000b
2162: - 8B9E 50 defb 01010000b
2163: - 8B9F 50 defb 01010000b
2164:
2165: ; code=216, hex=0xD8, ascii="!X"
2166: - 8BA0 10 defb 00010000b
2167: - 8BA1 FC defb 11111100b
2168: - 8BA2 00 defb 00000000b
2169: - 8BA3 FC defb 11111100b
2170: - 8BA4 10 defb 00010000b
2171: - 8BA5 10 defb 00010000b
2172: - 8BA6 10 defb 00010000b
2173: - 8BA7 10 defb 00010000b
2174:
2175: ; code=217, hex=0xD9, ascii="!Y"
2176: - 8BA8 10 defb 00010000b
2177: - 8BA9 10 defb 00010000b
2178: - 8BAA 10 defb 00010000b
2179: - 8BAB F0 defb 11110000b
2180: - 8BAC 00 defb 00000000b
2181: - 8BAD 00 defb 00000000b
2182: - 8BAE 00 defb 00000000b
2183: - 8BAF 00 defb 00000000b
2184:
2185: ; code=218, hex=0xDA, ascii="!Z"
2186: - 8BB0 00 defb 00000000b
2187: - 8BB1 00 defb 00000000b
2188: - 8BB2 00 defb 00000000b
2189: - 8BB3 1C defb 00011100b
2190: - 8BB4 10 defb 00010000b
2191: - 8BB5 10 defb 00010000b
2192: - 8BB6 10 defb 00010000b
2193: - 8BB7 10 defb 00010000b
2194:
2195: ; code=219, hex=0xDB, ascii="!["
2196: - 8BB8 FC defb 11111100b
2197: - 8BB9 FC defb 11111100b
2198: - 8BBA FC defb 11111100b
2199: - 8BBB FC defb 11111100b
2200: - 8BBC FC defb 11111100b
2201: - 8BBD FC defb 11111100b
2202: - 8BBE FC defb 11111100b
2203: - 8BBF FC defb 11111100b
2204:
2205: ; code=220, hex=0xDC, ascii="!\"
2206: - 8BC0 00 defb 00000000b
2207: - 8BC1 00 defb 00000000b
2208: - 8BC2 00 defb 00000000b
2209: - 8BC3 00 defb 00000000b
2210: - 8BC4 FC defb 11111100b
2211: - 8BC5 FC defb 11111100b
2212: - 8BC6 FC defb 11111100b
2213: - 8BC7 FC defb 11111100b
2214:
2215: ; code=221, hex=0xDD, ascii="!]"
2216: - 8BC8 E0 defb 11100000b
2217: - 8BC9 E0 defb 11100000b
2218: - 8BCA E0 defb 11100000b
2219: - 8BCB E0 defb 11100000b
2220: - 8BCC E0 defb 11100000b
2221: - 8BCD E0 defb 11100000b
2222: - 8BCE E0 defb 11100000b
2223: - 8BCF E0 defb 11100000b
2224:
2225: ; code=222, hex=0xDE, ascii="!^"
2226: - 8BD0 1C defb 00011100b
2227: - 8BD1 1C defb 00011100b
2228: - 8BD2 1C defb 00011100b
2229: - 8BD3 1C defb 00011100b
2230: - 8BD4 1C defb 00011100b
2231: - 8BD5 1C defb 00011100b
2232: - 8BD6 1C defb 00011100b
2233: - 8BD7 1C defb 00011100b
2234:
2235: ; code=223, hex=0xDF, ascii="!_"
2236: - 8BD8 FC defb 11111100b
2237: - 8BD9 FC defb 11111100b
2238: - 8BDA FC defb 11111100b
2239: - 8BDB FC defb 11111100b
2240: - 8BDC 00 defb 00000000b
2241: - 8BDD 00 defb 00000000b
2242: - 8BDE 00 defb 00000000b
2243: - 8BDF 00 defb 00000000b
2244:
2245: ; code=224, hex=0xE0, ascii="!`"
2246: - 8BE0 00 defb 00000000b
2247: - 8BE1 00 defb 00000000b
2248: - 8BE2 34 defb 00110100b
2249: - 8BE3 48 defb 01001000b
2250: - 8BE4 48 defb 01001000b
2251: - 8BE5 34 defb 00110100b
2252: - 8BE6 00 defb 00000000b
2253: - 8BE7 00 defb 00000000b
2254:
2255: ; code=225, hex=0xE1, ascii="!a"
2256: - 8BE8 00 defb 00000000b
2257: - 8BE9 70 defb 01110000b
2258: - 8BEA 48 defb 01001000b
2259: - 8BEB 70 defb 01110000b
2260: - 8BEC 48 defb 01001000b
2261: - 8BED 48 defb 01001000b
2262: - 8BEE 70 defb 01110000b
2263: - 8BEF 40 defb 01000000b
2264:
2265: ; code=226, hex=0xE2, ascii="!b"
2266: - 8BF0 78 defb 01111000b
2267: - 8BF1 48 defb 01001000b
2268: - 8BF2 40 defb 01000000b
2269: - 8BF3 40 defb 01000000b
2270: - 8BF4 40 defb 01000000b
2271: - 8BF5 40 defb 01000000b
2272: - 8BF6 40 defb 01000000b
2273: - 8BF7 00 defb 00000000b
2274:
2275: ; code=227, hex=0xE3, ascii="!c"
2276: - 8BF8 00 defb 00000000b
2277: - 8BF9 7C defb 01111100b
2278: - 8BFA 28 defb 00101000b
2279: - 8BFB 28 defb 00101000b
2280: - 8BFC 28 defb 00101000b
2281: - 8BFD 28 defb 00101000b
2282: - 8BFE 28 defb 00101000b
2283: - 8BFF 00 defb 00000000b
2284:
2285: ; code=228, hex=0xE4, ascii="!d"
2286: - 8C00 78 defb 01111000b
2287: - 8C01 48 defb 01001000b
2288: - 8C02 20 defb 00100000b
2289: - 8C03 10 defb 00010000b
2290: - 8C04 20 defb 00100000b
2291: - 8C05 48 defb 01001000b
2292: - 8C06 78 defb 01111000b
2293: - 8C07 00 defb 00000000b
2294:
2295: ; code=229, hex=0xE5, ascii="!e"
2296: - 8C08 00 defb 00000000b
2297: - 8C09 00 defb 00000000b
2298: - 8C0A 3C defb 00111100b
2299: - 8C0B 48 defb 01001000b
2300: - 8C0C 48 defb 01001000b
2301: - 8C0D 30 defb 00110000b
2302: - 8C0E 00 defb 00000000b
2303: - 8C0F 00 defb 00000000b
2304:
2305: ; code=230, hex=0xE6, ascii="!f"
2306: - 8C10 00 defb 00000000b
2307: - 8C11 00 defb 00000000b
2308: - 8C12 48 defb 01001000b
2309: - 8C13 48 defb 01001000b
2310: - 8C14 48 defb 01001000b
2311: - 8C15 70 defb 01110000b
2312: - 8C16 40 defb 01000000b
2313: - 8C17 40 defb 01000000b
2314:
2315: ; code=231, hex=0xE7, ascii="!g"
2316: - 8C18 00 defb 00000000b
2317: - 8C19 00 defb 00000000b
2318: - 8C1A 28 defb 00101000b
2319: - 8C1B 50 defb 01010000b
2320: - 8C1C 10 defb 00010000b
2321: - 8C1D 10 defb 00010000b
2322: - 8C1E 10 defb 00010000b
2323: - 8C1F 00 defb 00000000b
2324:
2325: ; code=232, hex=0xE8, ascii="!h"
2326: - 8C20 38 defb 00111000b
2327: - 8C21 10 defb 00010000b
2328: - 8C22 38 defb 00111000b
2329: - 8C23 44 defb 01000100b
2330: - 8C24 38 defb 00111000b
2331: - 8C25 10 defb 00010000b
2332: - 8C26 38 defb 00111000b
2333: - 8C27 00 defb 00000000b
2334:
2335: ; code=233, hex=0xE9, ascii="!i"
2336: - 8C28 30 defb 00110000b
2337: - 8C29 48 defb 01001000b
2338: - 8C2A 48 defb 01001000b
2339: - 8C2B 78 defb 01111000b
2340: - 8C2C 48 defb 01001000b
2341: - 8C2D 48 defb 01001000b
2342: - 8C2E 30 defb 00110000b
2343: - 8C2F 00 defb 00000000b
2344:
2345: ; code=234, hex=0xEA, ascii="!j"
2346: - 8C30 00 defb 00000000b
2347: - 8C31 38 defb 00111000b
2348: - 8C32 44 defb 01000100b
2349: - 8C33 44 defb 01000100b
2350: - 8C34 28 defb 00101000b
2351: - 8C35 28 defb 00101000b
2352: - 8C36 6C defb 01101100b
2353: - 8C37 00 defb 00000000b
2354:
2355: ; code=235, hex=0xEB, ascii="!k"
2356: - 8C38 30 defb 00110000b
2357: - 8C39 40 defb 01000000b
2358: - 8C3A 20 defb 00100000b
2359: - 8C3B 10 defb 00010000b
2360: - 8C3C 38 defb 00111000b
2361: - 8C3D 48 defb 01001000b
2362: - 8C3E 30 defb 00110000b
2363: - 8C3F 00 defb 00000000b
2364:
2365: ; code=236, hex=0xEC, ascii="!l"
2366: - 8C40 00 defb 00000000b
2367: - 8C41 00 defb 00000000b
2368: - 8C42 28 defb 00101000b
2369: - 8C43 54 defb 01010100b
2370: - 8C44 54 defb 01010100b
2371: - 8C45 28 defb 00101000b
2372: - 8C46 00 defb 00000000b
2373: - 8C47 00 defb 00000000b
2374:
2375: ; code=237, hex=0xED, ascii="!m"
2376: - 8C48 00 defb 00000000b
2377: - 8C49 10 defb 00010000b
2378: - 8C4A 38 defb 00111000b
2379: - 8C4B 54 defb 01010100b
2380: - 8C4C 54 defb 01010100b
2381: - 8C4D 38 defb 00111000b
2382: - 8C4E 10 defb 00010000b
2383: - 8C4F 00 defb 00000000b
2384:
2385: ; code=238, hex=0xEE, ascii="!n"
2386: - 8C50 00 defb 00000000b
2387: - 8C51 38 defb 00111000b
2388: - 8C52 40 defb 01000000b
2389: - 8C53 78 defb 01111000b
2390: - 8C54 40 defb 01000000b
2391: - 8C55 38 defb 00111000b
2392: - 8C56 00 defb 00000000b
2393: - 8C57 00 defb 00000000b
2394:
2395: ; code=239, hex=0xEF, ascii="!o"
2396: - 8C58 00 defb 00000000b
2397: - 8C59 30 defb 00110000b
2398: - 8C5A 48 defb 01001000b
2399: - 8C5B 48 defb 01001000b
2400: - 8C5C 48 defb 01001000b
2401: - 8C5D 48 defb 01001000b
2402: - 8C5E 00 defb 00000000b
2403: - 8C5F 00 defb 00000000b
2404:
2405: ; code=240, hex=0xF0, ascii="!p"
2406: - 8C60 00 defb 00000000b
2407: - 8C61 78 defb 01111000b
2408: - 8C62 00 defb 00000000b
2409: - 8C63 78 defb 01111000b
2410: - 8C64 00 defb 00000000b
2411: - 8C65 78 defb 01111000b
2412: - 8C66 00 defb 00000000b
2413: - 8C67 00 defb 00000000b
2414:
2415: ; code=241, hex=0xF1, ascii="!q"
2416: - 8C68 00 defb 00000000b
2417: - 8C69 10 defb 00010000b
2418: - 8C6A 38 defb 00111000b
2419: - 8C6B 10 defb 00010000b
2420: - 8C6C 00 defb 00000000b
2421: - 8C6D 38 defb 00111000b
2422: - 8C6E 00 defb 00000000b
2423: - 8C6F 00 defb 00000000b
2424:
2425: ; code=242, hex=0xF2, ascii="!r"
2426: - 8C70 40 defb 01000000b
2427: - 8C71 30 defb 00110000b
2428: - 8C72 08 defb 00001000b
2429: - 8C73 30 defb 00110000b
2430: - 8C74 40 defb 01000000b
2431: - 8C75 00 defb 00000000b
2432: - 8C76 78 defb 01111000b
2433: - 8C77 00 defb 00000000b
2434:
2435: ; code=243, hex=0xF3, ascii="!s"
2436: - 8C78 08 defb 00001000b
2437: - 8C79 30 defb 00110000b
2438: - 8C7A 40 defb 01000000b
2439: - 8C7B 30 defb 00110000b
2440: - 8C7C 08 defb 00001000b
2441: - 8C7D 00 defb 00000000b
2442: - 8C7E 78 defb 01111000b
2443: - 8C7F 00 defb 00000000b
2444:
2445: ; code=244, hex=0xF4, ascii="!t"
2446: - 8C80 00 defb 00000000b
2447: - 8C81 08 defb 00001000b
2448: - 8C82 14 defb 00010100b
2449: - 8C83 10 defb 00010000b
2450: - 8C84 10 defb 00010000b
2451: - 8C85 10 defb 00010000b
2452: - 8C86 10 defb 00010000b
2453: - 8C87 10 defb 00010000b
2454:
2455: ; code=245, hex=0xF5, ascii="!u"
2456: - 8C88 10 defb 00010000b
2457: - 8C89 10 defb 00010000b
2458: - 8C8A 10 defb 00010000b
2459: - 8C8B 10 defb 00010000b
2460: - 8C8C 10 defb 00010000b
2461: - 8C8D 50 defb 01010000b
2462: - 8C8E 20 defb 00100000b
2463: - 8C8F 00 defb 00000000b
2464:
2465: ; code=246, hex=0xF6, ascii="!v"
2466: - 8C90 00 defb 00000000b
2467: - 8C91 10 defb 00010000b
2468: - 8C92 00 defb 00000000b
2469: - 8C93 7C defb 01111100b
2470: - 8C94 00 defb 00000000b
2471: - 8C95 10 defb 00010000b
2472: - 8C96 00 defb 00000000b
2473: - 8C97 00 defb 00000000b
2474:
2475: ; code=247, hex=0xF7, ascii="!w"
2476: - 8C98 00 defb 00000000b
2477: - 8C99 28 defb 00101000b
2478: - 8C9A 50 defb 01010000b
2479: - 8C9B 00 defb 00000000b
2480: - 8C9C 28 defb 00101000b
2481: - 8C9D 50 defb 01010000b
2482: - 8C9E 00 defb 00000000b
2483: - 8C9F 00 defb 00000000b
2484:
2485: ; code=248, hex=0xF8, ascii="!x"
2486: - 8CA0 30 defb 00110000b
2487: - 8CA1 48 defb 01001000b
2488: - 8CA2 48 defb 01001000b
2489: - 8CA3 30 defb 00110000b
2490: - 8CA4 00 defb 00000000b
2491: - 8CA5 00 defb 00000000b
2492: - 8CA6 00 defb 00000000b
2493: - 8CA7 00 defb 00000000b
2494:
2495: ; code=249, hex=0xF9, ascii="!y"
2496: - 8CA8 00 defb 00000000b
2497: - 8CA9 00 defb 00000000b
2498: - 8CAA 00 defb 00000000b
2499: - 8CAB 30 defb 00110000b
2500: - 8CAC 30 defb 00110000b
2501: - 8CAD 00 defb 00000000b
2502: - 8CAE 00 defb 00000000b
2503: - 8CAF 00 defb 00000000b
2504:
2505: ; code=250, hex=0xFA, ascii="!z"
2506: - 8CB0 00 defb 00000000b
2507: - 8CB1 00 defb 00000000b
2508: - 8CB2 00 defb 00000000b
2509: - 8CB3 20 defb 00100000b
2510: - 8CB4 00 defb 00000000b
2511: - 8CB5 00 defb 00000000b
2512: - 8CB6 00 defb 00000000b
2513: - 8CB7 00 defb 00000000b
2514:
2515: ; code=251, hex=0xFB, ascii="!{"
2516: - 8CB8 00 defb 00000000b
2517: - 8CB9 1C defb 00011100b
2518: - 8CBA 10 defb 00010000b
2519: - 8CBB 10 defb 00010000b
2520: - 8CBC 50 defb 01010000b
2521: - 8CBD 50 defb 01010000b
2522: - 8CBE 20 defb 00100000b
2523: - 8CBF 00 defb 00000000b
2524:
2525: ; code=252, hex=0xFC, ascii="!|"
2526: - 8CC0 50 defb 01010000b
2527: - 8CC1 28 defb 00101000b
2528: - 8CC2 28 defb 00101000b
2529: - 8CC3 28 defb 00101000b
2530: - 8CC4 00 defb 00000000b
2531: - 8CC5 00 defb 00000000b
2532: - 8CC6 00 defb 00000000b
2533: - 8CC7 00 defb 00000000b
2534:
2535: ; code=253, hex=0xFD, ascii="!}"
2536: - 8CC8 60 defb 01100000b
2537: - 8CC9 10 defb 00010000b
2538: - 8CCA 20 defb 00100000b
2539: - 8CCB 70 defb 01110000b
2540: - 8CCC 00 defb 00000000b
2541: - 8CCD 00 defb 00000000b
2542: - 8CCE 00 defb 00000000b
2543: - 8CCF 00 defb 00000000b
2544:
2545: ; code=254, hex=0xFE, ascii="!~"
2546: - 8CD0 00 defb 00000000b
2547: - 8CD1 00 defb 00000000b
2548: - 8CD2 78 defb 01111000b
2549: - 8CD3 78 defb 01111000b
2550: - 8CD4 78 defb 01111000b
2551: - 8CD5 78 defb 01111000b
2552: - 8CD6 00 defb 00000000b
2553: - 8CD7 00 defb 00000000b
2554:
2555: ; code=255, hex=0xFF, ascii="!^Ÿ"
2556: - 8CD8 00 defb 00000000b
2557: - 8CD9 00 defb 00000000b
2558: - 8CDA 00 defb 00000000b
2559: - 8CDB 00 defb 00000000b
2560: - 8CDC 00 defb 00000000b
2561: - 8CDD 00 defb 00000000b
2562: - 8CDE 00 defb 00000000b
**** test.asm ****
276: - 8CDF 00 defb 00000000b
277:
278:
279: - 8CE0 TermClear:
280: 5169+10 8CE0 010038 ld bc, 0x3800
281: - 8CE3 TermClearLoop:
282: 5179+4 8CE3 79 ld a,c ; setup VDP addressh
283: 5183+11 8CE4 D381 out (0x81),a
284: 5194+4 8CE6 78 ld a,b
285: 5198+7 8CE7 E63F and 3fh
286: 5205+7 8CE9 F640 or 40h ; write bit
287: 5212+11 8CEB D381 out (0x81),a
288: 5223+7 8CED 3E20 ld a, ' '
289: 5230+11 8CEF D380 out (0x80),a
290: 5241+17 8CF1 CD6481 call VDPWait
291: 5258+6 8CF4 03 inc bc
292:
293: 5264+4 8CF5 60 ld h,b
294: 5268+4 8CF6 69 ld l,c
295: 5272+10 8CF7 11C03B ld de, 0x3800 + 960 ; buffer end
296: 5282+15 8CFA ED52 sbc hl, de
297: 5297+10 8CFC C2E38C jp nz, TermClearLoop
298:
299: 5307+4 8CFF AF xor a
300: 5311+13 8D00 32E040 ld (TermCurrentX), a
301: 5324+13 8D03 32E140 ld (TermCurrentY), a
302:
303: 5337+17 8D06 CD4480 call TermSetCursor
304:
**** test.asm ****
305: 5354+10 8D09 C9 ret
Statistics:
4 passes
0 jr promotions
577 symbols
3338 bytes
Symbol Table:
ADDR_RTC =D0 208
A_RTS_OFF = 14F 335
A_RTS_ON = 158 344
BOOT_PHASE0 =50 80
BOOT_PHASE1 =6E 110
BOOT_PHASE1_LOOP=77 119
BOOT_PHASE2 =82 130
COMMAND =11CD 4557
COMMAND_BACKSPACE=1208 4616
COMMAND_LUT =1166 4454
COMMAND_PROCESS=122E 4654
COMMAND_PROCESS_FOUND=1269 4713
COMMAND_PROCESS_LOOP=1231 4657
COMMAND_PROCESS_LOOP_STR1=123A 4666
COMMAND_PROCESS_LOOP_STR2=1250 4688
COMMAND_PROCESS_NEXT_ENTRY=1255 4693
COMMAND_PROCESS_NEXT_ENTRYI=1254 4692
COMMAND_PROCESS_NOT_FOUND=1260 4704
COMMAND_READ =11D9 4569
CONSOLE_INIT =9B 155
CONSOLE_INIT_CTC=9B 155
CONSOLE_INIT_SIO=A3 163
CS_APU_CTRL =F9 249
CS_APU_DATA =F8 248
CS_BANK =00 0
CS_CTC_0 =04 4
CS_CTC_1 =05 5
CS_CTC_2 =06 6
CS_CTC_3 =07 7
CS_DIP =01 1
CS_PIA_CR =33 51
CS_PIA_PA =30 48
CS_PIA_PB =31 49
CS_PIA_PC =32 50
CS_PIO_AC =F6 246
CS_PIO_AD =F4 244
CS_PIO_BC =F7 247
CS_PIO_BD =F5 245
CS_SIO_A_C =09 9
CS_SIO_A_D =08 8
CS_SIO_B_C =0B 11
CS_SIO_B_D =0A 10
DHEX_TO_BYTE = 161 353
DHEX_TO_BYTE_FAILED= 17D 381
ERR_SYNTAX =127F 4735
EXEC_RST_08 = D01 3329
EXEC_RST_10 = D05 3333
EXEC_RST_18 = D11 3345
HEX_TO_BIN = 181 385
HEX_TO_BIN_2 = 18F 399
HEX_TO_INVALID_2= 196 406
IDE_CMD_IDENT =EC 236
IDE_CMD_READSEC=20 32
IDE_DEF_TABLE = E91 3729
IDE_RD =40 64
IDE_REG_ALTSTS =16 22
IDE_REG_CMDSTS =0F 15
IDE_REG_DATA =08 8
IDE_REG_DRVADDR=17 23
IDE_REG_ERROR =09 9
IDE_REG_HCYL =0D 13
IDE_REG_HEAD =0E 14
IDE_REG_LCYL =0C 12
IDE_REG_SECTOR =0A 10
IDE_REG_SSECTOR=0B 11
IDE_RST =80 128
IDE_WR =20 32
IIC_CLK =01 1
IIC_DATA =42 66
INT_VEC =1B 27
IN_BUFFER =402B 16427
IO_AY0_ADDR =40 64
IO_AY0_DATA =41 65
IO_AY1_ADDR =42 66
IO_AY1_DATA =43 67
IO_REG0 =20 32
IO_RTC_AMPM =25 37
IO_RTC_CTR_D =2D 45
IO_RTC_CTR_E =2E 46
IO_RTC_CTR_F =2F 47
IO_RTC_DAY0 =26 38
IO_RTC_DAY1 =27 39
IO_RTC_HOUR =24 36
IO_RTC_MIN0 =22 34
IO_RTC_MIN1 =23 35
IO_RTC_MON0 =28 40
IO_RTC_MON1 =29 41
IO_RTC_SEC0 =20 32
IO_RTC_SEC1 =21 33
IO_RTC_WEEK =2C 44
IO_RTC_YEAR1 =2B 43
IO_RTC_YERR0 =2A 42
MEM_IDE_BASE =5000 20480
MEM_IDE_BUFFER =5062 20578
MEM_IDE_DEVICE =5000 20480
MEM_IDE_DEV_TABLE=5041 20545
MEM_IDE_PARTITION=5002 20482
MEM_IDE_POINTER=5006 20486
MEM_IDE_SELECTED=5061 20577
MEM_IDE_STATUS =5001 20481
MSG_CLEAR = 147 327
NOT_IMPLEMENTED=1278 4728
OP_CALL =12DA 4826
OP_CLR =146E 5230
OP_DASM =135B 4955
OP_DUMP =12FA 4858
OP_EXEC =12C1 4801
OP_IIC_IN =1422 5154
OP_IIC_OUT =13C2 5058
OP_IO_IN =138B 5003
OP_IO_OUT =13A1 5025
OP_RTIME =1472 5234
OP_SET =132A 4906
OP_STIME =160A 5642
POST_CHECK_APU =16B8 5816
POST_CHECK_IDE_30=16E3 5859
POST_CHECK_IDE_40=16F7 5879
POST_CHECK_PIO =1693 5779
POST_START =1683 5763
POST_TEST_RTC =1712 5906
PRG_RAM_START =4110 16656
PRG_RAM_TOP =FF00 65280
PROG_MEM_START =4000 16384
PROG_ROM_START = 100 256
RST_00 =00 0
RST_08 =08 8
RST_10 =10 16
RST_18 =18 24
STACK_RAM_TOP =FFFF 65535
START_ROM =00 0
STRCONV_BYTES_TO_HEX= 198 408
STRCONV_BYTES_TO_HEX_1= 1A7 423
STRCONV_BYTES_TO_HEX_2= 1B1 433
STR_Banner_Start=1817 6167
STR_PD_HEADER =111F 4383
SYS_BUF_START =4010 16400
SYS_RAM_START =4000 16384
TermClear 8CE0 36064
TermClearLoop 8CE3 36067
TermCurrentX 40E0 16608
TermCurrentY 40E1 16609
TermCursorEnabled 40E3 16611
TermCursorState 40E2 16610
TermInit 8008 32776
TermInit_copy_loop 8011 32785
TermPrintChar 8060 32864
TermPrintCharDone 80FE 33022
TermPrintCharSPCR 80F4 33012
TermPrintCharSPDelete 80A1 32929
TermPrintCharSPDeleteWrap 80BA 32954
TermPrintCharSPLF 80D4 32980
TermPrintCharSPLFScroll 80E6 32998
TermPrintCharWrap 808B 32907
TermPrintStr 804F 32847
TermPrintStr_EXIT 805D 32861
TermPrintStr_LOOP 8051 32849
TermScroll 8103 33027
TermScrollClearLine 8144 33092
TermScrollClearLineLoop 8147 33095
TermScrollLine 8106 33030
TermSetCursor 8044 32836
TermVarMemoryLocation=40E0 16608
TermVarTemplate 8004 32772
TermVarTemplateEnd 40E4 16612
TitleMessage 8169 33129
Tms16k =80 128
TmsBackground 829C 33436
TmsBitmap 837F 33663
TmsBitmapColorLen= 800 2048
TmsBitmapFlags = 2C0 704
TmsBitmapLoop 838C 33676
TmsBitmapPatternLen=1800 6144
TmsBlack =01 1
TmsBlankFlags =80 128
TmsByteLoop 8313 33555
TmsChrOut =8280 33408
TmsClearPixel =A02F 41007
TmsColorAddr E406 58374
TmsColorReg =87 135
TmsColorTableHigh 83B1 33713
TmsColorTableReg=83 131
TmsCtrl0Reg =80 128
TmsCtrl1Reg =81 129
TmsCyan =07 7
TmsDarkBlue =04 4
TmsDarkGreen =0C 12
TmsDarkRed =06 6
TmsDarkYellow =0A 10
TmsDisplayEnable=40 64
TmsExtVideo = 100 256
TmsFill 843E 33854
TmsFillLoop 8443 33859
TmsFont 84E0 34016
TmsGray =0E 14
TmsInitCommon 83CA 33738
TmsInitNonBitmap 834C 33612
TmsIntDisable 82CB 33483
TmsIntEnable 82BE 33470
TmsIntEnableBit=20 32
TmsLightBlue =05 5
TmsLightGreen =03 3
TmsLightRed =09 9
TmsLightYellow =0B 11
TmsLineLoop 8310 33552
TmsM1 =10 16
TmsM2 =08 8
TmsM3 = 200 512
TmsMagenta =0D 13
TmsMaskLookup 84B3 33971
TmsMediumGreen =02 2
TmsMediumRed =08 8
TmsMode E402 58370
TmsMulticolor 8300 33536
TmsMulticolorFlags=C8 200
TmsMulticolorPatternLen= 600 1536
TmsNameAddr E404 58372
TmsNameReg =82 130
TmsNumPorts =03 3
TmsPatternAddr E408 58376
TmsPatternReg =84 132
TmsPatternTableHigh 83C5 33733
TmsPixelColor 84BB 33979
TmsPixelOp 8488 33928
TmsPixelOpPlaceHolder 84A9 33961
TmsPlotPixel 848C 33932
TmsPort E400 58368
TmsPorts 8265 33381
TmsProbe 8241 33345
TmsProbeFailed 8260 33376
TmsProbeNext 8246 33350
TmsProbeWait 8256 33366
TmsRamIn 828B 33419
TmsRamInDelay 8290 33424
TmsRamInDelay2 8298 33432
TmsRamOut 8280 33408
TmsRamOutDelay 8287 33415
TmsReadAddr 8424 33828
TmsRegIn 8276 33398
TmsRegOut 826C 33388
TmsRepeat 8482 33922
TmsReset 82D8 33496
TmsScreenColors E40E 58382
TmsSectionLoop 830E 33550
TmsSetPixel =B0 176
TmsSetReg 8268 33384
TmsSetWait 823B 33339
TmsSprite32 =02 2
TmsSpriteAttrAddr E40C 58380
TmsSpriteAttrReg=85 133
TmsSpriteConfig 82AD 33453
TmsSpriteMag =01 1
TmsSpritePatternAddr E40A 58378
TmsSpritePatternReg=86 134
TmsStrOut 8477 33911
TmsSubs 81E2 33250
TmsTextColor 844D 33869
TmsTextFlags =D0 208
TmsTextMode 8337 33591
TmsTextNameLen = 3C0 960
TmsTextPatternLen= 800 2048
TmsTextPos 8460 33888
TmsTile 832B 33579
TmsTileColorLen=20 32
TmsTileFlags =C0 192
TmsTileNameLen = 300 768
TmsTilePatternLen= 800 2048
TmsTransparent =00 0
TmsWait E401 58369
TmsWaits 8238 33336
TmsWhite =0F 15
TmsWrite 842F 33839
TmsWriteAddr 8417 33815
TmsWriteBit =40 64
TmsWriteLoop 8432 33842
TmsXYAddr 84CF 33999
VAR_CONSOLE_BAUD=18 24
VAR_CONSOLE_CONF=0F 15
VDPTextBufferEnd=3B98 15256
VDPTextBufferStart=00 0
VDPWait 8164 33124
VDP_MEM =80 128
VDP_REG =81 129
_COMMAND_PROCESS_FOUND=1277 4727
_OP_CALL =12F9 4857
_OP_IIC_ACK_ERR=1407 5127
_OP_IIC_ACK_ERR_str=140E 5134
_OP_IIC_IN_LOOP=1454 5204
_OP_IIC_IN_LOOP_TEXT=1461 5217
_OP_IIC_OUT_LOOP=13D8 5080
_OP_IIC_OUT_SEND=13F4 5108
_OP_RTIME_NN =1475 5237
_OP_RTIME_RD_CMD=152D 5421
_OP_SET_LOOP =1342 4930
_OP_STIME_INVALID=15D0 5584
_OP_STIME_PROMPT=15E7 5607
_OP_STIME_PROMPT_ERR=15FF 5631
_OP_STIME_STR_DAY=152E 5422
_OP_STIME_STR_HOUR=157F 5503
_OP_STIME_STR_MIN=159A 5530
_OP_STIME_STR_MON=1549 5449
_OP_STIME_STR_SEC=15B5 5557
_OP_STIME_STR_YEAR=1564 5476
_POST_CHECK_APU_FAILED=16D7 5847
_POST_CHECK_IDE_FAILED=170B 5899
_POST_CHECK_PIO_FAILED=16AC 5804
_POST_TEST_RTC_INVALID=174C 5964
_POST_TEST_RTC_NOTFOUND=1745 5957
_STR_NOT_FOUND =129A 4762
_STR_NOT_IMPLEMENTED=1286 4742
_STR_SYNTAX =12AE 4782
_read_bcd_invalid= 144 324
_shift4 =167E 5758
beep = D14 3348
beep_loop = D17 3351
beep_pause = D34 3380
dasm_00 = 919 2329
dasm_01 = C05 3077
dasm_02 = 99F 2463
dasm_03 = BD7 3031
dasm_08 = A1C 2588
dasm_09 = BAA 2986
dasm_0A = 981 2433
dasm_0B = BEE 3054
dasm_10 = 961 2401
dasm_12 = 9AA 2474
dasm_18 = 924 2340
dasm_1A = 98B 2443
dasm_20 = 93E 2366
dasm_22 = C4B 3147
dasm_27 = 9E4 2532
dasm_28 = 937 2359
dasm_2A = C1C 3100
dasm_2F = 9E8 2536
dasm_30 = 92F 2351
dasm_32 = 9B5 2485
dasm_37 = 9F4 2548
dasm_38 = 928 2344
dasm_3A = 995 2453
dasm_3F = 9F0 2544
dasm_76 = 9F8 2552
dasm_80C6 = A75 2677
dasm_BE = A12 2578
dasm_C3 = 91D 2333
dasm_C88E = A9B 2715
dasm_C9 = 96D 2413
dasm_CD = 967 2407
dasm_D9 = A29 2601
dasm_DD = 94F 2383
dasm_DD_01 = C0C 3084
dasm_DD_09 = BC5 3013
dasm_DD_22 = C61 3169
dasm_DD_23 = BDC 3036
dasm_DD_2A = C33 3123
dasm_DD_2B = BF3 3059
dasm_DD_34 = B75 2933
dasm_DD_35 = B92 2962
dasm_DD_86 = A7D 2685
dasm_DD_8E = AA3 2723
dasm_DD_96 = AC6 2758
dasm_DD_9E = AE6 2790
dasm_DD_A6 = B07 2823
dasm_DD_AE = B3E 2878
dasm_DD_B6 = B23 2851
dasm_DD_BE = B5A 2906
dasm_DD_E1 = CB3 3251
dasm_DD_E3 = A39 2617
dasm_DD_E5 = C9D 3229
dasm_DD_F9 = C83 3203
dasm_E1 = CAD 3245
dasm_E3 = A2D 2605
dasm_E5 = C97 3223
dasm_E9 = 946 2374
dasm_ED_42 = BBC 3004
dasm_ED_43 = C57 3159
dasm_ED_44 = 9EC 2540
dasm_ED_45 = 977 2423
dasm_ED_46 = A03 2563
dasm_ED_4A = BB3 2995
dasm_ED_4B = C28 3112
dasm_ED_4D = 972 2418
dasm_ED_56 = A08 2568
dasm_ED_5E = A0D 2573
dasm_ED_A0 = A51 2641
dasm_ED_A1 = A63 2659
dasm_ED_A8 = A5A 2650
dasm_ED_A9 = A6C 2668
dasm_ED_B0 = A55 2645
dasm_ED_B1 = A67 2663
dasm_ED_B8 = A5E 2654
dasm_ED_B9 = A70 2672
dasm_F3 = 9FD 2557
dasm_F9 = C79 3193
dasm_FB = A00 2560
dasm_FD = 958 2392
dasm_FD_01 = C14 3092
dasm_FD_09 = BCE 3022
dasm_FD_22 = C6D 3181
dasm_FD_23 = BE5 3045
dasm_FD_2A = C3F 3135
dasm_FD_2B = BFC 3068
dasm_FD_34 = B81 2945
dasm_FD_35 = B9E 2974
dasm_FD_86 = A8C 2700
dasm_FD_8E = AB2 2738
dasm_FD_96 = AD2 2770
dasm_FD_9E = AF4 2804
dasm_FD_A6 = B13 2835
dasm_FD_AE = B4A 2890
dasm_FD_B6 = B2E 2862
dasm_FD_BE = B65 2917
dasm_FD_E1 = CBB 3259
dasm_FD_E3 = A45 2629
dasm_FD_E5 = CA5 3237
dasm_FD_F9 = C8D 3213
dasm_FF = 97C 2428
dasm_UU = CC3 3267
dasm_UW = CC7 3271
dasm__AND = B02 2818
dasm__CP = B56 2902
dasm__DEC = B8D 2957
dasm__ED_47 = 9D4 2516
dasm__ED_4F = 9DC 2524
dasm__ED_57 = 9C4 2500
dasm__ED_5F = 9CC 2508
dasm__INC = B70 2928
dasm__LD = 9C0 2496
dasm__OR = B1F 2847
dasm__SBC = ADE 2782
dasm__SUB = AC1 2753
dasm__XOR = B39 2873
dasm_opcode_table= 4C1 1217
dasm_print16hex_addr= 2EE 750
dasm_print8hex = 306 774
dasm_printFlags_table= CCC 3276
dasm_printRegister8_table= CDC 3292
dasm_printRegister8_table_HL= CFC 3324
dasm_printRegisterIX_table= CE4 3300
dasm_printRegisterIY_table= CEC 3308
dasm_printRegisterSP_table= CF4 3316
disassemble = 1B2 434
disassemble_continue= 298 664
disassemble_err= 288 648
disassemble_next= 1B6 438
disassemble_print_opcode_params_end= 285 645
disassemble_print_opcode_params_loop= 231 561
disassemble_print_opcode_raw= 1F3 499
disassemble_print_opcode_raw_fill= 207 519
disassemble_table_first_match= 2CA 714
disassemble_table_found= 2E4 740
disassemble_table_notfound= 2E8 744
disassemble_table_seek= 2A6 678
disassemble_table_seek_loop= 2AA 682
dump_pretty =10C4 4292
dump_pretty_ascii=10EE 4334
dump_pretty_ascii_cont=110C 4364
dump_pretty_ascii_loop=10F6 4342
dump_pretty_ascii_none=1107 4359
dump_pretty_col=10E1 4321
dump_pretty_end=111E 4382
dump_pretty_nextrow=1112 4370
dump_pretty_row=10CC 4300
ide_printerror = E0B 3595
ide_readsector_256= D8A 3466
ide_readsector_256_done= DB9 3513
ide_readsector_256_waitloop= D8C 3468
ide_readsector_512_inv= DBA 3514
ide_readsector_512_inv_waitloop= DBF 3519
ide_readsector_timeout= DF5 3573
ide_regread_8 = D6C 3436
ide_regwrite_8 = D50 3408
ide_reset = D43 3395
ide_writesector_256= E0A 3594
ideif_init_drive= EB1 3761
ideif_init_drive_detected= EDF 3807
ideif_init_drive_loop1= EC5 3781
ideif_init_drive_nodrv= ED8 3800
ideif_init_dtable= EB1 3761
iic_init = FD8 4056
iic_read_ack =1017 4119
iic_receive_buffer= FA9 4009
iic_receive_buffer_done= FCC 4044
iic_receive_buffer_err= FD2 4050
iic_receive_buffer_loop= FBA 4026
iic_receive_byte=109D 4253
iic_receive_byte_loop=10AA 4266
iic_send_ack =103D 4157
iic_send_buffer= F7F 3967
iic_send_buffer_done= F9D 3997
iic_send_buffer_err= FA3 4003
iic_send_buffer_loop= F8F 3983
iic_send_byte =1077 4215
iic_send_byte_loop=1083 4227
iic_send_ebit = FF6 4086
iic_send_nack =105A 4186
iic_send_sbit = FE1 4065
mon_var_template=44 68
mon_var_template_end=70 112
param_01 = 314 788
param_02 = 33B 827
param_03 = 358 856
param_03_done = 390 912
param_03_neg = 379 889
param_04 = 394 916
param_04_i = 3A4 932
param_05 = 3AA 938
param_06 = 3B7 951
param_07 = 3D1 977
param_08 = 3DE 990
param_09 = 3F3 1011
param_09_0A = 3F9 1017
param_0A = 3EA 1002
param_10 = 408 1032
param_11 = 418 1048
param_11_12 = 427 1063
param_11_12_all= 447 1095
param_11_12_def= 43A 1082
param_11_12_ix = 43F 1087
param_11_12_iy = 444 1092
param_12 = 420 1056
param_13 = 458 1112
param_80 = 477 1143
param_80_seek = 47E 1150
param_81 = 46E 1134
param_comma = 4B2 1202
param_printRegister= 48D 1165
param_printRegisterA= 4AB 1195
param_printRegisterHL= 4A3 1187
print_a_hex = 104 260
print_bcd = 116 278
print_char =D4 212
print_clear =E7 231
print_newLine =EE 238
print_str =DC 220
print_str_end =E6 230
print_str_fixed=115E 4446
print_wait_out =F9 249
read_bcd = 12E 302
read_char = 11C 284
read_lba_sector= F13 3859
setup_vars 81F1 33265
str_dev_notfound= F74 3956
str_dev_ready = F5E 3934
str_dev_ready2 = F6B 3947
str_dev_waitready= F46 3910
str_error_start= E3E 3646
str_error_start1= E5B 3675
str_error_start2= E64 3684
str_error_time = E6D 3693
str_post_apu =17A4 6052
str_post_ide_30=1753 5971
str_post_ide_40=176E 5998
str_post_nd =17DA 6106
str_post_ok =1812 6162
str_post_pio =1789 6025
str_post_rtc =17BF 6079
str_post_rtc_iv=17E8 6120
var_apu_present=400A 16394
var_buffer =402B 16427
var_buffer_len =4000 16384
var_bytes_count=411A 16666
var_curserchar =4006 16390
var_curserlastaddr=4007 16391
var_curseron =4005 16389
var_curserstate=4004 16388
var_curserx =4002 16386
var_cursery =4003 16387
var_last_char =4001 16385
var_opcode =4114 16660
var_opcode_length=4116 16662
var_opcode_pcount=4119 16665
var_opcode_start=4110 16656
var_opcode_string=4117 16663
var_opcode_table=4112 16658
var_opcode_x =4115 16661
var_pio_present=4009 16393
var_ps2mem =401B 16411
var_scratch =400B 16395