Home » Archimedes archive » Acorn Computing » 1994 07 subscription disc.adf » 9407s » BBC/C/MCODE2
BBC/C/MCODE2
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 » Archimedes archive » Acorn Computing » 1994 07 subscription disc.adf » 9407s |
Filename: | BBC/C/MCODE2 |
Read OK: | ✔ |
File size: | 29AD bytes |
Load address: | 0000 |
Exec address: | 0000 |
Duplicates
There are 2 duplicate copies of this file in the archive:
- Archimedes archive » Acorn Computing » 1994 07 subscription disc.adf » 9407s » BBC/C/MCODE2
- AEW website » eug » eug_5_25_discs_Eug-68_D-EUG68.dsd » C.MCODE2
- AEW website » mu » mu_5_25_discs_Micro_User_12_05_D-MU12_05.ssd » C.MCODE2
File contents
10REM Omniscient Machine Code 20REM Generator. 30REM Listing 1 40REM by Peter Brown 1991 50: 60IF PAGE<>&4400 THEN PAGE=&4400:CHAIN"C.MCODE2" 70loc=&70 80char=&74 90temp=&7C 100stop=&4943 110room=&4940 120byte=&493E 130rnxy=&4941 140rndr=&4945 150youloc=&7A 160youxy=&4946 170youdr=&4947 180check=&4332 190tempxy=&494A 200nlrptr=&494B 210screen=&437E 220sprite=&440B 230nlrupd=&46D6 240nudupd=&4707 250nrnupd=&489E 260movern=&4816 270energy=&494C 280callnlr=&4471 290callnud=&45F5 300movenlr=&44C7 310movenud=&464B 320nastyrn=&4757 330collide=&48E2 340roomloc=&78 350doorxy=&495F 360doorloc=&4965 370doorrm=&4977 380doorptr=&495E 390doorcol=&4971 400: 410FOR pass%=0 TO 2 STEP2 420P%=&3CFA 430[ 440OPT pass% 450.play1 460JSR keys 470JSR callnlr 480JSR callnud 490JSR nastyrn 500JSR move 510JSR movenlr 520JSR movenud 530JSR movern 540JSR collide 550LDA #19 560JSR &FFF4 570RTS 580.play2 590JSR move 600JSR movenlr 610JSR movenud 620JSR movern 630JSR update 640JSR nlrupd 650JSR nudupd 660JSR nrnupd 670JSR collide 680JSR dirpoint 690JSR collide 700LDA #19 710JSR &FFF4 720RTS 730.pyouml1 740LDA #0 750JMP pyou 760.pyouml2 770LDA #&20 780JMP pyou 790.pyoumr1 800LDA #&40 810JMP pyou 820.pyoumr2 830LDA #&60 840JMP pyou 850.pyoumu1 860LDA #&80 870JMP pyou 880.pyoumu2 890LDA #&A0 900JMP pyou 910.pyoumd1 920LDA #&C0 930JMP pyou 940.pyoumd2 950LDA #&E0 960JMP pyou 970.pyou 980STA char 990STA youch 1000LDA #&50 1010STA char+1 1020LDA youloc 1030STA loc 1040LDA youloc+1 1050STA loc+1 1060JSR sprite 1070RTS 1080.scrleft 1090JSR delscr 1100CLC 1110LDA youloc 1120ADC #&F0 1130STA youloc 1140LDA youloc+1 1150ADC #0 1160STA youloc+1 1170LDA youxy 1180AND #&F 1190ADC #&F0 1200STA youxy 1210JSR pyouml1 1220DEC room 1230SEC 1240LDA nlrptr 1250SBC #6 1260STA nlrptr 1270SEC 1280LDA roomloc 1290SBC #&20 1300STA roomloc 1310LDA roomloc+1 1320SBC #0 1330STA roomloc+1 1340JSR screen 1350JSR getdoors 1360RTS 1370.scrright 1380JSR delscr 1390SEC 1400LDA youloc 1410SBC #&F0 1420STA youloc 1430LDA youloc+1 1440SBC #0 1450STA youloc+1 1460LDA youxy 1470AND #&F 1480STA youxy 1490JSR pyoumr1 1500INC room 1510CLC 1520LDA nlrptr 1530ADC #6 1540STA nlrptr 1550CLC 1560LDA #&20 1570ADC roomloc 1580STA roomloc 1590LDA #0 1600ADC roomloc+1 1610STA roomloc+1 1620JSR screen 1630JSR getdoors 1640RTS 1650.yleft 1660LDA youxy 1670AND #&F0 1680BEQ scrleft 1690SEC 1700LDA youloc 1710SBC #&10 1720STA temp 1730LDA youloc+1 1740SBC #0 1750STA temp+1 1760JSR check 1770LDY #1 1780LDA byte 1790BNE blocked 1800LDA #1 1810STA youdr 1820RTS 1830.yright 1840LDA youxy 1850AND #&F0 1860CMP #&F0 1870BEQ scrright 1880CLC 1890LDA youloc 1900ADC #&10 1910STA temp 1920LDA youloc+1 1930ADC #0 1940STA temp+1 1950JSR check 1960LDY #2 1970LDA byte 1980BNE blocked 1990LDA #2 2000STA youdr 2010RTS 2020.nm 2030LDA #0 2040STA youdr 2050RTS 2060.keys 2070LDX #0 2080LDA #&7A 2090JSR &FFF4 2100CPX #66 2110BEQ yleft 2120CPX #82 2130BEQ yright 2140CPX #72 2150BEQ yup 2160CPX #104 2170BEQ ydown 2180LDA #0 2190STA youdr 2200RTS 2210.blocked 2220LDA byte 2230CMP #&FF 2240BEQ nm 2250LDX doorptr 2260LDA obroom,X 2270CMP #0 2280BNE nm 2290STY youdr 2300RTS 2310.yup 2320LDA youxy 2330AND #&F 2340BEQ scrup 2350SEC 2360LDA youloc 2370SBC #&80 2380STA temp 2390LDA youloc+1 2400SBC #2 2410STA temp+1 2420JSR check 2430LDY #3 2440LDA byte 2450BNE blocked 2460LDA #3 2470STA youdr 2480RTS 2490.nu 2500LDA #0 2510STA youdr 2520RTS 2530.ydown 2540LDA youxy 2550AND #&F 2560CMP #&F 2570BEQ scrdown 2580CLC 2590LDA youloc 2600ADC #&80 2610STA temp 2620LDA youloc+1 2630ADC #2 2640STA temp+1 2650JSR check 2660LDY #4 2670LDA byte 2680BNE blocked 2690LDA #4 2700STA youdr 2710RTS 2720.scrup 2730JSR delscr 2740CLC 2750LDA youloc 2760ADC #&80 2770STA youloc 2780LDA youloc+1 2790ADC #&25 2800STA youloc+1 2810LDA youxy 2820AND #&F0 2830ADC #&F 2840STA youxy 2850JSR pyoumu1 2860SEC 2870LDA nlrptr 2880SBC #48 2890STA nlrptr 2900SEC 2910LDA room 2920SBC #8 2930STA room 2940DEC roomloc+1 2950JSR screen 2960JSR getdoors 2970RTS 2980.scrdown 2990JSR delscr 3000SEC 3010LDA youloc 3020SBC #&80 3030STA youloc 3040LDA youloc+1 3050SBC #&25 3060STA youloc+1 3070LDA youxy 3080AND #&F0 3090STA youxy 3100JSR pyoumd1 3110CLC 3120LDA nlrptr 3130ADC #48 3140STA nlrptr 3150CLC 3160LDA room 3170ADC #8 3180STA room 3190INC roomloc+1 3200JSR screen 3210JSR getdoors 3220RTS 3230.move 3240LDA youdr 3250BNE ymv 3260RTS 3270.ymv 3280LDA youdr 3290CMP #1 3300BEQ dleft 3310CMP #2 3320BEQ dright 3330CMP #3 3340BEQ dup 3350CMP #4 3360BEQ ddown 3370RTS 3380.dleft 3390JSRdeletem 3400SEC 3410LDA youloc 3420SBC #8 3430STA youloc 3440LDA youloc+1 3450SBC #0 3460STA youloc+1 3470JSR mush 3480LDA state 3490AND #1 3500BEQ l1 3510JSR pyouml2 3520RTS 3530.l1 3540JSR pyouml1 3550RTS 3560.dright 3570JSR deletem 3580CLC 3590LDA youloc 3600ADC #8 3610STA youloc 3620LDA youloc+1 3630ADC #0 3640STA youloc+1 3650JSR mush 3660LDA state 3670AND #1 3680BEQ r1 3690JSR pyoumr2 3700RTS 3710.r1 3720JSR pyoumr1 3730RTS 3740.dup 3750JSR deletem 3760SEC 3770LDA youloc 3780SBC #&40 3790STA youloc 3800LDA youloc+1 3810SBC #1 3820STA youloc+1 3830JSR mush 3840LDA state 3850AND #1 3860BEQ u1 3870JSR pyoumu1 3880JMP du 3890.u1 3900JSR pyoumu2 3910.du 3920INC state 3930RTS 3940.ddown 3950JSR deletem 3960CLC 3970LDA youloc 3980ADC #&40 3990STA youloc 4000LDA youloc+1 4010ADC #1 4020STA youloc+1 4030JSR mush 4040LDA state 4050AND #1 4060BEQ d1 4070JSR pyoumd1 4080JMP dd 4090.d1 4100JSR pyoumd2 4110.dd 4120INC state 4130RTS 4140.update 4150LDA youdr 4160BNE dud 4170RTS 4180.dud 4190INC state 4200LDA youdr 4210CMP #1 4220BNE ndr 4230SEC 4240LDA youxy 4250SBC #&10 4260STA youxy 4270RTS 4280.ndr 4290LDA youdr 4300CMP #2 4310BNE ndr1 4320CLC 4330LDA youxy 4340ADC #&10 4350STA youxy 4360RTS 4370.ndr1 4380LDA youdr 4390CMP #3 4400BNE ndr2 4410DEC youxy 4420RTS 4430.ndr2 4440INC youxy 4450RTS 4460.deletem 4470LDA youloc 4480STA loc 4490LDA youloc+1 4500STA loc+1 4510LDA youch 4520STA char 4530LDA #&50 4540STA char+1 4550JMP sprite 4560.delscr 4570LDA #12 4580JMP &FFEE 4590.getdoors 4600LDX #5 4610.loopR 4620LDA room 4630CMP doorrm,X 4640BEQ exitloop 4650DEX 4660CPX #&FF 4670BNE loopR 4680.exitloop 4690STX doorptr 4700CPX #&FF 4710BNE present 4720JMP getobjects 4730.present 4740LDX doorptr 4750LDA doorcol,X 4760STA char 4770LDA #&4E 4780STA char+1 4790TXA 4800ASL A 4810TAX 4820LDA doorloc,X 4830STA loc 4840LDA doorloc+1,X 4850STA loc+1 4860JSR sprite 4870.getobjects 4880LDX noofob 4890.loopP 4900LDA room 4910CMP obroom,X 4920BEQ outloop 4930DEX 4940CPX #&FF 4950BNE loopP 4960.outloop 4970STX obptr 4980CPX #&FF 4990BNE here 5000JMP getincidentals 5010.here 5020LDA obptr 5030ASL A 5040TAX 5050LDA obloc,X 5060STA loc 5070LDA obloc+1,X 5080STA loc+1 5090LDA obcol,X 5100STA char 5110LDA obcol+1,X 5120STA char+1 5130JSR sprite 5140LDX obptr 5150DEX 5160CPX #&FF 5170BNE loopP 5180RTS 5190.getincidentals 5200LDX noofin 5210.loopE 5220LDA room 5230CMP inroom,X 5240BEQ inloopfin 5250DEX 5260CPX #&FF 5270BNE loopE 5280.inloopfin 5290STX inptr 5300CPX #&FF 5310BNE ici 5320RTS 5330.ici 5340LDA inptr 5350ASL A 5360TAX 5370LDA inloc,X 5380STA loc 5390LDA inloc+1,X 5400STA loc+1 5410LDA incol,X 5420STA char 5430LDA incol+1,X 5440STA char+1 5450JSR sprite 5460LDX inptr 5470DEX 5480CPX #&FF 5490BNE loopE 5500RTS 5510.per4 5520LDA youxy 5530CMP #&A1 5540BNE per8 5550LDA #2 5560STA youdr 5570JSR move 5580JSR move 5590JSR update 5600.per8 5610LDA rnxy 5620CMP #&A1 5630BNE noptr 5640LDA #2 5650STA rndr 5660JSR movern 5670JSR movern 5680INC stop 5690JSR nrnupd 5700RTS 5710.per3 5720LDA youxy 5730CMP #&68 5740BNE per7 5750LDA #1 5760STA youdr 5770JSR move 5780JSR move 5790JSR update 5800.per7 5810LDA rnxy 5820CMP #&68 5830BNE noptr 5840LDA #1 5850STA rndr 5860JSR movern 5870JSR movern 5880INC stop 5890JSR nrnupd 5900RTS 5910.dirpoint 5920LDY #24 5930LDA obroom,Y 5940BNE nojew 5950.noptr 5960RTS 5970.nojew 5980LDA room 5990CMP #20 6000BEQ per1 6010CMP #21 6020BEQ per2 6030CMP #29 6040BEQ per3 6050CMP #15 6060BEQ per4 6070RTS 6080.per1 6090LDA youxy 6100CMP #&89 6110BNE per5 6120LDA #2 6130STA youdr 6140JSR move 6150JSR move 6160JSR update 6170.per5 6180LDA rnxy 6190CMP #&89 6200BNE noptr 6210LDA #2 6220STA rndr 6230JSR movern 6240JSR movern 6250INC stop 6260JSR nrnupd 6270RTS 6280.per2 6290LDA youxy 6300CMP #&69 6310BNE per6 6320LDA #4 6330STA youdr 6340JSR move 6350JSR move 6360JSR update 6370.per6 6380LDA rnxy 6390CMP #&69 6400BNE noptr 6410LDA #4 6420STA rndr 6430JSR movern 6440JSR movern 6450INC stop 6460JSR nrnupd 6470RTS 6480.mush 6490LDA youloc 6500PHA 6510LDA youloc+1 6520PHA 6530CLC 6540LDA youloc 6550ADC #&40 6560STA youloc 6570LDA youloc+1 6580ADC #1 6590STA youloc+1 6600LDY #6 6610LDA (youloc),Y 6620CMP #&62 6630BNE nom 6640LDA #&FF 6650STA mushroom 6660JMP en 6670.nom 6680LDA #0 6690STA mushroom 6700.en 6710PLA 6720STA youloc+1 6730PLA 6740STA youloc 6750RTS 6760.mask NOP 6770.youch NOP 6780.state NOP 6790.obptr NOP 6800.inptr NOP 6810.mushroom NOP 6820.noofob 6830OPT FNequb(&1C) 6840.obxy 6850OPT FNequd(&6C963C85) 6860OPT FNequd(&AE18AE89) 6870OPT FNequd(&C2C36521) 6880OPT FNequd(&55796D71) 6890OPT FNequd(&7A6C8928) 6900OPT FNequd(&BBC3BE2E) 6910OPT FNequd(&00147957) 6920OPT FNequb(&DC) 6930.obloc 6940OPT FNequd(&76306500) 6950OPT FNequd(&76606790) 6960OPT FNequd(&7BA06F00) 6970OPT FNequd(&7BA06C10) 6980OPT FNequd(&64E05AA0) 6990OPT FNequd(&5DC06040) 7000OPT FNequd(&78E05AF0) 7010OPT FNequd(&64D06EF0) 7020OPT FNequd(&6F006C20) 7030OPT FNequd(&71707660) 7040OPT FNequd(&7BB07B20) 7050OPT FNequd(&74306040) 7060OPT FNequd(&6EF069D0) 7070OPT FNequd(&7C106210) 7080OPT FNequw(&76D0) 7090.obcol 7100OPT FNequd(&4D204D00) 7110OPT FNequd(&4D604D40) 7120OPT FNequd(&4DA04D80) 7130OPT FNequd(&4C204C00) 7140OPT FNequd(&4C604C40) 7150OPT FNequd(&4CA04C80) 7160OPT FNequd(&4CE04CC0) 7170OPT FNequd(&4A804EE0) 7180OPT FNequd(&4AA04BA0) 7190OPT FNequd(&4A804AA0) 7200OPT FNequd(&4B404B20) 7210OPT FNequd(&4AE04B80) 7220OPT FNequd(&4BE049A0) 7230OPT FNequd(&4B6049C0) 7240OPT FNequw(&4DC0) 7250.obroom 7260OPT FNequd(&0FFF1504) 7270OPT FNequd(&101C060A) 7280OPT FNequd(&0A020C1B) 7290OPT FNequd(&1A0E190F) 7300OPT FNequd(&071C0F20) 7310OPT FNequd(&01181D05) 7320OPT FNequd(&FF1C14FF) 7330OPT FNequb(&FF) 7340.noofin 7350OPT FNequb(&1C) 7360.inloc 7370OPT FNequd(&6EE06F00) 7380OPT FNequd(&7B606C60) 7390OPT FNequd(&71807180) 7400OPT FNequd(&76D06790) 7410OPT FNequd(&78E076E0) 7420OPT FNequd(&7B407B30) 7430OPT FNequd(&7B607B50) 7440OPT FNequd(&6C507B70) 7450OPT FNequd(&6C706C60) 7460OPT FNequd(&6C906C80) 7470OPT FNequd(&7B4078B0) 7480OPT FNequd(&7B607B50) 7490OPT FNequd(&5B107910) 7500OPT FNequd(&6C205B20) 7510OPT FNequw(&69D0) 7520.incol 7530OPT FNequd(&4A404A20) 7540OPT FNequd(&4B004A00) 7550OPT FNequd(&49E04A60) 7560OPT FNequd(&51C04BC0) 7570OPT FNequd(&4DE051E0) 7580OPT FNequd(&4EC04EC0) 7590OPT FNequd(&4EC04EC0) 7600OPT FNequd(&4EC04EC0) 7610OPT FNequd(&4EC04EC0) 7620OPT FNequd(&4EC04EC0) 7630OPT FNequd(&4EC04EC0) 7640OPT FNequd(&4EC04EC0) 7650OPT FNequd(&49804EC0) 7660OPT FNequd(&4AC04A20) 7670OPT FNequw(&4FE0) 7680.inroom 7690OPT FNequd(&1A1D1514) 7700OPT FNequd(&0720FF1C) 7710OPT FNequd(&5050707) 7720OPT FNequd(&20050505) 7730OPT FNequd(&20202020) 7740OPT FNequd(&1C1C1C1C) 7750OPT FNequd(&FF0F0F1C) 7760OPT FNequb(&11) 7770] 7780PRINT ~P% 7790NEXT 7800PROCoscli("DIR M") 7810PROCoscli("SAVE CODE2 3CFA 4332") 7820PROCoscli("DIR $") 7830END 7840DEFFNequb(S%) 7850?P%=S%:P%=P%+1 7860=pass% 7870DEFFNequw(S%) 7880!P%=S%:P%=P%+2 7890=pass% 7900DEFFNequd(S%) 7910!P%=S%:P%=P%+4 7920=pass% 7930DEFPROCoscli($&700) 7940LOCALX%,Y%:Y%=7:CALL&FFF7 7950ENDPROC
� Omniscient Machine Code � Generator. � Listing 1 (� by Peter Brown 1991 2: <$� �<>&4400 � �=&4400:�"C.MCODE2" Floc=&70 Pchar=&74 Ztemp=&7C dstop=&4943 nroom=&4940 xbyte=&493E �rnxy=&4941 �rndr=&4945 �youloc=&7A �youxy=&4946 �youdr=&4947 �check=&4332 �tempxy=&494A �nlrptr=&494B �screen=&437E �sprite=&440B �nlrupd=&46D6 �nudupd=&4707 �nrnupd=&489E movern=&4816 energy=&494C callnlr=&4471 "callnud=&45F5 ,movenlr=&44C7 6movenud=&464B @nastyrn=&4757 Jcollide=&48E2 Troomloc=&78 ^doorxy=&495F hdoorloc=&4965 rdoorrm=&4977 |doorptr=&495E �doorcol=&4971 �: �� pass%=0 � 2 �2 �P%=&3CFA �[ � OPT pass% � .play1 �JSR keys �JSR callnlr �JSR callnud �JSR nastyrn �JSR move �JSR movenlr JSR movenud JSR movern JSR collide &LDA #19 0 JSR &FFF4 :RTS D .play2 NJSR move XJSR movenlr bJSR movenud lJSR movern vJSR update �JSR nlrupd �JSR nudupd �JSR nrnupd �JSR collide �JSR dirpoint �JSR collide �LDA #19 � JSR &FFF4 �RTS �.pyouml1 � LDA #0 �JMP pyou �.pyouml2 LDA #&20 JMP pyou .pyoumr1 LDA #&40 *JMP pyou 4.pyoumr2 >LDA #&60 HJMP pyou R.pyoumu1 \LDA #&80 fJMP pyou p.pyoumu2 zLDA #&A0 �JMP pyou �.pyoumd1 �LDA #&C0 �JMP pyou �.pyoumd2 �LDA #&E0 �JMP pyou � .pyou �STA char � STA youch �LDA #&50 �STA char+1 �LDA youloc STA loc LDA youloc+1 STA loc+1 $JSR sprite .RTS 8.scrleft BJSR delscr LCLC VLDA youloc `ADC #&F0 jSTA youloc tLDA youloc+1 ~ ADC #0 �STA youloc+1 � LDA youxy � � #&F �ADC #&F0 � STA youxy �JSR pyouml1 �DEC room �SEC �LDA nlrptr � SBC #6 �STA nlrptr �SEC LDA roomloc SBC #&20 STA roomloc LDA roomloc+1 ( SBC #0 2STA roomloc+1 <JSR screen FJSR getdoors PRTS Z .scrright dJSR delscr nSEC xLDA youloc �SBC #&F0 �STA youloc �LDA youloc+1 � SBC #0 �STA youloc+1 � LDA youxy � � #&F � STA youxy �JSR pyoumr1 �INC room �CLC �LDA nlrptr � ADC #6 STA nlrptr CLC LDA #&20 "ADC roomloc ,STA roomloc 6 LDA #0 @ADC roomloc+1 JSTA roomloc+1 TJSR screen ^JSR getdoors hRTS r .yleft | LDA youxy � � #&F0 �BEQ scrleft �SEC �LDA youloc �SBC #&10 �STA temp �LDA youloc+1 � SBC #0 �STA temp+1 � JSR check � LDY #1 �LDA byte �BNE blocked LDA #1 STA youdr RTS &.yright 0 LDA youxy : � #&F0 DCMP #&F0 NBEQ scrright XCLC bLDA youloc lADC #&10 vSTA temp �LDA youloc+1 � ADC #0 �STA temp+1 � JSR check � LDY #2 �LDA byte �BNE blocked � LDA #2 � STA youdr �RTS �.nm � LDA #0 � STA youdr RTS .keys LDX #0 LDA #&7A * JSR &FFF4 4CPX #66 > BEQ yleft HCPX #82 RBEQ yright \CPX #72 fBEQ yup pCPX #104 z BEQ ydown � LDA #0 � STA youdr �RTS �.blocked �LDA byte �CMP #&FF � BEQ nm �LDX doorptr �LDA obroom,X � CMP #0 � BNE nm � STY youdr �RTS .yup LDA youxy � #&F $ BEQ scrup .SEC 8LDA youloc BSBC #&80 LSTA temp VLDA youloc+1 ` SBC #2 jSTA temp+1 t JSR check ~ LDY #3 �LDA byte �BNE blocked � LDA #3 � STA youdr �RTS �.nu � LDA #0 � STA youdr �RTS � .ydown � LDA youxy � � #&F CMP #&F BEQ scrdown CLC LDA youloc (ADC #&80 2STA temp <LDA youloc+1 F ADC #2 PSTA temp+1 Z JSR check d LDY #4 nLDA byte xBNE blocked � LDA #4 � STA youdr �RTS � .scrup �JSR delscr �CLC �LDA youloc �ADC #&80 �STA youloc �LDA youloc+1 �ADC #&25 �STA youloc+1 � LDA youxy � #&F0 ADC #&F STA youxy "JSR pyoumu1 ,SEC 6LDA nlrptr @SBC #48 JSTA nlrptr TSEC ^LDA room h SBC #8 rSTA room |DEC roomloc+1 �JSR screen �JSR getdoors �RTS �.scrdown �JSR delscr �SEC �LDA youloc �SBC #&80 �STA youloc �LDA youloc+1 �SBC #&25 �STA youloc+1 � LDA youxy � #&F0 STA youxy JSR pyoumd1 &CLC 0LDA nlrptr :ADC #48 DSTA nlrptr NCLC XLDA room b ADC #8 lSTA room vINC roomloc+1 �JSR screen �JSR getdoors �RTS � .move � LDA youdr �BNE ymv �RTS �.ymv � LDA youdr � CMP #1 � BEQ dleft � CMP #2 �BEQ dright CMP #3 BEQ dup CMP #4 BEQ ddown *RTS 4 .dleft >JSRdeletem HSEC RLDA youloc \ SBC #8 fSTA youloc pLDA youloc+1 z SBC #0 �STA youloc+1 �JSR mush � LDA state �� #1 � BEQ l1 �JSR pyouml2 �RTS �.l1 �JSR pyouml1 �RTS �.dright �JSR deletem �CLC LDA youloc ADC #8 STA youloc $LDA youloc+1 . ADC #0 8STA youloc+1 BJSR mush L LDA state V� #1 ` BEQ r1 jJSR pyoumr2 tRTS ~.r1 �JSR pyoumr1 �RTS �.dup �JSR deletem �SEC �LDA youloc �SBC #&40 �STA youloc �LDA youloc+1 � SBC #1 �STA youloc+1 �JSR mush LDA state � #1 BEQ u1 JSR pyoumu1 ( JMP du 2.u1 <JSR pyoumu2 F.du P INC state ZRTS d .ddown nJSR deletem xCLC �LDA youloc �ADC #&40 �STA youloc �LDA youloc+1 � ADC #1 �STA youloc+1 �JSR mush � LDA state �� #1 � BEQ d1 �JSR pyoumd1 � JMP dd �.d1 JSR pyoumd2 .dd INC state "RTS ,.update 6 LDA youdr @BNE dud JRTS T.dud ^ INC state h LDA youdr r CMP #1 |BNE ndr �SEC � LDA youxy �SBC #&10 � STA youxy �RTS �.ndr � LDA youdr � CMP #2 �BNE ndr1 �CLC � LDA youxy �ADC #&10 � STA youxy RTS .ndr1 LDA youdr & CMP #3 0BNE ndr2 : DEC youxy DRTS N .ndr2 X INC youxy bRTS l.deletem vLDA youloc �STA loc �LDA youloc+1 � STA loc+1 � LDA youch �STA char �LDA #&50 �STA char+1 �JMP sprite �.delscr �LDA #12 � JMP &FFEE � .getdoors � LDX #5 .loopR LDA room CMP doorrm,X BEQ exitloop *DEX 4CPX #&FF > BNE loopR H .exitloop RSTX doorptr \CPX #&FF fBNE present pJMP getobjects z.present �LDX doorptr �LDA doorcol,X �STA char �LDA #&4E �STA char+1 �TXA � ASL A �TAX �LDA doorloc,X �STA loc �LDA doorloc+1,X � STA loc+1 �JSR sprite .getobjects LDX noofob .loopP $LDA room .CMP obroom,X 8BEQ outloop BDEX LCPX #&FF V BNE loopP `.outloop j STX obptr tCPX #&FF ~BNE here �JMP getincidentals � .here � LDA obptr � ASL A �TAX �LDA obloc,X �STA loc �LDA obloc+1,X � STA loc+1 �LDA obcol,X �STA char �LDA obcol+1,X STA char+1 JSR sprite LDX obptr DEX (CPX #&FF 2 BNE loopP <RTS F.getincidentals PLDX noofin Z .loopE dLDA room nCMP inroom,X xBEQ inloopfin �DEX �CPX #&FF � BNE loopE �.inloopfin � STX inptr �CPX #&FF �BNE ici �RTS �.ici � LDA inptr � ASL A �TAX �LDA inloc,X STA loc LDA inloc+1,X STA loc+1 "LDA incol,X ,STA char 6LDA incol+1,X @STA char+1 JJSR sprite T LDX inptr ^DEX hCPX #&FF r BNE loopE |RTS � .per4 � LDA youxy �CMP #&A1 �BNE per8 � LDA #2 � STA youdr �JSR move �JSR move �JSR update � .per8 �LDA rnxy �CMP #&A1 � BNE noptr LDA #2 STA rndr JSR movern &JSR movern 0INC stop :JSR nrnupd DRTS N .per3 X LDA youxy bCMP #&68 lBNE per7 v LDA #1 � STA youdr �JSR move �JSR move �JSR update � .per7 �LDA rnxy �CMP #&68 � BNE noptr � LDA #1 �STA rndr �JSR movern �JSR movern �INC stop JSR nrnupd RTS .dirpoint LDY #24 *LDA obroom,Y 4 BNE nojew > .noptr HRTS R .nojew \LDA room fCMP #20 pBEQ per1 zCMP #21 �BEQ per2 �CMP #29 �BEQ per3 �CMP #15 �BEQ per4 �RTS � .per1 � LDA youxy �CMP #&89 �BNE per5 � LDA #2 � STA youdr �JSR move JSR move JSR update .per5 $LDA rnxy .CMP #&89 8 BNE noptr B LDA #2 LSTA rndr VJSR movern `JSR movern jINC stop tJSR nrnupd ~RTS � .per2 � LDA youxy �CMP #&69 �BNE per6 � LDA #4 � STA youdr �JSR move �JSR move �JSR update � .per6 �LDA rnxy �CMP #&69 BNE noptr LDA #4 STA rndr JSR movern (JSR movern 2INC stop <JSR nrnupd FRTS P .mush ZLDA youloc dPHA nLDA youloc+1 xPHA �CLC �LDA youloc �ADC #&40 �STA youloc �LDA youloc+1 � ADC #1 �STA youloc+1 � LDY #6 �LDA (youloc),Y �CMP #&62 �BNE nom �LDA #&FF �STA mushroom JMP en .nom LDA #0 "STA mushroom ,.en 6PLA @STA youloc+1 JPLA TSTA youloc ^RTS h .mask NOP r.youch NOP |.state NOP �.obptr NOP �.inptr NOP �.mushroom NOP �.noofob �OPT �equb(&1C) � .obxy �OPT �equd(&6C963C85) �OPT �equd(&AE18AE89) �OPT �equd(&C2C36521) �OPT �equd(&55796D71) �OPT �equd(&7A6C8928) �OPT �equd(&BBC3BE2E) �OPT �equd(&00147957) OPT �equb(&DC) .obloc OPT �equd(&76306500) &OPT �equd(&76606790) 0OPT �equd(&7BA06F00) :OPT �equd(&7BA06C10) DOPT �equd(&64E05AA0) NOPT �equd(&5DC06040) XOPT �equd(&78E05AF0) bOPT �equd(&64D06EF0) lOPT �equd(&6F006C20) vOPT �equd(&71707660) �OPT �equd(&7BB07B20) �OPT �equd(&74306040) �OPT �equd(&6EF069D0) �OPT �equd(&7C106210) �OPT �equw(&76D0) � .obcol �OPT �equd(&4D204D00) �OPT �equd(&4D604D40) �OPT �equd(&4DA04D80) �OPT �equd(&4C204C00) �OPT �equd(&4C604C40) �OPT �equd(&4CA04C80) �OPT �equd(&4CE04CC0) OPT �equd(&4A804EE0) OPT �equd(&4AA04BA0) OPT �equd(&4A804AA0) OPT �equd(&4B404B20) *OPT �equd(&4AE04B80) 4OPT �equd(&4BE049A0) >OPT �equd(&4B6049C0) HOPT �equw(&4DC0) R.obroom \OPT �equd(&0FFF1504) fOPT �equd(&101C060A) pOPT �equd(&0A020C1B) zOPT �equd(&1A0E190F) �OPT �equd(&071C0F20) �OPT �equd(&01181D05) �OPT �equd(&FF1C14FF) �OPT �equb(&FF) �.noofin �OPT �equb(&1C) � .inloc �OPT �equd(&6EE06F00) �OPT �equd(&7B606C60) �OPT �equd(&71807180) �OPT �equd(&76D06790) �OPT �equd(&78E076E0) �OPT �equd(&7B407B30) OPT �equd(&7B607B50) OPT �equd(&6C507B70) OPT �equd(&6C706C60) $OPT �equd(&6C906C80) .OPT �equd(&7B4078B0) 8OPT �equd(&7B607B50) BOPT �equd(&5B107910) LOPT �equd(&6C205B20) VOPT �equw(&69D0) ` .incol jOPT �equd(&4A404A20) tOPT �equd(&4B004A00) ~OPT �equd(&49E04A60) �OPT �equd(&51C04BC0) �OPT �equd(&4DE051E0) �OPT �equd(&4EC04EC0) �OPT �equd(&4EC04EC0) �OPT �equd(&4EC04EC0) �OPT �equd(&4EC04EC0) �OPT �equd(&4EC04EC0) �OPT �equd(&4EC04EC0) �OPT �equd(&4EC04EC0) �OPT �equd(&49804EC0) �OPT �equd(&4AC04A20) �OPT �equw(&4FE0) .inroom OPT �equd(&1A1D1514) OPT �equd(&0720FF1C) OPT �equd(&5050707) (OPT �equd(&20050505) 2OPT �equd(&20202020) <OPT �equd(&1C1C1C1C) FOPT �equd(&FF0F0F1C) POPT �equb(&11) Z] d � ~P% n� x�oscli("DIR M") �"�oscli("SAVE CODE2 3CFA 4332") ��oscli("DIR $") �� �ݤequb(S%) �?P%=S%:P%=P%+1 � =pass% �ݤequw(S%) �!P%=S%:P%=P%+2 � =pass% �ݤequd(S%) �!P%=S%:P%=P%+4 � =pass% ���oscli($&700) �X%,Y%:Y%=7:�&FFF7 � �
00000000 0d 00 0a 1d f4 20 4f 6d 6e 69 73 63 69 65 6e 74 |..... Omniscient| 00000010 20 4d 61 63 68 69 6e 65 20 43 6f 64 65 0d 00 14 | Machine Code...| 00000020 10 f4 20 47 65 6e 65 72 61 74 6f 72 2e 0d 00 1e |.. Generator....| 00000030 0f f4 20 4c 69 73 74 69 6e 67 20 31 0d 00 28 19 |.. Listing 1..(.| 00000040 f4 20 62 79 20 50 65 74 65 72 20 42 72 6f 77 6e |. by Peter Brown| 00000050 20 31 39 39 31 0d 00 32 05 3a 0d 00 3c 24 e7 20 | 1991..2.:..<$. | 00000060 90 3c 3e 26 34 34 30 30 20 8c 20 d0 3d 26 34 34 |.<>&4400 . .=&44| 00000070 30 30 3a d7 22 43 2e 4d 43 4f 44 45 32 22 0d 00 |00:."C.MCODE2"..| 00000080 46 0b 6c 6f 63 3d 26 37 30 0d 00 50 0c 63 68 61 |F.loc=&70..P.cha| 00000090 72 3d 26 37 34 0d 00 5a 0c 74 65 6d 70 3d 26 37 |r=&74..Z.temp=&7| 000000a0 43 0d 00 64 0e 73 74 6f 70 3d 26 34 39 34 33 0d |C..d.stop=&4943.| 000000b0 00 6e 0e 72 6f 6f 6d 3d 26 34 39 34 30 0d 00 78 |.n.room=&4940..x| 000000c0 0e 62 79 74 65 3d 26 34 39 33 45 0d 00 82 0e 72 |.byte=&493E....r| 000000d0 6e 78 79 3d 26 34 39 34 31 0d 00 8c 0e 72 6e 64 |nxy=&4941....rnd| 000000e0 72 3d 26 34 39 34 35 0d 00 96 0e 79 6f 75 6c 6f |r=&4945....youlo| 000000f0 63 3d 26 37 41 0d 00 a0 0f 79 6f 75 78 79 3d 26 |c=&7A....youxy=&| 00000100 34 39 34 36 0d 00 aa 0f 79 6f 75 64 72 3d 26 34 |4946....youdr=&4| 00000110 39 34 37 0d 00 b4 0f 63 68 65 63 6b 3d 26 34 33 |947....check=&43| 00000120 33 32 0d 00 be 10 74 65 6d 70 78 79 3d 26 34 39 |32....tempxy=&49| 00000130 34 41 0d 00 c8 10 6e 6c 72 70 74 72 3d 26 34 39 |4A....nlrptr=&49| 00000140 34 42 0d 00 d2 10 73 63 72 65 65 6e 3d 26 34 33 |4B....screen=&43| 00000150 37 45 0d 00 dc 10 73 70 72 69 74 65 3d 26 34 34 |7E....sprite=&44| 00000160 30 42 0d 00 e6 10 6e 6c 72 75 70 64 3d 26 34 36 |0B....nlrupd=&46| 00000170 44 36 0d 00 f0 10 6e 75 64 75 70 64 3d 26 34 37 |D6....nudupd=&47| 00000180 30 37 0d 00 fa 10 6e 72 6e 75 70 64 3d 26 34 38 |07....nrnupd=&48| 00000190 39 45 0d 01 04 10 6d 6f 76 65 72 6e 3d 26 34 38 |9E....movern=&48| 000001a0 31 36 0d 01 0e 10 65 6e 65 72 67 79 3d 26 34 39 |16....energy=&49| 000001b0 34 43 0d 01 18 11 63 61 6c 6c 6e 6c 72 3d 26 34 |4C....callnlr=&4| 000001c0 34 37 31 0d 01 22 11 63 61 6c 6c 6e 75 64 3d 26 |471..".callnud=&| 000001d0 34 35 46 35 0d 01 2c 11 6d 6f 76 65 6e 6c 72 3d |45F5..,.movenlr=| 000001e0 26 34 34 43 37 0d 01 36 11 6d 6f 76 65 6e 75 64 |&44C7..6.movenud| 000001f0 3d 26 34 36 34 42 0d 01 40 11 6e 61 73 74 79 72 |=&464B..@.nastyr| 00000200 6e 3d 26 34 37 35 37 0d 01 4a 11 63 6f 6c 6c 69 |n=&4757..J.colli| 00000210 64 65 3d 26 34 38 45 32 0d 01 54 0f 72 6f 6f 6d |de=&48E2..T.room| 00000220 6c 6f 63 3d 26 37 38 0d 01 5e 10 64 6f 6f 72 78 |loc=&78..^.doorx| 00000230 79 3d 26 34 39 35 46 0d 01 68 11 64 6f 6f 72 6c |y=&495F..h.doorl| 00000240 6f 63 3d 26 34 39 36 35 0d 01 72 10 64 6f 6f 72 |oc=&4965..r.door| 00000250 72 6d 3d 26 34 39 37 37 0d 01 7c 11 64 6f 6f 72 |rm=&4977..|.door| 00000260 70 74 72 3d 26 34 39 35 45 0d 01 86 11 64 6f 6f |ptr=&495E....doo| 00000270 72 63 6f 6c 3d 26 34 39 37 31 0d 01 90 05 3a 0d |rcol=&4971....:.| 00000280 01 9a 14 e3 20 70 61 73 73 25 3d 30 20 b8 20 32 |.... pass%=0 . 2| 00000290 20 88 32 0d 01 a4 0c 50 25 3d 26 33 43 46 41 0d | .2....P%=&3CFA.| 000002a0 01 ae 05 5b 0d 01 b8 0d 4f 50 54 20 70 61 73 73 |...[....OPT pass| 000002b0 25 0d 01 c2 0a 2e 70 6c 61 79 31 0d 01 cc 0c 4a |%.....play1....J| 000002c0 53 52 20 6b 65 79 73 0d 01 d6 0f 4a 53 52 20 63 |SR keys....JSR c| 000002d0 61 6c 6c 6e 6c 72 0d 01 e0 0f 4a 53 52 20 63 61 |allnlr....JSR ca| 000002e0 6c 6c 6e 75 64 0d 01 ea 0f 4a 53 52 20 6e 61 73 |llnud....JSR nas| 000002f0 74 79 72 6e 0d 01 f4 0c 4a 53 52 20 6d 6f 76 65 |tyrn....JSR move| 00000300 0d 01 fe 0f 4a 53 52 20 6d 6f 76 65 6e 6c 72 0d |....JSR movenlr.| 00000310 02 08 0f 4a 53 52 20 6d 6f 76 65 6e 75 64 0d 02 |...JSR movenud..| 00000320 12 0e 4a 53 52 20 6d 6f 76 65 72 6e 0d 02 1c 0f |..JSR movern....| 00000330 4a 53 52 20 63 6f 6c 6c 69 64 65 0d 02 26 0b 4c |JSR collide..&.L| 00000340 44 41 20 23 31 39 0d 02 30 0d 4a 53 52 20 26 46 |DA #19..0.JSR &F| 00000350 46 46 34 0d 02 3a 07 52 54 53 0d 02 44 0a 2e 70 |FF4..:.RTS..D..p| 00000360 6c 61 79 32 0d 02 4e 0c 4a 53 52 20 6d 6f 76 65 |lay2..N.JSR move| 00000370 0d 02 58 0f 4a 53 52 20 6d 6f 76 65 6e 6c 72 0d |..X.JSR movenlr.| 00000380 02 62 0f 4a 53 52 20 6d 6f 76 65 6e 75 64 0d 02 |.b.JSR movenud..| 00000390 6c 0e 4a 53 52 20 6d 6f 76 65 72 6e 0d 02 76 0e |l.JSR movern..v.| 000003a0 4a 53 52 20 75 70 64 61 74 65 0d 02 80 0e 4a 53 |JSR update....JS| 000003b0 52 20 6e 6c 72 75 70 64 0d 02 8a 0e 4a 53 52 20 |R nlrupd....JSR | 000003c0 6e 75 64 75 70 64 0d 02 94 0e 4a 53 52 20 6e 72 |nudupd....JSR nr| 000003d0 6e 75 70 64 0d 02 9e 0f 4a 53 52 20 63 6f 6c 6c |nupd....JSR coll| 000003e0 69 64 65 0d 02 a8 10 4a 53 52 20 64 69 72 70 6f |ide....JSR dirpo| 000003f0 69 6e 74 0d 02 b2 0f 4a 53 52 20 63 6f 6c 6c 69 |int....JSR colli| 00000400 64 65 0d 02 bc 0b 4c 44 41 20 23 31 39 0d 02 c6 |de....LDA #19...| 00000410 0d 4a 53 52 20 26 46 46 46 34 0d 02 d0 07 52 54 |.JSR &FFF4....RT| 00000420 53 0d 02 da 0c 2e 70 79 6f 75 6d 6c 31 0d 02 e4 |S.....pyouml1...| 00000430 0a 4c 44 41 20 23 30 0d 02 ee 0c 4a 4d 50 20 70 |.LDA #0....JMP p| 00000440 79 6f 75 0d 02 f8 0c 2e 70 79 6f 75 6d 6c 32 0d |you.....pyouml2.| 00000450 03 02 0c 4c 44 41 20 23 26 32 30 0d 03 0c 0c 4a |...LDA #&20....J| 00000460 4d 50 20 70 79 6f 75 0d 03 16 0c 2e 70 79 6f 75 |MP pyou.....pyou| 00000470 6d 72 31 0d 03 20 0c 4c 44 41 20 23 26 34 30 0d |mr1.. .LDA #&40.| 00000480 03 2a 0c 4a 4d 50 20 70 79 6f 75 0d 03 34 0c 2e |.*.JMP pyou..4..| 00000490 70 79 6f 75 6d 72 32 0d 03 3e 0c 4c 44 41 20 23 |pyoumr2..>.LDA #| 000004a0 26 36 30 0d 03 48 0c 4a 4d 50 20 70 79 6f 75 0d |&60..H.JMP pyou.| 000004b0 03 52 0c 2e 70 79 6f 75 6d 75 31 0d 03 5c 0c 4c |.R..pyoumu1..\.L| 000004c0 44 41 20 23 26 38 30 0d 03 66 0c 4a 4d 50 20 70 |DA #&80..f.JMP p| 000004d0 79 6f 75 0d 03 70 0c 2e 70 79 6f 75 6d 75 32 0d |you..p..pyoumu2.| 000004e0 03 7a 0c 4c 44 41 20 23 26 41 30 0d 03 84 0c 4a |.z.LDA #&A0....J| 000004f0 4d 50 20 70 79 6f 75 0d 03 8e 0c 2e 70 79 6f 75 |MP pyou.....pyou| 00000500 6d 64 31 0d 03 98 0c 4c 44 41 20 23 26 43 30 0d |md1....LDA #&C0.| 00000510 03 a2 0c 4a 4d 50 20 70 79 6f 75 0d 03 ac 0c 2e |...JMP pyou.....| 00000520 70 79 6f 75 6d 64 32 0d 03 b6 0c 4c 44 41 20 23 |pyoumd2....LDA #| 00000530 26 45 30 0d 03 c0 0c 4a 4d 50 20 70 79 6f 75 0d |&E0....JMP pyou.| 00000540 03 ca 09 2e 70 79 6f 75 0d 03 d4 0c 53 54 41 20 |....pyou....STA | 00000550 63 68 61 72 0d 03 de 0d 53 54 41 20 79 6f 75 63 |char....STA youc| 00000560 68 0d 03 e8 0c 4c 44 41 20 23 26 35 30 0d 03 f2 |h....LDA #&50...| 00000570 0e 53 54 41 20 63 68 61 72 2b 31 0d 03 fc 0e 4c |.STA char+1....L| 00000580 44 41 20 79 6f 75 6c 6f 63 0d 04 06 0b 53 54 41 |DA youloc....STA| 00000590 20 6c 6f 63 0d 04 10 10 4c 44 41 20 79 6f 75 6c | loc....LDA youl| 000005a0 6f 63 2b 31 0d 04 1a 0d 53 54 41 20 6c 6f 63 2b |oc+1....STA loc+| 000005b0 31 0d 04 24 0e 4a 53 52 20 73 70 72 69 74 65 0d |1..$.JSR sprite.| 000005c0 04 2e 07 52 54 53 0d 04 38 0c 2e 73 63 72 6c 65 |...RTS..8..scrle| 000005d0 66 74 0d 04 42 0e 4a 53 52 20 64 65 6c 73 63 72 |ft..B.JSR delscr| 000005e0 0d 04 4c 07 43 4c 43 0d 04 56 0e 4c 44 41 20 79 |..L.CLC..V.LDA y| 000005f0 6f 75 6c 6f 63 0d 04 60 0c 41 44 43 20 23 26 46 |ouloc..`.ADC #&F| 00000600 30 0d 04 6a 0e 53 54 41 20 79 6f 75 6c 6f 63 0d |0..j.STA youloc.| 00000610 04 74 10 4c 44 41 20 79 6f 75 6c 6f 63 2b 31 0d |.t.LDA youloc+1.| 00000620 04 7e 0a 41 44 43 20 23 30 0d 04 88 10 53 54 41 |.~.ADC #0....STA| 00000630 20 79 6f 75 6c 6f 63 2b 31 0d 04 92 0d 4c 44 41 | youloc+1....LDA| 00000640 20 79 6f 75 78 79 0d 04 9c 09 80 20 23 26 46 0d | youxy..... #&F.| 00000650 04 a6 0c 41 44 43 20 23 26 46 30 0d 04 b0 0d 53 |...ADC #&F0....S| 00000660 54 41 20 79 6f 75 78 79 0d 04 ba 0f 4a 53 52 20 |TA youxy....JSR | 00000670 70 79 6f 75 6d 6c 31 0d 04 c4 0c 44 45 43 20 72 |pyouml1....DEC r| 00000680 6f 6f 6d 0d 04 ce 07 53 45 43 0d 04 d8 0e 4c 44 |oom....SEC....LD| 00000690 41 20 6e 6c 72 70 74 72 0d 04 e2 0a 53 42 43 20 |A nlrptr....SBC | 000006a0 23 36 0d 04 ec 0e 53 54 41 20 6e 6c 72 70 74 72 |#6....STA nlrptr| 000006b0 0d 04 f6 07 53 45 43 0d 05 00 0f 4c 44 41 20 72 |....SEC....LDA r| 000006c0 6f 6f 6d 6c 6f 63 0d 05 0a 0c 53 42 43 20 23 26 |oomloc....SBC #&| 000006d0 32 30 0d 05 14 0f 53 54 41 20 72 6f 6f 6d 6c 6f |20....STA roomlo| 000006e0 63 0d 05 1e 11 4c 44 41 20 72 6f 6f 6d 6c 6f 63 |c....LDA roomloc| 000006f0 2b 31 0d 05 28 0a 53 42 43 20 23 30 0d 05 32 11 |+1..(.SBC #0..2.| 00000700 53 54 41 20 72 6f 6f 6d 6c 6f 63 2b 31 0d 05 3c |STA roomloc+1..<| 00000710 0e 4a 53 52 20 73 63 72 65 65 6e 0d 05 46 10 4a |.JSR screen..F.J| 00000720 53 52 20 67 65 74 64 6f 6f 72 73 0d 05 50 07 52 |SR getdoors..P.R| 00000730 54 53 0d 05 5a 0d 2e 73 63 72 72 69 67 68 74 0d |TS..Z..scrright.| 00000740 05 64 0e 4a 53 52 20 64 65 6c 73 63 72 0d 05 6e |.d.JSR delscr..n| 00000750 07 53 45 43 0d 05 78 0e 4c 44 41 20 79 6f 75 6c |.SEC..x.LDA youl| 00000760 6f 63 0d 05 82 0c 53 42 43 20 23 26 46 30 0d 05 |oc....SBC #&F0..| 00000770 8c 0e 53 54 41 20 79 6f 75 6c 6f 63 0d 05 96 10 |..STA youloc....| 00000780 4c 44 41 20 79 6f 75 6c 6f 63 2b 31 0d 05 a0 0a |LDA youloc+1....| 00000790 53 42 43 20 23 30 0d 05 aa 10 53 54 41 20 79 6f |SBC #0....STA yo| 000007a0 75 6c 6f 63 2b 31 0d 05 b4 0d 4c 44 41 20 79 6f |uloc+1....LDA yo| 000007b0 75 78 79 0d 05 be 09 80 20 23 26 46 0d 05 c8 0d |uxy..... #&F....| 000007c0 53 54 41 20 79 6f 75 78 79 0d 05 d2 0f 4a 53 52 |STA youxy....JSR| 000007d0 20 70 79 6f 75 6d 72 31 0d 05 dc 0c 49 4e 43 20 | pyoumr1....INC | 000007e0 72 6f 6f 6d 0d 05 e6 07 43 4c 43 0d 05 f0 0e 4c |room....CLC....L| 000007f0 44 41 20 6e 6c 72 70 74 72 0d 05 fa 0a 41 44 43 |DA nlrptr....ADC| 00000800 20 23 36 0d 06 04 0e 53 54 41 20 6e 6c 72 70 74 | #6....STA nlrpt| 00000810 72 0d 06 0e 07 43 4c 43 0d 06 18 0c 4c 44 41 20 |r....CLC....LDA | 00000820 23 26 32 30 0d 06 22 0f 41 44 43 20 72 6f 6f 6d |#&20..".ADC room| 00000830 6c 6f 63 0d 06 2c 0f 53 54 41 20 72 6f 6f 6d 6c |loc..,.STA rooml| 00000840 6f 63 0d 06 36 0a 4c 44 41 20 23 30 0d 06 40 11 |oc..6.LDA #0..@.| 00000850 41 44 43 20 72 6f 6f 6d 6c 6f 63 2b 31 0d 06 4a |ADC roomloc+1..J| 00000860 11 53 54 41 20 72 6f 6f 6d 6c 6f 63 2b 31 0d 06 |.STA roomloc+1..| 00000870 54 0e 4a 53 52 20 73 63 72 65 65 6e 0d 06 5e 10 |T.JSR screen..^.| 00000880 4a 53 52 20 67 65 74 64 6f 6f 72 73 0d 06 68 07 |JSR getdoors..h.| 00000890 52 54 53 0d 06 72 0a 2e 79 6c 65 66 74 0d 06 7c |RTS..r..yleft..|| 000008a0 0d 4c 44 41 20 79 6f 75 78 79 0d 06 86 0a 80 20 |.LDA youxy..... | 000008b0 23 26 46 30 0d 06 90 0f 42 45 51 20 73 63 72 6c |#&F0....BEQ scrl| 000008c0 65 66 74 0d 06 9a 07 53 45 43 0d 06 a4 0e 4c 44 |eft....SEC....LD| 000008d0 41 20 79 6f 75 6c 6f 63 0d 06 ae 0c 53 42 43 20 |A youloc....SBC | 000008e0 23 26 31 30 0d 06 b8 0c 53 54 41 20 74 65 6d 70 |#&10....STA temp| 000008f0 0d 06 c2 10 4c 44 41 20 79 6f 75 6c 6f 63 2b 31 |....LDA youloc+1| 00000900 0d 06 cc 0a 53 42 43 20 23 30 0d 06 d6 0e 53 54 |....SBC #0....ST| 00000910 41 20 74 65 6d 70 2b 31 0d 06 e0 0d 4a 53 52 20 |A temp+1....JSR | 00000920 63 68 65 63 6b 0d 06 ea 0a 4c 44 59 20 23 31 0d |check....LDY #1.| 00000930 06 f4 0c 4c 44 41 20 62 79 74 65 0d 06 fe 0f 42 |...LDA byte....B| 00000940 4e 45 20 62 6c 6f 63 6b 65 64 0d 07 08 0a 4c 44 |NE blocked....LD| 00000950 41 20 23 31 0d 07 12 0d 53 54 41 20 79 6f 75 64 |A #1....STA youd| 00000960 72 0d 07 1c 07 52 54 53 0d 07 26 0b 2e 79 72 69 |r....RTS..&..yri| 00000970 67 68 74 0d 07 30 0d 4c 44 41 20 79 6f 75 78 79 |ght..0.LDA youxy| 00000980 0d 07 3a 0a 80 20 23 26 46 30 0d 07 44 0c 43 4d |..:.. #&F0..D.CM| 00000990 50 20 23 26 46 30 0d 07 4e 10 42 45 51 20 73 63 |P #&F0..N.BEQ sc| 000009a0 72 72 69 67 68 74 0d 07 58 07 43 4c 43 0d 07 62 |rright..X.CLC..b| 000009b0 0e 4c 44 41 20 79 6f 75 6c 6f 63 0d 07 6c 0c 41 |.LDA youloc..l.A| 000009c0 44 43 20 23 26 31 30 0d 07 76 0c 53 54 41 20 74 |DC #&10..v.STA t| 000009d0 65 6d 70 0d 07 80 10 4c 44 41 20 79 6f 75 6c 6f |emp....LDA youlo| 000009e0 63 2b 31 0d 07 8a 0a 41 44 43 20 23 30 0d 07 94 |c+1....ADC #0...| 000009f0 0e 53 54 41 20 74 65 6d 70 2b 31 0d 07 9e 0d 4a |.STA temp+1....J| 00000a00 53 52 20 63 68 65 63 6b 0d 07 a8 0a 4c 44 59 20 |SR check....LDY | 00000a10 23 32 0d 07 b2 0c 4c 44 41 20 62 79 74 65 0d 07 |#2....LDA byte..| 00000a20 bc 0f 42 4e 45 20 62 6c 6f 63 6b 65 64 0d 07 c6 |..BNE blocked...| 00000a30 0a 4c 44 41 20 23 32 0d 07 d0 0d 53 54 41 20 79 |.LDA #2....STA y| 00000a40 6f 75 64 72 0d 07 da 07 52 54 53 0d 07 e4 07 2e |oudr....RTS.....| 00000a50 6e 6d 0d 07 ee 0a 4c 44 41 20 23 30 0d 07 f8 0d |nm....LDA #0....| 00000a60 53 54 41 20 79 6f 75 64 72 0d 08 02 07 52 54 53 |STA youdr....RTS| 00000a70 0d 08 0c 09 2e 6b 65 79 73 0d 08 16 0a 4c 44 58 |.....keys....LDX| 00000a80 20 23 30 0d 08 20 0c 4c 44 41 20 23 26 37 41 0d | #0.. .LDA #&7A.| 00000a90 08 2a 0d 4a 53 52 20 26 46 46 46 34 0d 08 34 0b |.*.JSR &FFF4..4.| 00000aa0 43 50 58 20 23 36 36 0d 08 3e 0d 42 45 51 20 79 |CPX #66..>.BEQ y| 00000ab0 6c 65 66 74 0d 08 48 0b 43 50 58 20 23 38 32 0d |left..H.CPX #82.| 00000ac0 08 52 0e 42 45 51 20 79 72 69 67 68 74 0d 08 5c |.R.BEQ yright..\| 00000ad0 0b 43 50 58 20 23 37 32 0d 08 66 0b 42 45 51 20 |.CPX #72..f.BEQ | 00000ae0 79 75 70 0d 08 70 0c 43 50 58 20 23 31 30 34 0d |yup..p.CPX #104.| 00000af0 08 7a 0d 42 45 51 20 79 64 6f 77 6e 0d 08 84 0a |.z.BEQ ydown....| 00000b00 4c 44 41 20 23 30 0d 08 8e 0d 53 54 41 20 79 6f |LDA #0....STA yo| 00000b10 75 64 72 0d 08 98 07 52 54 53 0d 08 a2 0c 2e 62 |udr....RTS.....b| 00000b20 6c 6f 63 6b 65 64 0d 08 ac 0c 4c 44 41 20 62 79 |locked....LDA by| 00000b30 74 65 0d 08 b6 0c 43 4d 50 20 23 26 46 46 0d 08 |te....CMP #&FF..| 00000b40 c0 0a 42 45 51 20 6e 6d 0d 08 ca 0f 4c 44 58 20 |..BEQ nm....LDX | 00000b50 64 6f 6f 72 70 74 72 0d 08 d4 10 4c 44 41 20 6f |doorptr....LDA o| 00000b60 62 72 6f 6f 6d 2c 58 0d 08 de 0a 43 4d 50 20 23 |broom,X....CMP #| 00000b70 30 0d 08 e8 0a 42 4e 45 20 6e 6d 0d 08 f2 0d 53 |0....BNE nm....S| 00000b80 54 59 20 79 6f 75 64 72 0d 08 fc 07 52 54 53 0d |TY youdr....RTS.| 00000b90 09 06 08 2e 79 75 70 0d 09 10 0d 4c 44 41 20 79 |....yup....LDA y| 00000ba0 6f 75 78 79 0d 09 1a 09 80 20 23 26 46 0d 09 24 |ouxy..... #&F..$| 00000bb0 0d 42 45 51 20 73 63 72 75 70 0d 09 2e 07 53 45 |.BEQ scrup....SE| 00000bc0 43 0d 09 38 0e 4c 44 41 20 79 6f 75 6c 6f 63 0d |C..8.LDA youloc.| 00000bd0 09 42 0c 53 42 43 20 23 26 38 30 0d 09 4c 0c 53 |.B.SBC #&80..L.S| 00000be0 54 41 20 74 65 6d 70 0d 09 56 10 4c 44 41 20 79 |TA temp..V.LDA y| 00000bf0 6f 75 6c 6f 63 2b 31 0d 09 60 0a 53 42 43 20 23 |ouloc+1..`.SBC #| 00000c00 32 0d 09 6a 0e 53 54 41 20 74 65 6d 70 2b 31 0d |2..j.STA temp+1.| 00000c10 09 74 0d 4a 53 52 20 63 68 65 63 6b 0d 09 7e 0a |.t.JSR check..~.| 00000c20 4c 44 59 20 23 33 0d 09 88 0c 4c 44 41 20 62 79 |LDY #3....LDA by| 00000c30 74 65 0d 09 92 0f 42 4e 45 20 62 6c 6f 63 6b 65 |te....BNE blocke| 00000c40 64 0d 09 9c 0a 4c 44 41 20 23 33 0d 09 a6 0d 53 |d....LDA #3....S| 00000c50 54 41 20 79 6f 75 64 72 0d 09 b0 07 52 54 53 0d |TA youdr....RTS.| 00000c60 09 ba 07 2e 6e 75 0d 09 c4 0a 4c 44 41 20 23 30 |....nu....LDA #0| 00000c70 0d 09 ce 0d 53 54 41 20 79 6f 75 64 72 0d 09 d8 |....STA youdr...| 00000c80 07 52 54 53 0d 09 e2 0a 2e 79 64 6f 77 6e 0d 09 |.RTS.....ydown..| 00000c90 ec 0d 4c 44 41 20 79 6f 75 78 79 0d 09 f6 09 80 |..LDA youxy.....| 00000ca0 20 23 26 46 0d 0a 00 0b 43 4d 50 20 23 26 46 0d | #&F....CMP #&F.| 00000cb0 0a 0a 0f 42 45 51 20 73 63 72 64 6f 77 6e 0d 0a |...BEQ scrdown..| 00000cc0 14 07 43 4c 43 0d 0a 1e 0e 4c 44 41 20 79 6f 75 |..CLC....LDA you| 00000cd0 6c 6f 63 0d 0a 28 0c 41 44 43 20 23 26 38 30 0d |loc..(.ADC #&80.| 00000ce0 0a 32 0c 53 54 41 20 74 65 6d 70 0d 0a 3c 10 4c |.2.STA temp..<.L| 00000cf0 44 41 20 79 6f 75 6c 6f 63 2b 31 0d 0a 46 0a 41 |DA youloc+1..F.A| 00000d00 44 43 20 23 32 0d 0a 50 0e 53 54 41 20 74 65 6d |DC #2..P.STA tem| 00000d10 70 2b 31 0d 0a 5a 0d 4a 53 52 20 63 68 65 63 6b |p+1..Z.JSR check| 00000d20 0d 0a 64 0a 4c 44 59 20 23 34 0d 0a 6e 0c 4c 44 |..d.LDY #4..n.LD| 00000d30 41 20 62 79 74 65 0d 0a 78 0f 42 4e 45 20 62 6c |A byte..x.BNE bl| 00000d40 6f 63 6b 65 64 0d 0a 82 0a 4c 44 41 20 23 34 0d |ocked....LDA #4.| 00000d50 0a 8c 0d 53 54 41 20 79 6f 75 64 72 0d 0a 96 07 |...STA youdr....| 00000d60 52 54 53 0d 0a a0 0a 2e 73 63 72 75 70 0d 0a aa |RTS.....scrup...| 00000d70 0e 4a 53 52 20 64 65 6c 73 63 72 0d 0a b4 07 43 |.JSR delscr....C| 00000d80 4c 43 0d 0a be 0e 4c 44 41 20 79 6f 75 6c 6f 63 |LC....LDA youloc| 00000d90 0d 0a c8 0c 41 44 43 20 23 26 38 30 0d 0a d2 0e |....ADC #&80....| 00000da0 53 54 41 20 79 6f 75 6c 6f 63 0d 0a dc 10 4c 44 |STA youloc....LD| 00000db0 41 20 79 6f 75 6c 6f 63 2b 31 0d 0a e6 0c 41 44 |A youloc+1....AD| 00000dc0 43 20 23 26 32 35 0d 0a f0 10 53 54 41 20 79 6f |C #&25....STA yo| 00000dd0 75 6c 6f 63 2b 31 0d 0a fa 0d 4c 44 41 20 79 6f |uloc+1....LDA yo| 00000de0 75 78 79 0d 0b 04 0a 80 20 23 26 46 30 0d 0b 0e |uxy..... #&F0...| 00000df0 0b 41 44 43 20 23 26 46 0d 0b 18 0d 53 54 41 20 |.ADC #&F....STA | 00000e00 79 6f 75 78 79 0d 0b 22 0f 4a 53 52 20 70 79 6f |youxy..".JSR pyo| 00000e10 75 6d 75 31 0d 0b 2c 07 53 45 43 0d 0b 36 0e 4c |umu1..,.SEC..6.L| 00000e20 44 41 20 6e 6c 72 70 74 72 0d 0b 40 0b 53 42 43 |DA nlrptr..@.SBC| 00000e30 20 23 34 38 0d 0b 4a 0e 53 54 41 20 6e 6c 72 70 | #48..J.STA nlrp| 00000e40 74 72 0d 0b 54 07 53 45 43 0d 0b 5e 0c 4c 44 41 |tr..T.SEC..^.LDA| 00000e50 20 72 6f 6f 6d 0d 0b 68 0a 53 42 43 20 23 38 0d | room..h.SBC #8.| 00000e60 0b 72 0c 53 54 41 20 72 6f 6f 6d 0d 0b 7c 11 44 |.r.STA room..|.D| 00000e70 45 43 20 72 6f 6f 6d 6c 6f 63 2b 31 0d 0b 86 0e |EC roomloc+1....| 00000e80 4a 53 52 20 73 63 72 65 65 6e 0d 0b 90 10 4a 53 |JSR screen....JS| 00000e90 52 20 67 65 74 64 6f 6f 72 73 0d 0b 9a 07 52 54 |R getdoors....RT| 00000ea0 53 0d 0b a4 0c 2e 73 63 72 64 6f 77 6e 0d 0b ae |S.....scrdown...| 00000eb0 0e 4a 53 52 20 64 65 6c 73 63 72 0d 0b b8 07 53 |.JSR delscr....S| 00000ec0 45 43 0d 0b c2 0e 4c 44 41 20 79 6f 75 6c 6f 63 |EC....LDA youloc| 00000ed0 0d 0b cc 0c 53 42 43 20 23 26 38 30 0d 0b d6 0e |....SBC #&80....| 00000ee0 53 54 41 20 79 6f 75 6c 6f 63 0d 0b e0 10 4c 44 |STA youloc....LD| 00000ef0 41 20 79 6f 75 6c 6f 63 2b 31 0d 0b ea 0c 53 42 |A youloc+1....SB| 00000f00 43 20 23 26 32 35 0d 0b f4 10 53 54 41 20 79 6f |C #&25....STA yo| 00000f10 75 6c 6f 63 2b 31 0d 0b fe 0d 4c 44 41 20 79 6f |uloc+1....LDA yo| 00000f20 75 78 79 0d 0c 08 0a 80 20 23 26 46 30 0d 0c 12 |uxy..... #&F0...| 00000f30 0d 53 54 41 20 79 6f 75 78 79 0d 0c 1c 0f 4a 53 |.STA youxy....JS| 00000f40 52 20 70 79 6f 75 6d 64 31 0d 0c 26 07 43 4c 43 |R pyoumd1..&.CLC| 00000f50 0d 0c 30 0e 4c 44 41 20 6e 6c 72 70 74 72 0d 0c |..0.LDA nlrptr..| 00000f60 3a 0b 41 44 43 20 23 34 38 0d 0c 44 0e 53 54 41 |:.ADC #48..D.STA| 00000f70 20 6e 6c 72 70 74 72 0d 0c 4e 07 43 4c 43 0d 0c | nlrptr..N.CLC..| 00000f80 58 0c 4c 44 41 20 72 6f 6f 6d 0d 0c 62 0a 41 44 |X.LDA room..b.AD| 00000f90 43 20 23 38 0d 0c 6c 0c 53 54 41 20 72 6f 6f 6d |C #8..l.STA room| 00000fa0 0d 0c 76 11 49 4e 43 20 72 6f 6f 6d 6c 6f 63 2b |..v.INC roomloc+| 00000fb0 31 0d 0c 80 0e 4a 53 52 20 73 63 72 65 65 6e 0d |1....JSR screen.| 00000fc0 0c 8a 10 4a 53 52 20 67 65 74 64 6f 6f 72 73 0d |...JSR getdoors.| 00000fd0 0c 94 07 52 54 53 0d 0c 9e 09 2e 6d 6f 76 65 0d |...RTS.....move.| 00000fe0 0c a8 0d 4c 44 41 20 79 6f 75 64 72 0d 0c b2 0b |...LDA youdr....| 00000ff0 42 4e 45 20 79 6d 76 0d 0c bc 07 52 54 53 0d 0c |BNE ymv....RTS..| 00001000 c6 08 2e 79 6d 76 0d 0c d0 0d 4c 44 41 20 79 6f |...ymv....LDA yo| 00001010 75 64 72 0d 0c da 0a 43 4d 50 20 23 31 0d 0c e4 |udr....CMP #1...| 00001020 0d 42 45 51 20 64 6c 65 66 74 0d 0c ee 0a 43 4d |.BEQ dleft....CM| 00001030 50 20 23 32 0d 0c f8 0e 42 45 51 20 64 72 69 67 |P #2....BEQ drig| 00001040 68 74 0d 0d 02 0a 43 4d 50 20 23 33 0d 0d 0c 0b |ht....CMP #3....| 00001050 42 45 51 20 64 75 70 0d 0d 16 0a 43 4d 50 20 23 |BEQ dup....CMP #| 00001060 34 0d 0d 20 0d 42 45 51 20 64 64 6f 77 6e 0d 0d |4.. .BEQ ddown..| 00001070 2a 07 52 54 53 0d 0d 34 0a 2e 64 6c 65 66 74 0d |*.RTS..4..dleft.| 00001080 0d 3e 0e 4a 53 52 64 65 6c 65 74 65 6d 0d 0d 48 |.>.JSRdeletem..H| 00001090 07 53 45 43 0d 0d 52 0e 4c 44 41 20 79 6f 75 6c |.SEC..R.LDA youl| 000010a0 6f 63 0d 0d 5c 0a 53 42 43 20 23 38 0d 0d 66 0e |oc..\.SBC #8..f.| 000010b0 53 54 41 20 79 6f 75 6c 6f 63 0d 0d 70 10 4c 44 |STA youloc..p.LD| 000010c0 41 20 79 6f 75 6c 6f 63 2b 31 0d 0d 7a 0a 53 42 |A youloc+1..z.SB| 000010d0 43 20 23 30 0d 0d 84 10 53 54 41 20 79 6f 75 6c |C #0....STA youl| 000010e0 6f 63 2b 31 0d 0d 8e 0c 4a 53 52 20 6d 75 73 68 |oc+1....JSR mush| 000010f0 0d 0d 98 0d 4c 44 41 20 73 74 61 74 65 0d 0d a2 |....LDA state...| 00001100 08 80 20 23 31 0d 0d ac 0a 42 45 51 20 6c 31 0d |.. #1....BEQ l1.| 00001110 0d b6 0f 4a 53 52 20 70 79 6f 75 6d 6c 32 0d 0d |...JSR pyouml2..| 00001120 c0 07 52 54 53 0d 0d ca 07 2e 6c 31 0d 0d d4 0f |..RTS.....l1....| 00001130 4a 53 52 20 70 79 6f 75 6d 6c 31 0d 0d de 07 52 |JSR pyouml1....R| 00001140 54 53 0d 0d e8 0b 2e 64 72 69 67 68 74 0d 0d f2 |TS.....dright...| 00001150 0f 4a 53 52 20 64 65 6c 65 74 65 6d 0d 0d fc 07 |.JSR deletem....| 00001160 43 4c 43 0d 0e 06 0e 4c 44 41 20 79 6f 75 6c 6f |CLC....LDA youlo| 00001170 63 0d 0e 10 0a 41 44 43 20 23 38 0d 0e 1a 0e 53 |c....ADC #8....S| 00001180 54 41 20 79 6f 75 6c 6f 63 0d 0e 24 10 4c 44 41 |TA youloc..$.LDA| 00001190 20 79 6f 75 6c 6f 63 2b 31 0d 0e 2e 0a 41 44 43 | youloc+1....ADC| 000011a0 20 23 30 0d 0e 38 10 53 54 41 20 79 6f 75 6c 6f | #0..8.STA youlo| 000011b0 63 2b 31 0d 0e 42 0c 4a 53 52 20 6d 75 73 68 0d |c+1..B.JSR mush.| 000011c0 0e 4c 0d 4c 44 41 20 73 74 61 74 65 0d 0e 56 08 |.L.LDA state..V.| 000011d0 80 20 23 31 0d 0e 60 0a 42 45 51 20 72 31 0d 0e |. #1..`.BEQ r1..| 000011e0 6a 0f 4a 53 52 20 70 79 6f 75 6d 72 32 0d 0e 74 |j.JSR pyoumr2..t| 000011f0 07 52 54 53 0d 0e 7e 07 2e 72 31 0d 0e 88 0f 4a |.RTS..~..r1....J| 00001200 53 52 20 70 79 6f 75 6d 72 31 0d 0e 92 07 52 54 |SR pyoumr1....RT| 00001210 53 0d 0e 9c 08 2e 64 75 70 0d 0e a6 0f 4a 53 52 |S.....dup....JSR| 00001220 20 64 65 6c 65 74 65 6d 0d 0e b0 07 53 45 43 0d | deletem....SEC.| 00001230 0e ba 0e 4c 44 41 20 79 6f 75 6c 6f 63 0d 0e c4 |...LDA youloc...| 00001240 0c 53 42 43 20 23 26 34 30 0d 0e ce 0e 53 54 41 |.SBC #&40....STA| 00001250 20 79 6f 75 6c 6f 63 0d 0e d8 10 4c 44 41 20 79 | youloc....LDA y| 00001260 6f 75 6c 6f 63 2b 31 0d 0e e2 0a 53 42 43 20 23 |ouloc+1....SBC #| 00001270 31 0d 0e ec 10 53 54 41 20 79 6f 75 6c 6f 63 2b |1....STA youloc+| 00001280 31 0d 0e f6 0c 4a 53 52 20 6d 75 73 68 0d 0f 00 |1....JSR mush...| 00001290 0d 4c 44 41 20 73 74 61 74 65 0d 0f 0a 08 80 20 |.LDA state..... | 000012a0 23 31 0d 0f 14 0a 42 45 51 20 75 31 0d 0f 1e 0f |#1....BEQ u1....| 000012b0 4a 53 52 20 70 79 6f 75 6d 75 31 0d 0f 28 0a 4a |JSR pyoumu1..(.J| 000012c0 4d 50 20 64 75 0d 0f 32 07 2e 75 31 0d 0f 3c 0f |MP du..2..u1..<.| 000012d0 4a 53 52 20 70 79 6f 75 6d 75 32 0d 0f 46 07 2e |JSR pyoumu2..F..| 000012e0 64 75 0d 0f 50 0d 49 4e 43 20 73 74 61 74 65 0d |du..P.INC state.| 000012f0 0f 5a 07 52 54 53 0d 0f 64 0a 2e 64 64 6f 77 6e |.Z.RTS..d..ddown| 00001300 0d 0f 6e 0f 4a 53 52 20 64 65 6c 65 74 65 6d 0d |..n.JSR deletem.| 00001310 0f 78 07 43 4c 43 0d 0f 82 0e 4c 44 41 20 79 6f |.x.CLC....LDA yo| 00001320 75 6c 6f 63 0d 0f 8c 0c 41 44 43 20 23 26 34 30 |uloc....ADC #&40| 00001330 0d 0f 96 0e 53 54 41 20 79 6f 75 6c 6f 63 0d 0f |....STA youloc..| 00001340 a0 10 4c 44 41 20 79 6f 75 6c 6f 63 2b 31 0d 0f |..LDA youloc+1..| 00001350 aa 0a 41 44 43 20 23 31 0d 0f b4 10 53 54 41 20 |..ADC #1....STA | 00001360 79 6f 75 6c 6f 63 2b 31 0d 0f be 0c 4a 53 52 20 |youloc+1....JSR | 00001370 6d 75 73 68 0d 0f c8 0d 4c 44 41 20 73 74 61 74 |mush....LDA stat| 00001380 65 0d 0f d2 08 80 20 23 31 0d 0f dc 0a 42 45 51 |e..... #1....BEQ| 00001390 20 64 31 0d 0f e6 0f 4a 53 52 20 70 79 6f 75 6d | d1....JSR pyoum| 000013a0 64 31 0d 0f f0 0a 4a 4d 50 20 64 64 0d 0f fa 07 |d1....JMP dd....| 000013b0 2e 64 31 0d 10 04 0f 4a 53 52 20 70 79 6f 75 6d |.d1....JSR pyoum| 000013c0 64 32 0d 10 0e 07 2e 64 64 0d 10 18 0d 49 4e 43 |d2.....dd....INC| 000013d0 20 73 74 61 74 65 0d 10 22 07 52 54 53 0d 10 2c | state..".RTS..,| 000013e0 0b 2e 75 70 64 61 74 65 0d 10 36 0d 4c 44 41 20 |..update..6.LDA | 000013f0 79 6f 75 64 72 0d 10 40 0b 42 4e 45 20 64 75 64 |youdr..@.BNE dud| 00001400 0d 10 4a 07 52 54 53 0d 10 54 08 2e 64 75 64 0d |..J.RTS..T..dud.| 00001410 10 5e 0d 49 4e 43 20 73 74 61 74 65 0d 10 68 0d |.^.INC state..h.| 00001420 4c 44 41 20 79 6f 75 64 72 0d 10 72 0a 43 4d 50 |LDA youdr..r.CMP| 00001430 20 23 31 0d 10 7c 0b 42 4e 45 20 6e 64 72 0d 10 | #1..|.BNE ndr..| 00001440 86 07 53 45 43 0d 10 90 0d 4c 44 41 20 79 6f 75 |..SEC....LDA you| 00001450 78 79 0d 10 9a 0c 53 42 43 20 23 26 31 30 0d 10 |xy....SBC #&10..| 00001460 a4 0d 53 54 41 20 79 6f 75 78 79 0d 10 ae 07 52 |..STA youxy....R| 00001470 54 53 0d 10 b8 08 2e 6e 64 72 0d 10 c2 0d 4c 44 |TS.....ndr....LD| 00001480 41 20 79 6f 75 64 72 0d 10 cc 0a 43 4d 50 20 23 |A youdr....CMP #| 00001490 32 0d 10 d6 0c 42 4e 45 20 6e 64 72 31 0d 10 e0 |2....BNE ndr1...| 000014a0 07 43 4c 43 0d 10 ea 0d 4c 44 41 20 79 6f 75 78 |.CLC....LDA youx| 000014b0 79 0d 10 f4 0c 41 44 43 20 23 26 31 30 0d 10 fe |y....ADC #&10...| 000014c0 0d 53 54 41 20 79 6f 75 78 79 0d 11 08 07 52 54 |.STA youxy....RT| 000014d0 53 0d 11 12 09 2e 6e 64 72 31 0d 11 1c 0d 4c 44 |S.....ndr1....LD| 000014e0 41 20 79 6f 75 64 72 0d 11 26 0a 43 4d 50 20 23 |A youdr..&.CMP #| 000014f0 33 0d 11 30 0c 42 4e 45 20 6e 64 72 32 0d 11 3a |3..0.BNE ndr2..:| 00001500 0d 44 45 43 20 79 6f 75 78 79 0d 11 44 07 52 54 |.DEC youxy..D.RT| 00001510 53 0d 11 4e 09 2e 6e 64 72 32 0d 11 58 0d 49 4e |S..N..ndr2..X.IN| 00001520 43 20 79 6f 75 78 79 0d 11 62 07 52 54 53 0d 11 |C youxy..b.RTS..| 00001530 6c 0c 2e 64 65 6c 65 74 65 6d 0d 11 76 0e 4c 44 |l..deletem..v.LD| 00001540 41 20 79 6f 75 6c 6f 63 0d 11 80 0b 53 54 41 20 |A youloc....STA | 00001550 6c 6f 63 0d 11 8a 10 4c 44 41 20 79 6f 75 6c 6f |loc....LDA youlo| 00001560 63 2b 31 0d 11 94 0d 53 54 41 20 6c 6f 63 2b 31 |c+1....STA loc+1| 00001570 0d 11 9e 0d 4c 44 41 20 79 6f 75 63 68 0d 11 a8 |....LDA youch...| 00001580 0c 53 54 41 20 63 68 61 72 0d 11 b2 0c 4c 44 41 |.STA char....LDA| 00001590 20 23 26 35 30 0d 11 bc 0e 53 54 41 20 63 68 61 | #&50....STA cha| 000015a0 72 2b 31 0d 11 c6 0e 4a 4d 50 20 73 70 72 69 74 |r+1....JMP sprit| 000015b0 65 0d 11 d0 0b 2e 64 65 6c 73 63 72 0d 11 da 0b |e.....delscr....| 000015c0 4c 44 41 20 23 31 32 0d 11 e4 0d 4a 4d 50 20 26 |LDA #12....JMP &| 000015d0 46 46 45 45 0d 11 ee 0d 2e 67 65 74 64 6f 6f 72 |FFEE.....getdoor| 000015e0 73 0d 11 f8 0a 4c 44 58 20 23 35 0d 12 02 0a 2e |s....LDX #5.....| 000015f0 6c 6f 6f 70 52 0d 12 0c 0c 4c 44 41 20 72 6f 6f |loopR....LDA roo| 00001600 6d 0d 12 16 10 43 4d 50 20 64 6f 6f 72 72 6d 2c |m....CMP doorrm,| 00001610 58 0d 12 20 10 42 45 51 20 65 78 69 74 6c 6f 6f |X.. .BEQ exitloo| 00001620 70 0d 12 2a 07 44 45 58 0d 12 34 0c 43 50 58 20 |p..*.DEX..4.CPX | 00001630 23 26 46 46 0d 12 3e 0d 42 4e 45 20 6c 6f 6f 70 |#&FF..>.BNE loop| 00001640 52 0d 12 48 0d 2e 65 78 69 74 6c 6f 6f 70 0d 12 |R..H..exitloop..| 00001650 52 0f 53 54 58 20 64 6f 6f 72 70 74 72 0d 12 5c |R.STX doorptr..\| 00001660 0c 43 50 58 20 23 26 46 46 0d 12 66 0f 42 4e 45 |.CPX #&FF..f.BNE| 00001670 20 70 72 65 73 65 6e 74 0d 12 70 12 4a 4d 50 20 | present..p.JMP | 00001680 67 65 74 6f 62 6a 65 63 74 73 0d 12 7a 0c 2e 70 |getobjects..z..p| 00001690 72 65 73 65 6e 74 0d 12 84 0f 4c 44 58 20 64 6f |resent....LDX do| 000016a0 6f 72 70 74 72 0d 12 8e 11 4c 44 41 20 64 6f 6f |orptr....LDA doo| 000016b0 72 63 6f 6c 2c 58 0d 12 98 0c 53 54 41 20 63 68 |rcol,X....STA ch| 000016c0 61 72 0d 12 a2 0c 4c 44 41 20 23 26 34 45 0d 12 |ar....LDA #&4E..| 000016d0 ac 0e 53 54 41 20 63 68 61 72 2b 31 0d 12 b6 07 |..STA char+1....| 000016e0 54 58 41 0d 12 c0 09 41 53 4c 20 41 0d 12 ca 07 |TXA....ASL A....| 000016f0 54 41 58 0d 12 d4 11 4c 44 41 20 64 6f 6f 72 6c |TAX....LDA doorl| 00001700 6f 63 2c 58 0d 12 de 0b 53 54 41 20 6c 6f 63 0d |oc,X....STA loc.| 00001710 12 e8 13 4c 44 41 20 64 6f 6f 72 6c 6f 63 2b 31 |...LDA doorloc+1| 00001720 2c 58 0d 12 f2 0d 53 54 41 20 6c 6f 63 2b 31 0d |,X....STA loc+1.| 00001730 12 fc 0e 4a 53 52 20 73 70 72 69 74 65 0d 13 06 |...JSR sprite...| 00001740 0f 2e 67 65 74 6f 62 6a 65 63 74 73 0d 13 10 0e |..getobjects....| 00001750 4c 44 58 20 6e 6f 6f 66 6f 62 0d 13 1a 0a 2e 6c |LDX noofob.....l| 00001760 6f 6f 70 50 0d 13 24 0c 4c 44 41 20 72 6f 6f 6d |oopP..$.LDA room| 00001770 0d 13 2e 10 43 4d 50 20 6f 62 72 6f 6f 6d 2c 58 |....CMP obroom,X| 00001780 0d 13 38 0f 42 45 51 20 6f 75 74 6c 6f 6f 70 0d |..8.BEQ outloop.| 00001790 13 42 07 44 45 58 0d 13 4c 0c 43 50 58 20 23 26 |.B.DEX..L.CPX #&| 000017a0 46 46 0d 13 56 0d 42 4e 45 20 6c 6f 6f 70 50 0d |FF..V.BNE loopP.| 000017b0 13 60 0c 2e 6f 75 74 6c 6f 6f 70 0d 13 6a 0d 53 |.`..outloop..j.S| 000017c0 54 58 20 6f 62 70 74 72 0d 13 74 0c 43 50 58 20 |TX obptr..t.CPX | 000017d0 23 26 46 46 0d 13 7e 0c 42 4e 45 20 68 65 72 65 |#&FF..~.BNE here| 000017e0 0d 13 88 16 4a 4d 50 20 67 65 74 69 6e 63 69 64 |....JMP getincid| 000017f0 65 6e 74 61 6c 73 0d 13 92 09 2e 68 65 72 65 0d |entals.....here.| 00001800 13 9c 0d 4c 44 41 20 6f 62 70 74 72 0d 13 a6 09 |...LDA obptr....| 00001810 41 53 4c 20 41 0d 13 b0 07 54 41 58 0d 13 ba 0f |ASL A....TAX....| 00001820 4c 44 41 20 6f 62 6c 6f 63 2c 58 0d 13 c4 0b 53 |LDA obloc,X....S| 00001830 54 41 20 6c 6f 63 0d 13 ce 11 4c 44 41 20 6f 62 |TA loc....LDA ob| 00001840 6c 6f 63 2b 31 2c 58 0d 13 d8 0d 53 54 41 20 6c |loc+1,X....STA l| 00001850 6f 63 2b 31 0d 13 e2 0f 4c 44 41 20 6f 62 63 6f |oc+1....LDA obco| 00001860 6c 2c 58 0d 13 ec 0c 53 54 41 20 63 68 61 72 0d |l,X....STA char.| 00001870 13 f6 11 4c 44 41 20 6f 62 63 6f 6c 2b 31 2c 58 |...LDA obcol+1,X| 00001880 0d 14 00 0e 53 54 41 20 63 68 61 72 2b 31 0d 14 |....STA char+1..| 00001890 0a 0e 4a 53 52 20 73 70 72 69 74 65 0d 14 14 0d |..JSR sprite....| 000018a0 4c 44 58 20 6f 62 70 74 72 0d 14 1e 07 44 45 58 |LDX obptr....DEX| 000018b0 0d 14 28 0c 43 50 58 20 23 26 46 46 0d 14 32 0d |..(.CPX #&FF..2.| 000018c0 42 4e 45 20 6c 6f 6f 70 50 0d 14 3c 07 52 54 53 |BNE loopP..<.RTS| 000018d0 0d 14 46 13 2e 67 65 74 69 6e 63 69 64 65 6e 74 |..F..getincident| 000018e0 61 6c 73 0d 14 50 0e 4c 44 58 20 6e 6f 6f 66 69 |als..P.LDX noofi| 000018f0 6e 0d 14 5a 0a 2e 6c 6f 6f 70 45 0d 14 64 0c 4c |n..Z..loopE..d.L| 00001900 44 41 20 72 6f 6f 6d 0d 14 6e 10 43 4d 50 20 69 |DA room..n.CMP i| 00001910 6e 72 6f 6f 6d 2c 58 0d 14 78 11 42 45 51 20 69 |nroom,X..x.BEQ i| 00001920 6e 6c 6f 6f 70 66 69 6e 0d 14 82 07 44 45 58 0d |nloopfin....DEX.| 00001930 14 8c 0c 43 50 58 20 23 26 46 46 0d 14 96 0d 42 |...CPX #&FF....B| 00001940 4e 45 20 6c 6f 6f 70 45 0d 14 a0 0e 2e 69 6e 6c |NE loopE.....inl| 00001950 6f 6f 70 66 69 6e 0d 14 aa 0d 53 54 58 20 69 6e |oopfin....STX in| 00001960 70 74 72 0d 14 b4 0c 43 50 58 20 23 26 46 46 0d |ptr....CPX #&FF.| 00001970 14 be 0b 42 4e 45 20 69 63 69 0d 14 c8 07 52 54 |...BNE ici....RT| 00001980 53 0d 14 d2 08 2e 69 63 69 0d 14 dc 0d 4c 44 41 |S.....ici....LDA| 00001990 20 69 6e 70 74 72 0d 14 e6 09 41 53 4c 20 41 0d | inptr....ASL A.| 000019a0 14 f0 07 54 41 58 0d 14 fa 0f 4c 44 41 20 69 6e |...TAX....LDA in| 000019b0 6c 6f 63 2c 58 0d 15 04 0b 53 54 41 20 6c 6f 63 |loc,X....STA loc| 000019c0 0d 15 0e 11 4c 44 41 20 69 6e 6c 6f 63 2b 31 2c |....LDA inloc+1,| 000019d0 58 0d 15 18 0d 53 54 41 20 6c 6f 63 2b 31 0d 15 |X....STA loc+1..| 000019e0 22 0f 4c 44 41 20 69 6e 63 6f 6c 2c 58 0d 15 2c |".LDA incol,X..,| 000019f0 0c 53 54 41 20 63 68 61 72 0d 15 36 11 4c 44 41 |.STA char..6.LDA| 00001a00 20 69 6e 63 6f 6c 2b 31 2c 58 0d 15 40 0e 53 54 | incol+1,X..@.ST| 00001a10 41 20 63 68 61 72 2b 31 0d 15 4a 0e 4a 53 52 20 |A char+1..J.JSR | 00001a20 73 70 72 69 74 65 0d 15 54 0d 4c 44 58 20 69 6e |sprite..T.LDX in| 00001a30 70 74 72 0d 15 5e 07 44 45 58 0d 15 68 0c 43 50 |ptr..^.DEX..h.CP| 00001a40 58 20 23 26 46 46 0d 15 72 0d 42 4e 45 20 6c 6f |X #&FF..r.BNE lo| 00001a50 6f 70 45 0d 15 7c 07 52 54 53 0d 15 86 09 2e 70 |opE..|.RTS.....p| 00001a60 65 72 34 0d 15 90 0d 4c 44 41 20 79 6f 75 78 79 |er4....LDA youxy| 00001a70 0d 15 9a 0c 43 4d 50 20 23 26 41 31 0d 15 a4 0c |....CMP #&A1....| 00001a80 42 4e 45 20 70 65 72 38 0d 15 ae 0a 4c 44 41 20 |BNE per8....LDA | 00001a90 23 32 0d 15 b8 0d 53 54 41 20 79 6f 75 64 72 0d |#2....STA youdr.| 00001aa0 15 c2 0c 4a 53 52 20 6d 6f 76 65 0d 15 cc 0c 4a |...JSR move....J| 00001ab0 53 52 20 6d 6f 76 65 0d 15 d6 0e 4a 53 52 20 75 |SR move....JSR u| 00001ac0 70 64 61 74 65 0d 15 e0 09 2e 70 65 72 38 0d 15 |pdate.....per8..| 00001ad0 ea 0c 4c 44 41 20 72 6e 78 79 0d 15 f4 0c 43 4d |..LDA rnxy....CM| 00001ae0 50 20 23 26 41 31 0d 15 fe 0d 42 4e 45 20 6e 6f |P #&A1....BNE no| 00001af0 70 74 72 0d 16 08 0a 4c 44 41 20 23 32 0d 16 12 |ptr....LDA #2...| 00001b00 0c 53 54 41 20 72 6e 64 72 0d 16 1c 0e 4a 53 52 |.STA rndr....JSR| 00001b10 20 6d 6f 76 65 72 6e 0d 16 26 0e 4a 53 52 20 6d | movern..&.JSR m| 00001b20 6f 76 65 72 6e 0d 16 30 0c 49 4e 43 20 73 74 6f |overn..0.INC sto| 00001b30 70 0d 16 3a 0e 4a 53 52 20 6e 72 6e 75 70 64 0d |p..:.JSR nrnupd.| 00001b40 16 44 07 52 54 53 0d 16 4e 09 2e 70 65 72 33 0d |.D.RTS..N..per3.| 00001b50 16 58 0d 4c 44 41 20 79 6f 75 78 79 0d 16 62 0c |.X.LDA youxy..b.| 00001b60 43 4d 50 20 23 26 36 38 0d 16 6c 0c 42 4e 45 20 |CMP #&68..l.BNE | 00001b70 70 65 72 37 0d 16 76 0a 4c 44 41 20 23 31 0d 16 |per7..v.LDA #1..| 00001b80 80 0d 53 54 41 20 79 6f 75 64 72 0d 16 8a 0c 4a |..STA youdr....J| 00001b90 53 52 20 6d 6f 76 65 0d 16 94 0c 4a 53 52 20 6d |SR move....JSR m| 00001ba0 6f 76 65 0d 16 9e 0e 4a 53 52 20 75 70 64 61 74 |ove....JSR updat| 00001bb0 65 0d 16 a8 09 2e 70 65 72 37 0d 16 b2 0c 4c 44 |e.....per7....LD| 00001bc0 41 20 72 6e 78 79 0d 16 bc 0c 43 4d 50 20 23 26 |A rnxy....CMP #&| 00001bd0 36 38 0d 16 c6 0d 42 4e 45 20 6e 6f 70 74 72 0d |68....BNE noptr.| 00001be0 16 d0 0a 4c 44 41 20 23 31 0d 16 da 0c 53 54 41 |...LDA #1....STA| 00001bf0 20 72 6e 64 72 0d 16 e4 0e 4a 53 52 20 6d 6f 76 | rndr....JSR mov| 00001c00 65 72 6e 0d 16 ee 0e 4a 53 52 20 6d 6f 76 65 72 |ern....JSR mover| 00001c10 6e 0d 16 f8 0c 49 4e 43 20 73 74 6f 70 0d 17 02 |n....INC stop...| 00001c20 0e 4a 53 52 20 6e 72 6e 75 70 64 0d 17 0c 07 52 |.JSR nrnupd....R| 00001c30 54 53 0d 17 16 0d 2e 64 69 72 70 6f 69 6e 74 0d |TS.....dirpoint.| 00001c40 17 20 0b 4c 44 59 20 23 32 34 0d 17 2a 10 4c 44 |. .LDY #24..*.LD| 00001c50 41 20 6f 62 72 6f 6f 6d 2c 59 0d 17 34 0d 42 4e |A obroom,Y..4.BN| 00001c60 45 20 6e 6f 6a 65 77 0d 17 3e 0a 2e 6e 6f 70 74 |E nojew..>..nopt| 00001c70 72 0d 17 48 07 52 54 53 0d 17 52 0a 2e 6e 6f 6a |r..H.RTS..R..noj| 00001c80 65 77 0d 17 5c 0c 4c 44 41 20 72 6f 6f 6d 0d 17 |ew..\.LDA room..| 00001c90 66 0b 43 4d 50 20 23 32 30 0d 17 70 0c 42 45 51 |f.CMP #20..p.BEQ| 00001ca0 20 70 65 72 31 0d 17 7a 0b 43 4d 50 20 23 32 31 | per1..z.CMP #21| 00001cb0 0d 17 84 0c 42 45 51 20 70 65 72 32 0d 17 8e 0b |....BEQ per2....| 00001cc0 43 4d 50 20 23 32 39 0d 17 98 0c 42 45 51 20 70 |CMP #29....BEQ p| 00001cd0 65 72 33 0d 17 a2 0b 43 4d 50 20 23 31 35 0d 17 |er3....CMP #15..| 00001ce0 ac 0c 42 45 51 20 70 65 72 34 0d 17 b6 07 52 54 |..BEQ per4....RT| 00001cf0 53 0d 17 c0 09 2e 70 65 72 31 0d 17 ca 0d 4c 44 |S.....per1....LD| 00001d00 41 20 79 6f 75 78 79 0d 17 d4 0c 43 4d 50 20 23 |A youxy....CMP #| 00001d10 26 38 39 0d 17 de 0c 42 4e 45 20 70 65 72 35 0d |&89....BNE per5.| 00001d20 17 e8 0a 4c 44 41 20 23 32 0d 17 f2 0d 53 54 41 |...LDA #2....STA| 00001d30 20 79 6f 75 64 72 0d 17 fc 0c 4a 53 52 20 6d 6f | youdr....JSR mo| 00001d40 76 65 0d 18 06 0c 4a 53 52 20 6d 6f 76 65 0d 18 |ve....JSR move..| 00001d50 10 0e 4a 53 52 20 75 70 64 61 74 65 0d 18 1a 09 |..JSR update....| 00001d60 2e 70 65 72 35 0d 18 24 0c 4c 44 41 20 72 6e 78 |.per5..$.LDA rnx| 00001d70 79 0d 18 2e 0c 43 4d 50 20 23 26 38 39 0d 18 38 |y....CMP #&89..8| 00001d80 0d 42 4e 45 20 6e 6f 70 74 72 0d 18 42 0a 4c 44 |.BNE noptr..B.LD| 00001d90 41 20 23 32 0d 18 4c 0c 53 54 41 20 72 6e 64 72 |A #2..L.STA rndr| 00001da0 0d 18 56 0e 4a 53 52 20 6d 6f 76 65 72 6e 0d 18 |..V.JSR movern..| 00001db0 60 0e 4a 53 52 20 6d 6f 76 65 72 6e 0d 18 6a 0c |`.JSR movern..j.| 00001dc0 49 4e 43 20 73 74 6f 70 0d 18 74 0e 4a 53 52 20 |INC stop..t.JSR | 00001dd0 6e 72 6e 75 70 64 0d 18 7e 07 52 54 53 0d 18 88 |nrnupd..~.RTS...| 00001de0 09 2e 70 65 72 32 0d 18 92 0d 4c 44 41 20 79 6f |..per2....LDA yo| 00001df0 75 78 79 0d 18 9c 0c 43 4d 50 20 23 26 36 39 0d |uxy....CMP #&69.| 00001e00 18 a6 0c 42 4e 45 20 70 65 72 36 0d 18 b0 0a 4c |...BNE per6....L| 00001e10 44 41 20 23 34 0d 18 ba 0d 53 54 41 20 79 6f 75 |DA #4....STA you| 00001e20 64 72 0d 18 c4 0c 4a 53 52 20 6d 6f 76 65 0d 18 |dr....JSR move..| 00001e30 ce 0c 4a 53 52 20 6d 6f 76 65 0d 18 d8 0e 4a 53 |..JSR move....JS| 00001e40 52 20 75 70 64 61 74 65 0d 18 e2 09 2e 70 65 72 |R update.....per| 00001e50 36 0d 18 ec 0c 4c 44 41 20 72 6e 78 79 0d 18 f6 |6....LDA rnxy...| 00001e60 0c 43 4d 50 20 23 26 36 39 0d 19 00 0d 42 4e 45 |.CMP #&69....BNE| 00001e70 20 6e 6f 70 74 72 0d 19 0a 0a 4c 44 41 20 23 34 | noptr....LDA #4| 00001e80 0d 19 14 0c 53 54 41 20 72 6e 64 72 0d 19 1e 0e |....STA rndr....| 00001e90 4a 53 52 20 6d 6f 76 65 72 6e 0d 19 28 0e 4a 53 |JSR movern..(.JS| 00001ea0 52 20 6d 6f 76 65 72 6e 0d 19 32 0c 49 4e 43 20 |R movern..2.INC | 00001eb0 73 74 6f 70 0d 19 3c 0e 4a 53 52 20 6e 72 6e 75 |stop..<.JSR nrnu| 00001ec0 70 64 0d 19 46 07 52 54 53 0d 19 50 09 2e 6d 75 |pd..F.RTS..P..mu| 00001ed0 73 68 0d 19 5a 0e 4c 44 41 20 79 6f 75 6c 6f 63 |sh..Z.LDA youloc| 00001ee0 0d 19 64 07 50 48 41 0d 19 6e 10 4c 44 41 20 79 |..d.PHA..n.LDA y| 00001ef0 6f 75 6c 6f 63 2b 31 0d 19 78 07 50 48 41 0d 19 |ouloc+1..x.PHA..| 00001f00 82 07 43 4c 43 0d 19 8c 0e 4c 44 41 20 79 6f 75 |..CLC....LDA you| 00001f10 6c 6f 63 0d 19 96 0c 41 44 43 20 23 26 34 30 0d |loc....ADC #&40.| 00001f20 19 a0 0e 53 54 41 20 79 6f 75 6c 6f 63 0d 19 aa |...STA youloc...| 00001f30 10 4c 44 41 20 79 6f 75 6c 6f 63 2b 31 0d 19 b4 |.LDA youloc+1...| 00001f40 0a 41 44 43 20 23 31 0d 19 be 10 53 54 41 20 79 |.ADC #1....STA y| 00001f50 6f 75 6c 6f 63 2b 31 0d 19 c8 0a 4c 44 59 20 23 |ouloc+1....LDY #| 00001f60 36 0d 19 d2 12 4c 44 41 20 28 79 6f 75 6c 6f 63 |6....LDA (youloc| 00001f70 29 2c 59 0d 19 dc 0c 43 4d 50 20 23 26 36 32 0d |),Y....CMP #&62.| 00001f80 19 e6 0b 42 4e 45 20 6e 6f 6d 0d 19 f0 0c 4c 44 |...BNE nom....LD| 00001f90 41 20 23 26 46 46 0d 19 fa 10 53 54 41 20 6d 75 |A #&FF....STA mu| 00001fa0 73 68 72 6f 6f 6d 0d 1a 04 0a 4a 4d 50 20 65 6e |shroom....JMP en| 00001fb0 0d 1a 0e 08 2e 6e 6f 6d 0d 1a 18 0a 4c 44 41 20 |.....nom....LDA | 00001fc0 23 30 0d 1a 22 10 53 54 41 20 6d 75 73 68 72 6f |#0..".STA mushro| 00001fd0 6f 6d 0d 1a 2c 07 2e 65 6e 0d 1a 36 07 50 4c 41 |om..,..en..6.PLA| 00001fe0 0d 1a 40 10 53 54 41 20 79 6f 75 6c 6f 63 2b 31 |..@.STA youloc+1| 00001ff0 0d 1a 4a 07 50 4c 41 0d 1a 54 0e 53 54 41 20 79 |..J.PLA..T.STA y| 00002000 6f 75 6c 6f 63 0d 1a 5e 07 52 54 53 0d 1a 68 0d |ouloc..^.RTS..h.| 00002010 2e 6d 61 73 6b 20 4e 4f 50 0d 1a 72 0e 2e 79 6f |.mask NOP..r..yo| 00002020 75 63 68 20 4e 4f 50 0d 1a 7c 0e 2e 73 74 61 74 |uch NOP..|..stat| 00002030 65 20 4e 4f 50 0d 1a 86 0e 2e 6f 62 70 74 72 20 |e NOP.....obptr | 00002040 4e 4f 50 0d 1a 90 0e 2e 69 6e 70 74 72 20 4e 4f |NOP.....inptr NO| 00002050 50 0d 1a 9a 11 2e 6d 75 73 68 72 6f 6f 6d 20 4e |P.....mushroom N| 00002060 4f 50 0d 1a a4 0b 2e 6e 6f 6f 66 6f 62 0d 1a ae |OP.....noofob...| 00002070 12 4f 50 54 20 a4 65 71 75 62 28 26 31 43 29 0d |.OPT .equb(&1C).| 00002080 1a b8 09 2e 6f 62 78 79 0d 1a c2 18 4f 50 54 20 |....obxy....OPT | 00002090 a4 65 71 75 64 28 26 36 43 39 36 33 43 38 35 29 |.equd(&6C963C85)| 000020a0 0d 1a cc 18 4f 50 54 20 a4 65 71 75 64 28 26 41 |....OPT .equd(&A| 000020b0 45 31 38 41 45 38 39 29 0d 1a d6 18 4f 50 54 20 |E18AE89)....OPT | 000020c0 a4 65 71 75 64 28 26 43 32 43 33 36 35 32 31 29 |.equd(&C2C36521)| 000020d0 0d 1a e0 18 4f 50 54 20 a4 65 71 75 64 28 26 35 |....OPT .equd(&5| 000020e0 35 37 39 36 44 37 31 29 0d 1a ea 18 4f 50 54 20 |5796D71)....OPT | 000020f0 a4 65 71 75 64 28 26 37 41 36 43 38 39 32 38 29 |.equd(&7A6C8928)| 00002100 0d 1a f4 18 4f 50 54 20 a4 65 71 75 64 28 26 42 |....OPT .equd(&B| 00002110 42 43 33 42 45 32 45 29 0d 1a fe 18 4f 50 54 20 |BC3BE2E)....OPT | 00002120 a4 65 71 75 64 28 26 30 30 31 34 37 39 35 37 29 |.equd(&00147957)| 00002130 0d 1b 08 12 4f 50 54 20 a4 65 71 75 62 28 26 44 |....OPT .equb(&D| 00002140 43 29 0d 1b 12 0a 2e 6f 62 6c 6f 63 0d 1b 1c 18 |C).....obloc....| 00002150 4f 50 54 20 a4 65 71 75 64 28 26 37 36 33 30 36 |OPT .equd(&76306| 00002160 35 30 30 29 0d 1b 26 18 4f 50 54 20 a4 65 71 75 |500)..&.OPT .equ| 00002170 64 28 26 37 36 36 30 36 37 39 30 29 0d 1b 30 18 |d(&76606790)..0.| 00002180 4f 50 54 20 a4 65 71 75 64 28 26 37 42 41 30 36 |OPT .equd(&7BA06| 00002190 46 30 30 29 0d 1b 3a 18 4f 50 54 20 a4 65 71 75 |F00)..:.OPT .equ| 000021a0 64 28 26 37 42 41 30 36 43 31 30 29 0d 1b 44 18 |d(&7BA06C10)..D.| 000021b0 4f 50 54 20 a4 65 71 75 64 28 26 36 34 45 30 35 |OPT .equd(&64E05| 000021c0 41 41 30 29 0d 1b 4e 18 4f 50 54 20 a4 65 71 75 |AA0)..N.OPT .equ| 000021d0 64 28 26 35 44 43 30 36 30 34 30 29 0d 1b 58 18 |d(&5DC06040)..X.| 000021e0 4f 50 54 20 a4 65 71 75 64 28 26 37 38 45 30 35 |OPT .equd(&78E05| 000021f0 41 46 30 29 0d 1b 62 18 4f 50 54 20 a4 65 71 75 |AF0)..b.OPT .equ| 00002200 64 28 26 36 34 44 30 36 45 46 30 29 0d 1b 6c 18 |d(&64D06EF0)..l.| 00002210 4f 50 54 20 a4 65 71 75 64 28 26 36 46 30 30 36 |OPT .equd(&6F006| 00002220 43 32 30 29 0d 1b 76 18 4f 50 54 20 a4 65 71 75 |C20)..v.OPT .equ| 00002230 64 28 26 37 31 37 30 37 36 36 30 29 0d 1b 80 18 |d(&71707660)....| 00002240 4f 50 54 20 a4 65 71 75 64 28 26 37 42 42 30 37 |OPT .equd(&7BB07| 00002250 42 32 30 29 0d 1b 8a 18 4f 50 54 20 a4 65 71 75 |B20)....OPT .equ| 00002260 64 28 26 37 34 33 30 36 30 34 30 29 0d 1b 94 18 |d(&74306040)....| 00002270 4f 50 54 20 a4 65 71 75 64 28 26 36 45 46 30 36 |OPT .equd(&6EF06| 00002280 39 44 30 29 0d 1b 9e 18 4f 50 54 20 a4 65 71 75 |9D0)....OPT .equ| 00002290 64 28 26 37 43 31 30 36 32 31 30 29 0d 1b a8 14 |d(&7C106210)....| 000022a0 4f 50 54 20 a4 65 71 75 77 28 26 37 36 44 30 29 |OPT .equw(&76D0)| 000022b0 0d 1b b2 0a 2e 6f 62 63 6f 6c 0d 1b bc 18 4f 50 |.....obcol....OP| 000022c0 54 20 a4 65 71 75 64 28 26 34 44 32 30 34 44 30 |T .equd(&4D204D0| 000022d0 30 29 0d 1b c6 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 000022e0 26 34 44 36 30 34 44 34 30 29 0d 1b d0 18 4f 50 |&4D604D40)....OP| 000022f0 54 20 a4 65 71 75 64 28 26 34 44 41 30 34 44 38 |T .equd(&4DA04D8| 00002300 30 29 0d 1b da 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 00002310 26 34 43 32 30 34 43 30 30 29 0d 1b e4 18 4f 50 |&4C204C00)....OP| 00002320 54 20 a4 65 71 75 64 28 26 34 43 36 30 34 43 34 |T .equd(&4C604C4| 00002330 30 29 0d 1b ee 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 00002340 26 34 43 41 30 34 43 38 30 29 0d 1b f8 18 4f 50 |&4CA04C80)....OP| 00002350 54 20 a4 65 71 75 64 28 26 34 43 45 30 34 43 43 |T .equd(&4CE04CC| 00002360 30 29 0d 1c 02 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 00002370 26 34 41 38 30 34 45 45 30 29 0d 1c 0c 18 4f 50 |&4A804EE0)....OP| 00002380 54 20 a4 65 71 75 64 28 26 34 41 41 30 34 42 41 |T .equd(&4AA04BA| 00002390 30 29 0d 1c 16 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 000023a0 26 34 41 38 30 34 41 41 30 29 0d 1c 20 18 4f 50 |&4A804AA0).. .OP| 000023b0 54 20 a4 65 71 75 64 28 26 34 42 34 30 34 42 32 |T .equd(&4B404B2| 000023c0 30 29 0d 1c 2a 18 4f 50 54 20 a4 65 71 75 64 28 |0)..*.OPT .equd(| 000023d0 26 34 41 45 30 34 42 38 30 29 0d 1c 34 18 4f 50 |&4AE04B80)..4.OP| 000023e0 54 20 a4 65 71 75 64 28 26 34 42 45 30 34 39 41 |T .equd(&4BE049A| 000023f0 30 29 0d 1c 3e 18 4f 50 54 20 a4 65 71 75 64 28 |0)..>.OPT .equd(| 00002400 26 34 42 36 30 34 39 43 30 29 0d 1c 48 14 4f 50 |&4B6049C0)..H.OP| 00002410 54 20 a4 65 71 75 77 28 26 34 44 43 30 29 0d 1c |T .equw(&4DC0)..| 00002420 52 0b 2e 6f 62 72 6f 6f 6d 0d 1c 5c 18 4f 50 54 |R..obroom..\.OPT| 00002430 20 a4 65 71 75 64 28 26 30 46 46 46 31 35 30 34 | .equd(&0FFF1504| 00002440 29 0d 1c 66 18 4f 50 54 20 a4 65 71 75 64 28 26 |)..f.OPT .equd(&| 00002450 31 30 31 43 30 36 30 41 29 0d 1c 70 18 4f 50 54 |101C060A)..p.OPT| 00002460 20 a4 65 71 75 64 28 26 30 41 30 32 30 43 31 42 | .equd(&0A020C1B| 00002470 29 0d 1c 7a 18 4f 50 54 20 a4 65 71 75 64 28 26 |)..z.OPT .equd(&| 00002480 31 41 30 45 31 39 30 46 29 0d 1c 84 18 4f 50 54 |1A0E190F)....OPT| 00002490 20 a4 65 71 75 64 28 26 30 37 31 43 30 46 32 30 | .equd(&071C0F20| 000024a0 29 0d 1c 8e 18 4f 50 54 20 a4 65 71 75 64 28 26 |)....OPT .equd(&| 000024b0 30 31 31 38 31 44 30 35 29 0d 1c 98 18 4f 50 54 |01181D05)....OPT| 000024c0 20 a4 65 71 75 64 28 26 46 46 31 43 31 34 46 46 | .equd(&FF1C14FF| 000024d0 29 0d 1c a2 12 4f 50 54 20 a4 65 71 75 62 28 26 |)....OPT .equb(&| 000024e0 46 46 29 0d 1c ac 0b 2e 6e 6f 6f 66 69 6e 0d 1c |FF).....noofin..| 000024f0 b6 12 4f 50 54 20 a4 65 71 75 62 28 26 31 43 29 |..OPT .equb(&1C)| 00002500 0d 1c c0 0a 2e 69 6e 6c 6f 63 0d 1c ca 18 4f 50 |.....inloc....OP| 00002510 54 20 a4 65 71 75 64 28 26 36 45 45 30 36 46 30 |T .equd(&6EE06F0| 00002520 30 29 0d 1c d4 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 00002530 26 37 42 36 30 36 43 36 30 29 0d 1c de 18 4f 50 |&7B606C60)....OP| 00002540 54 20 a4 65 71 75 64 28 26 37 31 38 30 37 31 38 |T .equd(&7180718| 00002550 30 29 0d 1c e8 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 00002560 26 37 36 44 30 36 37 39 30 29 0d 1c f2 18 4f 50 |&76D06790)....OP| 00002570 54 20 a4 65 71 75 64 28 26 37 38 45 30 37 36 45 |T .equd(&78E076E| 00002580 30 29 0d 1c fc 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 00002590 26 37 42 34 30 37 42 33 30 29 0d 1d 06 18 4f 50 |&7B407B30)....OP| 000025a0 54 20 a4 65 71 75 64 28 26 37 42 36 30 37 42 35 |T .equd(&7B607B5| 000025b0 30 29 0d 1d 10 18 4f 50 54 20 a4 65 71 75 64 28 |0)....OPT .equd(| 000025c0 26 36 43 35 30 37 42 37 30 29 0d 1d 1a 18 4f 50 |&6C507B70)....OP| 000025d0 54 20 a4 65 71 75 64 28 26 36 43 37 30 36 43 36 |T .equd(&6C706C6| 000025e0 30 29 0d 1d 24 18 4f 50 54 20 a4 65 71 75 64 28 |0)..$.OPT .equd(| 000025f0 26 36 43 39 30 36 43 38 30 29 0d 1d 2e 18 4f 50 |&6C906C80)....OP| 00002600 54 20 a4 65 71 75 64 28 26 37 42 34 30 37 38 42 |T .equd(&7B4078B| 00002610 30 29 0d 1d 38 18 4f 50 54 20 a4 65 71 75 64 28 |0)..8.OPT .equd(| 00002620 26 37 42 36 30 37 42 35 30 29 0d 1d 42 18 4f 50 |&7B607B50)..B.OP| 00002630 54 20 a4 65 71 75 64 28 26 35 42 31 30 37 39 31 |T .equd(&5B10791| 00002640 30 29 0d 1d 4c 18 4f 50 54 20 a4 65 71 75 64 28 |0)..L.OPT .equd(| 00002650 26 36 43 32 30 35 42 32 30 29 0d 1d 56 14 4f 50 |&6C205B20)..V.OP| 00002660 54 20 a4 65 71 75 77 28 26 36 39 44 30 29 0d 1d |T .equw(&69D0)..| 00002670 60 0a 2e 69 6e 63 6f 6c 0d 1d 6a 18 4f 50 54 20 |`..incol..j.OPT | 00002680 a4 65 71 75 64 28 26 34 41 34 30 34 41 32 30 29 |.equd(&4A404A20)| 00002690 0d 1d 74 18 4f 50 54 20 a4 65 71 75 64 28 26 34 |..t.OPT .equd(&4| 000026a0 42 30 30 34 41 30 30 29 0d 1d 7e 18 4f 50 54 20 |B004A00)..~.OPT | 000026b0 a4 65 71 75 64 28 26 34 39 45 30 34 41 36 30 29 |.equd(&49E04A60)| 000026c0 0d 1d 88 18 4f 50 54 20 a4 65 71 75 64 28 26 35 |....OPT .equd(&5| 000026d0 31 43 30 34 42 43 30 29 0d 1d 92 18 4f 50 54 20 |1C04BC0)....OPT | 000026e0 a4 65 71 75 64 28 26 34 44 45 30 35 31 45 30 29 |.equd(&4DE051E0)| 000026f0 0d 1d 9c 18 4f 50 54 20 a4 65 71 75 64 28 26 34 |....OPT .equd(&4| 00002700 45 43 30 34 45 43 30 29 0d 1d a6 18 4f 50 54 20 |EC04EC0)....OPT | 00002710 a4 65 71 75 64 28 26 34 45 43 30 34 45 43 30 29 |.equd(&4EC04EC0)| 00002720 0d 1d b0 18 4f 50 54 20 a4 65 71 75 64 28 26 34 |....OPT .equd(&4| 00002730 45 43 30 34 45 43 30 29 0d 1d ba 18 4f 50 54 20 |EC04EC0)....OPT | 00002740 a4 65 71 75 64 28 26 34 45 43 30 34 45 43 30 29 |.equd(&4EC04EC0)| 00002750 0d 1d c4 18 4f 50 54 20 a4 65 71 75 64 28 26 34 |....OPT .equd(&4| 00002760 45 43 30 34 45 43 30 29 0d 1d ce 18 4f 50 54 20 |EC04EC0)....OPT | 00002770 a4 65 71 75 64 28 26 34 45 43 30 34 45 43 30 29 |.equd(&4EC04EC0)| 00002780 0d 1d d8 18 4f 50 54 20 a4 65 71 75 64 28 26 34 |....OPT .equd(&4| 00002790 45 43 30 34 45 43 30 29 0d 1d e2 18 4f 50 54 20 |EC04EC0)....OPT | 000027a0 a4 65 71 75 64 28 26 34 39 38 30 34 45 43 30 29 |.equd(&49804EC0)| 000027b0 0d 1d ec 18 4f 50 54 20 a4 65 71 75 64 28 26 34 |....OPT .equd(&4| 000027c0 41 43 30 34 41 32 30 29 0d 1d f6 14 4f 50 54 20 |AC04A20)....OPT | 000027d0 a4 65 71 75 77 28 26 34 46 45 30 29 0d 1e 00 0b |.equw(&4FE0)....| 000027e0 2e 69 6e 72 6f 6f 6d 0d 1e 0a 18 4f 50 54 20 a4 |.inroom....OPT .| 000027f0 65 71 75 64 28 26 31 41 31 44 31 35 31 34 29 0d |equd(&1A1D1514).| 00002800 1e 14 18 4f 50 54 20 a4 65 71 75 64 28 26 30 37 |...OPT .equd(&07| 00002810 32 30 46 46 31 43 29 0d 1e 1e 17 4f 50 54 20 a4 |20FF1C)....OPT .| 00002820 65 71 75 64 28 26 35 30 35 30 37 30 37 29 0d 1e |equd(&5050707)..| 00002830 28 18 4f 50 54 20 a4 65 71 75 64 28 26 32 30 30 |(.OPT .equd(&200| 00002840 35 30 35 30 35 29 0d 1e 32 18 4f 50 54 20 a4 65 |50505)..2.OPT .e| 00002850 71 75 64 28 26 32 30 32 30 32 30 32 30 29 0d 1e |qud(&20202020)..| 00002860 3c 18 4f 50 54 20 a4 65 71 75 64 28 26 31 43 31 |<.OPT .equd(&1C1| 00002870 43 31 43 31 43 29 0d 1e 46 18 4f 50 54 20 a4 65 |C1C1C)..F.OPT .e| 00002880 71 75 64 28 26 46 46 30 46 30 46 31 43 29 0d 1e |qud(&FF0F0F1C)..| 00002890 50 12 4f 50 54 20 a4 65 71 75 62 28 26 31 31 29 |P.OPT .equb(&11)| 000028a0 0d 1e 5a 05 5d 0d 1e 64 09 f1 20 7e 50 25 0d 1e |..Z.]..d.. ~P%..| 000028b0 6e 05 ed 0d 1e 78 13 f2 6f 73 63 6c 69 28 22 44 |n....x..oscli("D| 000028c0 49 52 20 4d 22 29 0d 1e 82 22 f2 6f 73 63 6c 69 |IR M")...".oscli| 000028d0 28 22 53 41 56 45 20 43 4f 44 45 32 20 33 43 46 |("SAVE CODE2 3CF| 000028e0 41 20 34 33 33 32 22 29 0d 1e 8c 13 f2 6f 73 63 |A 4332").....osc| 000028f0 6c 69 28 22 44 49 52 20 24 22 29 0d 1e 96 05 e0 |li("DIR $").....| 00002900 0d 1e a0 0e dd a4 65 71 75 62 28 53 25 29 0d 1e |......equb(S%)..| 00002910 aa 12 3f 50 25 3d 53 25 3a 50 25 3d 50 25 2b 31 |..?P%=S%:P%=P%+1| 00002920 0d 1e b4 0a 3d 70 61 73 73 25 0d 1e be 0e dd a4 |....=pass%......| 00002930 65 71 75 77 28 53 25 29 0d 1e c8 12 21 50 25 3d |equw(S%)....!P%=| 00002940 53 25 3a 50 25 3d 50 25 2b 32 0d 1e d2 0a 3d 70 |S%:P%=P%+2....=p| 00002950 61 73 73 25 0d 1e dc 0e dd a4 65 71 75 64 28 53 |ass%......equd(S| 00002960 25 29 0d 1e e6 12 21 50 25 3d 53 25 3a 50 25 3d |%)....!P%=S%:P%=| 00002970 50 25 2b 34 0d 1e f0 0a 3d 70 61 73 73 25 0d 1e |P%+4....=pass%..| 00002980 fa 12 dd f2 6f 73 63 6c 69 28 24 26 37 30 30 29 |....oscli($&700)| 00002990 0d 1f 04 16 ea 58 25 2c 59 25 3a 59 25 3d 37 3a |.....X%,Y%:Y%=7:| 000029a0 d6 26 46 46 46 37 0d 1f 0e 05 e1 0d ff |.&FFF7.......| 000029ad