Home » Personal collection » Acorn tapes » Own_Work » box01_tape15a_d60_acorn_joystick_progs.wav » DIS4570

DIS4570

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn tapes » Own_Work » box01_tape15a_d60_acorn_joystick_progs.wav
Filename: DIS4570
Read OK:
File size: 1DD7 bytes
Load address: FFFF0E00
Exec address: FFFF8023
File contents
   10MODE 6:HIMEM=&7000:LOMEM=&6400
   20VDU 28,0,24,39,16
   30OSBYTE=&FFF4:OSWORD=&FFF1:OSASCI=&FFE3:OSWRCH=&FFEE
   40OSRDCH=&FFE0:CLI=&FFF7
   50OUT=&70:PUT=&71:SP=&72:BPT=&74
   60CONBLK=&76:HI=&81:LO=&80:DISP=&82:DH=&83
   70UP=&85:STK=&86:ACR=&84
   80OLO=&7B:OHI=&7C:OUMB=&88
   90HA=&8D:HB=&8E:HC=&8F
  100DLINES=&7D:NUMB=&7E:TEMPSTACK=&7F
  110FOR OP=0 TO 3 STEP 3
  120P%=&5400
  450[OPT OP
  460TSX:STX TEMPSTACK
  480LDA#0:STA CONBLK:LDA#6:STA CONBLK+1
  500LDA#ASC("D"):STA DISP
  520LDX#(ST1 MOD 256)
  530LDY#(ST1 DIV 256)
  540JSR OUTPUT
  560LDA#4:LDX#1:JSR OSBYTE
  590.L5 JSR DISPLAY
  610.L7 JSR KEYIN
  630CMP#ASC("D"):BNE NOND
  650.STD STA DISP:JMP L5
  660.NOND CMP#ASC("L"):BEQ STD
  690CMP #ASC("H"):BNE NONH
  710.HGIN LDX#15:LDY#2:JSR SETAB
  730LDA#4:LDX#ASC("0"):LDY#ASC("F"):JSR STRIN
  750JSR DHEX:BCCHGIN:LDA DH:STA HI
  770LDA&602:STA&600:LDA&603:STA&601:JSR DHEX
  790BCC HGIN:LDA DH:STA LO:JMP L5
  800.NONH CMP#ASC("F"):BNE NOF
  820.FGIN LDX#15:LDY#3:JSR SETAB
  830LDA#2:LDX#ASC("0"):LDY#ASC("F"):JSR STRIN
  840JSR DHEX:BCC FGIN:LDA DISP:CMP#ASC("L"):BNE OVSWAP
  850LDA OLO:SEC:SBC OUMP:STA LO:LDA OHI:SBC#0:STA HI
  860.OVSWAP
  870LDY#0:LDA DH:.FLOOP INC LO:BNE OVHI:INC HI:.OVHI CMP(LO),Y:BNE FLOOP
  880JMP L5
  910.NOF LDX DISP:CPX#ASC("L"):BNE NONF:JMP LCOM
  950.NONF CMP#&88:BNE NLEFT
  970LDA LO:BNE DE1:DEC HI:.DE1 DEC LO:JMP L5
  990.NLEFT CMP#&89:BNE NRT
 1010INC LO:BNE DE2:INC HI:.DE2 JMP L5
 1050LDA LO:CLC:ADC#8:STA LO
 1060LDA HI:ADC#0:STA HI:JMP L5
 1100LDA LO:SEC:SBC#8:STA LO
 1110LDA HI:SBC#0:STA HI:JMP L5
 1140.NMOVE CMP#ASC("A"):BNE NONA
 1160.AGIN LDY#14
 1180LDA ACR:ASL A:CLC:ADC ACR:CLC:ADC#6
 1200TAX:JSR SETAB
 1220LDA#2:LDX#ASC("0"):LDY#ASC("F"):JSR STRIN
 1240JSR DHEX:BCC AGIN:LDA DH:LDY#0:STA (LO),Y
 1250JMP L5
 1290.DHEX LDA&600:CMP #ASC("9")+1:BCS AL1
 1300AND#&0F:BCC TIP
 1310.AL1 CMP #ASC("A"):BCC ERHEX:SBC #ASC("A")-10
 1330.TIP ASL A:ASL A:ASL A:ASL A:STA DH
 1340LDA&601:CMP #ASC("9")+1:BCS AL2
 1350AND#&0F:BCC BOT
 1360.AL2 CMP #ASC("A"):BCC ERHEX:SBC #ASC("A")-10
 1380.BOT ORA DH:STA DH:SEC
 1400.ERHEX RTS
 1440.NONA CMP #ASC("S")BNE NONS
 1460.SGIN LDY#14:LDA ACR:CLC:ADC#30:TAX:JSR SETAB
 1480LDA#255:LDX #ASC(" "):LDY #ASC("~"):JSR STRIN
 1500LDX#0:LDY#0
 1520.LOP LDA&600,X:CMP#&0D:BEQ FINLOP
 1530STA (LO),Y:INY:INX:BNE LOP
 1540.FINLOP JMP L5
 1570.NONS
 1580JMP L7
 1620.LCOM CMP#&0D:BNE NONCR
 1640LDA OLO:STA LO:LDA OHI:STA HI:JMP L5
 1660.NONCR CMP#&8B:BNE NONS
 1680LDA OLO:INC OUMB:SEC:SBC OUMB:STA LO
 1690LDA OHI:SBC#0:STA HI:JMP L5
 1720.DIS LDX#(ST2 MOD 256)
 1730LDY#(ST2 DIV 256)
 1750JSR OUTPUT
 1770LDA#16:STA DLINES
 1780.LINLOP
 1800LDA HI:JSR HEX:LDA LO:JSR HEXSP
 1830LDY#0:LDX#3
 1840.HALOP LDA(LO),Y:STA HA,Y:INY:DEX:BNE HALOP
 1860LDX HA:LDA TYPE,X:TAX:LDA NUM,X
 1880STA NUMB:CLC:ADC LO:STA LO:LDA#0:ADC HI:STA HI
 1900LDX NUMB:LDY#3:LDA HA:JSR HEXSP:DEY:DEX:BEQ PAD
 1910LDA HB:JSR HEXSP:DEY:DEX:BEQ PAD
 1920LDA HC:JSR HEXSP:DEX:BEQ MNEM
 1940.PAD TYA:PHA
 1950LDX#(ST4 MOD 256):LDY#(ST4 DIV 256):JSR OUTPUT
 1960PLA:TAY:DEY:BNE PAD
 1980.MNEM LDA #ASC(" "):JSR OSASCI
 2000LDX HA:LDA HASH,X:ASL A:ASL A:STA OUT
 2020LDA#(STRING DIV 256):STA PUT:LDX#4:LDY#0
 2040.MNMLOP LDA (OUT),Y:JSR OSASCI:INY:DEX:BNE MNMLOP
 2050LDA #ASC(" "):JSR OSASCI
 2070LDX HA:LDA TYPE,X:CMP#1:BNE NOD1
 2090LDA #ASC("#"):JSR OSASCI:LDA #ASC("&"):JSR OSASCI
 2110LDA HB:JSR HEXSP:LDY#5:JMP NDLINE
 2130.NOD1 CMP#2:BNE NOD2
 2150LDA #ASC("&"):JSR OSASCI:LDA HC:JSR HEX
 2160LDA HB:JSR HEXSP:LDY#4:JMP NDLNE
 2180.NOD2 CMP#3:BNE NOD3
 2200LDA #ASC("&"):JSR OSASCI:LDA HB:JSR HEXSP
 2210LDY#6:JMP NDLINE
 2230.NOD3 CMP#4:BNE NOD4
 2250LDA #ASC("A"):JSR OSASCI:LDY#9:JMP NDLINE
 2270.NOD4:CMP#5:BNE NOD5
 2290LDY#10:JMP NDLINE
 2310.NOD5 CMP#6:BNE NOD6
 2330LDA #ASC("("):JSR OSASCI:LDA #ASC("&"):JSR OSASCI
 2340LDA HB:JSR HEX:LDA #ASC(","):JSR OSASCI
 2350LDA #ASC("X"):JSR OSASCI:LDA #ASC(")"):JSR OSASCI
 2360LDY#3:JMP NDLINE
 2380.NOD6 CMP#7:BNE NOD7
 2400LDA#ASC("("):JSR OSASCI:LDA#ASC("&"):JSR OSASCI
 2410LDA HB:JSR HEX:LDA#ASC(")"):JSR OSASCI
 2420LDA#ASC(","):JSR OSASCI:LDA#ASC("Y"):JSR OSASCI
 2430LDY#3:JMP NDLINE
 2450.NOD7 CMP#8:BNE NOD8
 2470LDA#ASC("&"):JSR OSASCI:LDA HB:JSR HEX
 2480LDA#ASC(","):JSR OSASCI:LDA#ASC("X"):JSR OSASCI
 2490LDY#5:JMP NDLINE
 2510.NOD8 CMP#9:BNE NOD9
 2530LDA#ASC("&"):JSR OSASCI:LDA HC:JSR HEX
 2540LDA HB:JSR HEX:LDA#ASC(","):JSR OSASCI
 2550LDA#ASC("X"):JSR OSASCI
 2560LDY#3:JMP NDLINE
 2580.NOD9 CMP#&A:BNE NODA
 2600LDA#ASC("&"):JSR OSASCI:LDA HC:JSR HEX
 2610LDA HB:JSR HEX:LDA#ASC(","):JSR OSASCI
 2620LDA#ASC("Y"):JSR OSASCI
 2630LDY#3:JMP NDLINE
 2650.NODA CMP#&B:BNE NODB
 2670LDA#ASC("&"):JSR OSASCI
 2690LDA HB:CMP#&7F:BCS BACK
 2710CLC:ADC LO:PHA LDA#0:ADC HI:CLC:BCC REL
 2730.BACK EOR#255:ADC#0:STA&70:LDA LO:SEC:SBC&70
 2740PHA:LDA HI:SBC#0
 2760.REL JSR HEX:PLA:JSR HEXSP
 2770LDY#4:JMP NDLINE
 2790.NODB CMP#&C:BNE NODC
 2810LDA#ASC("("):JSR OSASCI:LDA#ASC("&"):JSR OSASCI
 2820LDA HC:JSR HEX:LDA HB:JSR HEX
 2830LDA#ASC(")"):JSR OSASCI:LDY#3:JMP NDLINE
 2850.NODC CMP#&D:BNE NODD
 2870LDA#ASC("&"):JSR OSASCI:LDA HB:JSR HEX
 2880LDA#ASC(","):JSR OSASCI:LDA#ASC("Y"):JSR OSASCI
 2890LDY#5:JMP NDLINE
 2910.NODD LDY#10
 2930.NDLINE LDA#ASC(" "):JSR OSASCI:DEY:BPL NDLINE
 2950LDX NUMB:LDY#0
 2960.DISPLOP LDA HA,Y:JSR CHOUT:INY:DEX:BNE DISPLOP
 2980LDA#ASC(" "):.PAD2 JSR OSASCI:INY:CPY#4:BNE PAD2
 3000LDX#5:.PAD3 JSR OSASCI:DEX:BNE PAD3
 3030LDA DLINES:CMP#16:BNE OVOLD
 3050LDA LO:STA OLO:LDA HI:STA OHI
 3060LDA NUMB:STA OUMB
 3080.OVOLD DEC DLINES:BEQ FINLIN:JMP LINLOP
 3090.FINLIN RTS
 3130.DISPLAY LDY#2:LDX#15:JSR SETAB
 3150LDA HI:JSR HEX:LDA LO:JSR HEXSP:
 3170LDA DISP:CMP#ASC("L"):BEQ DDISP
 3190JSR SHOW:RTS
 3210.DDISP JSR DIS:RTS
 3250.SHOW LDX#(ST2 MOD256)
 3260LDY#(ST2 DIV256)
 3280JSR OUTPUT
 3300LDA LO:AND#&F8:SEC:SBC#64:STA UP
 3310LDA HI:SBC#0:STA STK
 3330LDA LO:AND#7:STA ACR
 3350LDX#0:.L4 STX STK+1:LDA#8:CLC:ADC UP:STA UP
 3360LDA #0:ADC STK:STA STK
 3380JSR HEX:LDA UP:JSR HEXSP:LDA#ASC(" "):JSR OSASCI
 3400LDX#0:.L2 STX STK+2:TXA
 3410TAY
 3430LDA(UP),Y:JSR HEXSP
 3450LDX STK+2:INX:CPX#8:BNE L2
 3470LDX#0:.L3 STX STK+2:TXA
 3490TAY
 3500LDA(UP),Y:JSR CHOUT
 3520LDX STK+2:INX:CPX#8:BNE L3
 3540LDA#ASC(" "):JSR OSASCI:JSR OSASCI
 3560LDX STK+1:INX:CPX#16:BNE L4
 3580LDY#14:LDA ACR:ASL A:CLC:ADC ACR
 3590ADC#5:STA STK+1:TAX:JSR SETAB
 3610LDA#ASC("["):JSR OSASCI
 3620LDA STK+1:CLC:ADC#3:TAX:LDY#14:JSR SETAB
 3640LDA#ASC("]"):JSR OSASCI
 3650RTS
 3690.CHOUT CMP#ASC(" "):BCC DUF
 3710CMP#&7F:BCC OK
 3740.DUF LDA#ASC(".")
 3750.OK JSR OSASCI:RTS
 3790.SETAB STY ST3+2:STX ST3+1
 3800LDX#(ST3 MOD256):LDY#(ST3 DIV256)
 3810JSR OUTPUT:RTS
 3850.KEYIN LDX#0:LDA#21:JSR OSBYTE
 3860JSR OSRDCH:BCS KEYERR:RTS
 3880.KEYERR STA STK+1
 3890LDX#(ST6 MOD256):LDY#(ST6 DIV256):JSR CLI
 3900LDA STK+1:CMP#&1B:BNE KERR
 3920LDA#&7E:JSR OSBYTE
 3930.KERR
 3950LDX#0:LDY#22:JSR SETAB:LDX TEMPSTACK:TXS
 3980BRK:EQUB99
 3990EQUS"END OF DIS"
 4010BRK
 4050.OUTPUT STX&70:STY&71
 4060LDY#0
 4070.LOOP LDA(&70),Y:CMP#&FF:BEQ OUTEND
 4080JSR OSASCI:INY:BNE LOOP
 4090.OUTEND RTS
 4130.HEXSP JSR HEX:LDA#&20:JMP OSWRCH
 4150.HEX
 4170PHA:LSR A:LSR A:LSR A:LSR A
 4180JSR HEXDIG:PLA:AND#&F
 4190.HEXDIG CMP#&A:BCC HEXDIH:ADC#6
 4200.HEXDIH ADC#&30:JMP OSWRCH
 4250.STRIN STA CONBLK+2:STX CONBLK+3:STY CONBLK+4
 4260LDX#(ST5 MOD256)
 4270LDY#(ST5 DIV256):JSR OUTPUT
 4280LDA#0:LDX# CONBLK:TAY:JSR OSWORD
 4290BCS ESC1:RTS
 4300.ESC1 LDA#&1B:JMP KEYERR
 4310]
 4320ST1=P%+1:!ST1=&0D0C0616:P%=P%+5
 4330$P%=" ELECTRON DEBUGGER   D DUMP MEMORY      "
 4340$(P%+40)=" H HEX ADDR. : 0000  L LISTING          "
 4350$(P%+80)=" F FIND BYTE : 00    A ALTER BYTE       "
 4360$(P%+120)="                     S STRING"
 4370P%=P%+LEN($P%):?P%=&FF
 4380ST2=P%+1:!ST2=&00000117:ST2!4=0:P%=P%+9
 4390!P%=&001F0000:P%=P%+4:!P%=&FF07:P%=P%+2
 4400ST3=P%:!P%=&0000001F:P%!4=&FF000000:P%=P%+8
 4410ST4=P%:!P%=&FF202020:P%=P%+4
 4420ST5=P%:!P%=&00010117:ST5!4=0:P%=P%+8
 4430!P%=&FF000000:P%=P%+4
 4440ST6=P%:$ST6="FX4,0":P%=P%+6
 4450RESTORE
 4460NUM=P%:FOR I=0 TO 14:READ N%:P%?I=N%:NEXT I
 4470P%=P%+15
 4480P%=(P% DIV256)+1:P%=P%*256
 4490HASH=P%:TYPE=P%+256:P%=P%+512:STRING=P%
 4500NEXT OP
 4510FOR I%=0 TO 255 STEP 4:HASH!I%=0:TYPE!I%=0:STRING!I%=0:NEXT I%
 4520REPEAT
 4530READ A$:IF A$="*" THEN 4570
 4540IF ASC(A$)=ASC("-") THEN I=ABS(VAL(A$)):GOTO 4530
 4550M=EVAL("&"+LEFT$(A$,1)):MN=EVAL("&"+RIGHT$(A$,2))
 4560HASH?MN=I:TYPE?MN=M
 4570UNTIL A$="*"

� 6:�=&7000:�=&6400
� 28,0,24,39,16
7OSBYTE=&FFF4:OSWORD=&FFF1:OSASCI=&FFE3:OSWRCH=&FFEE
(OSRDCH=&FFE0:CLI=&FFF7
2"OUT=&70:PUT=&71:SP=&72:BPT=&74
<,CONBLK=&76:HI=&81:LO=&80:DISP=&82:DH=&83
FUP=&85:STK=&86:ACR=&84
POLO=&7B:OHI=&7C:OUMB=&88
ZHA=&8D:HB=&8E:HC=&8F
d%DLINES=&7D:NUMB=&7E:TEMPSTACK=&7F
n� OP=0 � 3 � 3
xP%=&5400
�[OPT OP
�TSX:STX TEMPSTACK
�'LDA#0:STA CONBLK:LDA#6:STA CONBLK+1
�LDA#�("D"):STA DISP
LDX#(ST1 � 256)
LDY#(ST1 � 256)
JSR OUTPUT
0LDA#4:LDX#1:JSR OSBYTE
N.L5 JSR DISPLAY
b.L7 JSR KEYIN
vCMP#�("D"):BNE NOND
�.STD STA DISP:JMP L5
�.NOND CMP#�("L"):BEQ STD
�CMP #�("H"):BNE NONH
� .HGIN LDX#15:LDY#2:JSR SETAB
�)LDA#4:LDX#�("0"):LDY#�("F"):JSR STRIN
�"JSR DHEX:BCCHGIN:LDA DH:STA HI
,LDA&602:STA&600:LDA&603:STA&601:JSR DHEX
!BCC HGIN:LDA DH:STA LO:JMP L5
 .NONH CMP#�("F"):BNE NOF
4 .FGIN LDX#15:LDY#3:JSR SETAB
>)LDA#2:LDX#�("0"):LDY#�("F"):JSR STRIN
H4JSR DHEX:BCC FGIN:LDA DISP:CMP#�("L"):BNE OVSWAP
R4LDA OLO:SEC:SBC OUMP:STA LO:LDA OHI:SBC#0:STA HI
\.OVSWAP
fHLDY#0:LDA DH:.FLOOP INC LO:BNE OVHI:INC HI:.OVHI CMP(LO),Y:BNE FLOOP
p
JMP L5
�..NOF LDX DISP:CPX#�("L"):BNE NONF:JMP LCOM
�.NONF CMP#&88:BNE NLEFT
�,LDA LO:BNE DE1:DEC HI:.DE1 DEC LO:JMP L5
�.NLEFT CMP#&89:BNE NRT
�%INC LO:BNE DE2:INC HI:.DE2 JMP L5
LDA LO:CLC:ADC#8:STA LO
$LDA HI:ADC#0:STA HI:JMP L5
LLDA LO:SEC:SBC#8:STA LO
VLDA HI:SBC#0:STA HI:JMP L5
t.NMOVE CMP#�("A"):BNE NONA
�.AGIN LDY#14
�'LDA ACR:ASL A:CLC:ADC ACR:CLC:ADC#6
�TAX:JSR SETAB
�)LDA#2:LDX#�("0"):LDY#�("F"):JSR STRIN
�-JSR DHEX:BCC AGIN:LDA DH:LDY#0:STA (LO),Y
�
JMP L5

'.DHEX LDA&600:CMP #�("9")+1:BCS AL1
�#&0F:BCC TIP
-.AL1 CMP #�("A"):BCC ERHEX:SBC #�("A")-10
2'.TIP ASL A:ASL A:ASL A:ASL A:STA DH
<!LDA&601:CMP #�("9")+1:BCS AL2
F�#&0F:BCC BOT
P-.AL2 CMP #�("A"):BCC ERHEX:SBC #�("A")-10
d.BOT �A DH:STA DH:SEC
x.ERHEX RTS
�.NONA CMP #�("S")BNE NONS
�1.SGIN LDY#14:LDA ACR:CLC:ADC#30:TAX:JSR SETAB
�-LDA#255:LDX #�(" "):LDY #�("~"):JSR STRIN
�LDX#0:LDY#0
�%.LOP LDA&600,X:CMP#&0D:BEQ FINLOP
�STA (LO),Y:INY:INX:BNE LOP
.FINLOP JMP L5
"	.NONS
,
JMP L7
T.LCOM CMP#&0D:BNE NONCR
h(LDA OLO:STA LO:LDA OHI:STA HI:JMP L5
|.NONCR CMP#&8B:BNE NONS
�(LDA OLO:INC OUMB:SEC:SBC OUMB:STA LO
�LDA OHI:SBC#0:STA HI:JMP L5
�.DIS LDX#(ST2 � 256)
�LDY#(ST2 � 256)
�JSR OUTPUT
�LDA#16:STA DLINES
�.LINLOP
#LDA HI:JSR HEX:LDA LO:JSR HEXSP
&LDY#0:LDX#3
0/.HALOP LDA(LO),Y:STA HA,Y:INY:DEX:BNE HALOP
D#LDX HA:LDA TYPE,X:TAX:LDA NUM,X
X2STA NUMB:CLC:ADC LO:STA LO:LDA#0:ADC HI:STA HI
l3LDX NUMB:LDY#3:LDA HA:JSR HEXSP:DEY:DEX:BEQ PAD
v$LDA HB:JSR HEXSP:DEY:DEX:BEQ PAD
�!LDA HC:JSR HEXSP:DEX:BEQ MNEM
�.PAD TYA:PHA
�.LDX#(ST4 � 256):LDY#(ST4 � 256):JSR OUTPUT
�PLA:TAY:DEY:BNE PAD
� .MNEM LDA #�(" "):JSR OSASCI
�)LDX HA:LDA HASH,X:ASL A:ASL A:STA OUT
�*LDA#(STRING � 256):STA PUT:LDX#4:LDY#0
�5.MNMLOP LDA (OUT),Y:JSR OSASCI:INY:DEX:BNE MNMLOP
LDA #�(" "):JSR OSASCI
$LDX HA:LDA TYPE,X:CMP#1:BNE NOD1
*1LDA #�("#"):JSR OSASCI:LDA #�("&"):JSR OSASCI
>%LDA HB:JSR HEXSP:LDY#5:JMP NDLINE
R.NOD1 CMP#2:BNE NOD2
f)LDA #�("&"):JSR OSASCI:LDA HC:JSR HEX
p$LDA HB:JSR HEXSP:LDY#4:JMP NDLNE
�.NOD2 CMP#3:BNE NOD3
�+LDA #�("&"):JSR OSASCI:LDA HB:JSR HEXSP
�LDY#6:JMP NDLINE
�.NOD3 CMP#4:BNE NOD4
�+LDA #�("A"):JSR OSASCI:LDY#9:JMP NDLINE
�.NOD4:CMP#5:BNE NOD5
�LDY#10:JMP NDLINE
	.NOD5 CMP#6:BNE NOD6
	1LDA #�("("):JSR OSASCI:LDA #�("&"):JSR OSASCI
	$)LDA HB:JSR HEX:LDA #�(","):JSR OSASCI
	.1LDA #�("X"):JSR OSASCI:LDA #�(")"):JSR OSASCI
	8LDY#3:JMP NDLINE
	L.NOD6 CMP#7:BNE NOD7
	`/LDA#�("("):JSR OSASCI:LDA#�("&"):JSR OSASCI
	j(LDA HB:JSR HEX:LDA#�(")"):JSR OSASCI
	t/LDA#�(","):JSR OSASCI:LDA#�("Y"):JSR OSASCI
	~LDY#3:JMP NDLINE
	�.NOD7 CMP#8:BNE NOD8
	�(LDA#�("&"):JSR OSASCI:LDA HB:JSR HEX
	�/LDA#�(","):JSR OSASCI:LDA#�("X"):JSR OSASCI
	�LDY#5:JMP NDLINE
	�.NOD8 CMP#9:BNE NOD9
	�(LDA#�("&"):JSR OSASCI:LDA HC:JSR HEX
	�(LDA HB:JSR HEX:LDA#�(","):JSR OSASCI
	�LDA#�("X"):JSR OSASCI
LDY#3:JMP NDLINE
.NOD9 CMP#&A:BNE NODA
((LDA#�("&"):JSR OSASCI:LDA HC:JSR HEX
2(LDA HB:JSR HEX:LDA#�(","):JSR OSASCI
<LDA#�("Y"):JSR OSASCI
FLDY#3:JMP NDLINE
Z.NODA CMP#&B:BNE NODB
nLDA#�("&"):JSR OSASCI
�LDA HB:CMP#&7F:BCS BACK
�+CLC:ADC LO:PHA LDA#0:ADC HI:CLC:BCC REL
�..BACK �#255:ADC#0:STA&70:LDA LO:SEC:SBC&70
�PHA:LDA HI:SBC#0
�.REL JSR HEX:PLA:JSR HEXSP
�LDY#4:JMP NDLINE
�.NODB CMP#&C:BNE NODC
�/LDA#�("("):JSR OSASCI:LDA#�("&"):JSR OSASCI
!LDA HC:JSR HEX:LDA HB:JSR HEX
*LDA#�(")"):JSR OSASCI:LDY#3:JMP NDLINE
".NODC CMP#&D:BNE NODD
6(LDA#�("&"):JSR OSASCI:LDA HB:JSR HEX
@/LDA#�(","):JSR OSASCI:LDA#�("Y"):JSR OSASCI
JLDY#5:JMP NDLINE
^.NODD LDY#10
r0.NDLINE LDA#�(" "):JSR OSASCI:DEY:BPL NDLINE
�LDX NUMB:LDY#0
�3.DISPLOP LDA HA,Y:JSR CHOUT:INY:DEX:BNE DISPLOP
�2LDA#�(" "):.PAD2 JSR OSASCI:INY:CPY#4:BNE PAD2
�'LDX#5:.PAD3 JSR OSASCI:DEX:BNE PAD3
�LDA DLINES:CMP#16:BNE OVOLD
�!LDA LO:STA OLO:LDA HI:STA OHI
�LDA NUMB:STA OUMB
+.OVOLD DEC DLINES:BEQ FINLIN:JMP LINLOP
.FINLIN RTS
:#.DISPLAY LDY#2:LDX#15:JSR SETAB
N$LDA HI:JSR HEX:LDA LO:JSR HEXSP:
b!LDA DISP:CMP#�("L"):BEQ DDISP
vJSR SHOW:RTS
�.DDISP JSR DIS:RTS
�.SHOW LDX#(ST2 �256)
�LDY#(ST2 �256)
�JSR OUTPUT
�"LDA LO:�#&F8:SEC:SBC#64:STA UP
�LDA HI:SBC#0:STA STK

LDA LO:�#7:STA ACR

/LDX#0:.L4 STX STK+1:LDA#8:CLC:ADC UP:STA UP

 LDA #0:ADC STK:STA STK

42JSR HEX:LDA UP:JSR HEXSP:LDA#�(" "):JSR OSASCI

HLDX#0:.L2 STX STK+2:TXA

RTAY

fLDA(UP),Y:JSR HEXSP

zLDX STK+2:INX:CPX#8:BNE L2

�LDX#0:.L3 STX STK+2:TXA

�TAY

�LDA(UP),Y:JSR CHOUT

�LDX STK+2:INX:CPX#8:BNE L3

�$LDA#�(" "):JSR OSASCI:JSR OSASCI

�LDX STK+1:INX:CPX#16:BNE L4

�$LDY#14:LDA ACR:ASL A:CLC:ADC ACR
!ADC#5:STA STK+1:TAX:JSR SETAB
LDA#�("["):JSR OSASCI
$,LDA STK+1:CLC:ADC#3:TAX:LDY#14:JSR SETAB
8LDA#�("]"):JSR OSASCI
BRTS
j.CHOUT CMP#�(" "):BCC DUF
~CMP#&7F:BCC OK
�.DUF LDA#�(".")
�.OK JSR OSASCI:RTS
�.SETAB STY ST3+2:STX ST3+1
�!LDX#(ST3 �256):LDY#(ST3 �256)
�JSR OUTPUT:RTS

".KEYIN LDX#0:LDA#21:JSR OSBYTE
JSR OSRDCH:BCS KEYERR:RTS
(.KEYERR STA STK+1
2)LDX#(ST6 �256):LDY#(ST6 �256):JSR CLI
<LDA STK+1:CMP#&1B:BNE KERR
PLDA#&7E:JSR OSBYTE
Z	.KERR
n,LDX#0:LDY#22:JSR SETAB:LDX TEMPSTACK:TXS
�BRK:EQUB99
�EQUS"END OF DIS"
�BRK
�.OUTPUT STX&70:STY&71
�	LDY#0
�'.LOOP LDA(&70),Y:CMP#&FF:BEQ OUTEND
�JSR OSASCI:INY:BNE LOOP
�.OUTEND RTS
"%.HEXSP JSR HEX:LDA#&20:JMP OSWRCH
6.HEX
JPHA:LSR A:LSR A:LSR A:LSR A
TJSR HEXDIG:PLA:�#&F
^#.HEXDIG CMP#&A:BCC HEXDIH:ADC#6
h.HEXDIH ADC#&30:JMP OSWRCH
�1.STRIN STA CONBLK+2:STX CONBLK+3:STY CONBLK+4
�LDX#(ST5 �256)
�LDY#(ST5 �256):JSR OUTPUT
�$LDA#0:LDX# CONBLK:TAY:JSR OSWORD
�BCS ESC1:RTS
�.ESC1 LDA#&1B:JMP KEYERR
�]
�#ST1=P%+1:!ST1=&0D0C0616:P%=P%+5
�2$P%=" ELECTRON DEBUGGER   D DUMP MEMORY      "
�7$(P%+40)=" H HEX ADDR. : 0000  L LISTING          "
�7$(P%+80)=" F FIND BYTE : 00    A ALTER BYTE       "
-$(P%+120)="                     S STRING"
P%=P%+�($P%):?P%=&FF
+ST2=P%+1:!ST2=&00000117:ST2!4=0:P%=P%+9
&+!P%=&001F0000:P%=P%+4:!P%=&FF07:P%=P%+2
0/ST3=P%:!P%=&0000001F:P%!4=&FF000000:P%=P%+8
: ST4=P%:!P%=&FF202020:P%=P%+4
D(ST5=P%:!P%=&00010117:ST5!4=0:P%=P%+8
N!P%=&FF000000:P%=P%+4
XST6=P%:$ST6="FX4,0":P%=P%+6
b�
l&NUM=P%:� I=0 � 14:� N%:P%?I=N%:� I
vP%=P%+15
�P%=(P% �256)+1:P%=P%*256
�+HASH=P%:TYPE=P%+256:P%=P%+512:STRING=P%
�� OP
�9� I%=0 � 255 � 4:HASH!I%=0:TYPE!I%=0:STRING!I%=0:� I%
��
�� A$:� A$="*" � �dZQ
�&� �(A$)=�("-") � I=�(�(A$)):� �trQ
�$M=�("&"+�A$,1)):MN=�("&"+�A$,2))
�HASH?MN=I:TYPE?MN=M
�� A$="*"
�
00000000  0d 00 0a 17 eb 20 36 3a  d3 3d 26 37 30 30 30 3a  |..... 6:.=&7000:|
00000010  d2 3d 26 36 34 30 30 0d  00 14 13 ef 20 32 38 2c  |.=&6400..... 28,|
00000020  30 2c 32 34 2c 33 39 2c  31 36 0d 00 1e 37 4f 53  |0,24,39,16...7OS|
00000030  42 59 54 45 3d 26 46 46  46 34 3a 4f 53 57 4f 52  |BYTE=&FFF4:OSWOR|
00000040  44 3d 26 46 46 46 31 3a  4f 53 41 53 43 49 3d 26  |D=&FFF1:OSASCI=&|
00000050  46 46 45 33 3a 4f 53 57  52 43 48 3d 26 46 46 45  |FFE3:OSWRCH=&FFE|
00000060  45 0d 00 28 1a 4f 53 52  44 43 48 3d 26 46 46 45  |E..(.OSRDCH=&FFE|
00000070  30 3a 43 4c 49 3d 26 46  46 46 37 0d 00 32 22 4f  |0:CLI=&FFF7..2"O|
00000080  55 54 3d 26 37 30 3a 50  55 54 3d 26 37 31 3a 53  |UT=&70:PUT=&71:S|
00000090  50 3d 26 37 32 3a 42 50  54 3d 26 37 34 0d 00 3c  |P=&72:BPT=&74..<|
000000a0  2c 43 4f 4e 42 4c 4b 3d  26 37 36 3a 48 49 3d 26  |,CONBLK=&76:HI=&|
000000b0  38 31 3a 4c 4f 3d 26 38  30 3a 44 49 53 50 3d 26  |81:LO=&80:DISP=&|
000000c0  38 32 3a 44 48 3d 26 38  33 0d 00 46 1a 55 50 3d  |82:DH=&83..F.UP=|
000000d0  26 38 35 3a 53 54 4b 3d  26 38 36 3a 41 43 52 3d  |&85:STK=&86:ACR=|
000000e0  26 38 34 0d 00 50 1c 4f  4c 4f 3d 26 37 42 3a 4f  |&84..P.OLO=&7B:O|
000000f0  48 49 3d 26 37 43 3a 4f  55 4d 42 3d 26 38 38 0d  |HI=&7C:OUMB=&88.|
00000100  00 5a 18 48 41 3d 26 38  44 3a 48 42 3d 26 38 45  |.Z.HA=&8D:HB=&8E|
00000110  3a 48 43 3d 26 38 46 0d  00 64 25 44 4c 49 4e 45  |:HC=&8F..d%DLINE|
00000120  53 3d 26 37 44 3a 4e 55  4d 42 3d 26 37 45 3a 54  |S=&7D:NUMB=&7E:T|
00000130  45 4d 50 53 54 41 43 4b  3d 26 37 46 0d 00 6e 12  |EMPSTACK=&7F..n.|
00000140  e3 20 4f 50 3d 30 20 b8  20 33 20 88 20 33 0d 00  |. OP=0 . 3 . 3..|
00000150  78 0c 50 25 3d 26 35 34  30 30 0d 01 c2 0b 5b 4f  |x.P%=&5400....[O|
00000160  50 54 20 4f 50 0d 01 cc  15 54 53 58 3a 53 54 58  |PT OP....TSX:STX|
00000170  20 54 45 4d 50 53 54 41  43 4b 0d 01 e0 27 4c 44  | TEMPSTACK...'LD|
00000180  41 23 30 3a 53 54 41 20  43 4f 4e 42 4c 4b 3a 4c  |A#0:STA CONBLK:L|
00000190  44 41 23 36 3a 53 54 41  20 43 4f 4e 42 4c 4b 2b  |DA#6:STA CONBLK+|
000001a0  31 0d 01 f4 17 4c 44 41  23 97 28 22 44 22 29 3a  |1....LDA#.("D"):|
000001b0  53 54 41 20 44 49 53 50  0d 02 08 13 4c 44 58 23  |STA DISP....LDX#|
000001c0  28 53 54 31 20 83 20 32  35 36 29 0d 02 12 13 4c  |(ST1 . 256)....L|
000001d0  44 59 23 28 53 54 31 20  81 20 32 35 36 29 0d 02  |DY#(ST1 . 256)..|
000001e0  1c 0e 4a 53 52 20 4f 55  54 50 55 54 0d 02 30 1a  |..JSR OUTPUT..0.|
000001f0  4c 44 41 23 34 3a 4c 44  58 23 31 3a 4a 53 52 20  |LDA#4:LDX#1:JSR |
00000200  4f 53 42 59 54 45 0d 02  4e 13 2e 4c 35 20 4a 53  |OSBYTE..N..L5 JS|
00000210  52 20 44 49 53 50 4c 41  59 0d 02 62 11 2e 4c 37  |R DISPLAY..b..L7|
00000220  20 4a 53 52 20 4b 45 59  49 4e 0d 02 76 17 43 4d  | JSR KEYIN..v.CM|
00000230  50 23 97 28 22 44 22 29  3a 42 4e 45 20 4e 4f 4e  |P#.("D"):BNE NON|
00000240  44 0d 02 8a 18 2e 53 54  44 20 53 54 41 20 44 49  |D.....STD STA DI|
00000250  53 50 3a 4a 4d 50 20 4c  35 0d 02 94 1c 2e 4e 4f  |SP:JMP L5.....NO|
00000260  4e 44 20 43 4d 50 23 97  28 22 4c 22 29 3a 42 45  |ND CMP#.("L"):BE|
00000270  51 20 53 54 44 0d 02 b2  18 43 4d 50 20 23 97 28  |Q STD....CMP #.(|
00000280  22 48 22 29 3a 42 4e 45  20 4e 4f 4e 48 0d 02 c6  |"H"):BNE NONH...|
00000290  20 2e 48 47 49 4e 20 4c  44 58 23 31 35 3a 4c 44  | .HGIN LDX#15:LD|
000002a0  59 23 32 3a 4a 53 52 20  53 45 54 41 42 0d 02 da  |Y#2:JSR SETAB...|
000002b0  29 4c 44 41 23 34 3a 4c  44 58 23 97 28 22 30 22  |)LDA#4:LDX#.("0"|
000002c0  29 3a 4c 44 59 23 97 28  22 46 22 29 3a 4a 53 52  |):LDY#.("F"):JSR|
000002d0  20 53 54 52 49 4e 0d 02  ee 22 4a 53 52 20 44 48  | STRIN..."JSR DH|
000002e0  45 58 3a 42 43 43 48 47  49 4e 3a 4c 44 41 20 44  |EX:BCCHGIN:LDA D|
000002f0  48 3a 53 54 41 20 48 49  0d 03 02 2c 4c 44 41 26  |H:STA HI...,LDA&|
00000300  36 30 32 3a 53 54 41 26  36 30 30 3a 4c 44 41 26  |602:STA&600:LDA&|
00000310  36 30 33 3a 53 54 41 26  36 30 31 3a 4a 53 52 20  |603:STA&601:JSR |
00000320  44 48 45 58 0d 03 16 21  42 43 43 20 48 47 49 4e  |DHEX...!BCC HGIN|
00000330  3a 4c 44 41 20 44 48 3a  53 54 41 20 4c 4f 3a 4a  |:LDA DH:STA LO:J|
00000340  4d 50 20 4c 35 0d 03 20  1c 2e 4e 4f 4e 48 20 43  |MP L5.. ..NONH C|
00000350  4d 50 23 97 28 22 46 22  29 3a 42 4e 45 20 4e 4f  |MP#.("F"):BNE NO|
00000360  46 0d 03 34 20 2e 46 47  49 4e 20 4c 44 58 23 31  |F..4 .FGIN LDX#1|
00000370  35 3a 4c 44 59 23 33 3a  4a 53 52 20 53 45 54 41  |5:LDY#3:JSR SETA|
00000380  42 0d 03 3e 29 4c 44 41  23 32 3a 4c 44 58 23 97  |B..>)LDA#2:LDX#.|
00000390  28 22 30 22 29 3a 4c 44  59 23 97 28 22 46 22 29  |("0"):LDY#.("F")|
000003a0  3a 4a 53 52 20 53 54 52  49 4e 0d 03 48 34 4a 53  |:JSR STRIN..H4JS|
000003b0  52 20 44 48 45 58 3a 42  43 43 20 46 47 49 4e 3a  |R DHEX:BCC FGIN:|
000003c0  4c 44 41 20 44 49 53 50  3a 43 4d 50 23 97 28 22  |LDA DISP:CMP#.("|
000003d0  4c 22 29 3a 42 4e 45 20  4f 56 53 57 41 50 0d 03  |L"):BNE OVSWAP..|
000003e0  52 34 4c 44 41 20 4f 4c  4f 3a 53 45 43 3a 53 42  |R4LDA OLO:SEC:SB|
000003f0  43 20 4f 55 4d 50 3a 53  54 41 20 4c 4f 3a 4c 44  |C OUMP:STA LO:LD|
00000400  41 20 4f 48 49 3a 53 42  43 23 30 3a 53 54 41 20  |A OHI:SBC#0:STA |
00000410  48 49 0d 03 5c 0b 2e 4f  56 53 57 41 50 0d 03 66  |HI..\..OVSWAP..f|
00000420  48 4c 44 59 23 30 3a 4c  44 41 20 44 48 3a 2e 46  |HLDY#0:LDA DH:.F|
00000430  4c 4f 4f 50 20 49 4e 43  20 4c 4f 3a 42 4e 45 20  |LOOP INC LO:BNE |
00000440  4f 56 48 49 3a 49 4e 43  20 48 49 3a 2e 4f 56 48  |OVHI:INC HI:.OVH|
00000450  49 20 43 4d 50 28 4c 4f  29 2c 59 3a 42 4e 45 20  |I CMP(LO),Y:BNE |
00000460  46 4c 4f 4f 50 0d 03 70  0a 4a 4d 50 20 4c 35 0d  |FLOOP..p.JMP L5.|
00000470  03 8e 2e 2e 4e 4f 46 20  4c 44 58 20 44 49 53 50  |....NOF LDX DISP|
00000480  3a 43 50 58 23 97 28 22  4c 22 29 3a 42 4e 45 20  |:CPX#.("L"):BNE |
00000490  4e 4f 4e 46 3a 4a 4d 50  20 4c 43 4f 4d 0d 03 b6  |NONF:JMP LCOM...|
000004a0  1b 2e 4e 4f 4e 46 20 43  4d 50 23 26 38 38 3a 42  |..NONF CMP#&88:B|
000004b0  4e 45 20 4e 4c 45 46 54  0d 03 ca 2c 4c 44 41 20  |NE NLEFT...,LDA |
000004c0  4c 4f 3a 42 4e 45 20 44  45 31 3a 44 45 43 20 48  |LO:BNE DE1:DEC H|
000004d0  49 3a 2e 44 45 31 20 44  45 43 20 4c 4f 3a 4a 4d  |I:.DE1 DEC LO:JM|
000004e0  50 20 4c 35 0d 03 de 1a  2e 4e 4c 45 46 54 20 43  |P L5.....NLEFT C|
000004f0  4d 50 23 26 38 39 3a 42  4e 45 20 4e 52 54 0d 03  |MP#&89:BNE NRT..|
00000500  f2 25 49 4e 43 20 4c 4f  3a 42 4e 45 20 44 45 32  |.%INC LO:BNE DE2|
00000510  3a 49 4e 43 20 48 49 3a  2e 44 45 32 20 4a 4d 50  |:INC HI:.DE2 JMP|
00000520  20 4c 35 0d 04 1a 1b 4c  44 41 20 4c 4f 3a 43 4c  | L5....LDA LO:CL|
00000530  43 3a 41 44 43 23 38 3a  53 54 41 20 4c 4f 0d 04  |C:ADC#8:STA LO..|
00000540  24 1e 4c 44 41 20 48 49  3a 41 44 43 23 30 3a 53  |$.LDA HI:ADC#0:S|
00000550  54 41 20 48 49 3a 4a 4d  50 20 4c 35 0d 04 4c 1b  |TA HI:JMP L5..L.|
00000560  4c 44 41 20 4c 4f 3a 53  45 43 3a 53 42 43 23 38  |LDA LO:SEC:SBC#8|
00000570  3a 53 54 41 20 4c 4f 0d  04 56 1e 4c 44 41 20 48  |:STA LO..V.LDA H|
00000580  49 3a 53 42 43 23 30 3a  53 54 41 20 48 49 3a 4a  |I:SBC#0:STA HI:J|
00000590  4d 50 20 4c 35 0d 04 74  1e 2e 4e 4d 4f 56 45 20  |MP L5..t..NMOVE |
000005a0  43 4d 50 23 97 28 22 41  22 29 3a 42 4e 45 20 4e  |CMP#.("A"):BNE N|
000005b0  4f 4e 41 0d 04 88 10 2e  41 47 49 4e 20 4c 44 59  |ONA.....AGIN LDY|
000005c0  23 31 34 0d 04 9c 27 4c  44 41 20 41 43 52 3a 41  |#14...'LDA ACR:A|
000005d0  53 4c 20 41 3a 43 4c 43  3a 41 44 43 20 41 43 52  |SL A:CLC:ADC ACR|
000005e0  3a 43 4c 43 3a 41 44 43  23 36 0d 04 b0 11 54 41  |:CLC:ADC#6....TA|
000005f0  58 3a 4a 53 52 20 53 45  54 41 42 0d 04 c4 29 4c  |X:JSR SETAB...)L|
00000600  44 41 23 32 3a 4c 44 58  23 97 28 22 30 22 29 3a  |DA#2:LDX#.("0"):|
00000610  4c 44 59 23 97 28 22 46  22 29 3a 4a 53 52 20 53  |LDY#.("F"):JSR S|
00000620  54 52 49 4e 0d 04 d8 2d  4a 53 52 20 44 48 45 58  |TRIN...-JSR DHEX|
00000630  3a 42 43 43 20 41 47 49  4e 3a 4c 44 41 20 44 48  |:BCC AGIN:LDA DH|
00000640  3a 4c 44 59 23 30 3a 53  54 41 20 28 4c 4f 29 2c  |:LDY#0:STA (LO),|
00000650  59 0d 04 e2 0a 4a 4d 50  20 4c 35 0d 05 0a 27 2e  |Y....JMP L5...'.|
00000660  44 48 45 58 20 4c 44 41  26 36 30 30 3a 43 4d 50  |DHEX LDA&600:CMP|
00000670  20 23 97 28 22 39 22 29  2b 31 3a 42 43 53 20 41  | #.("9")+1:BCS A|
00000680  4c 31 0d 05 14 11 80 23  26 30 46 3a 42 43 43 20  |L1.....#&0F:BCC |
00000690  54 49 50 0d 05 1e 2d 2e  41 4c 31 20 43 4d 50 20  |TIP...-.AL1 CMP |
000006a0  23 97 28 22 41 22 29 3a  42 43 43 20 45 52 48 45  |#.("A"):BCC ERHE|
000006b0  58 3a 53 42 43 20 23 97  28 22 41 22 29 2d 31 30  |X:SBC #.("A")-10|
000006c0  0d 05 32 27 2e 54 49 50  20 41 53 4c 20 41 3a 41  |..2'.TIP ASL A:A|
000006d0  53 4c 20 41 3a 41 53 4c  20 41 3a 41 53 4c 20 41  |SL A:ASL A:ASL A|
000006e0  3a 53 54 41 20 44 48 0d  05 3c 21 4c 44 41 26 36  |:STA DH..<!LDA&6|
000006f0  30 31 3a 43 4d 50 20 23  97 28 22 39 22 29 2b 31  |01:CMP #.("9")+1|
00000700  3a 42 43 53 20 41 4c 32  0d 05 46 11 80 23 26 30  |:BCS AL2..F..#&0|
00000710  46 3a 42 43 43 20 42 4f  54 0d 05 50 2d 2e 41 4c  |F:BCC BOT..P-.AL|
00000720  32 20 43 4d 50 20 23 97  28 22 41 22 29 3a 42 43  |2 CMP #.("A"):BC|
00000730  43 20 45 52 48 45 58 3a  53 42 43 20 23 97 28 22  |C ERHEX:SBC #.("|
00000740  41 22 29 2d 31 30 0d 05  64 19 2e 42 4f 54 20 84  |A")-10..d..BOT .|
00000750  41 20 44 48 3a 53 54 41  20 44 48 3a 53 45 43 0d  |A DH:STA DH:SEC.|
00000760  05 78 0e 2e 45 52 48 45  58 20 52 54 53 0d 05 a0  |.x..ERHEX RTS...|
00000770  1d 2e 4e 4f 4e 41 20 43  4d 50 20 23 97 28 22 53  |..NONA CMP #.("S|
00000780  22 29 42 4e 45 20 4e 4f  4e 53 0d 05 b4 31 2e 53  |")BNE NONS...1.S|
00000790  47 49 4e 20 4c 44 59 23  31 34 3a 4c 44 41 20 41  |GIN LDY#14:LDA A|
000007a0  43 52 3a 43 4c 43 3a 41  44 43 23 33 30 3a 54 41  |CR:CLC:ADC#30:TA|
000007b0  58 3a 4a 53 52 20 53 45  54 41 42 0d 05 c8 2d 4c  |X:JSR SETAB...-L|
000007c0  44 41 23 32 35 35 3a 4c  44 58 20 23 97 28 22 20  |DA#255:LDX #.(" |
000007d0  22 29 3a 4c 44 59 20 23  97 28 22 7e 22 29 3a 4a  |"):LDY #.("~"):J|
000007e0  53 52 20 53 54 52 49 4e  0d 05 dc 0f 4c 44 58 23  |SR STRIN....LDX#|
000007f0  30 3a 4c 44 59 23 30 0d  05 f0 25 2e 4c 4f 50 20  |0:LDY#0...%.LOP |
00000800  4c 44 41 26 36 30 30 2c  58 3a 43 4d 50 23 26 30  |LDA&600,X:CMP#&0|
00000810  44 3a 42 45 51 20 46 49  4e 4c 4f 50 0d 05 fa 1e  |D:BEQ FINLOP....|
00000820  53 54 41 20 28 4c 4f 29  2c 59 3a 49 4e 59 3a 49  |STA (LO),Y:INY:I|
00000830  4e 58 3a 42 4e 45 20 4c  4f 50 0d 06 04 12 2e 46  |NX:BNE LOP.....F|
00000840  49 4e 4c 4f 50 20 4a 4d  50 20 4c 35 0d 06 22 09  |INLOP JMP L5..".|
00000850  2e 4e 4f 4e 53 0d 06 2c  0a 4a 4d 50 20 4c 37 0d  |.NONS..,.JMP L7.|
00000860  06 54 1b 2e 4c 43 4f 4d  20 43 4d 50 23 26 30 44  |.T..LCOM CMP#&0D|
00000870  3a 42 4e 45 20 4e 4f 4e  43 52 0d 06 68 28 4c 44  |:BNE NONCR..h(LD|
00000880  41 20 4f 4c 4f 3a 53 54  41 20 4c 4f 3a 4c 44 41  |A OLO:STA LO:LDA|
00000890  20 4f 48 49 3a 53 54 41  20 48 49 3a 4a 4d 50 20  | OHI:STA HI:JMP |
000008a0  4c 35 0d 06 7c 1b 2e 4e  4f 4e 43 52 20 43 4d 50  |L5..|..NONCR CMP|
000008b0  23 26 38 42 3a 42 4e 45  20 4e 4f 4e 53 0d 06 90  |#&8B:BNE NONS...|
000008c0  28 4c 44 41 20 4f 4c 4f  3a 49 4e 43 20 4f 55 4d  |(LDA OLO:INC OUM|
000008d0  42 3a 53 45 43 3a 53 42  43 20 4f 55 4d 42 3a 53  |B:SEC:SBC OUMB:S|
000008e0  54 41 20 4c 4f 0d 06 9a  1f 4c 44 41 20 4f 48 49  |TA LO....LDA OHI|
000008f0  3a 53 42 43 23 30 3a 53  54 41 20 48 49 3a 4a 4d  |:SBC#0:STA HI:JM|
00000900  50 20 4c 35 0d 06 b8 18  2e 44 49 53 20 4c 44 58  |P L5.....DIS LDX|
00000910  23 28 53 54 32 20 83 20  32 35 36 29 0d 06 c2 13  |#(ST2 . 256)....|
00000920  4c 44 59 23 28 53 54 32  20 81 20 32 35 36 29 0d  |LDY#(ST2 . 256).|
00000930  06 d6 0e 4a 53 52 20 4f  55 54 50 55 54 0d 06 ea  |...JSR OUTPUT...|
00000940  15 4c 44 41 23 31 36 3a  53 54 41 20 44 4c 49 4e  |.LDA#16:STA DLIN|
00000950  45 53 0d 06 f4 0b 2e 4c  49 4e 4c 4f 50 0d 07 08  |ES.....LINLOP...|
00000960  23 4c 44 41 20 48 49 3a  4a 53 52 20 48 45 58 3a  |#LDA HI:JSR HEX:|
00000970  4c 44 41 20 4c 4f 3a 4a  53 52 20 48 45 58 53 50  |LDA LO:JSR HEXSP|
00000980  0d 07 26 0f 4c 44 59 23  30 3a 4c 44 58 23 33 0d  |..&.LDY#0:LDX#3.|
00000990  07 30 2f 2e 48 41 4c 4f  50 20 4c 44 41 28 4c 4f  |.0/.HALOP LDA(LO|
000009a0  29 2c 59 3a 53 54 41 20  48 41 2c 59 3a 49 4e 59  |),Y:STA HA,Y:INY|
000009b0  3a 44 45 58 3a 42 4e 45  20 48 41 4c 4f 50 0d 07  |:DEX:BNE HALOP..|
000009c0  44 23 4c 44 58 20 48 41  3a 4c 44 41 20 54 59 50  |D#LDX HA:LDA TYP|
000009d0  45 2c 58 3a 54 41 58 3a  4c 44 41 20 4e 55 4d 2c  |E,X:TAX:LDA NUM,|
000009e0  58 0d 07 58 32 53 54 41  20 4e 55 4d 42 3a 43 4c  |X..X2STA NUMB:CL|
000009f0  43 3a 41 44 43 20 4c 4f  3a 53 54 41 20 4c 4f 3a  |C:ADC LO:STA LO:|
00000a00  4c 44 41 23 30 3a 41 44  43 20 48 49 3a 53 54 41  |LDA#0:ADC HI:STA|
00000a10  20 48 49 0d 07 6c 33 4c  44 58 20 4e 55 4d 42 3a  | HI..l3LDX NUMB:|
00000a20  4c 44 59 23 33 3a 4c 44  41 20 48 41 3a 4a 53 52  |LDY#3:LDA HA:JSR|
00000a30  20 48 45 58 53 50 3a 44  45 59 3a 44 45 58 3a 42  | HEXSP:DEY:DEX:B|
00000a40  45 51 20 50 41 44 0d 07  76 24 4c 44 41 20 48 42  |EQ PAD..v$LDA HB|
00000a50  3a 4a 53 52 20 48 45 58  53 50 3a 44 45 59 3a 44  |:JSR HEXSP:DEY:D|
00000a60  45 58 3a 42 45 51 20 50  41 44 0d 07 80 21 4c 44  |EX:BEQ PAD...!LD|
00000a70  41 20 48 43 3a 4a 53 52  20 48 45 58 53 50 3a 44  |A HC:JSR HEXSP:D|
00000a80  45 58 3a 42 45 51 20 4d  4e 45 4d 0d 07 94 10 2e  |EX:BEQ MNEM.....|
00000a90  50 41 44 20 54 59 41 3a  50 48 41 0d 07 9e 2e 4c  |PAD TYA:PHA....L|
00000aa0  44 58 23 28 53 54 34 20  83 20 32 35 36 29 3a 4c  |DX#(ST4 . 256):L|
00000ab0  44 59 23 28 53 54 34 20  81 20 32 35 36 29 3a 4a  |DY#(ST4 . 256):J|
00000ac0  53 52 20 4f 55 54 50 55  54 0d 07 a8 17 50 4c 41  |SR OUTPUT....PLA|
00000ad0  3a 54 41 59 3a 44 45 59  3a 42 4e 45 20 50 41 44  |:TAY:DEY:BNE PAD|
00000ae0  0d 07 bc 20 2e 4d 4e 45  4d 20 4c 44 41 20 23 97  |... .MNEM LDA #.|
00000af0  28 22 20 22 29 3a 4a 53  52 20 4f 53 41 53 43 49  |(" "):JSR OSASCI|
00000b00  0d 07 d0 29 4c 44 58 20  48 41 3a 4c 44 41 20 48  |...)LDX HA:LDA H|
00000b10  41 53 48 2c 58 3a 41 53  4c 20 41 3a 41 53 4c 20  |ASH,X:ASL A:ASL |
00000b20  41 3a 53 54 41 20 4f 55  54 0d 07 e4 2a 4c 44 41  |A:STA OUT...*LDA|
00000b30  23 28 53 54 52 49 4e 47  20 81 20 32 35 36 29 3a  |#(STRING . 256):|
00000b40  53 54 41 20 50 55 54 3a  4c 44 58 23 34 3a 4c 44  |STA PUT:LDX#4:LD|
00000b50  59 23 30 0d 07 f8 35 2e  4d 4e 4d 4c 4f 50 20 4c  |Y#0...5.MNMLOP L|
00000b60  44 41 20 28 4f 55 54 29  2c 59 3a 4a 53 52 20 4f  |DA (OUT),Y:JSR O|
00000b70  53 41 53 43 49 3a 49 4e  59 3a 44 45 58 3a 42 4e  |SASCI:INY:DEX:BN|
00000b80  45 20 4d 4e 4d 4c 4f 50  0d 08 02 1a 4c 44 41 20  |E MNMLOP....LDA |
00000b90  23 97 28 22 20 22 29 3a  4a 53 52 20 4f 53 41 53  |#.(" "):JSR OSAS|
00000ba0  43 49 0d 08 16 24 4c 44  58 20 48 41 3a 4c 44 41  |CI...$LDX HA:LDA|
00000bb0  20 54 59 50 45 2c 58 3a  43 4d 50 23 31 3a 42 4e  | TYPE,X:CMP#1:BN|
00000bc0  45 20 4e 4f 44 31 0d 08  2a 31 4c 44 41 20 23 97  |E NOD1..*1LDA #.|
00000bd0  28 22 23 22 29 3a 4a 53  52 20 4f 53 41 53 43 49  |("#"):JSR OSASCI|
00000be0  3a 4c 44 41 20 23 97 28  22 26 22 29 3a 4a 53 52  |:LDA #.("&"):JSR|
00000bf0  20 4f 53 41 53 43 49 0d  08 3e 25 4c 44 41 20 48  | OSASCI..>%LDA H|
00000c00  42 3a 4a 53 52 20 48 45  58 53 50 3a 4c 44 59 23  |B:JSR HEXSP:LDY#|
00000c10  35 3a 4a 4d 50 20 4e 44  4c 49 4e 45 0d 08 52 18  |5:JMP NDLINE..R.|
00000c20  2e 4e 4f 44 31 20 43 4d  50 23 32 3a 42 4e 45 20  |.NOD1 CMP#2:BNE |
00000c30  4e 4f 44 32 0d 08 66 29  4c 44 41 20 23 97 28 22  |NOD2..f)LDA #.("|
00000c40  26 22 29 3a 4a 53 52 20  4f 53 41 53 43 49 3a 4c  |&"):JSR OSASCI:L|
00000c50  44 41 20 48 43 3a 4a 53  52 20 48 45 58 0d 08 70  |DA HC:JSR HEX..p|
00000c60  24 4c 44 41 20 48 42 3a  4a 53 52 20 48 45 58 53  |$LDA HB:JSR HEXS|
00000c70  50 3a 4c 44 59 23 34 3a  4a 4d 50 20 4e 44 4c 4e  |P:LDY#4:JMP NDLN|
00000c80  45 0d 08 84 18 2e 4e 4f  44 32 20 43 4d 50 23 33  |E.....NOD2 CMP#3|
00000c90  3a 42 4e 45 20 4e 4f 44  33 0d 08 98 2b 4c 44 41  |:BNE NOD3...+LDA|
00000ca0  20 23 97 28 22 26 22 29  3a 4a 53 52 20 4f 53 41  | #.("&"):JSR OSA|
00000cb0  53 43 49 3a 4c 44 41 20  48 42 3a 4a 53 52 20 48  |SCI:LDA HB:JSR H|
00000cc0  45 58 53 50 0d 08 a2 14  4c 44 59 23 36 3a 4a 4d  |EXSP....LDY#6:JM|
00000cd0  50 20 4e 44 4c 49 4e 45  0d 08 b6 18 2e 4e 4f 44  |P NDLINE.....NOD|
00000ce0  33 20 43 4d 50 23 34 3a  42 4e 45 20 4e 4f 44 34  |3 CMP#4:BNE NOD4|
00000cf0  0d 08 ca 2b 4c 44 41 20  23 97 28 22 41 22 29 3a  |...+LDA #.("A"):|
00000d00  4a 53 52 20 4f 53 41 53  43 49 3a 4c 44 59 23 39  |JSR OSASCI:LDY#9|
00000d10  3a 4a 4d 50 20 4e 44 4c  49 4e 45 0d 08 de 18 2e  |:JMP NDLINE.....|
00000d20  4e 4f 44 34 3a 43 4d 50  23 35 3a 42 4e 45 20 4e  |NOD4:CMP#5:BNE N|
00000d30  4f 44 35 0d 08 f2 15 4c  44 59 23 31 30 3a 4a 4d  |OD5....LDY#10:JM|
00000d40  50 20 4e 44 4c 49 4e 45  0d 09 06 18 2e 4e 4f 44  |P NDLINE.....NOD|
00000d50  35 20 43 4d 50 23 36 3a  42 4e 45 20 4e 4f 44 36  |5 CMP#6:BNE NOD6|
00000d60  0d 09 1a 31 4c 44 41 20  23 97 28 22 28 22 29 3a  |...1LDA #.("("):|
00000d70  4a 53 52 20 4f 53 41 53  43 49 3a 4c 44 41 20 23  |JSR OSASCI:LDA #|
00000d80  97 28 22 26 22 29 3a 4a  53 52 20 4f 53 41 53 43  |.("&"):JSR OSASC|
00000d90  49 0d 09 24 29 4c 44 41  20 48 42 3a 4a 53 52 20  |I..$)LDA HB:JSR |
00000da0  48 45 58 3a 4c 44 41 20  23 97 28 22 2c 22 29 3a  |HEX:LDA #.(","):|
00000db0  4a 53 52 20 4f 53 41 53  43 49 0d 09 2e 31 4c 44  |JSR OSASCI...1LD|
00000dc0  41 20 23 97 28 22 58 22  29 3a 4a 53 52 20 4f 53  |A #.("X"):JSR OS|
00000dd0  41 53 43 49 3a 4c 44 41  20 23 97 28 22 29 22 29  |ASCI:LDA #.(")")|
00000de0  3a 4a 53 52 20 4f 53 41  53 43 49 0d 09 38 14 4c  |:JSR OSASCI..8.L|
00000df0  44 59 23 33 3a 4a 4d 50  20 4e 44 4c 49 4e 45 0d  |DY#3:JMP NDLINE.|
00000e00  09 4c 18 2e 4e 4f 44 36  20 43 4d 50 23 37 3a 42  |.L..NOD6 CMP#7:B|
00000e10  4e 45 20 4e 4f 44 37 0d  09 60 2f 4c 44 41 23 97  |NE NOD7..`/LDA#.|
00000e20  28 22 28 22 29 3a 4a 53  52 20 4f 53 41 53 43 49  |("("):JSR OSASCI|
00000e30  3a 4c 44 41 23 97 28 22  26 22 29 3a 4a 53 52 20  |:LDA#.("&"):JSR |
00000e40  4f 53 41 53 43 49 0d 09  6a 28 4c 44 41 20 48 42  |OSASCI..j(LDA HB|
00000e50  3a 4a 53 52 20 48 45 58  3a 4c 44 41 23 97 28 22  |:JSR HEX:LDA#.("|
00000e60  29 22 29 3a 4a 53 52 20  4f 53 41 53 43 49 0d 09  |)"):JSR OSASCI..|
00000e70  74 2f 4c 44 41 23 97 28  22 2c 22 29 3a 4a 53 52  |t/LDA#.(","):JSR|
00000e80  20 4f 53 41 53 43 49 3a  4c 44 41 23 97 28 22 59  | OSASCI:LDA#.("Y|
00000e90  22 29 3a 4a 53 52 20 4f  53 41 53 43 49 0d 09 7e  |"):JSR OSASCI..~|
00000ea0  14 4c 44 59 23 33 3a 4a  4d 50 20 4e 44 4c 49 4e  |.LDY#3:JMP NDLIN|
00000eb0  45 0d 09 92 18 2e 4e 4f  44 37 20 43 4d 50 23 38  |E.....NOD7 CMP#8|
00000ec0  3a 42 4e 45 20 4e 4f 44  38 0d 09 a6 28 4c 44 41  |:BNE NOD8...(LDA|
00000ed0  23 97 28 22 26 22 29 3a  4a 53 52 20 4f 53 41 53  |#.("&"):JSR OSAS|
00000ee0  43 49 3a 4c 44 41 20 48  42 3a 4a 53 52 20 48 45  |CI:LDA HB:JSR HE|
00000ef0  58 0d 09 b0 2f 4c 44 41  23 97 28 22 2c 22 29 3a  |X.../LDA#.(","):|
00000f00  4a 53 52 20 4f 53 41 53  43 49 3a 4c 44 41 23 97  |JSR OSASCI:LDA#.|
00000f10  28 22 58 22 29 3a 4a 53  52 20 4f 53 41 53 43 49  |("X"):JSR OSASCI|
00000f20  0d 09 ba 14 4c 44 59 23  35 3a 4a 4d 50 20 4e 44  |....LDY#5:JMP ND|
00000f30  4c 49 4e 45 0d 09 ce 18  2e 4e 4f 44 38 20 43 4d  |LINE.....NOD8 CM|
00000f40  50 23 39 3a 42 4e 45 20  4e 4f 44 39 0d 09 e2 28  |P#9:BNE NOD9...(|
00000f50  4c 44 41 23 97 28 22 26  22 29 3a 4a 53 52 20 4f  |LDA#.("&"):JSR O|
00000f60  53 41 53 43 49 3a 4c 44  41 20 48 43 3a 4a 53 52  |SASCI:LDA HC:JSR|
00000f70  20 48 45 58 0d 09 ec 28  4c 44 41 20 48 42 3a 4a  | HEX...(LDA HB:J|
00000f80  53 52 20 48 45 58 3a 4c  44 41 23 97 28 22 2c 22  |SR HEX:LDA#.(","|
00000f90  29 3a 4a 53 52 20 4f 53  41 53 43 49 0d 09 f6 19  |):JSR OSASCI....|
00000fa0  4c 44 41 23 97 28 22 58  22 29 3a 4a 53 52 20 4f  |LDA#.("X"):JSR O|
00000fb0  53 41 53 43 49 0d 0a 00  14 4c 44 59 23 33 3a 4a  |SASCI....LDY#3:J|
00000fc0  4d 50 20 4e 44 4c 49 4e  45 0d 0a 14 19 2e 4e 4f  |MP NDLINE.....NO|
00000fd0  44 39 20 43 4d 50 23 26  41 3a 42 4e 45 20 4e 4f  |D9 CMP#&A:BNE NO|
00000fe0  44 41 0d 0a 28 28 4c 44  41 23 97 28 22 26 22 29  |DA..((LDA#.("&")|
00000ff0  3a 4a 53 52 20 4f 53 41  53 43 49 3a 4c 44 41 20  |:JSR OSASCI:LDA |
00001000  48 43 3a 4a 53 52 20 48  45 58 0d 0a 32 28 4c 44  |HC:JSR HEX..2(LD|
00001010  41 20 48 42 3a 4a 53 52  20 48 45 58 3a 4c 44 41  |A HB:JSR HEX:LDA|
00001020  23 97 28 22 2c 22 29 3a  4a 53 52 20 4f 53 41 53  |#.(","):JSR OSAS|
00001030  43 49 0d 0a 3c 19 4c 44  41 23 97 28 22 59 22 29  |CI..<.LDA#.("Y")|
00001040  3a 4a 53 52 20 4f 53 41  53 43 49 0d 0a 46 14 4c  |:JSR OSASCI..F.L|
00001050  44 59 23 33 3a 4a 4d 50  20 4e 44 4c 49 4e 45 0d  |DY#3:JMP NDLINE.|
00001060  0a 5a 19 2e 4e 4f 44 41  20 43 4d 50 23 26 42 3a  |.Z..NODA CMP#&B:|
00001070  42 4e 45 20 4e 4f 44 42  0d 0a 6e 19 4c 44 41 23  |BNE NODB..n.LDA#|
00001080  97 28 22 26 22 29 3a 4a  53 52 20 4f 53 41 53 43  |.("&"):JSR OSASC|
00001090  49 0d 0a 82 1b 4c 44 41  20 48 42 3a 43 4d 50 23  |I....LDA HB:CMP#|
000010a0  26 37 46 3a 42 43 53 20  42 41 43 4b 0d 0a 96 2b  |&7F:BCS BACK...+|
000010b0  43 4c 43 3a 41 44 43 20  4c 4f 3a 50 48 41 20 4c  |CLC:ADC LO:PHA L|
000010c0  44 41 23 30 3a 41 44 43  20 48 49 3a 43 4c 43 3a  |DA#0:ADC HI:CLC:|
000010d0  42 43 43 20 52 45 4c 0d  0a aa 2e 2e 42 41 43 4b  |BCC REL.....BACK|
000010e0  20 82 23 32 35 35 3a 41  44 43 23 30 3a 53 54 41  | .#255:ADC#0:STA|
000010f0  26 37 30 3a 4c 44 41 20  4c 4f 3a 53 45 43 3a 53  |&70:LDA LO:SEC:S|
00001100  42 43 26 37 30 0d 0a b4  14 50 48 41 3a 4c 44 41  |BC&70....PHA:LDA|
00001110  20 48 49 3a 53 42 43 23  30 0d 0a c8 1e 2e 52 45  | HI:SBC#0.....RE|
00001120  4c 20 4a 53 52 20 48 45  58 3a 50 4c 41 3a 4a 53  |L JSR HEX:PLA:JS|
00001130  52 20 48 45 58 53 50 0d  0a d2 14 4c 44 59 23 34  |R HEXSP....LDY#4|
00001140  3a 4a 4d 50 20 4e 44 4c  49 4e 45 0d 0a e6 19 2e  |:JMP NDLINE.....|
00001150  4e 4f 44 42 20 43 4d 50  23 26 43 3a 42 4e 45 20  |NODB CMP#&C:BNE |
00001160  4e 4f 44 43 0d 0a fa 2f  4c 44 41 23 97 28 22 28  |NODC.../LDA#.("(|
00001170  22 29 3a 4a 53 52 20 4f  53 41 53 43 49 3a 4c 44  |"):JSR OSASCI:LD|
00001180  41 23 97 28 22 26 22 29  3a 4a 53 52 20 4f 53 41  |A#.("&"):JSR OSA|
00001190  53 43 49 0d 0b 04 21 4c  44 41 20 48 43 3a 4a 53  |SCI...!LDA HC:JS|
000011a0  52 20 48 45 58 3a 4c 44  41 20 48 42 3a 4a 53 52  |R HEX:LDA HB:JSR|
000011b0  20 48 45 58 0d 0b 0e 2a  4c 44 41 23 97 28 22 29  | HEX...*LDA#.(")|
000011c0  22 29 3a 4a 53 52 20 4f  53 41 53 43 49 3a 4c 44  |"):JSR OSASCI:LD|
000011d0  59 23 33 3a 4a 4d 50 20  4e 44 4c 49 4e 45 0d 0b  |Y#3:JMP NDLINE..|
000011e0  22 19 2e 4e 4f 44 43 20  43 4d 50 23 26 44 3a 42  |"..NODC CMP#&D:B|
000011f0  4e 45 20 4e 4f 44 44 0d  0b 36 28 4c 44 41 23 97  |NE NODD..6(LDA#.|
00001200  28 22 26 22 29 3a 4a 53  52 20 4f 53 41 53 43 49  |("&"):JSR OSASCI|
00001210  3a 4c 44 41 20 48 42 3a  4a 53 52 20 48 45 58 0d  |:LDA HB:JSR HEX.|
00001220  0b 40 2f 4c 44 41 23 97  28 22 2c 22 29 3a 4a 53  |.@/LDA#.(","):JS|
00001230  52 20 4f 53 41 53 43 49  3a 4c 44 41 23 97 28 22  |R OSASCI:LDA#.("|
00001240  59 22 29 3a 4a 53 52 20  4f 53 41 53 43 49 0d 0b  |Y"):JSR OSASCI..|
00001250  4a 14 4c 44 59 23 35 3a  4a 4d 50 20 4e 44 4c 49  |J.LDY#5:JMP NDLI|
00001260  4e 45 0d 0b 5e 10 2e 4e  4f 44 44 20 4c 44 59 23  |NE..^..NODD LDY#|
00001270  31 30 0d 0b 72 30 2e 4e  44 4c 49 4e 45 20 4c 44  |10..r0.NDLINE LD|
00001280  41 23 97 28 22 20 22 29  3a 4a 53 52 20 4f 53 41  |A#.(" "):JSR OSA|
00001290  53 43 49 3a 44 45 59 3a  42 50 4c 20 4e 44 4c 49  |SCI:DEY:BPL NDLI|
000012a0  4e 45 0d 0b 86 12 4c 44  58 20 4e 55 4d 42 3a 4c  |NE....LDX NUMB:L|
000012b0  44 59 23 30 0d 0b 90 33  2e 44 49 53 50 4c 4f 50  |DY#0...3.DISPLOP|
000012c0  20 4c 44 41 20 48 41 2c  59 3a 4a 53 52 20 43 48  | LDA HA,Y:JSR CH|
000012d0  4f 55 54 3a 49 4e 59 3a  44 45 58 3a 42 4e 45 20  |OUT:INY:DEX:BNE |
000012e0  44 49 53 50 4c 4f 50 0d  0b a4 32 4c 44 41 23 97  |DISPLOP...2LDA#.|
000012f0  28 22 20 22 29 3a 2e 50  41 44 32 20 4a 53 52 20  |(" "):.PAD2 JSR |
00001300  4f 53 41 53 43 49 3a 49  4e 59 3a 43 50 59 23 34  |OSASCI:INY:CPY#4|
00001310  3a 42 4e 45 20 50 41 44  32 0d 0b b8 27 4c 44 58  |:BNE PAD2...'LDX|
00001320  23 35 3a 2e 50 41 44 33  20 4a 53 52 20 4f 53 41  |#5:.PAD3 JSR OSA|
00001330  53 43 49 3a 44 45 58 3a  42 4e 45 20 50 41 44 33  |SCI:DEX:BNE PAD3|
00001340  0d 0b d6 1f 4c 44 41 20  44 4c 49 4e 45 53 3a 43  |....LDA DLINES:C|
00001350  4d 50 23 31 36 3a 42 4e  45 20 4f 56 4f 4c 44 0d  |MP#16:BNE OVOLD.|
00001360  0b ea 21 4c 44 41 20 4c  4f 3a 53 54 41 20 4f 4c  |..!LDA LO:STA OL|
00001370  4f 3a 4c 44 41 20 48 49  3a 53 54 41 20 4f 48 49  |O:LDA HI:STA OHI|
00001380  0d 0b f4 15 4c 44 41 20  4e 55 4d 42 3a 53 54 41  |....LDA NUMB:STA|
00001390  20 4f 55 4d 42 0d 0c 08  2b 2e 4f 56 4f 4c 44 20  | OUMB...+.OVOLD |
000013a0  44 45 43 20 44 4c 49 4e  45 53 3a 42 45 51 20 46  |DEC DLINES:BEQ F|
000013b0  49 4e 4c 49 4e 3a 4a 4d  50 20 4c 49 4e 4c 4f 50  |INLIN:JMP LINLOP|
000013c0  0d 0c 12 0f 2e 46 49 4e  4c 49 4e 20 52 54 53 0d  |.....FINLIN RTS.|
000013d0  0c 3a 23 2e 44 49 53 50  4c 41 59 20 4c 44 59 23  |.:#.DISPLAY LDY#|
000013e0  32 3a 4c 44 58 23 31 35  3a 4a 53 52 20 53 45 54  |2:LDX#15:JSR SET|
000013f0  41 42 0d 0c 4e 24 4c 44  41 20 48 49 3a 4a 53 52  |AB..N$LDA HI:JSR|
00001400  20 48 45 58 3a 4c 44 41  20 4c 4f 3a 4a 53 52 20  | HEX:LDA LO:JSR |
00001410  48 45 58 53 50 3a 0d 0c  62 21 4c 44 41 20 44 49  |HEXSP:..b!LDA DI|
00001420  53 50 3a 43 4d 50 23 97  28 22 4c 22 29 3a 42 45  |SP:CMP#.("L"):BE|
00001430  51 20 44 44 49 53 50 0d  0c 76 10 4a 53 52 20 53  |Q DDISP..v.JSR S|
00001440  48 4f 57 3a 52 54 53 0d  0c 8a 16 2e 44 44 49 53  |HOW:RTS.....DDIS|
00001450  50 20 4a 53 52 20 44 49  53 3a 52 54 53 0d 0c b2  |P JSR DIS:RTS...|
00001460  18 2e 53 48 4f 57 20 4c  44 58 23 28 53 54 32 20  |..SHOW LDX#(ST2 |
00001470  83 32 35 36 29 0d 0c bc  12 4c 44 59 23 28 53 54  |.256)....LDY#(ST|
00001480  32 20 81 32 35 36 29 0d  0c d0 0e 4a 53 52 20 4f  |2 .256)....JSR O|
00001490  55 54 50 55 54 0d 0c e4  22 4c 44 41 20 4c 4f 3a  |UTPUT..."LDA LO:|
000014a0  80 23 26 46 38 3a 53 45  43 3a 53 42 43 23 36 34  |.#&F8:SEC:SBC#64|
000014b0  3a 53 54 41 20 55 50 0d  0c ee 18 4c 44 41 20 48  |:STA UP....LDA H|
000014c0  49 3a 53 42 43 23 30 3a  53 54 41 20 53 54 4b 0d  |I:SBC#0:STA STK.|
000014d0  0d 02 16 4c 44 41 20 4c  4f 3a 80 23 37 3a 53 54  |...LDA LO:.#7:ST|
000014e0  41 20 41 43 52 0d 0d 16  2f 4c 44 58 23 30 3a 2e  |A ACR.../LDX#0:.|
000014f0  4c 34 20 53 54 58 20 53  54 4b 2b 31 3a 4c 44 41  |L4 STX STK+1:LDA|
00001500  23 38 3a 43 4c 43 3a 41  44 43 20 55 50 3a 53 54  |#8:CLC:ADC UP:ST|
00001510  41 20 55 50 0d 0d 20 1a  4c 44 41 20 23 30 3a 41  |A UP.. .LDA #0:A|
00001520  44 43 20 53 54 4b 3a 53  54 41 20 53 54 4b 0d 0d  |DC STK:STA STK..|
00001530  34 32 4a 53 52 20 48 45  58 3a 4c 44 41 20 55 50  |42JSR HEX:LDA UP|
00001540  3a 4a 53 52 20 48 45 58  53 50 3a 4c 44 41 23 97  |:JSR HEXSP:LDA#.|
00001550  28 22 20 22 29 3a 4a 53  52 20 4f 53 41 53 43 49  |(" "):JSR OSASCI|
00001560  0d 0d 48 1b 4c 44 58 23  30 3a 2e 4c 32 20 53 54  |..H.LDX#0:.L2 ST|
00001570  58 20 53 54 4b 2b 32 3a  54 58 41 0d 0d 52 07 54  |X STK+2:TXA..R.T|
00001580  41 59 0d 0d 66 17 4c 44  41 28 55 50 29 2c 59 3a  |AY..f.LDA(UP),Y:|
00001590  4a 53 52 20 48 45 58 53  50 0d 0d 7a 1e 4c 44 58  |JSR HEXSP..z.LDX|
000015a0  20 53 54 4b 2b 32 3a 49  4e 58 3a 43 50 58 23 38  | STK+2:INX:CPX#8|
000015b0  3a 42 4e 45 20 4c 32 0d  0d 8e 1b 4c 44 58 23 30  |:BNE L2....LDX#0|
000015c0  3a 2e 4c 33 20 53 54 58  20 53 54 4b 2b 32 3a 54  |:.L3 STX STK+2:T|
000015d0  58 41 0d 0d a2 07 54 41  59 0d 0d ac 17 4c 44 41  |XA....TAY....LDA|
000015e0  28 55 50 29 2c 59 3a 4a  53 52 20 43 48 4f 55 54  |(UP),Y:JSR CHOUT|
000015f0  0d 0d c0 1e 4c 44 58 20  53 54 4b 2b 32 3a 49 4e  |....LDX STK+2:IN|
00001600  58 3a 43 50 58 23 38 3a  42 4e 45 20 4c 33 0d 0d  |X:CPX#8:BNE L3..|
00001610  d4 24 4c 44 41 23 97 28  22 20 22 29 3a 4a 53 52  |.$LDA#.(" "):JSR|
00001620  20 4f 53 41 53 43 49 3a  4a 53 52 20 4f 53 41 53  | OSASCI:JSR OSAS|
00001630  43 49 0d 0d e8 1f 4c 44  58 20 53 54 4b 2b 31 3a  |CI....LDX STK+1:|
00001640  49 4e 58 3a 43 50 58 23  31 36 3a 42 4e 45 20 4c  |INX:CPX#16:BNE L|
00001650  34 0d 0d fc 24 4c 44 59  23 31 34 3a 4c 44 41 20  |4...$LDY#14:LDA |
00001660  41 43 52 3a 41 53 4c 20  41 3a 43 4c 43 3a 41 44  |ACR:ASL A:CLC:AD|
00001670  43 20 41 43 52 0d 0e 06  21 41 44 43 23 35 3a 53  |C ACR...!ADC#5:S|
00001680  54 41 20 53 54 4b 2b 31  3a 54 41 58 3a 4a 53 52  |TA STK+1:TAX:JSR|
00001690  20 53 45 54 41 42 0d 0e  1a 19 4c 44 41 23 97 28  | SETAB....LDA#.(|
000016a0  22 5b 22 29 3a 4a 53 52  20 4f 53 41 53 43 49 0d  |"["):JSR OSASCI.|
000016b0  0e 24 2c 4c 44 41 20 53  54 4b 2b 31 3a 43 4c 43  |.$,LDA STK+1:CLC|
000016c0  3a 41 44 43 23 33 3a 54  41 58 3a 4c 44 59 23 31  |:ADC#3:TAX:LDY#1|
000016d0  34 3a 4a 53 52 20 53 45  54 41 42 0d 0e 38 19 4c  |4:JSR SETAB..8.L|
000016e0  44 41 23 97 28 22 5d 22  29 3a 4a 53 52 20 4f 53  |DA#.("]"):JSR OS|
000016f0  41 53 43 49 0d 0e 42 07  52 54 53 0d 0e 6a 1d 2e  |ASCI..B.RTS..j..|
00001700  43 48 4f 55 54 20 43 4d  50 23 97 28 22 20 22 29  |CHOUT CMP#.(" ")|
00001710  3a 42 43 43 20 44 55 46  0d 0e 7e 12 43 4d 50 23  |:BCC DUF..~.CMP#|
00001720  26 37 46 3a 42 43 43 20  4f 4b 0d 0e 9c 13 2e 44  |&7F:BCC OK.....D|
00001730  55 46 20 4c 44 41 23 97  28 22 2e 22 29 0d 0e a6  |UF LDA#.(".")...|
00001740  16 2e 4f 4b 20 4a 53 52  20 4f 53 41 53 43 49 3a  |..OK JSR OSASCI:|
00001750  52 54 53 0d 0e ce 1e 2e  53 45 54 41 42 20 53 54  |RTS.....SETAB ST|
00001760  59 20 53 54 33 2b 32 3a  53 54 58 20 53 54 33 2b  |Y ST3+2:STX ST3+|
00001770  31 0d 0e d8 21 4c 44 58  23 28 53 54 33 20 83 32  |1...!LDX#(ST3 .2|
00001780  35 36 29 3a 4c 44 59 23  28 53 54 33 20 81 32 35  |56):LDY#(ST3 .25|
00001790  36 29 0d 0e e2 12 4a 53  52 20 4f 55 54 50 55 54  |6)....JSR OUTPUT|
000017a0  3a 52 54 53 0d 0f 0a 22  2e 4b 45 59 49 4e 20 4c  |:RTS...".KEYIN L|
000017b0  44 58 23 30 3a 4c 44 41  23 32 31 3a 4a 53 52 20  |DX#0:LDA#21:JSR |
000017c0  4f 53 42 59 54 45 0d 0f  14 1d 4a 53 52 20 4f 53  |OSBYTE....JSR OS|
000017d0  52 44 43 48 3a 42 43 53  20 4b 45 59 45 52 52 3a  |RDCH:BCS KEYERR:|
000017e0  52 54 53 0d 0f 28 15 2e  4b 45 59 45 52 52 20 53  |RTS..(..KEYERR S|
000017f0  54 41 20 53 54 4b 2b 31  0d 0f 32 29 4c 44 58 23  |TA STK+1..2)LDX#|
00001800  28 53 54 36 20 83 32 35  36 29 3a 4c 44 59 23 28  |(ST6 .256):LDY#(|
00001810  53 54 36 20 81 32 35 36  29 3a 4a 53 52 20 43 4c  |ST6 .256):JSR CL|
00001820  49 0d 0f 3c 1e 4c 44 41  20 53 54 4b 2b 31 3a 43  |I..<.LDA STK+1:C|
00001830  4d 50 23 26 31 42 3a 42  4e 45 20 4b 45 52 52 0d  |MP#&1B:BNE KERR.|
00001840  0f 50 16 4c 44 41 23 26  37 45 3a 4a 53 52 20 4f  |.P.LDA#&7E:JSR O|
00001850  53 42 59 54 45 0d 0f 5a  09 2e 4b 45 52 52 0d 0f  |SBYTE..Z..KERR..|
00001860  6e 2c 4c 44 58 23 30 3a  4c 44 59 23 32 32 3a 4a  |n,LDX#0:LDY#22:J|
00001870  53 52 20 53 45 54 41 42  3a 4c 44 58 20 54 45 4d  |SR SETAB:LDX TEM|
00001880  50 53 54 41 43 4b 3a 54  58 53 0d 0f 8c 0e 42 52  |PSTACK:TXS....BR|
00001890  4b 3a 45 51 55 42 39 39  0d 0f 96 14 45 51 55 53  |K:EQUB99....EQUS|
000018a0  22 45 4e 44 20 4f 46 20  44 49 53 22 0d 0f aa 07  |"END OF DIS"....|
000018b0  42 52 4b 0d 0f d2 19 2e  4f 55 54 50 55 54 20 53  |BRK.....OUTPUT S|
000018c0  54 58 26 37 30 3a 53 54  59 26 37 31 0d 0f dc 09  |TX&70:STY&71....|
000018d0  4c 44 59 23 30 0d 0f e6  27 2e 4c 4f 4f 50 20 4c  |LDY#0...'.LOOP L|
000018e0  44 41 28 26 37 30 29 2c  59 3a 43 4d 50 23 26 46  |DA(&70),Y:CMP#&F|
000018f0  46 3a 42 45 51 20 4f 55  54 45 4e 44 0d 0f f0 1b  |F:BEQ OUTEND....|
00001900  4a 53 52 20 4f 53 41 53  43 49 3a 49 4e 59 3a 42  |JSR OSASCI:INY:B|
00001910  4e 45 20 4c 4f 4f 50 0d  0f fa 0f 2e 4f 55 54 45  |NE LOOP.....OUTE|
00001920  4e 44 20 52 54 53 0d 10  22 25 2e 48 45 58 53 50  |ND RTS.."%.HEXSP|
00001930  20 4a 53 52 20 48 45 58  3a 4c 44 41 23 26 32 30  | JSR HEX:LDA#&20|
00001940  3a 4a 4d 50 20 4f 53 57  52 43 48 0d 10 36 08 2e  |:JMP OSWRCH..6..|
00001950  48 45 58 0d 10 4a 1f 50  48 41 3a 4c 53 52 20 41  |HEX..J.PHA:LSR A|
00001960  3a 4c 53 52 20 41 3a 4c  53 52 20 41 3a 4c 53 52  |:LSR A:LSR A:LSR|
00001970  20 41 0d 10 54 17 4a 53  52 20 48 45 58 44 49 47  | A..T.JSR HEXDIG|
00001980  3a 50 4c 41 3a 80 23 26  46 0d 10 5e 23 2e 48 45  |:PLA:.#&F..^#.HE|
00001990  58 44 49 47 20 43 4d 50  23 26 41 3a 42 43 43 20  |XDIG CMP#&A:BCC |
000019a0  48 45 58 44 49 48 3a 41  44 43 23 36 0d 10 68 1e  |HEXDIH:ADC#6..h.|
000019b0  2e 48 45 58 44 49 48 20  41 44 43 23 26 33 30 3a  |.HEXDIH ADC#&30:|
000019c0  4a 4d 50 20 4f 53 57 52  43 48 0d 10 9a 31 2e 53  |JMP OSWRCH...1.S|
000019d0  54 52 49 4e 20 53 54 41  20 43 4f 4e 42 4c 4b 2b  |TRIN STA CONBLK+|
000019e0  32 3a 53 54 58 20 43 4f  4e 42 4c 4b 2b 33 3a 53  |2:STX CONBLK+3:S|
000019f0  54 59 20 43 4f 4e 42 4c  4b 2b 34 0d 10 a4 12 4c  |TY CONBLK+4....L|
00001a00  44 58 23 28 53 54 35 20  83 32 35 36 29 0d 10 ae  |DX#(ST5 .256)...|
00001a10  1d 4c 44 59 23 28 53 54  35 20 81 32 35 36 29 3a  |.LDY#(ST5 .256):|
00001a20  4a 53 52 20 4f 55 54 50  55 54 0d 10 b8 24 4c 44  |JSR OUTPUT...$LD|
00001a30  41 23 30 3a 4c 44 58 23  20 43 4f 4e 42 4c 4b 3a  |A#0:LDX# CONBLK:|
00001a40  54 41 59 3a 4a 53 52 20  4f 53 57 4f 52 44 0d 10  |TAY:JSR OSWORD..|
00001a50  c2 10 42 43 53 20 45 53  43 31 3a 52 54 53 0d 10  |..BCS ESC1:RTS..|
00001a60  cc 1c 2e 45 53 43 31 20  4c 44 41 23 26 31 42 3a  |...ESC1 LDA#&1B:|
00001a70  4a 4d 50 20 4b 45 59 45  52 52 0d 10 d6 05 5d 0d  |JMP KEYERR....].|
00001a80  10 e0 23 53 54 31 3d 50  25 2b 31 3a 21 53 54 31  |..#ST1=P%+1:!ST1|
00001a90  3d 26 30 44 30 43 30 36  31 36 3a 50 25 3d 50 25  |=&0D0C0616:P%=P%|
00001aa0  2b 35 0d 10 ea 32 24 50  25 3d 22 20 45 4c 45 43  |+5...2$P%=" ELEC|
00001ab0  54 52 4f 4e 20 44 45 42  55 47 47 45 52 20 20 20  |TRON DEBUGGER   |
00001ac0  44 20 44 55 4d 50 20 4d  45 4d 4f 52 59 20 20 20  |D DUMP MEMORY   |
00001ad0  20 20 20 22 0d 10 f4 37  24 28 50 25 2b 34 30 29  |   "...7$(P%+40)|
00001ae0  3d 22 20 48 20 48 45 58  20 41 44 44 52 2e 20 3a  |=" H HEX ADDR. :|
00001af0  20 30 30 30 30 20 20 4c  20 4c 49 53 54 49 4e 47  | 0000  L LISTING|
00001b00  20 20 20 20 20 20 20 20  20 20 22 0d 10 fe 37 24  |          "...7$|
00001b10  28 50 25 2b 38 30 29 3d  22 20 46 20 46 49 4e 44  |(P%+80)=" F FIND|
00001b20  20 42 59 54 45 20 3a 20  30 30 20 20 20 20 41 20  | BYTE : 00    A |
00001b30  41 4c 54 45 52 20 42 59  54 45 20 20 20 20 20 20  |ALTER BYTE      |
00001b40  20 22 0d 11 08 2d 24 28  50 25 2b 31 32 30 29 3d  | "...-$(P%+120)=|
00001b50  22 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |"               |
00001b60  20 20 20 20 20 20 53 20  53 54 52 49 4e 47 22 0d  |      S STRING".|
00001b70  11 12 18 50 25 3d 50 25  2b a9 28 24 50 25 29 3a  |...P%=P%+.($P%):|
00001b80  3f 50 25 3d 26 46 46 0d  11 1c 2b 53 54 32 3d 50  |?P%=&FF...+ST2=P|
00001b90  25 2b 31 3a 21 53 54 32  3d 26 30 30 30 30 30 31  |%+1:!ST2=&000001|
00001ba0  31 37 3a 53 54 32 21 34  3d 30 3a 50 25 3d 50 25  |17:ST2!4=0:P%=P%|
00001bb0  2b 39 0d 11 26 2b 21 50  25 3d 26 30 30 31 46 30  |+9..&+!P%=&001F0|
00001bc0  30 30 30 3a 50 25 3d 50  25 2b 34 3a 21 50 25 3d  |000:P%=P%+4:!P%=|
00001bd0  26 46 46 30 37 3a 50 25  3d 50 25 2b 32 0d 11 30  |&FF07:P%=P%+2..0|
00001be0  2f 53 54 33 3d 50 25 3a  21 50 25 3d 26 30 30 30  |/ST3=P%:!P%=&000|
00001bf0  30 30 30 31 46 3a 50 25  21 34 3d 26 46 46 30 30  |0001F:P%!4=&FF00|
00001c00  30 30 30 30 3a 50 25 3d  50 25 2b 38 0d 11 3a 20  |0000:P%=P%+8..: |
00001c10  53 54 34 3d 50 25 3a 21  50 25 3d 26 46 46 32 30  |ST4=P%:!P%=&FF20|
00001c20  32 30 32 30 3a 50 25 3d  50 25 2b 34 0d 11 44 28  |2020:P%=P%+4..D(|
00001c30  53 54 35 3d 50 25 3a 21  50 25 3d 26 30 30 30 31  |ST5=P%:!P%=&0001|
00001c40  30 31 31 37 3a 53 54 35  21 34 3d 30 3a 50 25 3d  |0117:ST5!4=0:P%=|
00001c50  50 25 2b 38 0d 11 4e 19  21 50 25 3d 26 46 46 30  |P%+8..N.!P%=&FF0|
00001c60  30 30 30 30 30 3a 50 25  3d 50 25 2b 34 0d 11 58  |00000:P%=P%+4..X|
00001c70  1f 53 54 36 3d 50 25 3a  24 53 54 36 3d 22 46 58  |.ST6=P%:$ST6="FX|
00001c80  34 2c 30 22 3a 50 25 3d  50 25 2b 36 0d 11 62 05  |4,0":P%=P%+6..b.|
00001c90  f7 0d 11 6c 26 4e 55 4d  3d 50 25 3a e3 20 49 3d  |...l&NUM=P%:. I=|
00001ca0  30 20 b8 20 31 34 3a f3  20 4e 25 3a 50 25 3f 49  |0 . 14:. N%:P%?I|
00001cb0  3d 4e 25 3a ed 20 49 0d  11 76 0c 50 25 3d 50 25  |=N%:. I..v.P%=P%|
00001cc0  2b 31 35 0d 11 80 1c 50  25 3d 28 50 25 20 81 32  |+15....P%=(P% .2|
00001cd0  35 36 29 2b 31 3a 50 25  3d 50 25 2a 32 35 36 0d  |56)+1:P%=P%*256.|
00001ce0  11 8a 2b 48 41 53 48 3d  50 25 3a 54 59 50 45 3d  |..+HASH=P%:TYPE=|
00001cf0  50 25 2b 32 35 36 3a 50  25 3d 50 25 2b 35 31 32  |P%+256:P%=P%+512|
00001d00  3a 53 54 52 49 4e 47 3d  50 25 0d 11 94 08 ed 20  |:STRING=P%..... |
00001d10  4f 50 0d 11 9e 39 e3 20  49 25 3d 30 20 b8 20 32  |OP...9. I%=0 . 2|
00001d20  35 35 20 88 20 34 3a 48  41 53 48 21 49 25 3d 30  |55 . 4:HASH!I%=0|
00001d30  3a 54 59 50 45 21 49 25  3d 30 3a 53 54 52 49 4e  |:TYPE!I%=0:STRIN|
00001d40  47 21 49 25 3d 30 3a ed  20 49 25 0d 11 a8 05 f5  |G!I%=0:. I%.....|
00001d50  0d 11 b2 18 f3 20 41 24  3a e7 20 41 24 3d 22 2a  |..... A$:. A$="*|
00001d60  22 20 8c 20 8d 64 5a 51  0d 11 bc 26 e7 20 97 28  |" . .dZQ...&. .(|
00001d70  41 24 29 3d 97 28 22 2d  22 29 20 8c 20 49 3d 94  |A$)=.("-") . I=.|
00001d80  28 bb 28 41 24 29 29 3a  e5 20 8d 74 72 51 0d 11  |(.(A$)):. .trQ..|
00001d90  c6 24 4d 3d a0 28 22 26  22 2b c0 41 24 2c 31 29  |.$M=.("&"+.A$,1)|
00001da0  29 3a 4d 4e 3d a0 28 22  26 22 2b c2 41 24 2c 32  |):MN=.("&"+.A$,2|
00001db0  29 29 0d 11 d0 17 48 41  53 48 3f 4d 4e 3d 49 3a  |))....HASH?MN=I:|
00001dc0  54 59 50 45 3f 4d 4e 3d  4d 0d 11 da 0c fd 20 41  |TYPE?MN=M..... A|
00001dd0  24 3d 22 2a 22 0d ff                              |$="*"..|
00001dd7
DIS4570.m0
DIS4570.m1
DIS4570.m2
DIS4570.m4
DIS4570.m5