Disassembly:Bios
From veswiki
This is the disassembly of the Channel F bios made and partially annotated by Sean Riddle. This code is copyright © 1976 Fairchild Semiconductor.
cartridgeStart = $0800
cartridgeEntry = $0802
;=======;
; Reset ;
;=======;
; this is the code executed when the system first
; starts up. it clears the registers, sets the K stack
; pointer, and checks to see if a cartridge is inserted
reset:
clr
reset.clrRegs: ; clear all the registers to 0
lr IS, A ; set the ISAR
clr
lr S, A ; clear the current register
lr A, IS
inc ; increase the ISAR
ci $40
bnz reset.clrRegs ; if we're not finished, loop
; set K stack pointer (see pushk/popk)
lisu 7 ; K stack pointer (r59)
lisl 3
li $28
lr S, A ; pointer is set to r40
; check to see if a cartridge is inserted
dci cartridgeStart
lm
ci $55 ; compare the first cartridge byte to $55
bnz noCart ; if it's false, there's no valid cartridge inserted
jmp cartridgeEntry ; otherwise, play the cartridge
;==============;
; No Cartridge ;
;==============;
; no cartridge is inserted, so play the internal games
noCart:
; clear screen to gray
li $d6
lr 3, A
pi clrscrn
A0020: LI $4a ; blue G
LR $0,A ;
PI prompt ;
LISU 3 ; 0026 63
LISL 4 ; 0027 6c
LIS $4 ; 0028 74
LR S,A ; 0029 5c
LR A,$4 ; 002a 44
LISL 7 ; 002b 6f
LR S,A ; 002c 5c
CI $03 ; 002d 25 03
BF $1,A0020 ; 002f 91 f0
PI A0135 ; 0031 28 01 35
PI prompts ; 0034 28 02 24
A0037: PI A0088 ; 0037 28 00 88
PI A02da ; 003a 28 02 da
PI A0088 ; 003d 28 00 88
PI A02e8 ; 0040 28 02 e8
PI A0088 ; 0043 28 00 88
NI $04 ; 0046 21 04
BT 4,A0050 ; 0048 84 07
PI A038c ; 004a 28 03 8c
PI A0399 ; 004d 28 03 99
A0050: PI A0658 ; 0050 28 06 58
PI A0467 ; 0053 28 04 67
PI A03d3 ; 0056 28 03 d3
LISU 3 ; 0059 63
LISL 7 ; 005a 6f
LR A,S ; 005b 4c
CI $02 ; 005c 25 02
BNZ A0063 ; 005e 94 04
PI A0447 ; 0060 28 04 47
A0063: LISU 4 ; 0063 64
LISL 7 ; 0064 6f
LR A,S ; 0065 4c
INC ; 0066 1f
LR S,A ; 0067 5c
LIS $0 ; 0068 70
OUTS 0 ; 0069 b0
INS 0 ; read buttons
NI $04 ; hold button hit?
BNZ A0072 ; nope
PI prompts ; yes, print S? and wait
A0072: LISU 3 ; 0072 63
LISL 4 ; 0073 6c
DCI speeds ; 0074 2a 00 83
LR A,S ; 0077 4c
SR 1 ; 0078 12
ADC ; 0079 8e
LM ; 007a 16
LR $5,A ; 007b 55
PI delay ; 007c 28 00 8f
LIS $0 ; turn off sound
OUTS 5 ; 0080 b5
BF $0,A0037 ; 0081 90 b5
speeds: db $22,$13,$07,$03,$03 ; mode speeds
A0088: LISU 4 ;
LISL 6 ;
LR A,D ;
LR $1,A ; r1=r38
LR A,S ;
LR $0,A ; r0=r37
POP ;
delay: LI $ff ;$008f - parameter in r5, uses r6
LR $6,A ;
dlyloop: DS $6 ;
BNZ dlyloop ;
DS $5 ;
BNZ delay ;
POP ;
prompt: LR K,P ; $0099 - prints char r0 at row r1, col r2, waits for button
PI pushk ;
LI $33 ; r1=$33
LR $1,A ;
LI $13 ; r2=$13
LR $2,A ;
PI drawchar ;
LI $8b ; r0=8b red ?
LR $0,A ;
PI drawchar ;
PI readbuts ;
LI $33 ; r1=$33
LR $1,A ;
LI $13 ; r2=$13
LR $2,A ;
LIS $d ; r0=$d
LR $0,A ;
PI drawchar ;
PI drawchar ;
PI popk ;
PK ;
readbuts: INS 0 ; $00c1 - read buttons
COM ;
NI $0f ;
BT 4,readbuts ;
LR $4,A ;
LI $ff ;
LR $5,A ;
debounce: DS $5 ;
BNZ debounce ;
BF $0,delay ;
;==============;
; Clear Screen ;
;==============;
; clears the screen to a color and palette specified in r3
clrscrn:
; save return address
lr K, P
pi pushk
lis 0
lr 2, A
clrscrn.loop2:
li $7e
lr 1, A
lr A, 3
oi 10
lr 0, A
pi drawchar
lis 5 ; this is LIS 4 in other BIOS!!!
lr 1, A
clrscrn.loop1:
lis 13
lr 0, A
pi drawchar
ds 1
lr A, 1
ci $70
bc clrscrn.loop1
lr A, 2
ai 5
lr 2, A
lisu 3
lisl 7
lis 3
ns S
bz A00fe
lr A, 2
ci $30
bc csloop2
lis 0
lr 3, A
A00fe:
lr A, 2
ci $40
bc clrscrn.loop2
; return from the subroutine
pi popk
pk
;==================;
; Register K Stack ;
;==================;
; the K stack is an emulated stack using the register r59
; as a stack pointer, which holds the register number for
; the top of the stack, which first points at r40. when
; pushk is called, K is pushed to the first two registers
; on the stack, and the pointer is increased.
;
; the K stack can hold 9 copies of K (r40-58) before
; the stack pointer itself is overwritten (r59)
;--------;
; Push K ;
;--------;
; pushes register K (r12-13) onto a stack using r59 as
; the stack pointer
;
; modifies: r7
pushk:
; backup the ISAR
lr A, IS
lr 7, A
; get the top of the stack
lisu 7
lisl 3 ; r59, stack pointer
lr A, S
lr IS, A ; load the referenced register
; push K onto the stack
lr A, Ku
lr S, A ; push high byte of K
lr A, IS
inc
lr IS, A ; increase ISAR (they could've used lr I, A)
lr A, Kl
lr S, A ; push low byte of K
; adjust pointer to the top of the stack
lr A, IS
inc
lr IS, A ; increase ISAR to the top of the stack
lr A, IS ; redundantly, get back the register number
lisu 7
lisl 3
lr S, A ; save the register number to the stack pointer
; restore the ISAR
lr A, 7
lr IS, A
; return from the subroutine
pop
;--------;
; Pop K ;
;--------;
; retrieves a 16-bit value from the K stack and
; stores it in K, using r59 as the stack pointer
;
; modifies: r7
popk:
; backup the ISAR
lr A, IS
lr 7, A
; retrieve K from the stack
lisu 7
lisl 3
lr A, S ; load the stack pointer
ai $ff ; "subtract" 1 to get the first register on the stack
lr IS, A ; set the ISAR to this register
lr A, S
lr Kl, A ; load lower byte of K
lr A, IS
ai $ff ; get previous register (they could've used lr A, D)
lr IS, A
lr A, S
lr Ku, A ; load upper byte of K
; adjust pointer to the top of the stack
lr A, IS
lisu 7
lisl 3
lr S, A ; save the register number to the stack pointer
; restore the ISAR
lr A, 7
lr IS, A
; return from the subroutine
pop
;===================;
A0135: LR K,P ; 0135 08
PI pushk ; 0136 28 01 07
LISU 3 ; 0139 63
LISL 7 ; 013a 6f
LR A,S ; 013b 4c
LISU 4 ; 013c 64
LISL 5 ; 013d 6d
CI $01 ; 013e 25 01
BT 4,A014f ; 0140 84 0e
LI $53 ; 0142 20 53
LR I,A ; 0144 5d
LIS $c ; 0145 7c !!! this is 7F in other BIOS
LR D,A ; 0146 5e
LI $d0 ; 0147 20 d0
LR $3,A ; 0149 53
PI clrscrn ; 014a 28 00 d0
BF $0,A017d ; 014d 90 2f
A014f: LI $17 ; 014f 20 17
LR I,A ; 0151 5d
LI $ff ; 0152 20 ff
LR S,A ; 0154 5c
LI $d6 ; 0155 20 d6
LR $3,A ; 0157 53
PI clrscrn ; 0158 28 00 d0
LI $11 ; 015b 20 11
LR $1,A ; 015d 51
LIS $8 ; 015e 78
LR $2,A ; 015f 52
PI A01f6 ; 0160 28 01 f6
LI $11 ; 0163 20 11
LR $1,A ; 0165 51
LI $25 ; 0166 20 25
LR $2,A ; 0168 52
PI A01f6 ; 0169 28 01 f6
LI $5c ; 016c 20 5c
LR $1,A ; 016e 51
LIS $8 ; 016f 78
LR $2,A ; 0170 52
PI A01f6 ; 0171 28 01 f6
LI $5c ; 0174 20 5c
LR $1,A ; 0176 51
LI $25 ; 0177 20 25
LR $2,A ; 0179 52
PI A01f6 ; 017a 28 01 f6
A017d: LI $14 ; 017d 20 14
LR $1,A ; 017f 51
LIS $6 ; 0180 76
LR $2,A ; 0181 52
PI A020e ; 0182 28 02 0e
LI $14 ; 0185 20 14
LR $1,A ; 0187 51
LI $2e ; 0188 20 2e
LR $2,A ; 018a 52
PI A020e ; 018b 28 02 0e
LI $99 ; 018e 20 99
LISU 2 ; 0190 62
LISL 6 ; 0191 6e
LR I,A ; 0192 5d
LR S,A ; 0193 5c
PI A02ac ; 0194 28 02 ac
PI A02b5 ; 0197 28 02 b5
LISU 4 ; 019a 64
LISL 2 ; 019b 6a
LIS $2 ; 019c 72
LR S,A ; 019d 5c
BF $0,A01a4 ; 019e 90 05
A01a0: LR K,P ; 01a0 08
PI pushk ; 01a1 28 01 07
A01a4: LISU 2 ; 01a4 62
LISL 0 ; 01a5 68
LI $17 ; 01a6 20 17
LR S,A ; 01a8 5c
LISL 3 ; 01a9 6b
LR S,A ; 01aa 5c
LI $1c ; 01ab 20 1c
LR $1,A ; 01ad 51
LI $1a ; 01ae 20 1a
LR $2,A ; 01b0 52
LI $b0 ; 01b1 20 b0
LR $0,A ; 01b3 50
PI drawchar ; 01b4 28 06 79
LI $38 ; 01b7 20 38
LR $1,A ; 01b9 51
LI $1b ; 01ba 20 1b
LR $2,A ; 01bc 52
LI $55 ; 01bd 20 55
LR $0,A ; 01bf 50
PI drawchar ; 01c0 28 06 79
LI $52 ; 01c3 20 52
LR $1,A ; 01c5 51
LI $1a ; 01c6 20 1a
LR $2,A ; 01c8 52
LI $71 ; 01c9 20 71
LR $0,A ; 01cb 50
PI drawchar ; 01cc 28 06 79
LISU 4 ; 01cf 64
LISL 5 ; 01d0 6d
LR A,S ; 01d1 4c
SL 1 ; 01d2 13
BT 1,A01da ; 01d3 81 06
PI A0447 ; 01d5 28 04 47
BF $0,A01f2 ; 01d8 90 19
A01da: LI $11 ; 01da 20 11
LR $1,A ; 01dc 51
LI $1a ; 01dd 20 1a
LR $2,A ; 01df 52
LI $b2 ; 01e0 20 b2
LR $0,A ; 01e2 50
PI drawchar ; 01e3 28 06 79
LI $5e ; 01e6 20 5e
LR $1,A ; 01e8 51
LI $1a ; 01e9 20 1a
LR $2,A ; 01eb 52
LI $73 ; 01ec 20 73
LR $0,A ; 01ee 50
PI drawchar ; 01ef 28 06 79
A01f2: PI popk ; 01f2 28 01 1e
PK ; 01f5 0c
A01f6: LR K,P ; 01f6 08
PI pushk ; 01f7 28 01 07
LIS $8 ; 01fa 78
LR $3,A ; 01fb 53
A01fc: LI $81 ; 01fc 20 81
LR $0,A ; 01fe 50
PI drawchar ; 01ff 28 06 79
LR A,$1 ; 0202 41
AI $fa ; 0203 24 fa
LR $1,A ; 0205 51
LR A,$2 ; 0206 42
INC ; 0207 1f
LR $2,A ; 0208 52
DS $3 ; 0209 33
BNZ A01fc ; 020a 94 f1
BF $0,A01f2 ; 020c 90 e5
A020e: LR K,P ; 020e 08
PI pushk ; 020f 28 01 07
LI $46 ; 0212 20 46
LR $3,A ; 0214 53
A0215: LI $92 ; 0215 20 92
LR $0,A ; 0217 50
PI drawchar ; 0218 28 06 79
LR A,$1 ; 021b 41
AI $fb ; 021c 24 fb
LR $1,A ; 021e 51
DS $3 ; 021f 33
BNZ A0215 ; 0220 94 f4
BF $0,A01f2 ; 0222 90 cf
prompts: LR K,P ;
PI pushk ;
prompts2: LI $85 ; red 5 (S)
LR $0,A ;
PI prompt ;
LR A,$4 ;
CI $08 ; is it button 4, Start?
BNZ notbut4 ; no, check others
PI popk ; yes, return
PK ;
notbut4: CI $02 ; is it button 2, Mode?
BNZ notbut2 ;
LI $8e ; red M
LR $0,A ;
PI prompt ;
LISU 3 ;
LISL 4 ;
LR A,$4 ;
LR S,A ;
BF $0,prompts2 ;
notbut2: CI $01 ; is it button 1, Time?
BNZ prompts2 ;
LI $8c ; red T
LR $0,A ;
PI prompt ;
DCI minutes ;
LR A,$4 ;
SR 1 ;
ADC ;
LM ;
LISU 7 ;
LISL 1 ;
LR I,A ;
LIS $0 ;
LR S,A ;
LISU 6 ;
LISL 7 ;
LIS $f ;
LR S,A ;
PI A0271 ;
LISU 4 ;
LISL 5 ;
LR A,S ;
OI $20 ;
LR S,A ;
BF $0,prompts2 ;
minutes: db $02,$05,$10,$10,$20 ; minutes of play
A0271: LR K,P ; 0271 08
PI pushk ; 0272 28 01 07
LISU 7 ; 0275 67
LISL 2 ; 0276 6a
LR A,D ; 0277 4e
LR $4,A ; 0278 54
LR A,S ; 0279 4c
LR $3,A ; 027a 53
SR 4 ; 027b 14
OI $80 ; 027c 22 80
LR $0,A ; 027e 50
LI $2a ; 027f 20 2a
LR $1,A ; 0281 51
LI $33 ; 0282 20 33
LR $2,A ; 0284 52
PI drawchar ; 0285 28 06 79
LR A,$3 ; 0288 43
NI $0f ; 0289 21 0f
OI $80 ; 028b 22 80
LR $0,A ; 028d 50
PI drawchar ; 028e 28 06 79
LI $91 ; 0291 20 91
LR $0,A ; 0293 50
PI drawchar ; 0294 28 06 79
LR A,$4 ; 0297 44
SR 4 ; 0298 14
OI $80 ; 0299 22 80
LR $0,A ; 029b 50
PI drawchar ; 029c 28 06 79
LR A,$4 ; 029f 44
NI $0f ; 02a0 21 0f
OI $80 ; 02a2 22 80
LR $0,A ; 02a4 50
PI drawchar ; 02a5 28 06 79
PI popk ; 02a8 28 01 1e
PK ; 02ab 0c
A02ac: LR K,P ; 02ac 08
PI pushk ; 02ad 28 01 07
LISL 6 ; 02b0 6e
LI $17 ; 02b1 20 17
BF $0,A02bc ; 02b3 90 08
A02b5: LR K,P ; 02b5 08
PI pushk ; 02b6 28 01 07
LISL 7 ; 02b9 6f
LI $50 ; 02ba 20 50
A02bc: LISU 2 ; 02bc 62
LR $1,A ; 02bd 51
LI $33 ; 02be 20 33
LR $2,A ; 02c0 52
LIS $1 ; 02c1 71
AI $66 ; 02c2 24 66
ASD S ; 02c4 dc
LR S,A ; 02c5 5c
SR 4 ; 02c6 14
OI $40 ; 02c7 22 40
LR $0,A ; 02c9 50
PI drawchar ; 02ca 28 06 79
LR A,S ; 02cd 4c
NI $0f ; 02ce 21 0f
OI $40 ; 02d0 22 40
LR $0,A ; 02d2 50
PI drawchar ; 02d3 28 06 79
PI popk ; 02d6 28 01 1e
PK ; 02d9 0c
A02da: LR K,P ; 02da 08
PI pushk ; 02db 28 01 07
LI $b0 ; 02de 20 b0
LR $4,A ; 02e0 54
LISU 2 ; 02e1 62
LISL 1 ; 02e2 69
LIS $0 ; 02e3 70
OUTS 4 ; 02e4 b4
INS 4 ; read hand controller
BF $0,A02f4 ; 02e6 90 0d
A02e8: LR K,P ; 02e8 08
PI pushk ; 02e9 28 01 07
LI $71 ; 02ec 20 71
LR $4,A ; 02ee 54
LISU 2 ; 02ef 62
LISL 4 ; 02f0 6c
LIS $0 ; 02f1 70
OUTS 1 ; 02f2 b1
INS 1 ; read hand controller
A02f4: COM ; 02f4 18
NS $1 ; 02f5 f1
LR $0,A ; 02f6 50
LR A,I ; 02f7 4d
LR $1,A ; 02f8 51
LR A,S ; 02f9 4c
LR $2,A ; 02fa 52
LIS $1 ; 02fb 71
NS $0 ; 02fc f0
BT 4,A0303 ; 02fd 84 05
LR A,$1 ; 02ff 41
AI $02 ; 0300 24 02
LR $1,A ; 0302 51
A0303: LIS $2 ; 0303 72
NS $0 ; 0304 f0
BT 4,A030b ; 0305 84 05
LR A,$1 ; 0307 41
AI $fe ; 0308 24 fe
LR $1,A ; 030a 51
A030b: LIS $4 ; 030b 74
NS $0 ; 030c f0
BT 4,A0313 ; 030d 84 05
LR A,$2 ; 030f 42
AI $02 ; 0310 24 02
LR $2,A ; 0312 52
A0313: LIS $8 ; 0313 78
NS $0 ; 0314 f0
BT 4,A031b ; 0315 84 05
LR A,$2 ; 0317 42
AI $fe ; 0318 24 fe
LR $2,A ; 031a 52
A031b: LISU 3 ; 031b 63
LISL 7 ; 031c 6f
LR A,S ; 031d 4c
CI $02 ; 031e 25 02
BF $1,A0357 ; 0320 91 36
BNZ A033a ; 0322 94 17
LIS $1 ; 0324 71
NS $4 ; 0325 f4
BNZ A0332 ; 0326 94 0b
LR A,$1 ; 0328 41
CI $2d ; 0329 25 2d
BT 1,A0330 ; 032b 81 04
LI $2d ; 032d 20 2d
LR $1,A ; 032f 51
A0330: BF $0,A033a ; 0330 90 09
A0332: LR A,$1 ; 0332 41
CI $3d ; 0333 25 3d
BF $1,A033a ; 0335 91 04
LI $3d ; 0337 20 3d
LR $1,A ; 0339 51
A033a: LR A,$1 ; 033a 41
CI $52 ; 033b 25 52
BT 1,A0342 ; 033d 81 04
LI $52 ; 033f 20 52
LR $1,A ; 0341 51
A0342: CI $1a ; 0342 25 1a
BF $1,A0349 ; 0344 91 04
LI $1a ; 0346 20 1a
LR $1,A ; 0348 51
A0349: LR A,$2 ; 0349 42
CI $2b ; 034a 25 2b
BT 1,A0351 ; 034c 81 04
LI $2b ; 034e 20 2b
LR $2,A ; 0350 52
A0351: CI $09 ; 0351 25 09
BF $1,A0357 ; 0353 91 03
LIS $9 ; 0355 79
LR $2,A ; 0356 52
A0357: LISU 4 ; 0357 64
LISL 7 ; 0358 6f
LR A,S ; 0359 4c
NI $03 ; 035a 21 03
CI $03 ; 035c 25 03
BNZ A0383 ; 035e 94 24
LISU 2 ; 0360 62
LISL 0 ; 0361 68
LIS $1 ; 0362 71
NS $4 ; 0363 f4
BT 4,A0367 ; 0364 84 02
LISL 3 ; 0366 6b
A0367: LI $10 ; 0367 20 10
NS $0 ; 0369 f0
BT 4,A036d ; 036a 84 02
DS S ; 036c 3c
A036d: LI $20 ; 036d 20 20
NS $0 ; 036f f0
BT 4,A0375 ; 0370 84 04
LR A,S ; 0372 4c
INC ; 0373 1f
LR S,A ; 0374 5c
A0375: LR A,S ; 0375 4c
CI $16 ; 0376 25 16
BNZ A037c ; 0378 94 03
LI $1d ; 037a 20 1d
A037c: CI $1e ; 037c 25 1e
BNZ A0382 ; 037e 94 03
LI $17 ; 0380 20 17
A0382: LR S,A ; 0382 5c
A0383: LR A,$4 ; 0383 44
LR $0,A ; 0384 50
PI drawchar ; 0385 28 06 79
PI popk ; 0388 28 01 1e
PK ; 038b 0c
A038c: LR K,P ; 038c 08
PI pushk ; 038d 28 01 07
LISL 0 ; 0390 68
LI $b2 ; 0391 20 b2
LR $3,A ; 0393 53
LIS $0 ; 0394 70
OUTS 4 ; 0395 b4
INS 4 ; read hand controller
BF $0,A03a4 ; 0397 90 0c
A0399: LR K,P ; 0399 08
PI pushk ; 039a 28 01 07
LISL 2 ; 039d 6a
LI $73 ; 039e 20 73
LR $3,A ; 03a0 53
LIS $0 ; 03a1 70
OUTS 1 ; 03a2 b1
INS 1 ; read hand controller
A03a4: COM ; 03a4 18
LR $0,A ; 03a5 50
LISU 3 ; 03a6 63
LR A,I ; 03a7 4d
LR $1,A ; 03a8 51
LR A,S ; 03a9 4c
LR $2,A ; 03aa 52
LR A,$0 ; 03ab 40
NI $80 ; 03ac 21 80
BT 4,A03b4 ; 03ae 84 05
LR A,$2 ; 03b0 42
AI $02 ; 03b1 24 02
LR $2,A ; 03b3 52
A03b4: LR A,$0 ; 03b4 40
NI $40 ; 03b5 21 40
BT 4,A03bb ; 03b7 84 03
DS $2 ; 03b9 32
DS $2 ; 03ba 32
A03bb: LR A,$2 ; 03bb 42
CI $14 ; 03bc 25 14
BF $1,A03c3 ; 03be 91 04
LI $14 ; 03c0 20 14
LR $2,A ; 03c2 52
A03c3: CI $20 ; 03c3 25 20
BT 1,A03ca ; 03c5 81 04
LI $20 ; 03c7 20 20
LR $2,A ; 03c9 52
A03ca: LR A,$3 ; 03ca 43
LR $0,A ; 03cb 50
PI drawchar ; 03cc 28 06 79
PI popk ; 03cf 28 01 1e
PK ; 03d2 0c
A03d3: LR K,P ; 03d3 08
PI pushk ; 03d4 28 01 07
LISU 4 ; 03d7 64
LISL 0 ; 03d8 68
LR A,I ; 03d9 4d
LR $1,A ; 03da 51
LR A,I ; 03db 4d
LR $2,A ; 03dc 52
LR A,I ; 03dd 4d
LR $3,A ; 03de 53
LR A,I ; 03df 4d
LR $4,A ; 03e0 54
LR A,S ; 03e1 4c
CI $00 ; 03e2 25 00
BT 4,A03f2 ; 03e4 84 0d
LIS $0 ; 03e6 70
LR S,A ; 03e7 5c
LR A,$3 ; 03e8 43
SL 1 ; 03e9 13
AS $3 ; 03ea c3
AS $3 ; 03eb c3
LR $3,A ; 03ec 53
LR A,$4 ; 03ed 44
SL 1 ; 03ee 13
AS $4 ; 03ef c4
AS $4 ; 03f0 c4
LR $4,A ; 03f1 54
A03f2: LR A,$1 ; 03f2 41
AS $3 ; 03f3 c3
LR $1,A ; 03f4 51
LR A,$2 ; 03f5 42
AS $4 ; 03f6 c4
LR $2,A ; 03f7 52
LISU 4 ; 03f8 64
LISL 5 ; 03f9 6d
LI $44 ; 03fa 20 44
NS S ; 03fc fc
BT 4,A043b ; 03fd 84 3d
PI A049c ; 03ff 28 04 9c
LISU 4 ; 0402 64
LISL 2 ; 0403 6a
LR A,$1 ; 0404 41
LR $0,A ; 0405 50
CI $5c ; 0406 25 5c
BT 1,A0410 ; 0408 81 07
PI A043f ; 040a 28 04 3f
LI $5c ; 040d 20 5c
LR $1,A ; 040f 51
A0410: LR A,$1 ; 0410 41
LR $0,A ; 0411 50
CI $14 ; 0412 25 14
BF $1,A041c ; 0414 91 07
PI A043f ; 0416 28 04 3f
LI $14 ; 0419 20 14
LR $1,A ; 041b 51
A041c: LISL 3 ; 041c 6b
LR A,$2 ; 041d 42
LR $0,A ; 041e 50
CI $08 ; 041f 25 08
BF $1,A0429 ; 0421 91 07
PI A043f ; 0423 28 04 3f
LI $09 ; 0426 20 09
LR $2,A ; 0428 52
A0429: LR A,$2 ; 0429 42
LR $0,A ; 042a 50
CI $2e ; 042b 25 2e
BT 1,A0435 ; 042d 81 07
PI A043f ; 042f 28 04 3f
LI $2e ; 0432 20 2e
LR $2,A ; 0434 52
A0435: LI $55 ; 0435 20 55
LR $0,A ; 0437 50
PI drawchar ; 0438 28 06 79
A043b: PI popk ; 043b 28 01 1e
PK ; 043e 0c
A043f: LR A,S ; 043f 4c
COM ; 0440 18
INC ; 0441 1f
LR S,A ; 0442 5c
LI $40 ; beep
OUTS 5 ; 0445 b5
POP ; 0446 1c
A0447: LR K,P ; 0447 08
PI pushk ; 0448 28 01 07
LI $36 ; 044b 20 36
LR $1,A ; 044d 51
LIS $a ; 044e 7a
LR $2,A ; 044f 52
LIS $5 ; 0450 75
LR $4,A ; 0451 54
A0452: LI $81 ; 0452 20 81
LR $0,A ; 0454 50
PI drawchar ; 0455 28 06 79
LR A,$1 ; 0458 41
AI $fa ; 0459 24 fa
LR $1,A ; 045b 51
LR A,$2 ; 045c 42
AI $08 ; 045d 24 08
LR $2,A ; 045f 52
DS $4 ; 0460 34
BNZ A0452 ; 0461 94 f0
PI popk ; 0463 28 01 1e
PK ; 0466 0c
A0467: LR K,P ; 0467 08
PI pushk ; 0468 28 01 07
LISU 7 ; 046b 67
LISL 0 ; 046c 68
LR A,S ; 046d 4c
OI $00 ; 046e 22 00
BT 4,A0498 ; 0470 84 27
LIS $0 ; 0472 70
LR S,A ; 0473 5c
LISL 2 ; 0474 6a
LIS $1 ; 0475 71
LR $0,A ; 0476 50
COM ; 0477 18
ASD S ; 0478 dc
AI $66 ; 0479 24 66
ASD $0 ; 047b d0
LR S,A ; 047c 5c
CI $99 ; 047d 25 99
BNZ A0495 ; 047f 94 15
LI $59 ; 0481 20 59
LR D,A ; 0483 5e
LIS $1 ; 0484 71
LR $0,A ; 0485 50
COM ; 0486 18
ASD S ; 0487 dc
AI $66 ; 0488 24 66
ASD $0 ; 048a d0
CI $99 ; 048b 25 99
BNZ A0494 ; 048d 94 06
PI prompts ; time expired, print S?
BF $0,A0498 ; 0492 90 05
A0494: LR S,A ; 0494 5c
A0495: PI $0271 ; 0495 28 02 71
A0498: PI popk ; 0498 28 01 1e
PK ; 049b 0c
A049c: LR K,P ; 049c 08
PI pushk ; 049d 28 01 07
LISU 4 ; 04a0 64
LISL 7 ; 04a1 6f
LIS $1 ; 04a2 71
NS S ; 04a3 fc
BT 4,A04b8 ; 04a4 84 13
LISU 2 ; 04a6 62
LISL 4 ; 04a7 6c
PI A05fc ; 04a8 28 05 fc
DS $0 ; 04ab 30
BT 4,A04e8 ; 04ac 84 3b
LISU 2 ; 04ae 62
LISL 1 ; 04af 69
PI A05fc ; 04b0 28 05 fc
DS $0 ; 04b3 30
BT 4,A04e5 ; 04b4 84 30
BF $0,A04c8 ; 04b6 90 11
A04b8: LISU 2 ; 04b8 62
LISL 1 ; 04b9 69
PI A05fc ; 04ba 28 05 fc
DS $0 ; 04bd 30
BT 4,A04e5 ; 04be 84 26
LISU 2 ; 04c0 62
LISL 4 ; 04c1 6c
PI A05fc ; 04c2 28 05 fc
DS $0 ; 04c5 30
BT 4,A04e8 ; 04c6 84 21
A04c8: LISU 4 ; 04c8 64
LISL 5 ; 04c9 6d
LR A,S ; 04ca 4c
NI $04 ; 04cb 21 04
BNZ A04d2 ; 04cd 94 04
JMP A059d ; 04cf 29 05 9d
A04d2: LISU 3 ; 04d2 63
LISL 0 ; 04d3 68
PI A05fc ; 04d4 28 05 fc
DS $0 ; 04d7 30
BT 4,A0555 ; 04d8 84 7c
LISU 3 ; 04da 63
LISL 2 ; 04db 6a
PI A05fc ; 04dc 28 05 fc
DS $0 ; 04df 30
BT 4,A0559 ; 04e0 84 78
JMP A0588 ; 04e2 29 05 88
A04e5: LISL 0 ; 04e5 68
BF $0,A04e9 ; 04e6 90 02
A04e8: LISL 3 ; 04e8 6b
A04e9: LISU 2 ; 04e9 62
LR A,I ; 04ea 4d
LR $4,A ; 04eb 54
LR A,I ; 04ec 4d
LR A,S ; 04ed 4c
LR $7,A ; 04ee 57
LISU 4 ; 04ef 64
LISL 5 ; 04f0 6d
LR A,S ; 04f1 4c
SL 1 ; 04f2 13
LR A,$4 ; 04f3 44
BT 1,A0516 ; 04f4 81 21
DCI A050e ; 04f6 2a 05 0e
LIS $7 ; 04f9 77
LR $4,A ; 04fa 54
DS $7 ; 04fb 37
DS $7 ; 04fc 37
A04fd: LR A,$4 ; 04fd 44
AS $7 ; 04fe c7
LR $3,A ; 04ff 53
LR A,$2 ; 0500 42
COM ; 0501 18
INC ; 0502 1f
AS $3 ; 0503 c3
BT 4,A0509 ; 0504 84 04
DS $4 ; 0506 34
BT 1,A04fd ; 0507 81 f5
A0509: LR A,$4 ; 0509 44
ADC ; 050a 8e
LM ; 050b 16
BF $0,A0518 ; 050c 90 0b
A050e: db $04,$04,$05,$06,$00,$01,$02,$03
A0516: AI $e9 ; 0516 24 e9
A0518: DCI A0547 ; 0518 2a 05 47
SL 1 ; 051b 13
ADC ; 051c 8e
LM ; 051d 16
LR $5,A ; 051e 55
LM ; 051f 16
LR $6,A ; 0520 56
LISU 4 ; 0521 64
LISL 2 ; 0522 6a
LR A,S ; 0523 4c
OI $00 ; 0524 22 00
BF $1,A053a ; 0526 91 13
LR A,$5 ; 0528 45
COM ; 0529 18
INC ; 052a 1f
LR $5,A ; 052b 55
LISL 5 ; 052c 6d
LR A,S ; 052d 4c
SL 1 ; 052e 13
LISL 2 ; 052f 6a
BF $1,A0536 ; 0530 91 05
LR A,$6 ; 0532 46
COM ; 0533 18
INC ; 0534 1f
LR $6,A ; 0535 56
A0536: LR A,$1 ; 0536 41
AI $02 ; 0537 24 02
LR $1,A ; 0539 51
A053a: LR A,$5 ; 053a 45
LR I,A ; 053b 5d
LR A,$6 ; 053c 46
LR I,A ; 053d 5d
LIS $2 ; 053e 72
LR S,A ; 053f 5c
LI $80 ; beep
OUTS 5 ; 0542 b5
A0543: PI popk ; 0543 28 01 1e
PK ; 0546 0c
A0547: db $02,$00,$02,$01,$02,$02,$01,$02,$01,$FE,$02,$FE,$02,$FF
A0555: LIS $1 ; 0555 71
LR $3,A ; 0556 53
BF $0,A055b ; 0557 90 03
A0559: LIS $2 ; 0559 72
LR $3,A ; 055a 53
A055b: LISU 4 ; 055b 64
LISL 2 ; 055c 6a
LR A,S ; 055d 4c
DS $3 ; 055e 33
BT 4,A0567 ; 055f 84 07
OI $00 ; 0561 22 00
BT 1,A056b ; 0563 81 07
BF $0,A056e ; 0565 90 08
A0567: OI $00 ; 0567 22 00
BT 1,A056e ; 0569 81 04
A056b: COM ; 056b 18
INC ; 056c 1f
LR S,A ; 056d 5c
A056e: LI $80 ; beep
OUTS 5 ; 0570 b5
LISL 3 ; 0571 6b
LR A,S ; 0572 4c
OI $00 ; 0573 22 00
BNZ A0586 ; 0575 94 10
LISU 2 ; 0577 62
LISL 1 ; 0578 69
LR A,S ; 0579 4c
NI $01 ; 057a 21 01
BT 4,A0581 ; 057c 84 04
LIS $2 ; 057e 72
BF $0,A0583 ; 057f 90 03
A0581: LI $fe ; 0581 20 fe
A0583: LISU 4 ; 0583 64
LISL 3 ; 0584 6b
LR S,A ; 0585 5c
A0586: BF $0,A05f3 ; 0586 90 6c
A0588: LR A,$2 ; 0588 42
CI $14 ; 0589 25 14
BT 1,A059a ; 058b 81 0e
CI $24 ; 058d 25 24
BF $1,A059a ; 058f 91 0a
LR A,$1 ; 0591 41
CI $14 ; 0592 25 14
BT 1,A05a9 ; 0594 81 14
CI $5c ; 0596 25 5c
BF $1,A05a9 ; 0598 91 10
A059a: JMP A0543 ; 059a 29 05 43
A059d: LR A,$1 ; 059d 41
CI $14 ; 059e 25 14
BT 1,A05a9 ; 05a0 81 08
CI $5c ; 05a2 25 5c
BF $1,A05a9 ; 05a4 91 04
JMP A0543 ; 05a6 29 05 43
A05a9: LISU 4 ; 05a9 64
LISL 2 ; 05aa 6a
LR A,I ; 05ab 4d
SL 1 ; 05ac 13
BF $1,A05b3 ; 05ad 91 05
AI $02 ; 05af 24 02
BF $0,A05b5 ; 05b1 90 03
A05b3: AI $fe ; 05b3 24 fe
A05b5: AS $1 ; 05b5 c1
LR $1,A ; 05b6 51
LISL 3 ; 05b7 6b
LR A,S ; 05b8 4c
AS $2 ; 05b9 c2
LR $2,A ; 05ba 52
LI $55 ; 05bb 20 55
LR $0,A ; 05bd 50
PI drawchar ; 05be 28 06 79
LISU 4 ; 05c1 64
LISL 3 ; 05c2 6b
LIS $0 ; 05c3 70
LR S,A ; 05c4 5c
LISU 4 ; 05c5 64
LISL 0 ; 05c6 68
LR A,S ; 05c7 4c
CI $30 ; 05c8 25 30
BF $1,A05d1 ; 05ca 91 06
PI A02b5 ; 05cc 28 02 b5
BF $0,A05d4 ; 05cf 90 04
A05d1: PI A02ac ; 05d1 28 02 ac
A05d4: LI $ff ; 05d4 20 ff
LR $5,A ; 05d6 55
PI delay ; 05d7 28 00 8f
LISU 3 ; 05da 63
LISL 7 ; 05db 6f
LR A,S ; 05dc 4c
CI $02 ; 05dd 25 02
BNZ A05f0 ; 05df 94 10
LISU 2 ; 05e1 62
LISL 6 ; 05e2 6e
LR A,I ; 05e3 4d
CI $15 ; 05e4 25 15
BT 4,A05ed ; 05e6 84 06
LR A,S ; 05e8 4c
CI $15 ; 05e9 25 15
BNZ A05f0 ; 05eb 94 04
A05ed: PI prompts ; 05ed 28 02 24
A05f0: PI A01a0 ; 05f0 28 01 a0
A05f3: PI popk ; 05f3 28 01 1e
PI popk ; 05f6 28 01 1e
JMP A0037 ; 05f9 29 00 37
A05fc: LR K,P ; 05fc 08
PI pushk ; 05fd 28 01 07
LR A,S ; 0600 4c
COM ; 0601 18
INC ; 0602 1f
AS $1 ; 0603 c1
BF $1,A0610 ; 0604 91 0b
LR A,S ; 0606 4c
AI $05 ; 0607 24 05
LR $6,A ; 0609 56
LR A,$1 ; 060a 41
COM ; 060b 18
INC ; 060c 1f
AS S ; 060d cc
BT 1,A0626 ; 060e 81 17
A0610: LR A,S ; 0610 4c
COM ; 0611 18
INC ; 0612 1f
LR $6,A ; 0613 56
LR A,$1 ; 0614 41
AI $02 ; 0615 24 02
AS $6 ; 0617 c6
BF $1,A064f ; 0618 91 36
LR A,$1 ; 061a 41
AI $02 ; 061b 24 02
COM ; 061d 18
INC ; 061e 1f
LR $6,A ; 061f 56
LR A,S ; 0620 4c
AI $05 ; 0621 24 05
AS $6 ; 0623 c6
BF $1,A064f ; 0624 91 2a
A0626: LR A,I ; 0626 4d
LR A,S ; 0627 4c
COM ; 0628 18
INC ; 0629 1f
LR $6,A ; 062a 56
LR A,$2 ; 062b 42
AS $6 ; 062c c6
BF $1,A0639 ; 062d 91 0b
LR A,$2 ; 062f 42
COM ; 0630 18
INC ; 0631 1f
LR $6,A ; 0632 56
LR A,S ; 0633 4c
AI $05 ; 0634 24 05
AS $6 ; 0636 c6
BT 1,A0655 ; 0637 81 1d
A0639: LR A,S ; 0639 4c
COM ; 063a 18
INC ; 063b 1f
LR $6,A ; 063c 56
LR A,$2 ; 063d 42
AI $02 ; 063e 24 02
AS $6 ; 0640 c6
BF $1,A064f ; 0641 91 0d
LR A,$2 ; 0643 42
AI $02 ; 0644 24 02
COM ; 0646 18
INC ; 0647 1f
LR $6,A ; 0648 56
LR A,S ; 0649 4c
AI $05 ; 064a 24 05
AS $6 ; 064c c6
BT 1,A0655 ; 064d 81 07
A064f: LIS $0 ; 064f 70
A0650: LR $0,A ; 0650 50
PI popk ; 0651 28 01 1e
PK ; 0654 0c
A0655: LIS $1 ; 0655 71
BF $0,A0650 ; 0656 90 f9
A0658: DCI A0674 ; 0658 2a 06 74
LISU 4 ; 065b 64
LISL 5 ; 065c 6d
LR A,S ; 065d 4c
NI $20 ; 065e 21 20
BT 4,A0673 ; 0660 84 12
LISU 6 ; 0662 66
LISL 7 ; 0663 6f
DS S ; 0664 3c
BNZ A0673 ; 0665 94 0d
LISU 3 ; 0667 63
LISL 4 ; 0668 6c
LR A,S ; 0669 4c
SR 1 ; 066a 12
ADC ; 066b 8e
LM ; 066c 16
LISU 6 ; 066d 66
LISL 7 ; 066e 6f
LR I,A ; 066f 5d
LISU 7 ; 0670 67
LIS $1 ; 0671 71
LR S,A ; 0672 5c
A0673: POP ; 0673 1c
A0674: db $09,$0d,$15,$1c,$1c
drawchar: DCI bitmaps ; $679
LR K,P ; 067c 08
PI pushk ; 067d 28 01 07
LR A,IS ; 0680 0a
LISU 6 ; 0681 66
LISL 4 ; 0682 6c
LR I,A ; 0683 5d
LR A,$3 ; 0684 43
LR I,A ; 0685 5d
LR A,$4 ; 0686 44
LR S,A ; 0687 5c
LIS $5 ; 0688 75
LR $4,A ; 0689 54
LI $c0 ; 068a 20 c0
NS $0 ; 068c f0
LR $3,A ; 068d 53
LI $3f ; 068e 20 3f
NS $0 ; 0690 f0
LR $0,A ; 0691 50
CI $15 ; 0692 25 15
BNZ A06b4 ; 0694 94 1f
LISU 4 ; 0696 64
LISL 0 ; 0697 68
LIS $2 ; 0698 72
LR $4,A ; 0699 54
PI A06ec ; 069a 28 06 ec
LI $15 ; 069d 20 15
LR $0,A ; 069f 50
A06a0: PI A0718 ; 06a0 28 07 18
LR A,$1 ; 06a3 41
AI $06 ; 06a4 24 06
LR $1,A ; 06a6 51
LISU 6 ; 06a7 66
LISL 5 ; 06a8 6d
LR A,I ; 06a9 4d
LR $3,A ; 06aa 53
LR A,S ; 06ab 4c
LR $4,A ; 06ac 54
LISL 4 ; 06ad 6c
LR A,S ; 06ae 4c
LR IS,A ; 06af 0b
PI popk ; 06b0 28 01 1e
PK ; 06b3 0c
A06b4: CI $30 ; 06b4 25 30
BNZ A06c2 ; 06b6 94 0b
LISU 2 ; 06b8 62
LISL 1 ; 06b9 69
PI A06ec ; 06ba 28 06 ec
LISL 0 ; 06bd 68
LR A,I ; 06be 4d
LR $0,A ; 06bf 50
BF $0,A06a0 ; 06c0 90 df
A06c2: CI $31 ; 06c2 25 31
BNZ A06d0 ; 06c4 94 0b
LISU 2 ; 06c6 62
LISL 4 ; 06c7 6c
PI A06ec ; 06c8 28 06 ec
LISL 3 ; 06cb 6b
LR A,I ; 06cc 4d
LR $0,A ; 06cd 50
BF $0,A06a0 ; 06ce 90 d1
A06d0: CI $32 ; 06d0 25 32
BNZ A06de ; 06d2 94 0b
LISU 3 ; 06d4 63
LISL 0 ; 06d5 68
PI A06ec ; 06d6 28 06 ec
LI $14 ; 06d9 20 14
LR $0,A ; 06db 50
BF $0,A06a0 ; 06dc 90 c3
A06de: CI $33 ; 06de 25 33
BNZ A06a0 ; 06e0 94 bf
LISU 3 ; 06e2 63
LISL 2 ; 06e3 6a
PI A06ec ; 06e4 28 06 ec
LI $14 ; 06e7 20 14
LR $0,A ; 06e9 50
BF $0,A06a0 ; 06ea 90 b5
A06ec: LR K,P ; 06ec 08
PI pushk ; 06ed 28 01 07
LR A,S ; 06f0 4c
XS $1 ; 06f1 e1
BNZ A06f9 ; 06f2 94 06
LR A,I ; 06f4 4d
LR A,D ; 06f5 4e
XS $2 ; 06f6 e2
BT 4,A0714 ; 06f7 84 1c
A06f9: LR A,$1 ; 06f9 41
LR $5,A ; 06fa 55
LR A,$2 ; 06fb 42
LR $6,A ; 06fc 56
LR A,S ; 06fd 4c
LR $1,A ; 06fe 51
LR A,$5 ; 06ff 45
LR I,A ; 0700 5d
LR A,S ; 0701 4c
LR $2,A ; 0702 52
LR A,$6 ; 0703 46
LR D,A ; 0704 5e
LIS $d ; 0705 7d
LR $0,A ; 0706 50
DCI bitmaps ; 0707 2a 07 67
PI A0718 ; 070a 28 07 18
DCI bitmaps ; 070d 2a 07 67
LR A,I ; 0710 4d
LR $1,A ; 0711 51
LR A,D ; 0712 4e
LR $2,A ; 0713 52
A0714: PI popk ; 0714 28 01 1e
PK ; 0717 0c
A0718: LR A,$0 ; 0718 40
SL 1 ; 0719 13
ADC ; 071a 8e
AS $0 ; 071b c0
ADC ; 071c 8e
LI $40 ; 071d 20 40
OUTS 0 ; 071f b0
LR A,$4 ; 0720 44
LR $6,A ; 0721 56
A0722: LR $5,A ; 0722 55
LM ; 0723 16
LR $7,A ; 0724 57
LR A,$2 ; 0725 42
AI $00 ; 0726 24 00
COM ; 0728 18
NI $3f ; 0729 21 3f
LR $8,A ; 072b 58
INS 5 ; 072c a5
NI $c0 ; 072d 21 c0
AS $8 ; 072f c8
OUTS 5 ; 0730 b5
A0731: LR A,$1 ; 0731 41
AI $fc ; 0732 24 fc
COM ; 0734 18
OUTS 4 ; 0735 b4
LR A,$7 ; 0736 47
OI $00 ; 0737 22 00
LR A,$3 ; 0739 43
BF $1,A073d ; 073a 91 02
LIS $0 ; 073c 70
A073d: COM ; 073d 18
OUTS 1 ; 073e b1
LR A,$7 ; 073f 47
SL 1 ; 0740 13
LR $7,A ; 0741 57
LI $60 ; 0742 20 60
OUTS 0 ; 0744 b0
LI $50 ; 0745 20 50 - bit 4 is however n/c, so $40 can be used
OUTS 0 ; 0747 b0
LR A,$1 ; 0748 41
INC ; 0749 1f
LR $1,A ; 074a 51
LIS $4 ; 074b 74
LR $8,A ; 074c 58
A074d: DS $8 ; 074d 38
BNZ A074d ; 074e 94 fe
DS $5 ; 0750 35
BNZ A0731 ; 0751 94 df
LR A,$2 ; 0753 42
INC ; 0754 1f
LR $2,A ; 0755 52
LR A,$4 ; 0756 44
COM ; 0757 18
INC ; 0758 1f
AS $1 ; 0759 c1
LR $1,A ; 075a 51
LR A,$4 ; 075b 44
DS $6 ; 075c 36
BNZ A0722 ; 075d 94 c4
LR A,$4 ; 075f 44
COM ; 0760 18
INC ; 0761 1f
AS $2 ; 0762 c2
LR $2,A ; 0763 52
LIS $0 ; 0764 70
OUTS 0 ; 0765 b0
POP ; 0766 1c
;=========;
; Bitmaps ;
;=========;
; a series of 5x8 bitmaps used by the internal games,
; the prompt routine, and several cartridges
bitmaps:
; 0
.byte %11111000
.byte %10001000
.byte %10001000
.byte %10001000
.byte %11111000
; 1
.byte %00100000
.byte %00100000
.byte %00100000
.byte %00100000
.byte %00100000
; 2
.byte %11111000
.byte %00001000
.byte %11111000
.byte %10000000
.byte %11111000
; 3
.byte %11111000
.byte %00001000
.byte %11111000
.byte %00001000
.byte %11111000
; 4
.byte %10001000
.byte %10001000
.byte %11111000
.byte %00001000
.byte %00001000
; 5
.byte %11111000
.byte %10000000
.byte %11111000
.byte %00001000
.byte %11111000
; 6
.byte %11111000
.byte %10000000
.byte %11111000
.byte %10001000
.byte %11111000
; 7
.byte %11111000
.byte %00001000
.byte %00010000
.byte %00010000
.byte %00010000
; 8
.byte %11111000
.byte %10001000
.byte %11111000
.byte %10001000
.byte %11111000
; 9
.byte %11111000
.byte %10001000
.byte %11111000
.byte %00001000
.byte %11111000
; G
.byte %11111000
.byte %10000000
.byte %10011000
.byte %10001000
.byte %11111000
; ?
.byte %11111000
.byte %00001000
.byte %00111000
.byte %00000000
.byte %00100000
; T
.byte %11111000
.byte %00100000
.byte %00100000
.byte %00100000
.byte %00100000
; (space)
.byte %00000000
.byte %00000000
.byte %00000000
.byte %00000000
.byte %00000000
; M
.byte %11111000
.byte %10101000
.byte %10101000
.byte %10101000
.byte %10101000
; X
.byte %10001000
.byte %01010000
.byte %00100000
.byte %01010000
.byte %10001000
; (block)
.byte %11111111
.byte %11111111
.byte %11111111
.byte %11111111
.byte %11111111
; :
.byte %00000000
.byte %00100000
.byte %00000000
.byte %00100000
.byte %00000000
; -
.byte %00000000
.byte %00000000
.byte %11111000
.byte %00000000
.byte %00000000
; || (center)
.byte %01010000
.byte %01010000
.byte %01010000
.byte %01010000
.byte %01010000
; || (left)
.byte %10100000
.byte %10100000
.byte %10100000
.byte %10100000
.byte %10100000
; '
.byte %11000000
.byte %11000000
.byte %00000000
.byte %00000000
.byte %00000000
db $08,$08,$08,$08,$08 ;|
db $20,$20,$20,$20,$20 ;|
db $10,$10,$20,$40,$40 ; rest are slanted lines
db $08,$10,$20,$40,$80
db $00,$18,$20,$C0,$00
db $00,$C0,$20,$18,$00
db $80,$40,$20,$10,$08
db $40,$40,$20,$10,$10
db $00,$00,$00