 .LOCAL››BPe LDA #<Pe› STA IR0› LDA #>Pe› STA IR0+1› LDA #<256› STA IR1› LDA #>256› STA IR1+1› RTS››twns .BYTE "Dn:TOWNE.000",155››RWTowne› LDA sf› BEQ ?ELT› LDA #<twns› STA IR7› LDA #>twns› STA IR7+1› LDA cnt+2› JSR DoOpen› LDA #<Sc› STA IR0› LDA #>Sc› STA IR0+1› LDA #<1024› STA IR1› LDA #>1024› STA IR1+1› LDA Cmd› CMP #'R› BNE ?ELT@F› BGet 2› JSR BPe› BGet 2› JMP ?@Cl›?ELT@F› BPut 2› JSR BPe› BPut 2›?@Cl Close 2› RTS›?ELT› LDA cnt+2› CMP #17› BCC ?NORT› RTS›?NORT› LDA #<Sc› STA sc_› LDA #>Sc› STA sc_+1› LDA #8› STA IR7› LDA cnt+2› CMP #16› BNE ??ELSE› LDA #<555› STA Sec› LDA #>555› STA Sec+1› JMP ??FI›??ELSE› ASL A;*2› STA Sec› ASL A› ASL A;*8› ADC Sec;*10› ADC #<360› STA Sec› LDA #>360› ADC #0› STA Sec+1›??FI› JSR RWSec› LDA #<Pe› STA sc_› LDA #>Pe› STA sc_+1› LDA #2› STA IR7› JSR RWSec› RTS››ReadTowne› JSR RWTowne› LDA #0› STA mx› STA my› LDA #11› STA xx› STA yy› LDA #5› STA rx› STA ry› RTS››WriteTowne› JMP RWTowne›› .LOCAL››ScsM .BYTE 'X,'B,'X,'T,'X,'D,'R››ComRWScF LDA ScsM,Y› STA Scs+3› LDA #<Scs› STA IR7› LDA #>Scs› STA IR7+1› LDA Cnt,y› JSR DoOpen› LDA #<Pe› STA IR0› LDA #>Pe› STA IR0+1› LDA #128› STA IR1› LDA #0› STA IR1+1› RTS››RdSc› LDA sf› BNE ?sf:1› LDA cnt,y› CMP cmax,y› BEQ ?sf:0› BCC ?sf:0› RTS›?sf:1› JSR ComRWScF› BGet 2› LDA #<[Sc+768]› STA sc_› STA IR0› LDA #>[Sc+768]› STA sc_+1› STA IR0+1› LDA #128› STA IR1› LDA #0› STA IR1+1› BGet 2› Close 2› JMP ?sfFI›?sf:0› LDA #<Pe› STA sc_› LDA #>Pe› STA sc_+1› JSR Io› INC Sec› BNE ??:› INC Sec+1›??: LDA #<[Sc+768]› STA sc_› LDA #>[Sc+768]› STA sc_+1› JSR Io›?sfFI› LDA #<Sc› STA Ir0› LDA #>Sc› STA Ir0+1› LDA sc_› STA IR1› LDA sc_+1› STA IR1+1› LDA #11› STA i›?Rlp› JSR Move11› JSR IIR@3211› DEC i› BNE ?Rlp› LDA #0› STA mx› STA my› STA xx› STA yy› LDA #5› STA rx› STA ry› RTS››WrSc› LDA sf› BNE ?sf@1› LDA cnt,y› CMP cmax,y› BEQ ?sf@0› BCC ?sf@0› RTS›?sf@1› JSR ComRWScF› BPut 2› LDA #<Sc› STA IR0› LDA #>Sc› STA IR0+1› LDA #11› STA IR1› STA i› LDA #0› STA IR1+1›?l@› BPut 2› JSR IIR0@32› DEC i› BNE ?l@› Close 2› RTS›?sf@0› LDA #<Pe› STA sc_› LDA #>Pe› STA sc_+1› JSR Io› INC Sec› BNE ?NiS› INC Sec+1›?NiS› LDA #<[Sc+768]› STA sc_› STA IR0› LDA #>[Sc+768]› STA sc_+1› STA IR0+1› LDA #<Sc› STA IR1› LDA #>Sc› STA IR1+1› LDA #11› STA i›?DoWs› JSR Move11› JSR IIR@1132› DEC i› BNE ?DOWs› JSR Io› RTS››RWScreen› TAY› LDA cnt,y› CMP #13› BNE ?E14› LDA #<584› STA Sec› LDA #>584› STA Sec+1› BNE ???FI›?E14 CMP #14› BNE ?E› LDA #<681› STA Sec› LDA #>681› STA Sec+1› BNE ???FI›?E› ASL A› CLC› ADC #<529› STA Sec› LDA #>529› ADC #0› STA Sec+1›???FI› LDA Cmd› CMP #'R› BEQ ?DoRd› JMP WrSc›?DoRd› JSR RdSc› LDY #111›?Dolk LDA Pe,Y› CMP #11› BCS ?GoCLPe› DEY› CPY #63› BNE ?DOlk› RTS›?GoCLPe JMP CLPe››RWDScr› TAY› LDA cnt,Y› STX ir6› CPX #1› BNE ?RWDEt› CMP #7› BNE ??rif› LDA #<681› STA Sec› LDA #>681› STA Sec+1› BNE ??FIr›??rif› ASL A› CLC› ADC #<657› STA Sec› LDA #>657› ADC #0› STA Sec+1› BNE ??FIr›?RWDEt› LDX #0› STX Sec+1› ASL A› ROL SEC+1› ADC #17› STA SEC› LDA SEC+1› ADC #0› STA SEC+1›??FIr› LDA Cmd› CMP #'R› BNE ??WDELSE› JSR RdSc› LDX IR6› BNE ?HERE› LDX #127›?DRl› LDA Pe,X› CMP #11› BCC ?DDEX› JMP CLPe›?DDEX DEX› CPX #31› BNE ?DRl› RTS›?HERE› LDX #111›?DRlp› LDA Pe,X› CMP #11› BCC ?DDEX2› JMP CLPe›?DDEX2 DEX› CPX #63› BNE ?DRlp› RTS›??WDELSE› JMP WrSc››dngs .BYTE "Dn:DUNGEON.000",155››RWDng› LDA cnt+4› CMP cmax+4› BEQ ?NRT› BCC ?NRT› LDA sf› BNE ?NRT› RTS›?NRT› LDA sf› BEQ ??eq0› LDA #<dngs› STA Ir7› LDA #>dngs› STA IR7+1› LDA cnt+4› JSR DoOpen› LDA #<Sc› STA IR0› LDA #>Sc› STA IR0+1› LDA #<512› STA IR1› LDA #>512› STA IR1+1› LDA Cmd› CMP #'R› BNE ?Pt› BGet 2› JMP ?Cl›?pt› BPut 2›?Cl Close 2› JMP ?RW›??eq0› LDA #<Sc› STA sc_› LDA #>Sc› STA sc_+1› LDA cnt+4› ASL A› ASL A› ADC #<625› STA Sec› LDA #>625› ADC #0› STA Sec+1› LDA #4› STA IR7› JSR RWSec›?RW› LDA Cmd› CMP #'R› BNE ?RTS› LDA #0› STA rx› STA ry› STA xx› LDA #255› STA ox› STA oy›?RTS RTS››CasBufL=$400›CasBufH=$420››ClcSc› LDY #0› STY IR0+1› ASL A› ASL A› ASL A› ASL A› ROL IR0+1› ASL A› ROL IR0+1› ORA i› CLC› ADC #<SC› STA IR0› LDA #>Sc› ADC IR0+1› STA IR0+1› RTS››ShowPe› LDA md› CMP #1› BNE ?SP4› LDX #31›?RHD1› LDA Pe,X› BEQ ?ERHD1› LDA Pe+32,X› STA i› LDA Pe+64,X› JSR ClcSc› LDA (IR0),y› STA UnPe,X› LDA IR0› STA CasBufL,X› LDA IR0+1› STA CasBufH,X› DEX› BPL ?RHD1›?ERHD1› INX› CPX #32› BEQ ??t› LDA CasBufL,X› STA Ir0› LDA CasBufH,X› STA Ir0+1› LDA Pe,X› STA (IR0),Y› JMP ?ERHD1›??t RTS›?SP4› CMP #4› BNE ??t› LDX #15›???r0› LDA Pe+16,X› BEQ ?DEX› LDA Pe+32,X› STA i› LDA Pe+48,X› JSR ClcSc› LDA (Ir0),Y› STA UnPe,X› LDA IR0› STA CasBufL,X› LDA IR0+1› STA CasBufH,X›?DEX DEX› BPL ???r0› LDX #15›???r1› LDA Pe+16,X› BEQ ?DEX2› LDA CasBufL,X› STA IR0› LDA CasBufH,x› STA IR0+1› LDA Pe+16,X› STA (Ir0),Y›?DEX2 DEX› BPL ???r1› RTS››HidePe› LDA md› CMP #1› BNE ??Ez› LDX #31›??HPl0› LDA Pe,X› BEQ ??RTS› LDA Pe+32,X› STA i› LDA Pe+64,X› JSR ClcSc› LDA UnPe,X› STA (Ir0),Y› DEX› BPL ??HPl0›??RTS RTS›??Ez› CMP #4› BNE ??RTS› LDX #15›??HPl1› LDA Pe+16,X› BEQ ??nRTS› LDA Pe+32,X› STA i› LDA Pe+48,X› JSR ClcSc› LDA UnPe,X› STA (IR0),Y›??nRTS DEX› BPL ??HPl1› RTS››Form› CMP #144› BCC ?n254› AND #252› RTS›?n254› CMP #132› BCS ?y1› CMP #96› BCS ?n0› CMP #80› BCS ?y1› CMP #48› BCS ?n0› CMP #32› BCC ?n0›?y1 AND #254›?n0 RTS››Aggr .SBYTE 37,"Aggr "›Attr .SBYTE 37,"Attr "›Yess .SBYTE 37,"Yes  "›Nos  .SBYTE 37,"No   "››WrMob› LDX per› LDA Pe+192,X› CMP #255› BNE ?@128› LDA #<Aggr› STA IR0› LDA #>Aggr› STA Ir0+1› JMP WriteL›?@128› CMP #128› BNE ?@1› LDA #<Attr› STA IR0› LDA #>Attr› STA IR0+1› JMP WriteL›?@1› CMP #1› BNE ?@0› LDA #<Yess› STA IR0› LDA #>Yess› STA IR0+1› JMP WriteL›?@0› CMP #0› BEQ ?DoNo› JSR WriteLB› INC gsc› INC gsc› RTS›?DoNo› LDA #<Nos› STA IR0› LDA #>Nos› STA IR0+1› JMP WriteL››ModPe› STA Ir0› LDA sk› BNE ?sk1› CLC› lda icn› ADC Ir0› sta icn› LDX per› STA Pe+96,X› LDX #<[L2+11]› STX gsc› LDX #>[L2+11]› STX gsc+1› JMP WriteLB›?sk1› CMP #1› BNE ?sk2› LDX per› LDA Ir0› AND #128› BEQ ?ELam› LDA Pe+192,X› BNE ??E1› LDA #1› BNE ?FIam›??E1 CMP #1› BNE ??E128› LDA #128› BNE ?FIam›??E128 CMP #128› BNE ??E255› LDA #255› BNE ?FIam›??E255 LDA #0› BEQ ?FIam›?ELam› LDX per› LDA Pe+192,X› BNE ?I1› LDA #255› BNE ?FIam›?I1 CMP #1› BNE ?I128› LDA #0› BEQ ?FIam›?I128 CMP #128› BNE ?I255› LDA #1› BNE ?FIam›?I255 LDA #128›?FIam› STA Pe+192,X› LDA #<[L2+19]› STA gsc› LDA #>[L2+19]› STA gsc+1› JMP WrMob›?sk2› LDX per› CLC› LDA Ir0› ADC Pe+224,X› CMP #17› BCC ??OK› CMP #230› BCC ??w0› LDA #16› BNE ??OK›??w0 LDA #0›??OK STA Pe+224,X› LDA #<[L2+29]› STA gsc› LDA #>[L2+29]› STA gsc+1› LDA Pe+224,X› JMP WriteLB›› .LOCAL››Comb› LDA per› ASL A› ASL A› TAX› LDA rx› ASL A› ASL A› ASL A› ASL A› ORA ry› RTS››pnd .SBYTE 33,"#"›RepIc .SBYTE 38,"RepIc:"›Mob .SBYTE 36,"Mob:"›spch .SBYTE 37,"Spch#"›Monst .SBYTE 41,"Monster #"›plyer .SBYTE 41,"Player  #"›player .SBYTE 39,"Player "›Trigger .SBYTE 41,"Trigger #"›Overlay .SBYTE 41,"Overlayn#"››Gover› STA Overlay+8› LDA #<Overlay› STA IR0› LDA #>Overlay› STA IR0+1› JSR WriteL2› JMP Comb››ShowPer› LDA md› CMP #1› BNE ??3› LDA #<pnd› STA IR0› LDA #>pnd› STA IR0+1› JSR WriteL2› LDA per› JSR WriteLB(per)› INC gsc› LDA #<RepIc› STA IR0› LDA #>RepIc› STA IR0+1› JSR WriteL› LDX per› LDA Pe+96,X› JSR WriteLB› INC gsc› LDX per› LDA icn› STA Pe,X› CLC› LDA xx› ADC rx› STA Pe+32,X› STA Pe+128,X› STA i› CLC› LDA yy› ADC ry› STA Pe+64,X› STA Pe+160,X› JSR ClcSc› LDA (IR0),Y› STA UnPe,X› LDA #<Mob› STA IR0› LDA #>Mob› STA IR0+1› JSR WriteL› JSR WrMob› LDA #<spch› STA IR0› LDA #>Spch› STA IR0+1› JSR WriteL› LDX per› LDA Pe+224,X› JMP WriteLB›??3› CMP #3› BNE ??4› LDA Ptyp› BEQ ??p0› LDA #<Monst› STA IR0› LDA #>Monst› STA IR0+1› JSR WriteL2› LDX per› LDA rx› STA Pe+64,X› LDA ry› STA Pe+80,X› JMP ??PRTS›??p0› LDA #<plyer› STA IR0› LDA #>plyer› STA IR0+1› JSR WriteL2› LDX per› LDA rx› STA Pe+96,X› LDA ry› STA Pe+104,X›??PRTS› LDA per› JSR WriteLB›??RTS RTS›??4› CMP #4› BNE ??RTS› LDA Ptyp› BNE ?Tp1› LDA #<Player› STA IR0› LDA #>Player› STA IR0+1› JSR WriteL2› LDY #0› LDX s_dir› LDA SDir,X› STA (gsc),Y› INC gsc› LDA #'#-32› STA (gsc),Y› INC gsc› TXA› ASL A› ASL A› ASL A› ASL A› ADC per› TAX› LDA rx› STA Pe+64,X› LDA ry› STA Pe+72,X› JMP ?FIpper›?Tp1› CMP #1› BNE ?Tp2› LDA #<Monst› STA IR0› LDA #>Monst› STA IR0+1› JSR WriteL2› LDX per› LDA icn› STA Pe+16,X› LDA rx› STA i› STA Pe+32,X› LDA ry› STA Pe+48,X› JSR ClcSc› LDA (Ir0),Y› STA UnPe,X› JMP ?FIpper›?Tp2› CMP #2› BNE ?FIpper› LDA per› ASL A› ASL A› TAX› LDA icn› STA Pe,X› LDA Ttyp› BNE ?T1› LDA #<Trigger› STA IR0› LDA #>Trigger› STA IR0+1› JSR WriteL2› JSR Comb› STA Pe+1,X› JMP ?FIpper›?T1› CMP #1› BNE ?T2› LDA #'1-32› JSR Gover› STA Pe+2,X› JMP ?FIpper›?T2› CMP #2› BNE ?FIpper› LDA #'2-32› JSR Gover› STA Pe+3,X›?FIpper› LDA per› JMP WriteLB›› .LOCAL››FWnd› CMP #6› BCS ?l26› LDX #0› RTS›?l26› CMP #26› BCS ?lse› SEC› SBC #5› TAX› LDA #5› RTS›?lse› SEC› SBC #21› LDX #21› RTS››SelPer› LDA md› CMP #1› BNE ?ELSE3› LDX per› LDA Pe+32,X› STA rx› STA i› LDA Pe+64,X› STA ry› JSR ClcSc› LDA Pe,X› BEQ ?NUN› LDA UnPe,X› STA (IR0),y›?NUN› LDA Pe,X› STA icn› BNE ?NEQ0› LDA per› BEQ ?NEQ0› DEX› LDA #0› STA Pe,X›?NEQ0› LDA ry› JSR FWnd› STA ry› STX yy› LDA rx› JSR FWnd› STA rx› STX xx› RTS›?ELSE3› CMP #3› BNE ?ELSE4› LDA Ptyp› BEQ ?eq0› LDX per› LDA Pe+64,X› STA rx› LDA Pe+80,X› STA ry› RTS›?eq0› LDX per› LDA Pe+96,X› STA rx› LDA Pe+104,X› STA ry›?? RTS›?ELSE4› CMP #4› BNE ??› LDA Ptyp› BNE ?ELSEp1› LDA s_dir› ASL A› ASL A› ASL A› ASL A› ADC per› TAX› LDA Pe+64,X› STA rx› LDA Pe+72,X› STA ry› RTS›?ELSEp1› CMP #1› BNE ?ELSEp2› LDX per› LDA Pe+32,X› STA rx› STA i› LDA Pe+48,X› STA ry› JSR ClcSc› LDA Pe+16,X› BEQ ??sk› LDA UnPe,X› STA (IR0),Y›??sk LDA Pe+16,X› STA icn› RTS›?ELSEp2› CMP #2› BNE ??RTS?› LDA per› ASL A› ASL A› TAX› LDA Pe,X› STA icn› TXA› CLC› ADC Ttyp› TAX› LDA Pe+1,X› JSR SPLT› STA rx› STY ry›??RTS? RTS›› .LOCAL››tps1 .BYTE 3,1,3›tp1x .BYTE 90,122,162›tv1 .BYTE 240,255,240››Drawp1› LDY sk› LDA tps1,Y› STA ps1› LDA tp1x,Y› STA p1x› LDA tv1,Y› LDY #3›??dp1 STA 1664+104,Y› DEY› BPL ??dp1› RTS››EditPe› LDY #0› LDA (pp),y› LDX per› STA UnPe,X› LDA icn› STA (pp),Y› LDA #0› LDY #127›??ack STA 1664,Y› DEY› BPL ??ack› STA sk› LDA #16› STA pc1› JSR Drawp1› LDA icn› BNE ?str› STA Pe+96,X›?str LDA Strig0› BEQ ?str›?OLOOP› LDA xx› STA i› LDA yy› STA j› JSR Display›?KLOOP› INC mlacc› BNE ??FIacc› LDA xx› STA i› LDA yy› STA j› JSR Display› SEC› LDA pc1› SBC #16› BNE ?pc1› LDA #240›?pc1 STA pc1›??FIacc› LDA keyp› CMP #255› BNE ?oK› LDA Stick0› CMP #15› BNE ?oJs› LDA Strig0› BNE ?KLOOP› JMP ?EXIT›?oJs JMP ?Js›?oK› LDA keyp› CMP #192› BCS ?k@255› AND #63› CMP #60› BEQ ?k@255› CMP #39› BNE ?kn@255›?k@255› LDA #255› STA keyp› JMP ?OLOOP›?kn@255› LDA #0› STA 702› STA 694› JSR GetK› CMP #'-› BNE ?ELSE1› LDA #1›?mo JSR ModPe› JMP ?OLOOP›?ELSE1› CMP #'=› BNE ?ELSE2› LDA #255› BNE ?mo›?ELSE2› CMP #'|› BNE ?ELSE3› LDA #246› BNE ?mo›?ELSE3› CMP #'_› BNE ?ELSE4› LDA #10› bne ?mo›?ELSE4› CMP #' › BEQ ?JEXIT› CMP #'› BNE ?ELSE5›?JEXIT JMP ?EXIT›?ELSE5› CMP #'H› BEQ ?gHelp› CMP #'h› BNE ?gast›?gHelp› JSR EHelp› JMP ?OLOOP›?gast› CMP #'*› BNE ?ELSE6› INC sk› LDA sk› CMP #3› BNE ??ne› LDA #0› STA sk›??ne JSR Drawp1› JMP ?OLOOP›?ELSE6› CMP #'+› BNE ?ELSE7› DEC sk› LDA sk› BPL ??ne› LDA #2› STA sk› BNE ??ne›?ELSE7› CMP #'f› BNE ?ELSE8› LDA sk› BNE ?olp› LDX per› LDA Pe,X› JSR Form› STA icn› STA Pe+96,X› LDA #<[L2+11]› STA gsc› LDA #>[L2+11]› STA gsc+1› LDA icn› JSR WriteLB›?olp JMP ?OLOOP›?ELSE8› CMP #'œ› BNE ?olp› JSR HidePe› LDX per› BEQ ?Rpe1›?Rpe LDA Pe-1,X› STA Pe,X› TXA› CLC› ADC #32› TAX› BCC ?Rpe› DEX› BNE ?Rpe›?Rpe1 LDA #0› STA Pe,X› TXA› CLC› ADC #32› TAX› BCC ?Rpe1› JSR ShowPe› JMP ?EXIT›?Js› LDA Stick0› CMP #13› BNE ?p14› LDA Strig0› BNE ?es1› LDA #246› BNE ?qs1›?es1 LDA #255›?qs1 JSR ModPe› JMP ?pn›?p14› CMP #14› BNE ?p7› LDA Strig0› BNE ?es2› LDA #10› BNE ?qs2›?es2 LDA #1›?qs2 JSR ModPe› JMP ?pn›?p7› CMP #7› BNE ?p11› INC sk› LDA sk› CMP #3› BNE ?dr1› LDA #0› STA sk›?dr1 JSR Drawp1› JMP ?pn›?p11› CMP #11› BNE ?pn› DEC sk› BPL ?dr2› LDA #2› STA sk›?dr2 JSR Drawp1›?pn JMP ?OLOOP›?EXIT› LDA #0› STA p1x›?WStrig0› LDA Strig0› BEQ ?WStrig0› JMP SelPer›› .LOCAL››db=Sc+512;Dng mode only!-484 byte buf››m320L .BYTE <0,<320,<640,<960,<1280› .BYTE <1600,<1920,<2240,<2560,<2880› .BYTE <3200,<3520,<3840,<4160,<4480› .BYTE <4800,<5120,<5440,<5760,<6080› .BYTE <6400,<6720›m320H .BYTE >0,>320,>640,>960,>1280› .BYTE >1600,>1920,>2240,>2560,>2880› .BYTE >3200,>3520,>3840,>4160,>4480› .BYTE >4800,>5120,>5440,>5760,>6080› .BYTE >6400,>6720››DInd_L› .BYTE <57344,<up_,<dn_,<ud_› .BYTE <57376,<$80,<58112,<58016,<57760› .BYTE <57648,<57840,<alt_,<er_,<er_› .BYTE <sd_,<wa_›DInd_H› .BYTE >57344,>up_,>dn_,>ud_› .BYTE >57376,>$80,>58112,>58016,>57760› .BYTE >57648,>57840,>alt_,>er_,>er_› .BYTE >sd_,>wa_››APlot› LSR A› LSR A› LSR A› LSR A› TAY› LDA DInd_L,Y› STA ?from+1› LDA DInd_H,Y› STA ?from+2› LDY IR5+1› CLC› LDA IR5› ADC m320L,Y› STA IR5› LDA #>scadr› ADC m320H,Y› STA IR5+1› LDA #<scadr› ADC IR5› STA IR5› BCC ?CiC› INC IR5+1›?CiC› LDX #0› LDY #0›?from LDA $FFFF,X› STA (IR5),Y› CLC› LDA IR5› ADC #40› STA IR5› BCC ?BCC› INC IR5+1›?BCC› INX› CPX #8› BNE ?from› RTS››m22L .BYTE <0,<22,<44,<66,<88,<110,<132› .BYTE <154,<176,<198,<220,<242,<264› .BYTE <286,<308,<330,<352,<374,<396› .BYTE <418,<440,<462›m22H .BYTE >0,>22,>44,>66,>88,>110,>132› .BYTE >154,>176,>198,>220,>242,>264› .BYTE >286,>308,>330,>352,>374,>396› .BYTE >418,>440,>462››dr3 .BYTE $FF,0,1››PPlot› LDA #0› STA IR4;cnt› LDY IR1+1;ay› LDA IR1;ax› CLC› ADC m22L,Y› STA IR0;q› LDA #>db› ADC M22H,Y› STA IR0+1› LDY #0› LDA (IR0),y› STA yy› CMP #2› BNE ??NGOo› JMP ?GOo›??NGOo LDA #2› STA j›??ylp› LDA #2› STA i›??xlp› LDX i› LDY j› CPX #1› BNE ?NJ› CPY #1› BNE ?NJ› JMP ??Exlp›?NJ› CLC› LDA IR1› ADC dr3,X› CMP #22› BCC ??NExlp› JMP ??Exlp›??NExlp STA IR2› LDA IR1+1› ADC dr3,Y› CMP #22› BCS ??Exlp› STA IR2+1› TAY› LDA IR2› CLC› ADC m22L,Y› STA IR0› LDA #>db› ADC m22H,Y› STA IR0+1› LDA yy› BNE ???Fii› LDA IR2› STA IR5› CLC› ADC IR3› AND #7› CLC› ADC IR7› STA IR6› LDA IR7+1› ADC #0› STA IR6+1› LDA IR2+1› STA IR5+1› CLC› ADC IR3+1› AND #7› ASL A› ASL A› ASL A› CLC› ADC IR6› STA IR6› BCC ???c› INC IR6+1›???c› LDY #0› LDA (IR0),Y› BNE ??skp› LDA (IR6),Y› BEQ ??skp› JSR APlot›??skp› LDY #0› LDA (IR6),Y› CMP #240› BNE ???Fii› LDA #2› STA (IR0),Y›???Fii› LDA i› EOR j› AND #1› BEQ ??Exlp› LDY #0› LDA (IR0),Y› BNE ??Exlp› INC IR4›??Exlp DEC i› BMI ??j› JMP ??xlp›??j DEC j› BMI ?GOo› JMP ??ylp›?GOo› CLC› LDY IR1+1› LDA IR1› ADC m22L,Y› STA IR0› LDA #>db› ADC m22H,Y› STA IR0+1› LDA IR4› LDY #0› CMP #2› BCC ?ELSE› LDA #1› BNE ??out›?ELSE› LDA #2›??out› STA (IR0),Y› LDA IR4› RTS››dx .BYTE 0,$FF,1,0›dy .BYTE $FF,0,0,1››DPeer› LDA #0› TAY›?CLdb› STA db,Y› STA db+256,Y› INY› BNE ?CLdb› STA pc0› JSR ClDisplay› LDA #0› STA IR7› LDA xx› LSR A› ROR IR7› LSR A› ROR IR7› CLC› ADC #>Sc› STA IR7+1› LDA #<Sc› CLC› ADC IR7› STA IR7› SEC› LDA rx› SBC #3› STA IR3› SEC› LDA ry› SBC #3› STA IR3+1› LDA #11› STA IR1› STA IR1+1›LDPeer› JSR PPlot› BEQ ??els› LDX #0›??xl› CLC› LDA IR1› ADC dx,X› CMP #22› BCS ?INX› STA IR2› LDA IR1+1› ADC dy,X› CMP #22› BCS ?INX› STA IR2+1› TAY› LDA IR2› CLC› ADC m22L,Y› STA IR6› LDA #>db› ADC m22H,Y› STA IR6+1› LDY #0› LDA (IR6),Y› BNE ?INX› LDA IR2› STA IR1› LDA IR2+1› STA IR1+1› JMP LDPeer›?INX INX› CPX #4› BNE ??xl›??els› LDA #<db› STA IR6› LDA #>db› STA IR6+1› LDX #0›?ol LDY #0›?il LDA (IR6),Y› CMP #1› BNE ??notend› STY IR1› STX IR1+1› JMP LDPeer›??notend› INY› CPY #22› BNE ?il› CLC› LDA IR6› ADC #22› STA IR6› BCC ?dINX› INC IR6+1›?dINX INX› CPX #22› BNE ?ol›??OD› CLC› LDA #11› STA IR5› STA IR5+1› LDA #96› JSR APlot›??kp LDA keyp› CMP #255› BNE ??kpdn› LDA Strig0› BNE ??kp›??kpdn JSR ClDisplay›??s00 LDA Strig0› BEQ ??s00› LDA #255› STA keyp› LDA #16› STA pc0› RTS›› .LOCAL››