8-Bit Software Online Conversion
:2.$.mbsrc1 - Listing
10REM>mbsrc1 V.1.01
20maxcol=&120:hicol=&121:coldiff=&123
:vlag=&125
30locol=&126:mask=&128:jxc=&129:jyc=&
12F:xmon=&135:xmin=&149:ymin=&14F
40size=&155:lowestcol=&15B:REMbij elk
aar houden!
50lwin=&15D:llox=&15E:lloy=&15F
60acvl=&160:Fvlag=&E00
70mstr=&B00:jstr=&B0C:xword=&B18:tab7
=&B24:tab8=&B2A:tab9=&B30:table0=&B36:ta
ble1=&B40:table2=&B4A:table3=&B54:table4
=&B64:table5=&B74:initmix=&B84:fork=&B94
:offsets=&BD4:sprmess=&BF4:madrs=&C00
80mess=&C10:cursoff=&C50:okstr=&C6C:i
nktab=&C84
90method=&C8C
100mix=&700:line=&900:palette=&3100
110e=&C:b=&13:x=&1A:c=&21:d=&28:y=&2F
120currx=&34:curry=&35
130padr=&38:highl=&42:welp=&44
140xxmin=&48:yymin=&4E:ssize=&54:win=&
5A:lox=&5B:loy=&5C:owin=&5D:olox=&5E:olo
y=&5F:blk=&60:ptr=&6A:REM main,tot mainl
oop
150ctr=&58:REMdiv
160boven=&62:na=&64:voor=&66: REM bije
lkaar houden
170ymin1=&68
180help=&70:help2=&80
190mem=A%:mul6=B%:calladr=G%
200mandel6=E%:invullen=F%:rle=U%:invrl
e=V%
210osb=H%:colroutine=K%:preosb=S%
220OSCLI("load :0.fasttmp 800")
230VDU14:FORpass=4TO6STEP2
240P%=C%:O%=D%
250[OPT pass
260.j0 LDY#99:.j1a LDAcursoff-99,Y:JSR
&FFEE:INY:BPLj1a
270.cold LDA#0:STAvlag:STAacvl
280STAhicol:STAhicol+1:STAcoldiff+1:LD
Y#15:STYmaxcol:LDA#40:STAcoldiff
290INY:.j2 LDAinitmix,Y:STA mix,Y:DEY:
BPLj2
300.mreset LDY#19:.jreset LDX#20:.g0 L
DAMorigx,Y:STAxmin-1,X:DEY:DEX:BNEg0
310STX Fvlag:LDA#128:JSRaction
320LDY#17:.g3a LDAxmin,Y:STAxxmin,Y:DE
Y:BPLg3a:JMPcase
330.go:LDAFvlag:BNEg2:LDAmaxcol:CMPcol
diff:BCCg1a:STAcoldiff
340.g1a LDYlowestcol:STYlocol:LDXlowes
tcol+1:STXlocol+1
350CPYcoldiff:BCCg1:TXA:BNE g1:STYcold
iff:STAcoldiff+1
360.g1 LDY#255:CPYcoldiff:INY:TYA:SBCc
oldiff+1:BPL g2:STYcoldiff+1:DEY:DEY:STY
coldiff:.g2 LDY#17:.g3 LDAxxmin,Y:STAxmi
n,Y:DEY:BPLg3:
370LDAvlag:AND#(255-8):TAX:AND#16:BEQg
3aa:TXA:EOR#24:TAX:.g3aa STXvlag
380JSRelec`on:JSRmem:JSRelec`off:LDY#0
:STYlox:STYloy:DEY:STYwin
390LDAvlag:ASLA:BCCg3b:LSRA:STAvlag:LD
X#2:.g3c LDAlwin,X:STAwin,X:DEX:BPLg3c:.
g3b
400LDA#16:JSRaction:BNEdelay
410.adjv`neww LDX#2:.an0 LDAwin,X:STAo
win,X:DEX:BPLan0:JSRzoomw
420LDAacvl:AND#111:ORA#32:STAacvl:LDAl
ox:JSRmul6
430LDY#5:CLC:.g4:LDAhelp,X:ADCxmin,X:S
TAxxmin,X:INX:DEY:BPLg4
440LDAloy:JSRmul6
450LDY#5:CLC:.g4a LDAhelp,X:ADCymin,X:
STAyymin,X:INX:DEY:BPLg4a
460LDYwin:INY:BNEg6:LDX#5:.g7 LDAsize,
X:STAssize,X:DEX:BPLg7:BMIg8a
470.g6 TYA:JSRmul6:LDX#5:.g8 LDAhelp,X
:STAssize,X:DEX:BPLg8:.g8a JMPmainloop
480.oldw:LDAacvl:AND#123:ORA#16:STAacv
l:JMPzoomw
490.nww LDA#4:JMPaction
500.delay:LDX#4:.del1 TXA:PHA:LDA#19:J
SR&FFF4:PLA:TAX:DEX:BNEdel1
510.clearkeybb LDA#21:LDX#0:JMP&FFF4
520.jlin1a JSRjlin1:JSRjlin2:JMPline3
530.jlin1 JSRline11:STAcurry:PHA:LDA#j
xc MOD256:PHA:LDA#jxc DIV256:BNEjulspec
540.jlin2 JSRline22:PHA:LDA#jyc MOD256
:PHA:LDA#jyc DIV256
550.julspec PHA:LDA#45+128:JSRbcd3:PLA
:STAe+1:PLA:STAe:LDX#15:.js0 LDAhelp+6,X
:PHA:DEX:BPLjs0
560LDA#45+128:JSRbcd3a
570LDX#16:.js1 LDAhelp+5,X:STAhelp+15,
X:DEX:BNEjs1
580.js2 PLA:STAhelp,X:INX:CPX#16:BNEjs
2
590PLA:JMPr19
600.pane:LDAacvl:AND#(127-32):STAacvl
610JSRline0
620LDAvlag:LSRA:BCSjlin1a
630.line1a JSRline1:JSRline2:JMPline3
640.line11 JSRclhelp:LDX#xxmin MOD256:
LDY#xxmin DIV256:LDA#1:RTS
650.line22 JSRclhelp:LDX#yymin MOD256:
LDY#yymin DIV256:LDA#2:RTS
660.line0 JSRclhelp
670LDAlsvlag:AND#2:BEQpa1
680LDX#0:.pa2 LDA&102,X:BEQpa3:STAhelp
,X:INX:CPX#30:BNEpa2:.pa3 LDA#0:JMPr19
690.pa1
700LDX#5:.line0a STAhelp,X:DEX:BPLline
0a
710LDAhicol:STAhelp:LDAhicol+1:STAhelp
+1:LDX#help MOD256:LDY#help DIV256:LDA#4
8:JSRbcd3
720LDY#22:LDX#11:LDAvlag:LSRA:BCCn18a:
INY
730.n18a LDAmstr,Y:STAhelp,X:DEY:DEY:D
EX:BPLn18a
740LDAFvlag:BEQn18b:LDY#4:.n18e LDAfix
ed,Y:STAhelp+7,Y:DEY:BPLn18e
750.n18b LDX#3:.n18aa LDAe+22,X:STAhel
p+13,X:DEX:BPLn18aa:
760LDAvlag:TAX:AND#16:BEQn18ca:LDA#ASC
"^":STAhelp+17:.n18ca TXA:LSRA:AND#3:TAY
:LDX#4:.n18aaa:LDAmethodword,Y:STAhelp+1
8,X:INY:INY:INY:INY:DEX:BPLn18aaa
770LDAacvl:LSRA:BCCn18cb:LDA#ASC"#":ST
Ahelp+23:.n18cb
780LDX#7:.n18d LDYclb-1,X:LDAclock,Y:S
TAhelp+24,X:DEX:BNE n18d
790TXA:STAcurry:BEQr19
800.line1 JSRline11:BNEbtd1:.line2 JSR
line22:BNEbtd1
810.line3 JSRclhelp:LDX#ssize MOD256:L
DY#ssize DIV256:LDA#3:.btd1 STAcurry:PHA
:LDA#45+128:JSRbcd3:PLA:TAY
820PHA:LDX#4:.btd2 LDAxword-1,Y:STAhel
p,X:INY:INY:INY:DEX:BNEbtd2:PLA
830.r19 LSRA:RORA:RORA:SEC:RORA:AND#22
4:STAptr:LDA#&7F:STAptr+1
840LDX#0:.r20 TXA:PHA:
850LDAhelp,X:BMIr21a:CMP#32:BMIr21a:ST
Ablk:LDX#(blk MOD256):LDY#(blk DIV256):L
DA#&A:JSR&FFF1
860LDY#0:LDX#0:.r21 LDA#0:LSRblk+1,X:B
CCr22:ORA#42:.r22 LSRblk+2,X:BCCr23:ORA#
21:.r23:STA(ptr),Y:INY:TYA:AND#7:BNEr21:
INX:INX:CPX#8:BPLr21a:CPY#32:BMIr21:.r21
a
870PLA:TAX:INX:LDAptr:SEC:SBC#&80:STAp
tr:LDAptr+1:SBC#2:STAptr+1:CMP#&30:BMIr2
4
880CPX#32:BMIr20:.r24:RTS
890.jmswop LDAacvl:AND#(127-64):ORA#12
8:STAacvl
900LDAvlag:LSRA:BCSr26
910LDX#19:.r25 LDAxmon,X:STAxmin,X:STA
xxmin,X:DEX:BPLr25:BMIr27c
920.r26:LDX#6:CLC:.r26a LDAssize-1,X:R
ORA:STAhelp-1,X:DEX:BNE r26a
930LDY#6:CLC:.r28 LDAxxmin,X:ADChelp,X
:STAjxc,X:INX:DEY:BNEr28
940CLC:.r29 LDAyymin,Y:ADChelp,Y:STAjy
c,Y:INY:DEX:BNEr29
950LDX#19:.r30 LDAxmin,X:STAxmon,X:LDA
Jorigx,X:STAxmin,X:STAxxmin,X:DEX:BPLr30
960LDX#2:.r27b LDAowin,X:STAlwin,X:DEX
:BPLr27b:.r27c JMPmainloop
970.palch LDAmaxcol:LSRA:STAhighl:LDA#
224:STAwelp+3
980.redr LDX#1:.w00 LDApadr0,X:STApadr
,X:DEX:BPLw00
990LDY#1:JSRzx1
1000LDY#0:.w0 TYA:PHA:CLC:ADChighl:SEC:
SBC#16:STAwelp:BCSw1:.w1a LDA#0:BEQw3
1010.w1 LDAmaxcol:CMPwelp:BCCw1a
1020.w2 LDYwelp:LDAmix,Y
1030.w3 LDY#95:JSRw12
1040.w4a PLA:TAY
1050SEC:LDApadr:SBC#&80:STApadr:LDApadr
+1:SBC#&2:STApadr+1:CMP#&32:BCCw5
1060INY:CPY#32:BCCw0
1070.w5:LDY#5:.w6 TYA:PHA:ASLA:TAY:CLC:
LDApadr0,Y:STApadr:LDApadr0+1,Y:STApadr+
1
1080LDYhighl:LDAmix,Y:LDY#79:JSRw12
1090PLA:TAY:DEY:BNEw6
1100LDA#39:LDY#112:LDX#24:SEC:JSRzoom
1110.w10:JSRescape:BCSw10a½Esc
1120LDX#&B6:JSRosb:BCCw11:.w10a JMPr100
1130½I:.w11 LDX#&DA:JSRosb:BCCw13:LDYma
xcol:CPY#254:BCSw13:INY:STYmaxcol:INChig
hl:.w11a CPYhighl:BCCw11b:TYA:TAX:DEX:LD
Amix,X:STAmix,Y:DEY:BCSw11a
1140.w11b LDYhighl:LDA#252:JMPw20a
1150½Del:.w13 LDX#&A6:JSRosb:BCSw13d
1160LDX#&CD:JSRosb:BCCw14:.w13d LDYmaxc
ol:CPY #3:BCCw14:LDYhighl:.w13a CPYmaxco
l:BCSw13b:TYA:TAX:INY:LDAmix,Y:STAmix,X:
BCCw13a:.w13b LDYmaxcol:DEY:STYmaxcol:LD
Yhighl:BEQw13c:DEChighl:.w13c JMPw20c
1170½rgb:.w14 LDY#7:.w14a TYA:PHA:LDXin
ktab,Y:JSRosb:PLA:TAY:BCSw20:DEY:BPLw14a
1180½^V:.w23 LDY#8:JSRpreosb:BCCw24:LDA
highl:CMPmaxcol:BCSw24:INChighl:BCCw20c
1190.w24 LDY#10:JSRpreosb:BCCw25:LDAhig
hl:BEQw25:DEC highl:BCSw20c
1200.w25:JMP w10
1220.w20 LDAinkcode,Y:ANDwelp+3:STAwelp
:LDAwelp+3:EOR#252:STAwelp+3:LDYhighl:AN
Dmix,Y:ORAwelp:.w20a STAmix,Y:.w20c JSRd
elay:JMP redr
1230.w12 LSRA:LSRA:TAX:LDAfork,X:PHA:PH
A:LSRA:AND#85:STAwelp:PLA:ASLA:AND#170:O
RAwelp:TAX:PLA
1240.w4 STA(padr),Y:PHA:TXA:DEY:STA(pad
r),Y:PLA:DEY:BPLw4:RTS
1250.r66aa LDY#26:LDX#5:SEC:.r66a :LDA#
0:SBCe,Y:STAe,Y:INY:DEX:BPL r66a:RTS
1260.bcd3 STXe:STYe+1:.bcd3a LDY#0:LDX#
30:.r50 STYe+1,X:DEX:BNEr50
1270PHA:AND#64:BEQr61:LDY#17:.r59 LDA(e
),Y:AND#15:STAe+8,X:INX:DEY:BPL r59:PLA:
BMIr60:.r55b AND#63:TAY
1280.r55 :LDX#29:CLC:.r56 RORe+2,X:DEX:
BPL r56:LDX#17:.r57 LDAe+8,X:BPLr58:SEC:
SBC#123:STAe+8,X:.r58 DEX:BPL r57:DEY:BN
Er55
1290LDAe+26:AND#7:ORA#48:STA help+7:LDA
#ASC".":STAhelp+8:LDX#17:LDY#9
1300.r55a LDAe+8,X:ORA#48:STAhelp,Y:INY
:DEX:BPLr55a:RTS
1310.r60 AND#63:TAY:LDAhelp+7:AND#7:STA
e+26
1320.r51 TYA:PHA:LDX#18:.r52 LDAe+7,X:C
MP#5:BCCr53:CLC:ADC#123:STAe+7,X:.r53 DE
X:BNE r52:CLC:LDY#30:.r54 ROL e+2,X:INX:
DEY:BNEr54:PLA:TAY:DEY:BNEr51:RTS
1330.r61 PLA:TAX:BMIr63:LDY#5:.r62 LDA(
e),Y:STAe+2,Y:DEY:BPLr62:
1340TXA:AND#63:JSRr51+1:BEQr68
1350.r63 LDY#5:.r64 LDA(e),Y:STAe+26,Y:
DEY:BPL r64:
1360TXA:PHA
1370LDAe+31:BPLr66:LDAcurry:CMP#3:BEQr6
6:JSRr66aa
1380LDA#ASC"-":STAhelp+6
1390.r66 PLA:JSRr55b:.r68 LDY#17:.r65 L
DAe+8,Y:ORA#48:PHA:DEY:BPLr65:LDY#17:.r6
5a PLA:STAe+8,Y:DEY:BPLr65a:RTS
1400.s55 TYA:PHA:LDXkeycode,Y:JSRosb:PL
A:TAY:BCSs55a:DEY:BPL s55:.s55a RTS
1410.input:LDY#1:STY curry:.r75b JSRchl
inea
1420.r75:JSRdelay
1430LDX#&B6:JSRosb:BCSr75a
1440JSRescape:BCCr76:.r75a JSRdecode:JM
Pr100
1450.r76 LDY#4½Z:JSRpreosb:BCCr77:LDA#3
:JSRchline:½<--
1460.r77 LDY#6½X:JSRpreosb:BCCr78:LDA#1
:JSRchline:½-->
1470.r78 LDY#8½;:JSRpreosb:BCCr79a:JSRi
ncx
1480.r79a LDX#&A6:JSRosb:BCSr79b½Del
1490.r79 LDY#10:JSRpreosb:BCCr80:.r79b
JSRinvchar:LDXcurrx:DEX:DEX:JSRfnposx:JS
Rinvchar
1500.r80:LDXcurrx:JSRinvok:AND#64:BEQr8
0c:LDY#9:JSRs55:BCCr80c
1510.r80b TYA:AND#15:ORA#48:JSRr80d
1520.r80c LDX#&E8:JSRosb:BCCr81:LDYcurr
y:BEQr81:CPY#3:BEQr81:LDX currx:CPX#6:BN
Er81:LDA#ASC"-":JSRr80d
1530.r81 LDX#&9D:JSRosb:BCSr82a
1540.r82 LDX#&CD:JSRosb:BCCr83:.r82a LD
Ycurry:BEQr83:LDXcurrx:CPX#6:BNEr83:LDA#
ASC" ":JSRr80d
1550.r83 LDX#&CC:JSRosb:BCCr84:LDAcurry
:BEQr84:AND#3:STAwelp:ASLA:CLC:ADCwelp:A
SLA:LDX#6:TAY:.r83a LDAxmin-6,Y:STAxxmin
-6,Y:INY:DEX:BNEr83a:JSRchlinea
1560.r84:JMP r75
1570.r99 ORAvlag:STAvlag:.r100 LDA#33
1580.action :LSRA:PHA:BCCac0:JSRdelay:.
ac0 PLA:ASLA:ORAacvl:STAacvl:RTS
1590.decode LDYcurry:BNEdeco1:LDX#16:.d
eco2 LDAhelp,X:STYhelp,X:CPX#13:BCCdeco3
:STAhelp+1,X:.deco3 DEX:BPLdeco2:LDX#hel
p MOD256:LDA#(48+64):JSRbcd3
1600SEC:LDAe+2:SBClowestcol:STAcoldiff:
LDAe+3:SBClowestcol+1:BNEdeco4:LDAcoldif
f:CMP#254:BCCdeco5:.deco4 LDA#254:STAcol
diff:.deco5 CLC:ADClowestcol:STAhicol:LD
Alowestcol+1:ADC#0:STAhicol+1:RTS
1610.deco1 LDX#(help+9) MOD256:LDY#(hel
p+9) DIV256:LDA#(64+128+45):JSRbcd3
1620LDAhelp+6:CMP#ASC"-":BNEdeco6:JSRr6
6aa
1630.deco6:LDA#128:JSRaction:LDYcurry:L
DXdeco8,Y:LDY#5:.deco6a LDAe+26,Y:STAxxm
in,X:DEX:DEY:BPLdeco6a:RTS
1640.r80d LDXcurrx:STAhelp,X:JSRincx:LD
Acurry:JSRr19:JSRlineinv:JMPinvchar
1650.prlin :LDY curry:BNEinpa:JMPline0
1660.inpa DEY:BNEinpb:JMPline1
1670.inpb DEY:BNEinpc:JMPline2
1680.inpc JMP line3
1690.incx:JSRinvchar:LDXcurrx:INX:JSRfn
posx:BMIr78a:LDX#6:JSRfnposx:.r78a JMP i
nvchar
1700SEC:LDX#6:.t6add :LDY#0:BCCt6ax-4:D
EY:STYhelp+6:LDY#5:.t6ax LDAhelp,Y:EORhe
lp+6:ADCxmin,X:STAxmin,X:STAxxmin,X:INX:
DEY:BPLt6ax:RTS
1710JSRloc:LDA#3:.t3a :PHA:LDX#6:LDY#1:
.t4 LDAsize-1,X:STAhelp,Y:INY:DEX:BNEt4:
STXhelp
1720PLA:TAY:.t5 LDX#7:CLC:.t5a ROLhelp-
1,X:DEX:BNEt5a:DEY:BNEt5:.t5b RTS
1730.compr LDA#&80:STAna+1:STAvoor+1:AS
LA:STAna:STAvoor
1740LDX#64:TAY
1750.t11 CPY#0:BNEt11a:DECvoor+1:DECna+
1:DEX:BMIt5b:TXA:LSRA:BCCt11a
1760LDAvoor:SBC#&80:STAvoor:LDAvoor+1:S
BC#0:STAvoor+1:CMP#&30:BCCt5b
1770.t11a DEY:JSRomk1:JMP t11
1780.omk1 TYA:LSRA:LDA(voor),Y:.omk2 BC
Ct12
1790PHA:AND#21:ASLA:STAhelp2+14:PLA:AND
#42:LSRA:ORAhelp2+14:.t12 STA(na),Y:RTS
1800.sideways:LDAacvl:AND#119:ORA#16:ST
Aacvl:JSRcompr
1810JSRcolroutine:JSRymtym1:STXctr
1820LDAvlag:AND#96:PHA:EORvlag:STAvlag:
PLA:TAY:BNEsright:LDX#69:JSRloc:LDA#2:JS
Rt3a:SEC:JSRt6add
1830LDX#3:JSRvertic:JMP decompr
1840.ymtym1 LDX#6:.t20 LDAymin-1,X:STAy
min1-1,X:DEX:BNEt20:RTS
1850.sright CPY#32:BNEsdown:LDX#73:JSRl
oc:LDA#2:JSRt3a:CLC:JSRt6add
1860LDX#7:JSRvertic:JMPdecompr
1870.sdown:CPY#64:BNEsup:LDX#65:JSRt3a-
5:JSRt6add-3:JSRymtym1
1880LDX#11:JSRhoriz:JMPdecompr
1890.sup:JSR sup1:
1900.decompr LDY#0:STYvoor:STYna:LDX#&4
0:STXvoor+1:LDA#&30:STAna+1
1910DEX
1920.t13 JSRomk1:.t13a:INY:BNEt13:INCvo
or+1:INCna+1:BMIt15
1930TXA:LSRA:BCSt14:LDAna:EOR#&80:STAna
:BMIt14:INCna+1
1940.t14 DEX:BPLt13:.t15:RTS
1950.horiz1:LDY#4:.t7a LDAmadrs,X:STAna
-1,Y:DEX:DEY:BNEt7a:RTS
1960.sup1 LDX#61:JSRt3a-5:½LDX#6:CLC:JS
Rt6add-2:JSRymtym1:LDX#15
1970.horiz JSRhoriz1:LDX#0:.t7 LDY voor
+1:
1980.t8a:JSRt8
1990DEX:TAY:DEY:CPYvoor:BNEt8a
2000INX:INX:BPLt7:RTS
2010.vertic JSRhoriz1:.t16a DEY
2020LDXvoor+1:JSRt8
2030.t17 :TAY:AND#7:BNEt18:CLC:LDAna:AD
C#&F8:STAna:LDAna+1:ADC#1:STAna+1
2040.t18:TYA:BNEt16a:RTS
2050.clhelp LDA#32:TAX:.r21b STAhelp-1,
X:DEX:BNEr21b:RTS
2060.special:JSRcompr
2070LDA#8:JSRt3a
2080JSRt6add-3:LDX#31
2090.speci0 :TXA:PHA:JSRsup1:JSRescape:
PLA:BCCspeci1:LDA#0:.speci1 TAX:DEX:BPL
speci0:JMP decompr
2100.elec`on LDX#0:JSRosb½comptyp:STXfi
le`id+2:LDA&282:STAfile`id+3:LDA#&B0:BNE
eona
2110.elec`off LDXfile`id+2:LDAfile`id+3
:.eona DEX:BNEeonb:STA&282:STA&FE07:.eon
b RTS
2120.gth PHA:LSRA:LSRA:LSRA:LSRA:JSRgth
1:
2130PLA:AND#15:.gth1 TAY:LDAhex,Y:STAhe
lp,X:INX:.s49a RTS
2140.trsfc:TYA:PHA:LDXxdat,Y:JSRloc:PLA
:TAY:DEY:DEY:BPLtrsfc:.s49b RTS
2150.loadcode JSRclhelp:LDAfile`id:BEQs
49a
2160.s50:LDAlsvlag:PHP:ASLA:LDA#3:ROLA:
TAY:LDX#4:.s51 LDAfilemess,Y:STAhelp-1,X
:DEY:DEY:DEX:BNEs51
2170.s53 PLP:PHP:BMIs53a:LDAloadname,X:
BPLs53b:.s53a LDAsavename,X:
2180.s53b CMP#&D:BEQs54:STAhelp+5,X:INX
:CPX#8:BCCs53
2190.s54 PLP:LDY#0:STYcurry:LDX#12:.s54
e LDAhelp-1,X:CMP#33:BCSs54f:CPX#6:BCCs5
4f:DEX:BCSs54e:.s54f STXcurrx:SEC:ROLhel
p2
2200.s54a LSRhelp2:BCCs54b:LDAacvl:AND#
32½exit:BNE s49b:.s54c STAwelp:JSRr19:LD
A#&73:STAwelp+1:LDX#6
2210.s54d JSRr72a
2220DEX:BPLs54d
2230JSRinvchar:JSRdelay:.s54b LDX#&FF:J
SRosb:PHP½Shift
2240LDY#35:JSRs55:BCCs60:.s56 TYA:CMP#1
0:BCSs57:PLP:ORA#48:BNE s59:.s57 SBC#9:O
RA#64:PLP:BCSs59:ORA#32
2250.s59 LDXcurrx:CPX#12:BCSs59a:STA he
lp,X:INCcurrx:.s59a:JMPs63a
2260.s60 PLP:JSRescape:BCCs61:.s60a ROL
help2:JSRr100½esc
2270.s61 LDX#&B6:JSRosb:BCSs70½return
2280.s62a LDY#10:JSRpreosb:BCS s62b
2290.s62 LDX#&A6:JSRosb:BCCs63:.s62b LD
A#32:LDXcurrx:STAhelp,X:CPX#6:BCCs63a:DE
Ccurrx:STAhelp-1,X:.s63a SEC:ROLhelp2:.s
63b
2300.s63:JSRclearkeybb:JMP s54a
2310.s70 JSRdelay:LDX#5:LDY#0:.s70a LDA
help,X:CMP#123:BCSs71:CMP#48:BCSs70d:CMP
#32:BEQs70e:BCCs71:.s70d STAfilename,Y:I
NY:.s70e INX:CPX#13:BNEs70a:CPY#0:BNEs72
2320.s71 LDA#7:JSR&FFEE:JMPs50½badfilen
ame
2330.s72 LDA#&D:STAfilename,Y
2340LDAlsvlag:BPLs72a:LDX#12:.s72b LDAs
prmess-1,X:STAhelp+14,X:DEX:BNEs72b:TXA:
JSRr19
2350.s72d :LDX#&BB:JSRosb:BCCs72ee:LSRl
svlag:SEC:ROLlsvlag:JSRline0:JMP s72a½Ye
s
2360.s72ee JSRescape:BCS s72f-3
2370.s72e LDX#&AA:JSRosb:BCCs70½No
2380.s72a LDA#255:STAsafe+3
2390LDA#124:JSR&FFF4½clear esc cond
2400LDAwin:LDXlox:LDYloy:CLC:JSRzoom:LD
Avlag:AND#(255-16):STAvlag
2410SEI:LDA&202:STAsafe:LDA&203:STAsafe
+1:TSX:STXsafe+2:LDA#brkv MOD256:STA&202
:LDA#brkv DIV256:STA&203:CLI
2420LDAlsvlag:LSRA:BCCs72f:JSRs198:JMPs
72g:JMPr100½laat staan - s72ee
2430.s72f JSRcompr½20K->16K
2440JSRrle:
2450LDA&8B:AND#&3F:TAY:CPY#&30:BCS alas
:LDX#77
2460LDA&8A:PHA:STAblock-3,X:ADC#&5A:STA
&8E:TYA:PHA:STAblock-2,X:ADC#&1:STA&8F:J
SRloc:PLA:STA&4C01:PLA:STA&4C00:LDA&8E:P
HA:LDA&8F:PHA:LDAvlag:ORA#16:STAvlag½len
gte in &8E,8F:BNE s72g
2470.alas LDX#87:½SEC-uit BCS alas:LDA&
8A:JSRalas1:LDA#&40:JSRs198a:JSRs100½16-
>12K:LDA#&58:PHA:½STA&8E:LDA#&31:PHA½STA
&8F:LDX#37:JSRloc
2480.s72g:LDY#8:JSR trsfc
2490JSRelec`on
2500LDA#&E:STAhelp+25:LDA#0:STAhelp+24:
LDX#18:TAY
2510.fi00 DEY:STA(help+24),Y:BNEfi00:IN
Chelp+25:DEX:BNEfi00
2520LDXfile`id:DEX:BEQfi0:DEX:BNEfi1:.f
i0 LDX#tape MOD256:LDY#tape DIV256:BNEfi
4
2530.fi1 CPX#2:BNEfi2:LDX#dfs MOD256:LD
Y#dfs DIV256:BNEfi4
2540.fi2 CPX#6:BEQfi3:CPX#9:BNEs104q:.f
i3 LDX#adfs MOD256:LDY#adfs DIV256:.fi4
JSR&FFF7
2550LDAlsvlag:ASLA:AND#2:BEQ fi5-2
2560LDA#&80:LDX#filename MOD256:LDY#fil
ename DIV256:JSR &FFCE:STAfile`id+1 ½han
dle:JSR s299
2570LDA#&0:LDY file`id+1:JSR &FFCE½CLOS
E FILE
2580LDAfile`id:CMP#4:BCC s104q½1 of 2 =
TAPE
2590.s104p LDX#rewrite MOD 256:LDY#rewr
ite DIV256:LDA#1:JSR&FFDD
2600.s104q :JMP s104b
2610LDX#8:.fi5 LDAstr4aa8,X:STAhelp+13,
X:DEX:BPL fi5
2620LDX#18:PLA:BCC fi8:INX:INX
2630½PLA½LDA&8F:JSRgth:PLA½LDA&8E:JSRgt
h:PHA:
2640.fi8 PLA:LDA#&0D:STAhelp,X:LDX#help
MOD256:LDY #help DIV256:JSR &FFF7
2650.s105o LDX#0:.s105c LDAhelp+5,X½fil
ename:STAloadname,X:CMP#&20:BCCs105d:INX
:CPX#9:BCCs105c:.s105d
2660LDAlsvlag:BPLs104b:LDY#0:.s105f LDA
help+5,Y½filename-Y:CMP#&20:BEQs105g:INY
:CPY#9:BCCs105f:BCSs104b:.s105g LDX#2:.s
105ga LDAhelp+4,Y½filename-1-Y:CMP#47:BC
Cs104b:CMP#58:BCSs104b:DEY:DEX:BNEs105ga
2670INY:TYA:TAX:.s105h LDAhelp+5,Y½file
name-Y:STAsavename,Y:DEY:BPL s105h
2680LDYsavename,X:INY:TYA:CMP#58:BCCs10
5i:LDYsavename-1,X:INY:CPY#58:BCCs105j:L
DY#48:.s105j:TYA:STAsavename-1,X:LDA#48:
.s105i STA savename,X
2690.s104b:LDX#tape MOD256:LDY#tape DIV
256:JSR&FFF7½*tape
2700SEI:LDAsafe:STA&202:LDAsafe+1:STA&2
03:CLI
2710JSRelec`off:LDY#9:JSRtrsfc
2720LDAlsvlag:LSRA:BCCs104bb:JSRs298½in
linen?niet vanwege2X PLA:JMPs104cc
2730.s104bb LDAvlag:TAY:AND#(255-16):ST
Avlag:CPYvlag:BEQs104c
2740LDX#81:SEC:LDA&4C00:LDY&4C01:JSRala
s1:
2750JMP s104cc-3
2760.s104c LDX#41:JSRloc:JSRs110aa:JSRd
ecompr
2770.s104cc:JSRr100:LDA#0:STAsafe+3½***
*
2780.zoomw CLC:LDAowin:LDXolox:LDYoloy
2790.zoom STXhelp+27½lox:RORhelp+27:STY
help+26½loy:STAhelp+24:STAhelp+22½win:LS
RA:STAhelp+25:STAhelp+23:LDA#42:STAhelp+
30
2800LDA#&87:STAhelp+28:LDA#&7D:STAhelp+
29½startloc.&7D87
2810LDX#5:.x0 LDYhelp+22,X:TYA:LSRA:BCC
x70½x1
2820INY:TYA:PHA:TXA:LSRA:BCCx02:TAY:BEQ
x00:LDY#1:.x00 :LDAhelp+30:EOR#63:STAhel
p+30:TYA:EORhelp+30:LSRA:BCCx7
2830.x04 CLC:LDAzm1,X:LDYzm11,X:BCC x4a
2840.x02 LDA#7:AND help+28:EORzm2,X:BNE
x04+1
2850.x022 LDYzm31,X:LDAzm3,X:BCCx4a
2860.x1 TYA:PHA:TXA:LSRA:BCSx4:LDA#6:AN
Dhelp+28:EORzm5,X:BEQx4
2870LDAzm4,X:LDYzm41,X:BCCx4a:.x4:LDAzm
6,X:LDY zm61,X:CLC
2880.x4a ADChelp+28:STAhelp+28:TYA:ADCh
elp+29:STAhelp+29:CPX#4:BCSx7:LDY#0:LDAh
elp+30:.x6 EOR(help+28),Y:STA(help+28),Y
2890.x7 PLA:TAY:DEY:DEY:.x70 BNEx1:.x7a
DEX:BPLx0:RTS
2900.alas1 STAblock-3,X:EOR#255:ADC#0:S
TAblock-1,X:PHA:TYA:STAblock-2,X:EOR#255
:ADC#&80:STAblock,X:PHA:JSRloc:PLA:TAY:P
LA:TAX:TYA:JMPinvrle
2910.brkv LDA#7:JSR&FFEE:LDAlsvlag:ORA#
2:STAlsvlag:LDXsafe+2:TXS:JMPs104b
2920.s1000 STAhelp+31:SEC:LDAhelp+22:SB
C#4:STAhelp+22:LDAhelp+23:SBC#0:STAhelp+
23:CMPhelp+30:BCCs114a
2930LDY#3:.s101 LDA(help+22),Y:STAhelp+
26,Y:DEY:BPL s101
2940LDAhelp+24:SBChelp+31:STAhelp+24:BC
Ss101a:DEChelp+25:SEC:.s101a RTS
2950.s198a STAhelp+30:LDA#&80:STAhelp+2
3:STAhelp+25:ASLA:STAhelp+22:STAhelp+24:
RTS
2960.s100 LDA#3:JSRs1000:BCCs114a
2970LDX#0:.s102 LDYsavetab,X:.s103 LSRh
elp+27,X:RORA:DEY:BNEs103:AND savetab+3,
X:ORAhelp+26,X:STAhelp+26,X:INX:CPX#3:BN
Es102
2980LDY#2:.s104 LDAhelp+26,Y:STA(help+2
4),Y:DEY:BPL s104:LDAlsvlag:LSRA:BCSs114
a:BCCs100
2990.s110aa LDY#0:STYhelp2:STYhelp2+2:L
DA#&50:STAhelp2+1:LDA#&40:STAhelp2+3
3000.s110a ½6 -> 8bts
3010JSRs110b:BPL s110a:.s114a RTS
3020.s110b LDY#2:.s110 LDA(help2),Y:STA
help2+4,Y:DEY:BPLs110
3030LDX#2:.s111 LDAhelp2+4,X:LDYsavetab
,X:.s112 ASLA:ROLhelp2+5,X:DEY:BNEs112:D
EX:BPLs111
3040LDY#3:LDAlsvlag:LSRA:BCCs111a
3050LDX#0:.s111c LDAhelp2+4,X:TAY:AND#4
2:CMP#40:BEQs111d:CMP#10:BNEs111e:.s111d
:TYA:EOR#34:TAY:.s111e TYA:AND#21:CMP#20
:BEQs111f:CMP#5:BNEs111g:.s111f TYA:EOR#
17:TAY:.s111g TYA:AND#63
3060½geel,cyan omw:LDYfile`id+1:JSR&FFD
4:INX:CPX#4:BCCs111c:BCSs114
3070.s111a LDAacvl:ASLA:.s113 LDAhelp2+
4,Y:AND#63:BCCs113a:TAX:LDAfork,X:.s113a
STA(help2+2),Y:DEY:BPL s111a
3080CLC:LDAhelp2+2:ADC#4:STAhelp2+2:BCC
s114:INChelp2+3:BMIs114b
3090.s114 CLC:LDAhelp2:ADC#3:STAhelp2:L
DAhelp2+1:ADC#0:STAhelp2+1:.s114b RTS
3100½½---
3110.s298 LSRlsvlag:ASLlsvlag
3120.s299:LDA#&00:STAhelp2:STAhelp2+2:L
DA#&4C:STAhelp2+1:LDA#&30:STAhelp2+3
3130LDX#32:.s300 TXA:PHA:LDX#128:.s301
TXA:PHA:JSRs110b:BPL s301a:PLA:PLA:RTS
3140.s301a PLA:TAX:INX:BMIs301
3150.s308 TXA:PHA:LDY#0:.s309 LDA(help2
),Y
3160LDX#0:.s309a LSRA:LDY#0:BCCs310:LDY
#21:.s310 LSRA:PHA:TYA:BCCs311:ORA#42:.s
311 STAhelp2+4,X:PLA:INX:CPX#4:BCCs309a
3170LDY#3:LDAlsvlag:LSRA:BCCs312a:
3180LDX#0:.s312c:LDAhelp2+4,X:LDYfile`i
d+1:JSR&FFD4:INX:CPX#4:BCCs312c
3190BCSs311a
3200.s312a LDAhelp2+4,Y:STA(help2+2),Y:
.s312b DEY:BPL s312a
3210CLC:LDAhelp2+2:ADC#4:STAhelp2+2:BCC
s311a:INChelp2+3:.s311a
3220INChelp2:BNEs311b:INChelp2+1:.s311b
3230PLA:TAX:INX:CPX#32:BNEs308
3240PLA:TAX:DEX:BNEs300:RTS
3250½½---
3260½=======
3270STAblock-4,X:.loc:LDY#6:.loop1 LDAb
lock+&1200,X:STAhelp+23,Y:DEX:DEY:BNE lo
op1
3280LDAhelp+24½van:CMPhelp+28:LDAhelp+2
5:SBChelp+29:LDXhelp+27:BCS loop2
3290TXA:ADChelp+25:STAhelp+25:TXA:ADChe
lp+29:STAhelp+29
3300LDYhelp+26:BNEloop5
3310.loop6 TXA:BEQout:DEX:DEChelp+25:DE
Chelp+29
3320.loop5 DEY:LDA(help+24),Y:STA(help+
28),Y:CPY#0:BNEloop5:BEQloop6:
3330.loop2 BEQ loop4:.loop3 LDA(help+24
),Y:STA(help+28),Y:INY:BNE loop3:INChelp
+25:INChelp+29:DEX:BNEloop3
3340.loop4 CPYhelp+26:BEQout:LDA(help+2
4),Y:STA(help+28),Y:INY:BNEloop4:.out RT
S
3350.s198:LDA#&30:JSRs198a:LDX#32
3360.s208 TXA:PHA:LDX#31:.s209 :TXA:PHA
:LDA#1:STAhelp+31
3370JSRs1000:BCCs212
3380LDA#0:LDX#3:.s211b STAhelp+21:TXA:T
AY:LDAhelp+26,X:AND#3:.s211c CPY#0:BEQs2
11d:ASLA:ASLA:DEY:BNEs211c:.s211d ORAhel
p+21:DEX:BPLs211b
3390LDY#0:STA(help+24),Y:PLA:TAX:DEX:BP
L s209
3400.s199 TXA:PHA:BPL s212½err:JSRs100
3410PLA:TAX:DEX:BMIs199:PLA:TAX:DEX:BEQ
s213:BNEs208
3420.s212 PLA:PLA:.s213: RTS
3430.escape LDX#&8F:JMPosb
3440.zzz1 STAlsvlag:JSRdelay:LDY#21
3450.zzz:LDAmess+41,Y:EORkeych-1,Y:STAm
ess+41,Y:DEY:BNEzzz
3460.zx1 LDX#32:.zx LDAmess,Y:STAhelp-1
,X:INY:INY:DEX:BNEzx:TXA:JMPr19
3470.fnposx JSRinvok:BMIr200:INX:CPX#27
:BCCfnposx:.r200 STX currx:RTS
3480.clockcode CMP#4:BNEclc00:PHA:LDAsa
fe+3:BNE clc00-1:TXA:PHA:TYA:PHA:LDX#5
3490.cl12 INCclock+2,X:LDAslock,X:CMPcl
ock+2,X:BCSclc0:LDA#48:STAclock+2,X:DEX:
BPLcl12:
3500.clc0 PLA:TAY:PLA:TAX:PLA:.clc00 JM
P(clock)
3510.clock`reset LDA#48:LDX#6:.crs STAc
lock+1,X:DEX:BNEcrs:STXlsvlag:LDA#ASC":"
:STAclock+8:RTS
3520.z5 LDY#0:TYA:LDX#help MOD 256:JSR&
FFDA:STAfile`id+&1200
3530LDX#(tape+&1200)MOD256:LDY#(tape+&1
200)DIV256:JSR&FFF7
3540CLD:LDX#5:JSRloc+&1200
3550LDA#block MOD 256:STAloop1+1:LDA#bl
ock DIV256:STAloop1+2
3560LDX#19:JSRloc
3570LDX#47:JSRloc
3580.enable JSRclock`reset:.enable0 SEI
:LDX&220:STXclock:LDY&221:STYclock+1:LDX
#clockcode MOD256:LDY#clockcode DIV256:S
TX&220:STY&221:CLI:LDA#&0E:LDY#0:STYsafe
+3:LDX#4:JSR&FFF4
3590JMPj0½calladr
3600]
3610IFpass=6:PRINT "code "&2826-O%" byt
es over - JMP(clock)=&"÷clc00
3620O%=&2826:P%=&2E26
3630[OPTpass
3640.fixed EQUS"Fixed"
3650.deco8 EQUD&110B0500
3660.zm1 EQUD&08FFF801:EQUW&08FF
3670.zm11 EQUD&00FFFF00:EQUW&00FF
3680.zm2 EQUD&00000007:EQUW&0000
3690.zm3 EQUD&00870079:EQUW&0087
3700.zm31 EQUD&00FD0002:EQUW&00FD
3710.zm4 EQUD&00FE0002:EQUW&00FE
3720.zm41 EQUD&00FF0000:EQUW&00FF
3730.zm5 EQUD&00000006:EQUW&0000
3740.zm6 EQUD&0886F87A:EQUW&0886
3750.zm61 EQUD&00FDFF02:EQUW&00FD
3760.block EQUW&2000:EQUW&2700:EQUW&E00
½5:EQUW&1200:EQUW&33A8½9:EQUW&1200:EQUW&
E00½13:EQUW&3000:EQUW&200:EQUW&B00½19:EQ
UW&200:EQUW&45A8½23:EQUW&200:EQUW&B00½27
3770EQUW&4400:EQUW&3000:EQUW&5000½33:EQ
UW&3000:EQUW&4C00½37:EQUW&3000:EQUW&5000
½41
3780EQUW&3200:EQUW&300:EQUW&400½47:EQUW
&400:EQUW&47A8½51:EQUW&400:EQUW&400½55
3790EQUW&4000:EQUW&3E00:EQUW&4200½61:EQ
UW&3E00:EQUW&4000½65:EQUW&3FF8:EQUW&4008
½69:EQUW&3FF8:EQUW&4000½73:EQUW0:EQUW&4C
02½77:EQUW0:EQUW0½81
3800EQUW&4000:EQUW0:EQUW0½87
3810EQUW&4000:EQUW&200:EQUW&900½93
3820EQUW&48:EQUW&18:EQUW&4BA8½99:EQUW&1
8:EQUW&48½103
3830EQUW&120:EQUW&40:EQUW&4BC0½109:EQUW
&40:EQUW&120½113
3840.slock EQUD&35393539:EQUW&6139
3850.clock EQUD0:EQUD0:EQUB0
3860.safe EQUD0
3870.lsvlag EQUB0
3880.file`id EQUD0
3890.filename EQUD0:EQUD0:EQUW0:EQUB0
3900]
3910IFpass=6:PRINTP%,&2F00-P%
3920O%=&2900:P%=&2F00
3930[OPTpass
3940.filemess EQUS"LSoaavde"
3950.str4aa8 EQUS" 4AA8 + "
3960.hex EQUS"0123456789ABCDEF"
3970.xdat EQUB109:EQUB113:EQUB99:EQUB10
3:EQUB51:EQUB55:EQUB9:EQUB13:EQUB23:EQUB
27
3980.keych:EQUD&57295378:EQUD&48554058:
EQUD&61025211:EQUD&580012:EQUD&44003E:EQ
UB&9
3990.savetab EQUB2:EQUB4:EQUB6:EQUB192:
EQUB240:EQUB252
4000.clb EQUD&04030802:EQUW&508:EQUB&6½
clock-->help data
4010.rewrite EQUW filename:EQUD&3000:EQ
UD&3000:EQUD&5000:EQUD&3
4020.tape EQUS"tape"+CHR$&D
4030.adfs EQUS"ADFS"+CHR$&D
4040.dfs EQUS"DISC"+CHR$&D
4050.savename EQUS"mand00 "+CHR$&D:EQUB
0
4060.loadname EQUS" "+CHR$&D:EQUB
0
4070]
4080IFpass=6:PRINTP%,&2F80-P%
4090O%=&2980:P%=&2F80
4100[OPTpass
4110.Morigx EQUW&0:EQUD&C0000000
4120.Morigy EQUW0:EQUD&D0000000
4130.Morigsize EQUW0:EQUD&60000000
4140.Mlowcol EQUW1
4150.Jorigx EQUW0:EQUD(-2*2^29)
4160.Jorigy EQUW0:EQUD(-2*2^29)
4170.Jorigsize EQUW0:EQUD&80000000
4180.Jlowcol EQUW1
4190.padr0 EQUW&7FA0:.padr1 EQUW&5CB0:.
padr2 EQUW&5A30:.padr3 EQUW&57B0:.padr4
EQUW&5530:.padr5 EQUW&52B0
4200.inkcode EQUD&D8482400:EQUD&FC6CB49
0
4210.keycode EQUD&EECECFD8:EQUD&DBCBECE
D:EQUW&D9EA
4220.numcode EQUD&CDAD9BBE:EQUD&ABACBCD
D:EQUD&A9B9BADA:EQUD&C8C9AA9A:EQUD&DCAEC
CEF:EQUD&BDDE9CCA:EQUW&9EBB
4230.methodword EQUS"l.86wt25ar12ra==cp
yy"
4240.inkcodes
4250EQUB&9D:EQUB&9E½smaller Y=0,1
4260EQUB&FF:EQUB&BD½bigger
4270EQUB&9E:EQUB&E6½left
4280EQUB&BD:EQUB&86½right
4290EQUB&B7:EQUB&C6½up
4300EQUB&97:EQUB&D6½down
4310]
4320IFpass=6 PRINT"data2988 "&3000-P%'"
block%"÷block'"loc"÷(loc-2) :REM vanaf 3
194 data voor 'invullen'
4330P%=&400:O%=&2C00
4340[OPTpass
4350.chline PHA:JSRdecode:JSRprlin:PLA:
CLC:ADCcurry:AND#3:BNEchlinea-2:LDXFvlag
:BNEchlinea:STAcurry:.chlinea JSRprlin:J
SRlineinv:LDX#6:JSRfnposx
4360.invchar ½pos=Y*32+&7F80-(X*640)
4370LDAcurrx:AND#31:STAwelp+1:ASLA:ASLA
:ADCwelp+1½*1280
4380LSRA:PHP:SEC:EOR#255:ADC#&7F:TAX:LD
Acurry:LSRA:RORA:RORA:PLP:RORA½*32,CC
4390EOR#128:STAwelp:TXA:ADC#0:STAwelp+1
4400LDY#31:.r201 LDA(welp),Y:EOR#240:ST
A (welp),Y:DEY:BPL r201:RTS
4410.lineinv:LDAcurry:LSRA:RORA:RORA:SE
C:RORA:STAwelp:LDA#&70:STAwelp+1
4420LDX#6:.r71:JSRinvok:BPLr73:JSRr72a:
BCSr73b
4430.r73 JSRr72b:.r73b:CMP#&30:BCCr73a:
INX:CPX#27:BNEr71:.r73a RTS:
4440.r72a LDY#31:.r72 LDA(welp),Y:EOR#4
8:STA(welp),Y:DEY:BPLr72
4450.r72b SEC:LDAwelp:SBC#&80:STAwelp:L
DAwelp+1:SBC#2:STAwelp+1:RTS
4460.invok LDAokstr-4,X:LDYcurry:.r70:B
EQr70a:ASLA:ASLA:DEY:BNEr70:.r70a TAY:RT
S
4470.t8 TYA:PHA:PHA:JSRt8g:STAboven:PLA
:½TAY:INX:JSRt8g:TAY
4480LDActr:LSRA:TYA:BCCt8d:ASLA:ASLA:AS
LA:AND#56:STAboven+1:
4490LDAboven:LSRA:LSRA:LSRA:ORAboven+1:
JMPt8e
4500.t8d :AND#56:STAboven+1:LDAboven:AN
D#7:ORAboven+1
4510.t8e TAY:LDAna:LSRA:LDAfork,Y:LDY#0
:JSRomk2:.t8f :INCctr:INCna:BNE t8gg:INC
na+1:BPLt8gg:PLA:PLA:.t8gg PLA:RTS
4520.t8g JSRmandel6:TAY:LDAacvl:LSRA:BC
St8h:LDApalette,Y:TAY:.t8h LDAmix,Y:LSRA
:LSRA:RTS
4530.n0a LDYwin:INY:BNEn1:TYA:BEQsidw½<
4540.n1a ½LDYwin:INY:BNEn2:LDA#32:BNEsi
dw½>
4550.n2a ½LDYwin:INY:BNEn3:LDA#96:BNEsi
dw½^
4560.n3a LDYwin:INY:BNEn4:LDA#64½V
4570.sidw STAhelp:LDA#12:JSRaction:LDAv
lag:AND#(255-96):ORAhelp:STAvlag:JMPspec
0
4580.mainloop
4590.n0 LDY#4:JSRpreosb:BCCn1:LDAlox:BE
Qn0a:DEClox:JSRnww ½Z
4600.n1 LDY#6:JSRpreosb:BCCn2:LDYwin:TY
A:ADClox:BCSn1a:INClox:JSRnww ½X
4610.n2 LDY#8:JSRpreosb:BCCn3:LDYwin:TY
A:ADCloy:BCSn2a:INCloy:JSRnww ½:
4620.n3 LDY#10:JSRpreosb:BCCn4:LDAloy:B
EQn3a:DECloy:JSRnww ½/
4630.n4 LDY#0½space=kleiner:JSRpreosb:B
CCn5a:LDAwin:CMP#8:BCCn5a:SBC#2:STAwin:I
NClox:INCloy:JSRnww:½shrink
4640.n5a LDY#2½Shift:JSRpreosb:BCCn6a:.
n5c LDYwin:CPY#254:BCS n6a:INY:INY:STYwi
n:LDY#1:.n5d :LDXlox,Y:BEQn5f:DEX:.n5f C
LC:TXA:ADCwin:BCCn5g:DEX:.n5g STXlox,Y:D
EY:BPL n5d:JSRnww½enlarge
4650.n6a:LDX#&B6:JSRosb:BCCn6d:LDA#128:
JSRaction½go Ret
4660.n6d LDX#&AD:JSRosb:BCCn6da:JSRcloc
k`reset
4670.n6da LDX#&AE:JSRosb:½BCCn6db:BCSn6
dd½save
4680.n6db LDX#&A9:JSRosb:BCCn6e:CLC:.n6
dd LDAacvl:AND#4:BNEn6e:RORA:STAlsvlag:J
SRloadcode
4690.n6e LDX#&CC:JSRosb:BCCn7:LDA#2:JSR
action½reset
4700.n7 LDX#&BA:JSRosb:BCCn8:LDAvlag:LS
RA:BCSn8:SEC:ROLA:BNEn8aa½julia
4710.n8 LDX#&9A:JSRosb:BCCn8a1:LDAvlag:
ORA#128:LSRA:BCCn8a1:ASLA:.n8aa STAvlag:
LDA#64:JSRaction½mandel
4720.n8a1 LDX#&BC½F:JSRosb:BCCn8a2:LDAF
vlag:EOR#128:STAFvlag:JSRr100
4730.n8a2 LDX#&AB:JSRosb:LDA#16:BCSn8ab
4740.n8a LDX#&DC:JSRosb:BCCspec0:LDAvla
g:TAX:AND#(255-6):STAvlag:INX:INX:TXA:AN
D#6:BNE n8ab:PHA:LDAacvl:EOR#1:STAacvl:P
LA:.n8ab:JSRr99½method
4750.spec0 LDX#&C8:JSRosb:BCCspec1:JSRp
alch
4760.spec1 LDX#&DA:JSRosb:BCCcase0:JSRi
nput
4770.case0 LDX#&B9:JSRosb:BCCcase:LDA#8
:ORAlsvlag:JSRzzz1
4780.case LDAacvl:AND#222:BEQcase1:LDA#
0:STAlsvlag:
4790.case1:JSRclearkeybb
4800LDAacvl:LSRA:RORA:BCCn10:ASLA:ROLA:
STAacvl:LDAcoldiff:ADClocol:TAY:LDA#0:AD
Clocol+1:BEQcase1a:LDY#255:.case1a DEY:S
TYcoldiff:LDAvlag:LSRA:BCCn9:LDY#39:JMPj
reset:.n9 JMPmreset
4810.n10 LSRA:BCCn11:JSRoldw
4820.n11 LDAacvl:AND#8:BEQn12:JSRsidewa
ys
4830.n12 LDAacvl:ASLA:ROLA:ROLA:ROLA:BC
Cn13:JMPadjv`neww
4840.n13 LSRA:BCCn14:JSRpane:JMPmainloo
p
4850.n14 LSRA:BCCn15:JMPjmswop
4860.n15 LSRA:BCCn14a:JSRgo
4870.n14a LDAclock+6:CMPclock+9:BEQn16:
STAclock+9:LDAlsvlag:AND#10:BNEn16:JSRli
ne0
4880.n16 JMPmainloop
4890]:PRINT"&400-&700"768-P%+chline"byt
es over"
4900P%=&3500:O%=&2F00:NEXT
4910I%=I%-&600:J%=J%-&600:M%=M%-&600:T%
=T%-&600
4920?(I%+1)=(loc-3) MOD256:?(I%+2)=(loc
-3) DIV256
4930?(J%-2)=loc MOD256:?(J%-1)=loc DIV2
56
4940?(J%+1)=s110aa MOD256:?(J%+2)=s110a
a DIV256
4950?(M%+1)=(clock+7)MOD256:?(M%+2)=(cl
ock+7)DIV256
4960?(T%-2)=special MOD256:?(T%-1)=spec
ial DIV256:?(T%+1)=ymtym1 MOD256:?(T%+2)
=ymtym1 DIV256
4970z5=z5+&2000-&E00
4980?&801=z5 MOD256:?&802=z5 DIV256
4990OSCLI("save :0.mbb 800 "+STR$÷O%+"
2000 2000")
5000a%=OPENOUT ":0.DiscDat"
5010BPUT# a%,(O%-&800)MOD256
5020BPUT#a%,(O%-&800) DIV256:REM lengte
5030BPUT#a%,z5 MOD256:BPUT#a%,z5 DIV256
:BPUT#a%,adfs MOD256:BPUT#a%,adfs DIV256
:BPUT#a%,dfs MOD256:BPUT#a%,dfs DIV256:C
LOSE#a%
5040DIMsp% 10:PRINTHIMEM-sp%
5050END
5060DEFPROClist:P%=PAGE+1:Q%=0:f$="":T%
=0:R%=?P%
5070REPEAT:IFR%=&FF ENDPROC
5080R%=?P%:Q%=P%?2:S%=(P%?1)+256*R%:T%=
T% AND4:FORI%=3TOQ%-1:U%=I%?P%:PROCd:IFf
$<>""AND((T% AND32)=0):PRINTS%;" ";f$,÷
(EVAL(f$)):f$=""
5090NEXT
5100P%=P%+Q%:UNTILFALSE:ENDPROC
5110DEFPROCd:IFU%=&F4:T%=T% OR1:ENDPROC
5120IF(U%=34)ANDNOT(T% AND1):T%=(T% EOR
2):ENDPROC
5130IF(T% AND3)<>0:ENDPROC
5140IF(U%=ASC"["):T%=T% OR4:ENDPROC
5150IF(T% AND4)<>4:ENDPROC
5160IF(U%=ASC"]"):T%=T% AND11:ENDPROC
5170IF((U%=ASC"½")OR(U%=ASC";")):T%=(T%
OR8)AND15:ENDPROC
5180IF(U%=ASC".")AND((T% AND8)=0):T%=T%
OR16:ENDPROC
5190IF(U%=ASC":")AND((T% AND8)=0):T%=T%
AND7:ENDPROC
5200IF(T% AND16)<>16 ENDPROC
5210IF(U%=32)AND(f$<>""):T%=T% AND15:EN
DPROC
5220IF((U%>64 ANDU%<91)OR(U%=95)OR(U%>9
6 ANDU%<123)):f$=f$+CHR$U%:T%=T% OR32:EN
DPROC
5230IF(U%>=48 ANDU%<58)AND((T% AND32)=3
2):f$=f$+CHR$U%
5240ENDPROC
5250m1$="X Z //::c p S-tsfyheSK":m2$="
sswwoorrrrAA-,sXy,eZK":t$=""
5260FORI%=1 TO 22:u$=STR$÷(ASC(MID$(m1$
,I%,1))EORASC(MID$(m2$,I%,1))):IFLEN(u$)
=1u$="0"+u$
5270t$=u$+t$:IF(I%AND3)=0:PRINT"EQUD&"+
t$+":";:t$=""
5280NEXT:PRINT;"EQUW&"+t$