Home » Archimedes archive » Archimedes World » AW-1996-06-Disc 2.adf » !Tables_Tables » !Tables/Pt1/Paccy
!Tables/Pt1/Paccy
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 » Archimedes World » AW-1996-06-Disc 2.adf » !Tables_Tables |
Filename: | !Tables/Pt1/Paccy |
Read OK: | ✔ |
File size: | ADD3 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
0REMOSCLIADFS::HardDisc4.$.CURR_NEW.!Tables.Pt1.Paccy 1LIBRARY "<TableA$Dir>.Pt1.Library" 2*FX225,1 3*FX229,0 4*FX220,17 5ONERROR:OSCLI"FX229,1":ONERROR OFF:PROCdt|M 6*KEY1 V%=stored_vga%:PROCdt|M 7*KEY5 PROCstats|M 8*KEY9 MOUSERECTANGLE 0,0,1278,960:REPEAT:MOUSEX,Y,Z:P.TAB(0,0)X,Y:UNTIL FALSE 9*KEY3 length$=STR$~262144:from$=STR$~back_data%:file$="bgdata2":OSCLI"SAVE "+file$+" "+from$+" +"+length$ 10DIM input_disk_name% 256,mouse% 16 11DIM pdrect% 16,pdrect2% 16,pdtrans% 16,pdplot% 8,ctrans% 256,paltab% 256 12DIM input% 16,output% 16,scale% 16 13DIM but%(40,4),but$(40) 14DIM area%(10,4) 15DIM points%(2,10) 16DIM string% 128 17DIM tables%(12,5) 18DIM tables$(12),ta$(12) 19DIM mov_tab%(5,5) 20DIM firstn%(12) 21DIM secondn%(12) 22DIM rnd_picker1%(12) 23DIM rnd_picker2%(12) 24DIM rnd_number1%(12) 25DIM rnd_number2%(12) 26DIM presented%(12) 27DIM x_answer%(12) 28DIM count_down%(6) 29DIM entry_areas%(5,4) 30DIM ds%(32,2) 31DIM corr%(30,3) 32DIM scale% 16 33DIM input% 16 34DIM output% 16 35DIM alx%(12),aly%(12) 36DIM apx%(12),apy%(12) 37DIM regroup%(12) 38DIM link_code% 1024 39stored_vga%=V% 40vga%=V% 41PROCpull_variables 42addrs$=STR$~m_code1% 43OSCLI"LOAD <TableA$Dir>.Pt1.GenCode "+addrs$ 44PROCassemble2 45PROCfind_screens 46PROCpull_gen_code_var 47PROCpull_pac_code_var 48sa1%=sprite_area1% 49number_of%=10 50timer_on%=1 51style%=1 52order%=2 53PROCpalette2 54VDU19,1,24,0,0,0 55IFV%=1 VDU 23,17,7,6,8;16;0; 56IFQ%=24 THEN 57PROCpalette2 58VDU19,1,24,0,0,0 59PROCpaccy(2) 60*FX113,1 61*FX112,1 62PROCtscore(512,360) 63PROCspace(900,100,0,0) 64Q%=25 65ENDIF 66IFQ%=25:V%=stored_vga%:CHAIN"<TableA$Dir>.Pt1.link" 67IFQ%=30 THEN 68PROCpalette2 69VDU19,1,24,0,0,0 70PROCpaccy(2) 71*FX113,1 72*FX112,1 73PROCtscore(512,360) 74PROCspace(900,100,0,0) 75Q%=31 76ENDIF 77IFQ%=31:V%=stored_vga%:CHAIN"<TableA$Dir>.Pt1.link" 78IFQ%=64 THEN 79PROCpalette2 80VDU19,1,24,0,0,0 81PROCpaccy(1) 82*FX113,1 83*FX112,1 84PROCtscore(512,360) 85PROCspace(900,100,0,0) 86PROCtext_box(100,110,1080,90,2,"You walk on to the next room.","","") 87PROCspace(900,10,0,0) 88Q%=65 89ENDIF 90IFQ%=65:V%=stored_vga%:CHAIN"<TableA$Dir>.Pt1.link" 91IFQ%=75 THEN 92PROCpalette2 93VDU19,1,24,0,0,0 94PROCpaccy(1) 95*FX113,1 96*FX112,1 97PROCtscore(512,360) 98PROCspace(900,100,0,0) 99PROCtext_box(100,110,1080,90,2,"You walk on to the next room.","","") 100PROCspace(900,10,0,0) 101Q%=66 102ENDIF 103IFQ%=66:V%=stored_vga%:CHAIN"<TableA$Dir>.Pt1.link" 104IFQ%=211 THEN 105PROCpalette2 106VDU19,1,24,0,0,0 107PROCpaccy(RND(2)) 108*FX113,1 109*FX112,1 110PROCtscore(512,360) 111PROCspace(900,100,0,0) 112IFS%=1 PROCdt 113CHAIN"<TableA$Dir>.Pt1.link" 114ENDIF 115DEFPROCset_up_screens(set%) 116IFset%=9 THEN 117des_sprite$="game1s10" 118title$="Level 7. The crusher.":ad$="Allow the top alien to chase you." 119man_gridx%=14 120man_gridy%=6 121total_apples%=4 122apx%(1)=12:apy%(1)=13 123apx%(2)=12:apy%(2)=14 124apx%(3)=13:apy%(3)=13 125apx%(4)=13:apy%(4)=14 126apx%(5)=13:apy%(5)=13 127apx%(6)=13:apy%(6)=14 128apx%(7)=13:apy%(7)=15 129apx%(8)=13:apy%(8)=16 130total_aliens%=2 131alx%(1)=3:aly%(1)=0 132alx%(2)=9:aly%(2)=17 133alx%(3)=22:aly%(3)=0 134time_area%=180 135ENDIF 136IFset%=7 THEN 137des_sprite$="game1s9" 138title$="Level 9. Sand tunnels.":ad$="Move very quickly!" 139man_gridx%=23 140man_gridy%=2 141total_apples%=4 142apx%(1)=12:apy%(1)=15 143apx%(2)=12:apy%(2)=16 144apx%(3)=13:apy%(3)=15 145apx%(4)=13:apy%(4)=16 146apx%(5)=13:apy%(5)=13 147apx%(6)=13:apy%(6)=14 148apx%(7)=13:apy%(7)=15 149apx%(8)=13:apy%(8)=16 150total_aliens%=3 151alx%(1)=3:aly%(1)=6 152alx%(2)=9:aly%(2)=17 153alx%(3)=15:aly%(3)=5 154time_area%=110 155ENDIF 156IFset%=1 THEN 157des_sprite$="game1s1" 158title$="Level 1. The store room.":ad$="Watch for the hidden dangers!" 159man_gridx%=23 160man_gridy%=2 161total_apples%=2 162apx%(1)=9:apy%(1)=8 163apx%(2)=16:apy%(2)=8 164apx%(3)=14:apy%(3)=8 165apx%(4)=16:apy%(4)=8 166apx%(5)=14:apy%(5)=13 167apx%(6)=14:apy%(6)=14 168apx%(7)=13:apy%(7)=13 169apx%(8)=13:apy%(8)=14 170total_aliens%=2 171alx%(1)=5:aly%(1)=15 172alx%(2)=7:aly%(2)=15 173alx%(3)=7:aly%(3)=15 174alx%(4)=17:aly%(4)=15 175time_area%=120 176ENDIF 177IFset%=8 THEN 178des_sprite$="game1s7" 179title$="Level 7. The chemical works.":ad$="Go through the top." 180man_gridx%=23 181man_gridy%=2 182total_apples%=2 183apx%(1)=8:apy%(1)=5 184apx%(2)=17:apy%(2)=5 185apx%(3)=11:apy%(3)=5 186apx%(4)=12:apy%(4)=5 187apx%(5)=13:apy%(5)=5 188apx%(6)=14:apy%(6)=5 189apx%(7)=15:apy%(7)=5 190apx%(8)=16:apy%(8)=5 191total_aliens%=3 192alx%(1)=12:aly%(1)=15 193alx%(2)=13:aly%(2)=15 194alx%(3)=22:aly%(3)=7 195alx%(3)=5:aly%(4)=7 196time_area%=180 197ENDIF 198IFset%=2 THEN 199des_sprite$="game1s3" 200title$="Level 3. The hidden maze.":ad$="Use the secret passages." 201man_gridx%=10 202man_gridy%=10 203total_apples%=2 204apx%(1)=9:apy%(1)=15 205apx%(2)=16:apy%(2)=15 206apx%(3)=16:apy%(3)=15 207apx%(4)=16:apy%(4)=16 208apx%(5)=16:apy%(5)=15 209apx%(6)=16:apy%(6)=16 210apx%(7)=16:apy%(7)=17 211apx%(8)=16:apy%(8)=18 212total_aliens%=2 213alx%(1)=2:aly%(1)=14 214alx%(2)=22:aly%(2)=16 215alx%(3)=23:aly%(3)=6 216alx%(4)=17:aly%(4)=15 217time_area%=120 218ENDIF 219IFset%=5 THEN 220des_sprite$="game1s6" 221title$="Level 6. Danger tunnels.":ad$="Take the power cells from the bottom." 222man_gridx%=19 223man_gridy%=16 224total_apples%=4 225apx%(1)=9:apy%(1)=15 226apx%(2)=9:apy%(2)=16 227apx%(3)=16:apy%(3)=15 228apx%(4)=16:apy%(4)=16 229apx%(5)=16:apy%(5)=15 230apx%(6)=16:apy%(6)=16 231apx%(7)=16:apy%(7)=17 232apx%(8)=16:apy%(8)=18 233total_aliens%=4 234alx%(1)=3:aly%(1)=9 235alx%(2)=12:aly%(2)=2 236alx%(3)=7:aly%(3)=18 237alx%(4)=17:aly%(4)=18 238time_area%=180 239ENDIF 240IFset%=3 THEN 241des_sprite$="game1s2" 242title$="Level 2. The control centre.":ad$="Choose the correct path." 243man_gridx%=1 244man_gridy%=0 245total_apples%=2 246apx%(1)=13:apy%(1)=8 247apx%(2)=13:apy%(2)=10 248apx%(3)=13:apy%(3)=10 249apx%(4)=11:apy%(4)=11 250apx%(5)=15:apy%(5)=8 251apx%(6)=15:apy%(6)=9 252apx%(7)=15:apy%(7)=10 253apx%(8)=15:apy%(8)=11 254total_aliens%=4 255alx%(1)=21:aly%(1)=7 256alx%(2)=11:aly%(2)=12 257alx%(3)=15:aly%(3)=6 258alx%(4)=6:aly%(4)=18 259time_area%=160 260ENDIF 261IFset%=4 THEN 262des_sprite$="game1s4" 263title$="Level 4. The simple maze.":ad$="Don't get close to the aliens." 264man_gridx%=4 265man_gridy%=0 266total_apples%=3 267apx%(1)=9:apy%(1)=0 268apx%(2)=3:apy%(2)=14 269apx%(3)=7:apy%(3)=14 270apx%(4)=3:apy%(4)=15 271apx%(5)=7:apy%(5)=12 272apx%(6)=7:apy%(6)=13 273apx%(7)=7:apy%(7)=14 274apx%(8)=7:apy%(8)=15 275total_aliens%=5 276alx%(1)=24:aly%(1)=10 277alx%(2)=18:aly%(2)=13 278alx%(3)=16:aly%(3)=7 279alx%(4)=11:aly%(4)=8 280alx%(5)=14:aly%(5)=11 281time_area%=160 282ENDIF 283IFset%=6 THEN 284des_sprite$="game1s5" 285title$="Level 5. Sorting area.":ad$="Take the right power cell first." 286man_gridx%=4 287man_gridy%=2 288total_apples%=3 289apx%(1)=9:apy%(1)=9 290apx%(2)=12:apy%(2)=10 291apx%(3)=15:apy%(3)=9 292apx%(4)=7:apy%(4)=9 293apx%(5)=9:apy%(5)=9 294apx%(6)=11:apy%(6)=9 295apx%(7)=13:apy%(7)=9 296apx%(8)=15:apy%(8)=9 297apx%(9)=17:apy%(9)=9 298apx%(10)=19:apy%(10)=9 299apx%(11)=21:apy%(11)=9 300apx%(12)=23:apy%(12)=9 301total_aliens%=5 302alx%(1)=3:aly%(1)=18 303alx%(2)=7:aly%(2)=18 304alx%(3)=11:aly%(3)=18 305alx%(4)=15:aly%(4)=18 306alx%(5)=19:aly%(5)=18 307time_area%=160 308ENDIF 309IFset%=10 THEN 310des_sprite$="game1s8" 311title$="Level 8. Raining sand.":ad$="Hide from the aliens first." 312man_gridx%=2 313man_gridy%=2 314total_apples%=3 315apx%(1)=9:apy%(1)=15 316apx%(2)=11:apy%(2)=15 317apx%(3)=14:apy%(3)=15 318apx%(4)=16:apy%(4)=15 319total_aliens%=3 320alx%(1)=10:aly%(1)=10 321alx%(2)=12:aly%(2)=10 322alx%(3)=14:aly%(3)=10 323alx%(4)=15:aly%(4)=18 324alx%(5)=19:aly%(5)=18 325time_area%=160 326ENDIF 327IFset%=11 THEN 328des_sprite$="game1s11" 329title$="Introduction.":ad$=" " 330man_gridx%=5 331man_gridy%=17 332total_apples%=4 333apx%(1)=2:apy%(1)=14 334apx%(2)=4:apy%(2)=14 335apx%(3)=6:apy%(3)=14 336apx%(4)=8:apy%(4)=14 337total_aliens%=4 338alx%(1)=2:aly%(1)=11 339alx%(2)=4:aly%(2)=11 340alx%(3)=6:aly%(3)=11 341alx%(4)=8:aly%(4)=11 342time_area%=120 343ENDIF 344IFset%=12 THEN 345des_sprite$="game1s12" 346title$="Level 5. Sorting area.":ad$="Take the right power cell first." 347man_gridx%=4 348man_gridy%=2 349total_apples%=3 350apx%(1)=9:apy%(1)=9 351apx%(2)=12:apy%(2)=10 352apx%(3)=15:apy%(3)=9 353total_aliens%=5 354alx%(1)=3:aly%(1)=18 355alx%(2)=7:aly%(2)=18 356alx%(3)=11:aly%(3)=18 357alx%(4)=15:aly%(4)=18 358alx%(5)=19:aly%(5)=18 359time_area%=160 360ENDIF 361tx2%=32:ty2%=860 362m%=m_code2% 363!(m%+&1C)=49 364!(m%+&24)=0 365!(m%+&28)=0 366!(m%+&2C)=0 367!(m%+&34)=0 368?(m%+&40)=0 369?(m%+&41)=0 370?(m%+&30)=man_gridx% 371?(m%+&31)=man_gridy% 372?(m%+&32)=man_gridx% 373?(m%+&33)=man_gridy% 374!(m%+&C)=man_gridx%*48 375!(m%+&10)=man_gridy%*48 376!(m%+&38)=total_apples% 377a%=m%+&100 378FORf%=0 TO total_apples%-1 379!(a%+(f%*28)+&0)=apx%(f%+1)*48 380!(a%+(f%*28)+&4)=apy%(f%+1)*48 381?(a%+(f%*28)+&14)=apx%(f%+1) 382?(a%+(f%*28)+&15)=apy%(f%+1) 383?(a%+(f%*28)+&16)=apx%(f%+1) 384?(a%+(f%*28)+&17)=apy%(f%+1) 385?(a%+(f%*28)+&18)=0 386NEXT 387!(m%+&20)=total_aliens% 388a%=m%+&60 389FORf%=0 TO total_aliens%-1 390!(a%+(f%*32)+&0)=alx%(f%+1)*48 391!(a%+(f%*32)+&4)=aly%(f%+1)*48 392!(a%+(f%*32)+&8)=0 393!(a%+(f%*32)+&C)=49 394?(a%+(f%*32)+&19)=alx%(f%+1) 395?(a%+(f%*32)+&1A)=aly%(f%+1) 396?(a%+(f%*32)+&1B)=alx%(f%+1) 397?(a%+(f%*32)+&1C)=aly%(f%+1) 398?(a%+(f%*32)+&1D)=0 399NEXT 400ENDPROC 401DEFPROCpaccy(style%) 402VOICES 1 403IFL%=0 THEN 404PROCload_sprites("pac") 405PROCmerge_sprites("numbers") 406PROCmerge_sprites("numbuts") 407PROCmerge_sprites("buttons") 408ENDIF 409total_got_fp=20 410total_got%=20 411total_possible%=20 412IF Q%=75 OR Q%=64 THEN 413total_got_fp=10 414total_got%=10 415total_possible%=10 416ENDIF 417IFL%=0 THEN 418PROCset_up_screens(12) 419*fx112,2 420COLOUR 132:CLS 421PROCrender_des_screen 422PROCplot_sprite(0,144,1,1,1,1,"exit3") 423fade$="fade" 424PROCfade(0,960,4,0,1,1) 425*fx112,1 426area%=3 427PROCcachesound("aliensnear",1) 428FORf%=1 TO 80 429PROCst_pause 430IF FNnosound=TRUE:SOUND 1,&17F,1,1 431A%=m_code2% 432B%=sprite_area1% 433IFV%=0 C%=screen_one%+(16*320)+(8*320)+area% 434IFV%=1 C%=screen_one%+(8*320)+area% 435D%=(320*240)*(V%+1) 436IFV%=0:CALL rain% 437IFV%=1:CALL rain_vga% 438area%=area%+1:IF area%=4 area%=0 439PROCen_pause(5) 440NEXT 441PROCplot_sprite(0,144,1,1,1,1,"73") 442B%=screen_one%:C%=screen_two%:CALLsave_screen% 443PROCtext_box(100,100,1080,160,2,"You have found yourself in the alien fuel store.","Do you require more instructions?","") 444PROCdefine_buttons(2) 445REPEAT:MOUSEmx%,my%,mc%:UNTILmc%=0 446FORmsxf%=1TO10:MOUSEmx%,my%,mc%:NEXT 447FORbn%=1 TO total_but% 448PROCbut_off(but%(bn%,0),but%(bn%,1),but$(bn%)) 449NEXT 450MOUSEON 451REPEAT 452PROCcheck_buttons(an_num%) 453UNTILselected%>0 454IFselected%=1 THEN 455C%=screen_one%:B%=screen_two%:CALLsave_screen% 456PROCpause(100) 457PROCtext_box(100,160,1080,160,2,"The aliens store their yellow and blue fuel in","these rooms. You must try to escape.","") 458PROCspace(980,60,0,0) 459C%=screen_one%:B%=screen_two%:CALLsave_screen% 460PROCpause(100) 461PROCtext_box(100,700,1080,160,2,"There are 'Code' boxes hidden in each room.","These will open the escape door.","") 462PROCpause(200) 463PROCspace(980,100,0,0) 464PROCset_up_screens(11) 465*fx112,1 466COLOUR 132:CLS 467PROCrender_des_screen 468A%=m_code2% 469B%=sprite_area1% 470C%=screen_one%+(16*320) 471IF?(m_code2%+&40)=0:CALL main% 472A%=m_code2% 473B%=sprite_area1% 474C%=screen_one%+(16*320) 475CALL alien% 476A%=m_code2% 477B%=sprite_area1% 478C%=screen_one%+(16*320) 479CALL apple% 480PROCtext_box(600,760,560,140,2,"Use the arrow keys","to move.","") 481PROCplot_sprite_masked(500,820,1,1,1,1,"arrow") 482PROCspace(980,80,0,0) 483PROCtext_box(600,650,560,90,2,"Find the coded boxes.","","") 484PROCplot_sprite_masked(500,670,1,1,1,1,"arrow") 485PROCspace(980,80,0,0) 486PROCtext_box(600,518,560,90,2,"Avoid the Table Aliens!","","") 487PROCplot_sprite_masked(500,530,1,1,1,1,"arrow") 488PROCspace(980,80,0,0) 489PROCtext_box(600,288,560,210,2,"You can move through","the fuel. The aliens","cannot!") 490PROCplot_sprite_masked(500,380,1,1,1,1,"arrow") 491PROCspace(980,80,0,0) 492PROCtext_box(600,60,560,210,2,"After decoding the","code boxes, use the","escape door.") 493PROCplot_sprite_masked(500,140,1,1,1,1,"arrow") 494PROCplot_sprite(0,144,1,1,1,1,"exit3") 495PROCspace(980,64,0,0) 496ENDIF 497V%=stored_vga% 498L%=1:RUN 499ENDIF 500PROCset_table_one 501bom%=1 502PROCcachesound("aliensnear",1) 503switch%=0 504IFV%=0 THEN 505 sc1%=screen_one%+(16*320) 506 sc2%=screen_one%+(16*320)+(8*320) 507 rainy%=rain% 508 amount_rain%=((320*240)*(1))-(8*320) 509ENDIF 510IFV%=1 THEN 511 sc1%=screen_one% 512 sc2%=screen_one%+(8*320) 513 rainy%=rain_vga% 514 amount_rain%=((320*240)*(2))-(8*320) 515ENDIF 516REM~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 517IF FALSE THEN 518*fx112,1 519VDU5 520FORf%=0 TO 3 STEP 3 521P%=link_code% 522[:OPT f% 523/register store 524.store /0 525EQUD 0 526.rain_area /4 527EQUD 0 528.m_code2 /8 529EQUD m_code2% 530.sprite_area /C 531EQUD sprite_area1% 532.screen_one /10 533EQUD sc1% 534.screen_two /14 535EQUD sc2% 536.amount_rain /18 537EQUD amount_rain% 538.rain_add /1C 539EQUD 0 540.main /20 541EQUD main% 542.alien /24 543EQUD alien% 544.apple /28 545EQUD apple% 546.rainy /2C 547EQUD rainy% 548.testing /30 549EQUD testing% 550EQUD 0 551 552.link 553/A% = rain_add% 554ADR R10,store 555STR R14,[R1,#&0] 556STR R0,[R1,#&1C] 557/main 558LDR R0,[R10,#&8] 559LDR R1,[R10,#&C] 560LDR R2,[R10,#&14] 561LDR R3,[R10,#&20] 562LDRB R4,[R0,#&40] 563CMP R4,#0:BLEQ 564ENDIF 565REM_______________________________ 566 567REPEAT 568set%=(O%*2)-(style%-1) 569PROCset_up_screens(set%) 570*fx112,1 571COLOUR 132:CLS 572PROCrender_des_screen 573E%=37 574count_d%=TIME:T$="" 575PROCset_up_count_down(tx2%,ty2%,3,(100*time_area%)+100,1) 576area%=3:escape%=0:got%=0:collect%=0 577PROCplot_sprite(0,144,1,1,1,1,"73") 578MOUSE OFF 579REPEAT 580ntime%=TIME 581IF FNnosound=TRUE:SOUND 1,&17F,1,1 582IFcount_d%+150<TIME THEN 583 T$=FNprint_timer(tx2%,ty2%,3,1) 584 count_d%=TIME 585 IF set%=8 OR set%=10 THEN 586 PROCplot_sprite(10*48,18*48,1,1,1,1,"bg16") 587 PROCplot_sprite(12*48,18*48,1,1,1,1,"bg16") 588 PROCplot_sprite(13*48,18*48,1,1,1,1,"bg16") 589 PROCplot_sprite(15*48,18*48,1,1,1,1,"bg16") 590 ENDIF 591ENDIF 592 593 A%=m_code2% 594 B%=sprite_area1% 595 C%=sc1% 596IF?(m_code2%+&40)=0:CALL main% 597 B%=sprite_area1% 598 C%=sc1% 599CALL alien% 600 B%=sprite_area1% 601 C%=sc1% 602CALL apple% 603 B%=sprite_area1% 604 C%=sc2%+area% 605 D%=amount_rain% 606CALL rainy% 607 area%=area%+1 608 IF area%=4 area%=0 609REM !screen_one%=&0 610 A%=m_code2% 611CALL testing% 612 613IF ?(m_code2%+&41)<>collect% THEN 614 res_x%=!(m_code2%+&C) 615 res_y%=!(m_code2%+&10) 616 PROCtest_tables 617 SOUND2,-15,20,&2000 618 collect%=?(m_code2%+&41) 619 bom%=bom%+1 620ENDIF 621IF?(m_code2%+&40)=1 THEN 622 PROCcachesound("laser_door",1) 623 SOUND 1,&17F,1,1 624 got%=got%+1 625ENDIF 626IFescape%=0 AND (?(m_code2%+&41)=!(m_code2%+&38)) THEN 627 escape%=1 628ENDIF 629IFescape%>0 THEN 630 escape%=escape%+1 631ENDIF 632IFescape%=10 THEN 633 escape%=-1 634 PROCcachesound("computer1",1) 635 FORf%=1 TO4 636 PROCplot_sprite(0,144,1,1,1,1,"exit3") 637 SOUND 1,&17F,1,1 638 PROCpause(20) 639 PROCplot_sprite(0,144,1,1,1,1,"exit2") 640 PROCpause(20) 641 NEXT 642 PROCcachesound("aliensnear",1) 643ENDIF 644E%=0 645IFntime%+3<TIME REPEAT:UNTILntime%+3<TIME 646UNTIL !(m_code2%+&C)=0 OR got%>8 OR T$="0" 647MOUSE ON 648IF got%>8 THEN 649PROCcachesound("wrong2",1) 650ff%=1 651FORf%=1 TO 20 652PROCst_pause 653IFf% MOD 4=0 SOUND1,-15,1,1 654ff%=(ff%*-1)+3 655PROCplot_sprite((!(m_code2%+&C))-48,(!(m_code2%+&10))-48,1,1,1,1,"gotyou"+STR$(ff%)) 656PROCen_pause(20) 657NEXT 658PROCtext_box(200,400,880,330,2,"The table aliens have captured you","again. You have another chance","to escape. Good luck.") 659PROCspace(900,100,0,0) 660V%=stored_vga% 661J%=J%+1 662RUN 663ENDIF 664IF T$="0" THEN 665PROCpause(200) 666PROCtext_box(200,400,880,330,2,"You have run out of time.","Try again and work quickly","this time.") 667PROCspace(900,100,0,0) 668V%=stored_vga% 669J%=J%+1 670RUN 671ENDIF 672UNTIL !(m_code2%+&C)=0 673total_got%=total_got_fp-J% 674IFtotal_got%<0:total_got%=0 675ENDPROC 676DEFPROCtext_box(st_x%,st_y%,length%,height%,just_type%,a$,b$,c$) 677PROCbox2(st_x%,st_y%,length%,height%) 678f_width1%=FNfont_string_w(a$) 679f_width2%=FNfont_string_w(b$) 680f_width3%=FNfont_string_w(c$) 681f_height%=70 682lines%=3:IFc$="":lines%=2:IFb$="":lines%=1 683xpos1%=st_x%+((length%-(f_width1%/400))/2) 684xpos2%=st_x%+((length%-(f_width2%/400))/2) 685xpos3%=st_x%+((length%-(f_width3%/400))/2) 686IFjust_type%=2 THEN 687IFxpos1%<xpos2% xpos2%=xpos1% ELSE xpos1%=xpos2% 688IFxpos2%<xpos3% xpos3%=xpos2% ELSE xpos2%=xpos3% 689IFxpos3%<xpos1% xpos1%=xpos3% ELSE xpos3%=xpos1% 690ENDIF 691ypos1%=(st_y%-(f_height%/6)*4)+(height%-(lines%*f_height%))/2+(lines%*f_height%) 692ypos2%=ypos1%-f_height% 693ypos3%=ypos2%-f_height% 694PROCpri(xpos1%,ypos1%,a$) 695IFlines%>1 PROCpri(xpos2%,ypos2%,b$) 696IFlines%>2 PROCpri(xpos3%,ypos3%,c$) 697ENDPROC 698DEFPROCpri(x%,y%,a$) 699SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han% 700SYS"Font_SetFontColours",0,0,1,2 701VDU0,0,0,0,0,0,0,0 702SYS"Font_Paint",,a$,16,x%,y% 703SYS"Font_LoseFont",han% 704ENDPROC 705DEFFNfont_string_w(string$) 706$string%=string$ 707SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han% 708SYS"Font_StringWidth",0,string%,600000,480000,-1,80 TO r0,r1,f_width% 709SYS"Font_LoseFont",han% 710=f_width% 711DEFFNfont_string_h(string$) 712$string%=string$ 713SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han% 714SYS"Font_StringWidth",0,string%,600000,480000,-1,80 TO r0,r1,r2,f_height 715SYS"Font_LoseFont",han% 716=f_height% 717DEFPROCstart_anim(blank$) 718SYS"OS_SpriteOp",&118,sprite_area1%,sel_sprite$ TO r0,r1,r2 719width%=(!(r2+16)+1)*16:height%=(!(r2+20)+1)*(4*(vga%+1)) 720SYS"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height% 721PROCplot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$) 722an_xx%=an_x%:an_yy%=an_y% 723ENDPROC 724DEFPROCanim(blank$) 725PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$) 726SYS"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height% 727PROCplot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$) 728an_xx%=an_x%:an_yy%=an_y% 729ENDPROC 730DEFPROCend_anim(blank$) 731PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$) 732ENDPROC 733DEFPROCpri2(x%,y%,a$) 734SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han% 735SYS"Font_SetFontColours",0,3,2,-2 736VDU0,0,0,0,0,0,0,0 737SYS"Font_Paint",,a$,16,x%,y% 738SYS"Font_LoseFont",han% 739ENDPROC 740DEFPROCbox(bx%,by%,bxx%,byy%) 741bxx%=bx%+bxx%:byy%=by%+byy% 742VDU24,bx%;by%;bxx%;byy%;18,0,130,16 743VDU24,bx%+4;by%+4;bxx%-4;byy%-4;18,0,129,16 744VDU24,bx%+8;by%+8;bxx%-8;byy%-8;18,0,128,16,26 745GCOL0,3:MOVE bx%+4,by%:PLOT5,bxx%,by%:PLOT5,bxx%,byy%-4 746MOVE bx%+4,by%+2:PLOT5,bxx%-2,by%+2:PLOT5,bxx%-2,byy%-4 747GCOL0,2:MOVE bx%+8,by%+4:PLOT5,bxx%-4,by%+4:PLOT5,bxx%-4,byy%-8 748MOVE bx%+8,by%+6:PLOT5,bxx%-6,by%+6:PLOT5,bxx%-6,byy%-8 749ENDPROC 750DEFPROCbox2(bx%,by%,bxx%,byy%) 751bxx%=bx%+bxx%:byy%=by%+byy% 752VDU24,bx%-4;by%-4;bxx%+4;byy%+4;18,0,131,16 753VDU24,bx%;by%;bxx%;byy%;18,0,128,16,26 754ENDPROC 755DEFPROCset_up_count_down(tx%,ty%,digits%,amount%,timer%) 756PROCbox2(tx%,ty%,48*digits%,72) 757count_down%(timer%)=TIME+amount% 758ENDPROC 759DEFFNprint_timer(tx%,ty%,digits%,timer%) 760timer%=(count_down%(timer%)-TIME)/100 761IFtimer%<0 timer%=0000:count_down%(timer%)=0 762t$=STR$(timer%) 763PROCplot_numbers(tx%+24,ty%+8,digits%,t$) 764=t$ 765DEFPROCplot_numbers(x%,y%,digits%,a$) 766IFLEN(a$)<digits% THEN 767REPEAT 768a$="d"+a$ 769UNTILLEN(a$)=digits% 770ENDIF 771FORpn%=1 TO LEN(a$) 772PROCplot_sprite((x%-36)+(pn%*36),y%,1,1,1,1,MID$(a$,pn%,1)) 773NEXT 774ENDPROC 775DEFPROCset_pos_buttons(bx%,by%) 776FORbf%=1TO total_but% 777but%(bf%,0)=but%(bf%,0)+bx% 778but%(bf%,1)=but%(bf%,1)+by% 779NEXT 780ENDPROC 781DEFPROCpalette2 782IFV%=0 VDU24,0;960;1278;1022;18,0,131,16,26 783VDU19,1,24,136,136,136 784LOCALp%,r%,g%,b% 785RESTORE+4 786FORp%=0TO15 787READr%,g%,b%:COLOURp%,r%,g%,b% 788NEXT:ENDPROC 789DATA 255,255,255,187,187,187,136,136,136,0,0,0 790DATA 0,0,175,0,0,255,0,204,255,255,255,0 791DATA 204,204,0,221,0,0,136,17,0,0,153,0 792DATA 0,187,34,0,255,0,255,221,170,0,0,175 793DEFPROCassemble2 794*FX113,1 795*FX112,2 796FORopt%=0 TO 3 STEP3 797P%=m_code2% 798[ 799OPT0 800.move_bombs 801EQUD main 802EQUD alien 803EQUD apple 804EQUD 720 805EQUD 672 806EQUD 0 807EQUD 0 808EQUD 49 809EQUD 4 810EQUD 0 811EQUD 0 812EQUD 0 813EQUB 15 814EQUB 14 815EQUB 0 816EQUB 0 817EQUD 0 818EQUD 4 819EQUD testing 820EQUB 0 821EQUB 0 822EQUB 0 823EQUB 0 824EQUD rain 825EQUD rain_vga 826EQUD 0 827EQUD 0 828EQUD 0 829EQUD 0 830EQUD 0 831.al 832EQUD 288:EQUD 432:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 3:EQUB 6:EQUB 9:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 833EQUD 432:EQUD 240:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 9:EQUB 9:EQUB 5:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 834EQUD 288:EQUD 288:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 6:EQUB 6:EQUB 6:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 835EQUD 240:EQUD 240:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 12:EQUB 5:EQUB 5:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 836EQUD 0:EQUD 0:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 837.ap 838EQUD 720:EQUD 720:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 15:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 839EQUD 720:EQUD 768:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 16:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 840EQUD 720:EQUD 816:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 17:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 841EQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 842EQUD 720:EQUD 720:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 15:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 843EQUD 720:EQUD 768:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 16:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 844EQUD 720:EQUD 816:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 17:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 845EQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 846EQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 847EQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 848EQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 849EQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 850ALIGN 851.testing 852MOV R10,R0 853STR R14,[R10,#&5C] 854LDRB R1,[R10,#&30] 855LDRB R2,[R10,#&32] 856LDRB R5,[R10,#&31] 857LDRB R6,[R10,#&33] 858LDR R12,[R10,#&20] 859ADD R11,R10,#&60 860ADD R11,R11,#&19 861.test_alien_hit_loop 862LDRB R3,[R11,#&0] 863LDRB R4,[R11,#&2] 864LDRB R7,[R11,#&1] 865LDRB R8,[R11,#&3] 866BL check_grid_co 867CMP R9,#1 868BEQ man_hit_alien 869ADD R11,R11,#32 870SUB R12,R12,#1 871CMP R12,#0 872BGT test_alien_hit_loop 873B over_alien_hit 874.man_hit_alien 875STRB R9,[R10,#&40] 876.over_alien_hit 877LDR R12,[R10,#&38] 878ADD R11,R10,#&100 879ADD R11,R11,#&14 880.test_apple_hit_loop 881LDRB R3,[R11,#&0] 882LDRB R4,[R11,#&2] 883LDRB R7,[R11,#&1] 884LDRB R8,[R11,#&3] 885BL check_grid_co 886CMP R9,#1 887BEQ man_hit_apple 888ADD R11,R11,#28 889SUB R12,R12,#1 890CMP R12,#0 891BGT test_apple_hit_loop 892B over_apple_hit 893.man_hit_apple 894STRB R9,[R11,#4] 895LDRB R9,[R10,#&41] 896ADD R9,R9,#1 897STRB R9,[R10,#&41] 898.over_apple_hit 899LDR R0,[R10,#&5C] 900MOV R15,R0 901.temp_stack 902EQUD 0 903EQUD 0 904EQUD 0 905EQUD 0 906.check_grid_co 907ADR R9,temp_stack 908STRB R1,[R9,#1] 909STRB R2,[R9,#2] 910STRB R3,[R9,#3] 911STRB R4,[R9,#4] 912STRB R5,[R9,#5] 913STRB R6,[R9,#6] 914STRB R7,[R9,#7] 915STRB R8,[R9,#8] 916MOV R9,#0 917CMP R1,R3 918MOVEQ R9,#1 919CMP R1,R4 920MOVEQ R9,#1 921CMP R2,R3 922MOVEQ R9,#1 923CMP R2,R4 924MOVEQ R9,#1 925CMP R9,#0 926BEQ no_x_match 927MOV R9,#0 928CMP R5,R7 929MOVEQ R9,#1 930CMP R5,R8 931MOVEQ R9,#1 932CMP R6,R7 933MOVEQ R9,#1 934CMP R6,R8 935MOVEQ R9,#1 936.no_x_match 937MOV R15,R14 938ALIGN 939.rain 940MOV R10,R0 941STR R1,[R10,#&50] 942STR R2,[R10,#&54] 943STR R14,[R10,#&5C] 944MOV R0,#0 945MOV R9,#&77 946MOV R6,#320 947.rain_loop 948LDRB R5,[R2,R3] 949CMP R5,#&77 950BNE over_rain 951ADD R7,R3,R6 952ADD R7,R7,R6 953LDRB R8,[R2,R7] 954CMP R8,#&44 955BNE slide_right 956STRB R8,[R2,R3] 957STRB R9,[R2,R7] 958B over_rain 959.slide_right 960SUB R7,R7,R6 961ADD R7,R7,#1 962LDRB R8,[R2,R7] 963CMP R8,#&44 964BNE slide_left 965STRB R8,[R2,R3] 966STRB R9,[R2,R7] 967B over_rain 968.slide_left 969SUB R7,R7,#2 970LDRB R8,[R2,R7] 971CMP R8,#&44 972BNE over_rain 973STRB R8,[R2,R3] 974STRB R9,[R2,R7] 975.over_rain 976SUB R3,R3,#4 977CMP R3,#8 978BGT rain_loop 979MOV R15,R14 980.rain_vga 981MOV R10,R0 982STR R1,[R10,#&50] 983STR R2,[R10,#&54] 984STR R14,[R10,#&5C] 985MOV R0,#239 986MOV R9,#&77 987MOV R6,R3 988SUB R6,R6,#4 989.rain_vertical_loop_vga 990SUB R6,R6,#640 991MOV R3,R6 992SUB R11,R3,#320 993ADD R7,R3,#1280 994SUB R12,R7,#320 995MOV R1,#320 996.rain_horizontal_loop_vga 997SUB R3,R3,#4 998SUB R7,R7,#4 999SUB R11,R11,#4 1000SUB R12,R12,#4 1001LDRB R5,[R2,R3] 1002CMP R5,#&77 1003BNE over_rain_vga 1004LDRB R8,[R2,R7] 1005CMP R8,#&44 1006BNE slide_right_vga 1007STRB R8,[R2,R3] 1008STRB R8,[R2,R11] 1009STRB R9,[R2,R7] 1010STRB R9,[R2,R12] 1011B over_rain_vga 1012.slide_right_vga 1013SUB R7,R7,#640 1014SUB R12,R12,#640 1015ADD R7,R7,#1 1016ADD R12,R12,#1 1017LDRB R8,[R2,R7] 1018CMP R8,#&44 1019BNE slide_left_vga 1020STRB R8,[R2,R3] 1021STRB R8,[R2,R11] 1022STRB R9,[R2,R7] 1023STRB R9,[R2,R12] 1024SUB R7,R7,#1 1025SUB R12,R12,#1 1026B over_rain_vga_s 1027.slide_left_vga 1028SUB R7,R7,#2 1029SUB R12,R12,#2 1030LDRB R8,[R2,R7] 1031CMP R8,#&44 1032ADDNE R7,R7,#1 1033ADDNE R12,R12,#1 1034BNE over_rain_vga_s 1035STRB R8,[R2,R3] 1036STRB R8,[R2,R11] 1037STRB R9,[R2,R7] 1038STRB R9,[R2,R12] 1039ADD R7,R7,#1 1040ADD R12,R12,#1 1041.over_rain_vga_s 1042ADD R7,R7,#640 1043ADD R12,R12,#640 1044.over_rain_vga 1045SUB R1,R1,#4 1046CMP R1,#0 1047BNE rain_horizontal_loop_vga 1048SUB R3,R3,#640 1049SUB R7,R7,#640 1050SUB R11,R11,#640 1051SUB R12,R12,#640 1052SUB R0,R0,#1 1053CMP R0,#0 1054BNE rain_vertical_loop_vga 1055MOV R15,R14 1056ALIGN 1057.apple 1058MOV R10,R0 1059STR R1,[R10,#&50] 1060STR R2,[R10,#&54] 1061STR R14,[R10,#&5C] 1062MOV R0,#0 1063STR R0,[R10,#&34] 1064.main_apple_loop 1065BL start_apple_move 1066BL apple_moving_loop 1067LDR R0,[R10,#&34] 1068ADD R0,R0,#1 1069STR R0,[R10,#&34] 1070LDR R1,[R10,#&38] 1071CMP R0,R1 1072BLT main_apple_loop 1073LDR R0,[R10,#&5C] 1074MOV R15,R0 1075.start_apple_move 1076LDR R0,[R10,#&34] 1077MOV R1,#28 1078MUL R2,R1,R0 1079ADD R2,R2,#&100 1080ADD R11,R2,R10 1081LDRB R2,[R11,#&18] 1082CMP R2,#0 1083BNE dead_apple 1084LDR R2,[R11,#8] 1085CMP R2,#0 1086BNE out_of_apple_move 1087MOV R4,#13 1088MOV R12,#1 1089MOV R5,#1 1090MOV R6,#0 1091MOV R3,#4 1092LDR R8,[R11,#&0] 1093LDR R9,[R11,#&4] 1094LDR R0,[R10,#&54] 1095MOV R8,R8,LSR #2 1096MOV R1,#956 1097MOV R2,#320 1098SUB R9,R1,R9 1099MOV R9,R9,LSR #2-V% 1100MUL R7,R9,R2 1101ADD R7,R8,R7 1102ADD R7,R7,R0 1103ADD R7,R7,#320 1104ADD R7,R7,R6 1105MOV R1,#0 1106.app_ch_u_l 1107LDRB R2,[R7] 1108CMP R2,#68 1109MOVNE R4,#0 1110ADD R7,R7,R12 1111ADD R1,R1,R5 1112CMP R1,#12 1113BNE app_ch_u_l 1114CMP R4,#0 1115BEQ out_of_apple_check 1116LDRB R8,[R11,#&14] 1117LDRB R9,[R11,#&15] 1118SUB R9,R9,#1 1119LDRB R5,[R10,#&30] 1120LDRB R6,[R10,#&31] 1121LDRB R7,[R10,#&32] 1122LDRB R2,[R10,#&33] 1123MOV R0,#0 1124CMP R8,R5 1125ADDNE R0,R0,#1 1126CMP R8,R7 1127ADDNE R0,R0,#1 1128CMP R0,#2 1129BEQ out_of_apple_check 1130MOV R0,#0 1131CMP R9,R6 1132ADDNE R0,R0,#1 1133CMP R9,R2 1134ADDNE R0,R0,#1 1135CMP R0,#2 1136MOVNE R4,#0 1137.out_of_apple_check 1138STR R4,[R11,#&8] 1139.out_of_apple_move 1140MOV R15,R14 1141.dead_apple 1142CMP R2,#8 1143MOVEQ R15,R14 1144ADD R5,R2,#49 1145ADD R2,R2,#1 1146MOV R0,#0 1147STR R0,[R11,#&14] 1148STRB R2,[R11,#&18] 1149ADR R6,apple_sprite 1150STRB R5,[R6,#3] 1151LDR R8,[R11,#&0] 1152LDR R9,[R11,#&4] 1153B dead_apple_plot_sprite 1154.apple_moving_loop 1155LDRB R2,[R11,#&18] 1156CMP R2,#0 1157MOVNE R15,R14 1158LDR R4,[R11,#&8] 1159CMP R4,#0 1160MOVEQ R7,#0 1161SUBNE R4,R4,#1 1162STR R4,[R11,#&8] 1163MOVEQ R5,#49 1164BEQ out_apple_movement 1165CMP R4,#12 1166MOVEQ R7,#0 1167MOVNE R7,#4 1168BNE over_apple_first_move 1169LDR R3,[R11,#&10] 1170LDRB R9,[R11,#&15] 1171SUB R9,R9,#1 1172STRB R9,[R11,#&17] 1173.over_apple_first_move 1174CMP R4,#0 1175BNE over_apple_last_move 1176LDRB R9,[R11,#&17] 1177STRB R9,[R11,#&15] 1178.over_apple_last_move 1179MOV R5,#50 1180LDR R9,[R11,#&4] 1181SUB R9,R9,R7 1182MOV R5,#50 1183STR R9,[R11,#&4] 1184.out_apple_movement 1185LDR R8,[R11,#0] 1186LDR R9,[R11,#4] 1187ADR R6,apple_sprite 1188STRB R5,[R6,#3] 1189.dead_apple_plot_sprite 1190MOV R0,#&34 1191ADD R0,R0,#&100 1192LDR R1,[R10,#&50] 1193ADR R2,apple_sprite 1194MOV R3,R8 1195MOV R4,R9 1196MOV R5,#&0 1197ADR R6,apple_scale 1198MOV R7,#0 1199SWI "OS_SpriteOp" 1200MOV R15,R14 1201.apple_sprite 1202EQUS "app" 1203EQUB 49 1204EQUB 0 1205EQUB 0 1206EQUB 0 1207ALIGN 1208.apple_scale 1209EQUD 1 1210EQUD 1+V% 1211EQUD 1 1212EQUD 1 1213.alien 1214MOV R10,R0 1215STR R1,[R10,#&50] 1216STR R2,[R10,#&54] 1217STR R14,[R10,#&5C] 1218MOV R0,#0 1219STR R0,[R10,#&24] 1220.main_alien_loop 1221BL start_alien_move 1222BL alien_moving_loop 1223LDR R0,[R10,#&24] 1224ADD R0,R0,#1 1225STR R0,[R10,#&24] 1226LDR R1,[R10,#&20] 1227CMP R0,R1 1228BLT main_alien_loop 1229LDR R0,[R10,#&5C] 1230MOV R15,R0 1231.start_alien_move 1232STR R14,[R10,#&58] 1233LDR R0,[R10,#&24] 1234MOV R1,#32 1235MUL R2,R1,R0 1236ADD R2,R2,#&60 1237ADD R11,R2,R10 1238LDR R2,[R11,#8] 1239CMP R2,#0 1240BNE out_of_alien_move 1241LDRB R0,[R11,#&14] 1242CMP R0,#8 1243BGT set_up_rnd_sequence 1244CMP R0,#1 1245BEQ set_alien_horiz 1246CMP R0,#3 1247BEQ set_alien_horiz 1248CMP R0,#5 1249BEQ set_alien_horiz 1250CMP R0,#7 1251BEQ set_alien_horiz 1252.set_alien_vert 1253LDR R0,[R10,#&10] 1254LDR R9,[R11,#&4] 1255CMP R0,R9 1256BNE vert_not_same 1257ADD R0,R0,#1 1258STRB R0,[R11,#&14] 1259B out_of_alien_move 1260.vert_not_same 1261MOVLT R3,#4 1262MOVGT R3,#3 1263B set_up_a_check 1264.set_alien_horiz 1265LDR R0,[R10,#&C] 1266LDR R9,[R11,#&0] 1267CMP R0,R9 1268BNE horiz_not_same 1269ADD R0,R0,#1 1270STRB R0,[R11,#&14] 1271B out_of_alien_move 1272.horiz_not_same 1273MOVLT R3,#2 1274MOVGT R3,#1 1275B set_up_a_check 1276.set_up_rnd_sequence 1277ADR R1,random 1278LDRB R0,[R11,#&18] 1279ADD R0,R0,#1 1280CMP R0,#30 1281MOVGT R0,#0 1282STRB R0,[R11,#&18] 1283LDRB R3,[R1,R0] 1284LDRB R0,[R11,#&14] 1285ADD R0,R0,#1 1286CMP R0,#10 1287MOVGT R0,#1 1288STRB R0,[R11,#&14] 1289.set_up_a_check 1290MOV R4,#13 1291CMP R3,#3 1292MOVLT R12,#320 1293MOVLT R5,#1 1294MOVLT R6,#0 1295CMP R3,#2 1296MOVGT R12,#1 1297MOVGT R5,#1 1298MOVGT R6,#0 1299LDR R8,[R11,#&0] 1300LDR R9,[R11,#&4] 1301BL check_edges 1302CMP R4,#0 1303BNE alien_start_ok 1304LDRB R0,[R11,#&14] 1305ADD R0,R0,#1 1306CMP R0,#10 1307MOVGT R0,#1 1308STRB R0,[R11,#&14] 1309B alien_start_no 1310.alien_start_ok 1311STR R3,[R11,#&10] 1312STR R4,[R11,#&8] 1313MOV R0,#49 1314STR R0,[R11,#&C] 1315.alien_start_no 1316.out_of_alien_move 1317LDR R0,[R10,#&58] 1318MOV R15,R0 1319.random 1320EQUB 1:EQUB 1:EQUB 3:EQUB 3:EQUB 2:EQUB 2:EQUB 2:EQUB 2 1321EQUB 3:EQUB 3:EQUB 1:EQUB 1:EQUB 3:EQUB 3:EQUB 2:EQUB 2 1322EQUB 4:EQUB 4:EQUB 4:EQUB 4:EQUB 2:EQUB 2:EQUB 1:EQUB 1 1323EQUB 1:EQUB 1:EQUB 3:EQUB 3:EQUB 1:EQUB 1:EQUB 4:EQUB 4 1324.alien_moving_loop 1325LDR R4,[R11,#&8] 1326CMP R4,#0 1327SUBNE R4,R4,#1 1328STR R4,[R11,#&8] 1329BEQ out_alien_movement 1330CMP R4,#12 1331MOVEQ R7,#0 1332MOVNE R7,#4 1333BNE over_aliens_first_move 1334LDR R3,[R11,#&10] 1335LDRB R8,[R11,#&19] 1336LDRB R9,[R11,#&1A] 1337CMP R3,#1 1338ADDEQ R8,R8,#1 1339CMP R3,#2 1340SUBEQ R8,R8,#1 1341CMP R3,#3 1342ADDEQ R9,R9,#1 1343CMP R3,#4 1344SUBEQ R9,R9,#1 1345STRB R8,[R11,#&1B] 1346STRB R9,[R11,#&1C] 1347.over_aliens_first_move 1348CMP R4,#0 1349BNE over_aliens_last_move 1350LDRB R8,[R11,#&1B] 1351LDRB R9,[R11,#&1C] 1352STRB R8,[R11,#&19] 1353STRB R9,[R11,#&1A] 1354.over_aliens_last_move 1355CMP R4,#0 1356MOVEQ R4,#56 1357BEQ overload_alientype 1358LDR R4,[R11,#&C] 1359.overload_alientype 1360ADD R4,R4,#1 1361CMP R4,#57 1362MOVEQ R4,#49 1363STR R4,[R11,#&C] 1364LDR R8,[R11,#&0] 1365LDR R9,[R11,#&4] 1366LDR R3,[R11,#&10] 1367CMP R3,#1 1368ADDEQ R8,R8,R7 1369MOVEQ R5,#49 1370CMP R3,#2 1371SUBEQ R8,R8,R7 1372MOVEQ R5,#50 1373CMP R3,#3 1374ADDEQ R9,R9,R7 1375MOVEQ R5,#51 1376CMP R3,#4 1377SUBEQ R9,R9,R7 1378MOVEQ R5,#52 1379ADR R6,alien_sprite 1380STRB R5,[R6,#3] 1381STRB R4,[R6,#4] 1382STR R8,[R11,#&0] 1383STR R9,[R11,#&4] 1384MOV R0,#&34 1385ADD R0,R0,#&100 1386LDR R1,[R10,#&50] 1387ADR R2,alien_sprite 1388MOV R3,R8 1389MOV R4,R9 1390MOV R5,#&0 1391ADR R6,alien_scale 1392MOV R7,#0 1393SWI "OS_SpriteOp" 1394.out_alien_movement 1395MOV R15,R14 1396.alien_sprite 1397EQUS "ali" 1398EQUB 49 1399EQUB 0 1400EQUB 0 1401EQUB 0 1402ALIGN 1403.alien_scale 1404EQUD 1 1405EQUD 1+V% 1406EQUD 1 1407EQUD 1 1408.check_edges 1409LDR R0,[R10,#&54] 1410MOV R8,R8,LSR #2 1411MOV R1,#956 1412MOV R2,#320 1413SUB R9,R1,R9 1414MOV R9,R9,LSR #(2-V%) 1415MUL R7,R9,R2 1416ADD R7,R8,R7 1417ADD R7,R7,R0 1418MOV R0,#0 1419CMP R3,#1 1420BNE over_right_check 1421ADD R7,R7,#12 1422SUB R7,R7,R6 1423MOV R1,#0 1424.ch_r_l 1425LDRB R2,[R7] 1426CMP R2,#&44 1427BEQ over_right_fail 1428MOV R4,#0 1429.over_right_fail 1430SUB R7,R7,R12 1431ADD R1,R1,R5 1432CMP R1,#12 1433BNE ch_r_l 1434B over_other_checks 1435.over_right_check 1436CMP R3,#2 1437BNE over_left_check 1438SUB R7,R7,#1 1439SUB R7,R7,R6 1440MOV R1,#0 1441.ch_l_l 1442LDRB R2,[R7] 1443CMP R2,#&44 1444BEQ over_left_fail 1445MOV R4,#0 1446.over_left_fail 1447SUB R7,R7,R12 1448ADD R1,R1,R5 1449CMP R1,#12 1450BNE ch_l_l 1451B over_other_checks 1452.over_left_check 1453CMP R3,#3 1454BNE over_up_check 1455SUB R7,R7,#(3840*(V%+1)) 1456ADD R7,R7,R6 1457MOV R1,#0 1458.ch_t_l 1459LDRB R2,[R7] 1460CMP R2,#&44 1461BEQ over_up_fail 1462MOV R4,#0 1463.over_up_fail 1464ADD R7,R7,R12 1465ADD R1,R1,R5 1466CMP R1,#12 1467BNE ch_t_l 1468B over_other_checks 1469.over_up_check 1470CMP R3,#4 1471BNE over_down_check 1472ADD R7,R7,#(320*(V%+1)) 1473ADD R7,R7,R6 1474MOV R1,#0 1475.ch_u_l 1476LDRB R2,[R7] 1477CMP R2,#&44 1478BEQ over_down_fail 1479CMP R2,#&FF 1480BEQ over_down_fail 1481MOV R4,#0 1482.over_down_fail 1483ADD R7,R7,R12 1484ADD R1,R1,R5 1485CMP R1,#12 1486BNE ch_u_l 1487B over_other_checks 1488.over_down_check 1489.over_other_checks 1490MOV R15,R14 1491.main 1492MOV R5,R4 1493MOV R10,R0 1494MOV R11,R1 1495STR R2,[R10,#&54] 1496STR R14,[R10,#&5C] 1497BL key_entry_man 1498BL man_moving_loop 1499LDR R0,[R10,#&5C] 1500MOV R15,R0 1501.end_of_main_loop 1502.key_entry_man 1503STR R14,[R10,#&58] 1504LDR R4,[R10,#&14] 1505CMP R4,#0 1506BNE no_new_movement 1507LDR R8,[R10,#&C] 1508LDR R9,[R10,#&10] 1509MOV R4,#0 1510MOV R3,#0 1511CMP R5,#37 1512BEQ set_man_moving_right 1513MOV R0,#&79 1514MOV R1,#(121 EOR &80) 1515SWI "OS_Byte" 1516CMP R1,#&FF 1517BNE over_man_move_right 1518.set_man_moving_right 1519MOV R3,#1 1520MOV R4,#13 1521MOV R12,#(640*(V%+1)) 1522MOV R5,#2 1523MOV R6,#320 1524BL check_edges 1525B over_man_move_down 1526.over_man_move_right 1527MOV R0,#&79 1528MOV R1,#(25 EOR &80) 1529SWI "OS_Byte" 1530CMP R1,#&FF 1531BNE over_man_move_left 1532MOV R3,#2 1533MOV R4,#13 1534MOV R12,#(640*(V%+1)) 1535MOV R5,#2 1536MOV R6,#0 1537BL check_edges 1538B over_man_move_down 1539.over_man_move_left 1540MOV R0,#&79 1541MOV R1,#(57 EOR &80) 1542SWI "OS_Byte" 1543CMP R1,#&FF 1544BNE over_man_move_up 1545MOV R3,#3 1546MOV R4,#13 1547MOV R12,#2 1548MOV R5,#2 1549MOV R6,#1 1550BL check_edges 1551B over_man_move_down 1552.over_man_move_up 1553MOV R0,#&79 1554MOV R1,#(41 EOR &80) 1555SWI "OS_Byte" 1556CMP R1,#&FF 1557BNE over_man_move_down 1558MOV R3,#4 1559MOV R4,#13 1560MOV R12,#2 1561MOV R5,#2 1562MOV R6,#0 1563BL check_edges 1564.over_man_move_down 1565STR R4,[R10,#&14] 1566STR R3,[R10,#&18] 1567.no_new_movement 1568LDR R15,[R10,#&58] 1569.man_moving_loop 1570LDR R4,[R10,#&14] 1571CMP R4,#0 1572SUBNE R4,R4,#1 1573STR R4,[R10,#&14] 1574MOVEQ R4,#53 1575MOVEQ R5,#53 1576LDREQ R8,[R10,#&C] 1577LDREQ R9,[R10,#&10] 1578BEQ out_man_movement 1579CMP R4,#12 1580MOVEQ R7,#0 1581MOVNE R7,#4 1582BNE over_mans_first_move 1583LDR R3,[R10,#&18] 1584LDRB R8,[R10,#&30] 1585LDRB R9,[R10,#&31] 1586CMP R3,#1 1587ADDEQ R8,R8,#1 1588CMP R3,#2 1589SUBEQ R8,R8,#1 1590CMP R3,#3 1591ADDEQ R9,R9,#1 1592CMP R3,#4 1593SUBEQ R9,R9,#1 1594STRB R8,[R10,#&32] 1595STRB R9,[R10,#&33] 1596.over_mans_first_move 1597CMP R4,#0 1598MOVEQ R4,#56 1599BNE over_mans_last_move 1600LDRB R8,[R10,#&32] 1601LDRB R9,[R10,#&33] 1602STRB R8,[R10,#&30] 1603STRB R9,[R10,#&31] 1604.over_mans_last_move 1605BEQ overload_mantype 1606LDR R4,[R10,#&1C] 1607.overload_mantype 1608ADD R4,R4,#1 1609CMP R4,#57 1610MOVEQ R4,#49 1611STR R4,[R10,#&1C] 1612LDR R8,[R10,#&C] 1613LDR R9,[R10,#&10] 1614LDR R3,[R10,#&18] 1615CMP R3,#1 1616ADDEQ R8,R8,R7 1617MOVEQ R5,#49 1618CMP R3,#2 1619SUBEQ R8,R8,R7 1620MOVEQ R5,#50 1621CMP R3,#3 1622ADDEQ R9,R9,R7 1623MOVEQ R5,#51 1624CMP R3,#4 1625SUBEQ R9,R9,R7 1626MOVEQ R5,#52 1627.out_man_movement 1628ADR R6,man_sprite 1629STRB R5,[R6,#3] 1630STRB R4,[R6,#4] 1631STR R8,[R10,#&C] 1632STR R9,[R10,#&10] 1633MOV R0,#&34 1634ADD R0,R0,#&100 1635MOV R1,R11 1636ADR R2,man_sprite 1637MOV R3,R8 1638MOV R4,R9 1639MOV R5,#&8 1640ADR R6,man_scale 1641MOV R7,#0 1642SWI "OS_SpriteOp" 1643MOV R15,R14 1644.man_sprite 1645EQUS "man" 1646EQUB 49 1647EQUB 0 1648EQUB 0 1649EQUB 0 1650ALIGN 1651.man_scale 1652EQUD 1 1653EQUD 1+V% 1654EQUD 1 1655EQUD 1 1656.end_of_code2 1657] 1658NEXT 1659*FX112,1 1660*FX113,1 1661ENDPROC 1662DEFPROCpull_pac_code_var 1663main%=!(m_code2%+&0) 1664alien%=!(m_code2%+&4) 1665apple%=!(m_code2%+&8) 1666rain%=!(m_code2%+&44) 1667rain_vga%=!(m_code2%+&48) 1668testing%=!(m_code2%+&3C) 1669ENDPROC 1670DEFPROCset_screen 1671PROCclear:PROCclear_top 1672IFsel_sprite$<>"" THEN 1673VDU4:COLOUR3:PRINTTAB(56,1);sel_sprite$:VDU5 1674SYS"OS_SpriteOp",&128,sprite_area1%,sel_sprite$ TO ,,,width%,height% 1675PROCplot_sprite(1150,960,60,16,width%,height%,sel_sprite$) 1676ENDIF 1677VDU23,128,255,255,255,255,255,255,255,0 1678FORf%=0TO15:f$=STR$(f%)+CHR$(128)+CHR$(128):MOVE64*f%,1022:GCOL0,f%:PRINT;f$:NEXT 1679ENDPROC 1680DEFFNcount_sprites 1681SYS"OS_SpriteOp",&108,sa1% TO r0,r1,r2,r3 1682=r3 1683DEFFNsprite_data(name$) 1684SYS"OS_SpriteOp",&118,sprite_area1%,name$ TO r0%,r1%,r2% 1685sprite_one%=r2% 1686=sprite_one%+44 1687DEFFNsprite_size(sprite_area%) 1688SYS"OS_SpriteOp",&118,sprite_area%,"s1" TO r0%,r1%,r2% 1689sprite_one%=r2% 1690=!(sprite_one%) 1691DEFPROCtest_tables 1692*fx113,1 1693*fx112,1 1694IFres_x%<640 THEN 1695tab_x%=res_x%+100:tab_y%=res_y% 1696ELSE 1697tab_x%=res_x%-400:tab_y%=res_y% 1698ENDIF 1699SYS"OS_SpriteOp",&110,sprite_area1%,"tab_blank",0,20,20,840,180 1700PROCbox2(28,28,800,140) 1701PROCpri(60,112,"Missing number?") 1702IF first_or_second%=1 THEN 1703tables$=STR$(tables%(bom%,1))+"xk="+STR$(tables%(bom%,3)) 1704ELSE 1705tables$="kx"+STR$(tables%(bom%,2))+"="+STR$(tables%(bom%,3)) 1706ENDIF 1707PROCplot_numbers2(460,102,5,tables$) 1708FORf%=0 TO 14:PROCplot_sprite(80+f%*46,32,1,1,1,1,STR$(f%)+"o"):NEXT 1709PROCplot_sprite(80+1*46,32,1,1,1,1,STR$(1)+"n") 1710pointer%=1:out%=0:go%=0 1711REPEAT 1712SYS"OS_Byte",&79,(25 EOR &80) TO r0,yes% 1713IF yes%=&FF AND pointer%>1:pointer%=pointer%-1:go%=1 1714SYS"OS_Byte",&79,(121 EOR &80) TO r0,yes% 1715IF yes%=&FF AND pointer%<12:pointer%=pointer%+1:go%=1 1716SYS"OS_Byte",&79,(73 EOR &80) TO r0,yes% 1717IF yes%=&FF out%=1 1718T$=FNprint_timer(tx2%,ty2%,3,1) 1719IFgo%=1 THEN 1720PROCcachesound("plop",1) 1721SOUND 1,&17F,1,1 1722PROCplot_sprite(80+pointer%*46,32,1,1,1,1,STR$(pointer%)+"n") 1723PROCplot_sprite(80+(pointer%-1)*46,32,1,1,1,1,STR$(pointer%-1)+"o") 1724PROCplot_sprite(80+(pointer%+1)*46,32,1,1,1,1,STR$(pointer%+1)+"o") 1725PROCpause(20):go%=0 1726ENDIF 1727IFout%=1 THEN 1728PROCcachesound("wrong2",1) 1729IF first_or_second%=1 THEN 1730IF pointer%<>tables%(bom%,2) out%=0:SOUND1,-15,1,1 1731ELSE 1732IF pointer%<>tables%(bom%,1) out%=0:SOUND1,-15,1,1 1733ENDIF 1734PROCpause(30) 1735ENDIF 1736UNTIL out%=1 OR T$="0" 1737PROCcachesound("ok2",1) 1738SOUND 1,&17F,1,1 1739tables$=STR$(tables%(bom%,1))+"x"+STR$(tables%(bom%,2))+"="+STR$(tables%(bom%,3)) 1740PROCplot_numbers2(460,102,5,tables$) 1741PROCpause(100) 1742special%=special%-1 1743!(scale%+0)=1 1744!(scale%+4)=1 1745!(scale%+8)=1 1746!(scale%+12)=1 1747SYS"OS_SpriteOp",&134,sa1%,"tab_blank",20,20,0,scale%,0 1748PROCcachesound("aliensnear",1) 1749ENDPROC 1750DEFPROCintiger_icns 1751FORf%=0 TO 12 1752IF(U% AND (1<<f%))=(1<<f%) firstn%(f%)=1 ELSE firstn%(f%)=0 1753NEXT 1754FORf%=0 TO 12 1755IF(W% AND (1<<f%))=(1<<f%) secondn%(f%)=1 ELSE secondn%(f%)=0 1756NEXT 1757IF(W% AND (1<<13))=(1<<13) mixedn%=1 ELSE mixedn%=0 1758ENDPROC 1759DEFPROCset_table_one 1760PROCintiger_icns 1761PROCclear_rnd1 1762PROCclear_rnd2 1763FORfind%=1 TO number_of% 1764repeat_error%=0 1765REPEAT 1766repeat_error%=repeat_error%+1 1767REPEAT 1768rnd%=(RND(13)-1) 1769UNTIL firstn%(rnd%)=1 AND rnd%>0 1770UNTIL rnd_picker1%(rnd%)=0 OR repeat_error%=10 1771rnd_picker1%(rnd%)=1 1772rnd_number1%(find%)=rnd% 1773repeat_error%=0 1774REPEAT 1775repeat_error%=repeat_error%+1 1776REPEAT 1777rnd%=(RND(13)-1) 1778UNTIL secondn%(rnd%)=1 AND rnd%>0 1779UNTIL rnd_picker2%(rnd%)=0 OR repeat_error%=10 1780rnd_picker2%(rnd%)=1 1781rnd_number2%(find%)=rnd% 1782NEXT 1783FORfind%=1 TO number_of% 1784IFmixedn%=1 AND RND(100)>50 THEN 1785a%=rnd_number1%(find%):b%=rnd_number2%(find%) 1786rnd_number2%(find%)=a%:rnd_number1%(find%)=b% 1787ENDIF 1788tables%(find%,1)=rnd_number1%(find%) 1789tables%(find%,2)=rnd_number2%(find%) 1790tables%(find%,3)=rnd_number1%(find%)*rnd_number2%(find%) 1791NEXT 1792firn%=0 1793secn%=0 1794FORf%=1TO12 1795IFsecondn%(f%)=1:secn%+=1 1796NEXT 1797FORf%=1TO12 1798IFfirstn%(f%)=1:firn%+=1 1799NEXT 1800IFfirn%<secn% THEN first_or_second%=1 ELSE first_or_second%=2 1801ENDPROC 1802DEFPROCbox2(bx%,by%,bxx%,byy%) 1803bxx%=bx%+bxx%:byy%=by%+byy% 1804VDU24,bx%-4;by%-4;bxx%+4;byy%+4;18,0,131,16 1805VDU24,bx%;by%;bxx%;byy%;18,0,128,16,26 1806ENDPROC 1807DEFPROCplot_numbers2(x%,y%,digits%,a$) 1808FORpn%=1 TO LEN(a$) 1809PROCplot_sprite((x%-36)+(pn%*42),y%,1,1,1,1,MID$(a$,pn%,1)) 1810NEXT 1811ENDPROC 1812DEFPROCclear_rnd1 1813FORf%=0TO12 1814rnd_picker1%(f%)=0 1815NEXT 1816ENDPROC 1817DEFPROCclear_rnd2 1818FORf%=0TO12 1819rnd_picker2%(f%)=0 1820NEXT 1821ENDPROC 1822DEFPROCdefine_buttons(set%) 1823IFset%=1:total_but%=1:RESTORE1830 1824IFset%=2:total_but%=2:RESTORE1831 1825IFset%=3:total_but%=2:RESTORE1832 1826FORbut_number%=1TOtotal_but% 1827READbut%(but_number%,0),but%(but_number%,1),but%(but_number%,2),but%(but_number%,3),but%(but_number%,4),but$(but_number%) 1828NEXT 1829ENDPROC 1830DATA 100,100,200,40,2,Go on 1831DATA 680,20,200,60,2,Yes,920,20,200,60,2,No,1060,72,200,60,2,Correct,20,72,200,60,2,Next box 1832DATA 820,430,190,60,2,Left,1044,430,190,60,2,Right 1833DEFPROCbut_off(bx%,by%,text$) 1834PROCplot_sprite(bx%,by%,1,1,1,1,"button1") 1835left_margin%=(194-(LEN(text$)*16))/2 1836VDU5 1837GCOL0,3:MOVEbx%+left_margin%,by%+42:PRINTtext$ 1838ENDPROC 1839DEFPROCbut_on(bx%,by%,text$) 1840PROCplot_sprite(bx%,by%,1,1,1,1,"button2") 1841left_margin%=(194-(LEN(text$)*16))/2 1842VDU5 1843GCOL0,3:MOVEbx%+left_margin%,by%+42:PRINTtext$ 1844ENDPROC 1845DEFPROCcheck_buttons(an_num%) 1846selected%=0 1847VDU5 1848PROCcheck_mouse(10) 1849FORbut_n%=1 TO total_but% 1850IFbut%(but_n%,4)<2:NEXT:ENDPROC 1851IFmx%>but%(but_n%,0) AND mx%<(but%(but_n%,0)+but%(but_n%,2)) AND my%>but%(but_n%,1) AND my%<(but%(but_n%,1)+but%(but_n%,3))THEN 1852IFmz%=4 THEN 1853selected%=but_n% 1854PROCbut_on(but%(but_n%,0),but%(but_n%,1),but$(but_n%)) 1855PROCpause(30) 1856REPEAT:MOUSE x%,y%,z%:UNTIL z%=0 1857PROCbut_off(but%(but_n%,0),but%(but_n%,1),but$(but_n%)) 1858ENDIF 1859ENDIF 1860IFan_num%>0:PROCsp_anim(an_num%) 1861NEXT 1862ENDPROC 1863DEFPROCrender_des_screen 1864main_sp_add%=FNsprite_data(des_sprite$) 1865off%=0 1866renx%=0:reny%=896 1867FORdown%=864+48 TO 0 STEP -48 1868FORacc%=0 TO 1248+48 STEP 48 1869sprite%=?(main_sp_add%+off%) 1870PROCplot_sprite(acc%,down%,1,1,1,1,STR$(sprite%)) 1871off%=off%+1 1872NEXT 1873NEXT 1874ENDPROC 1875DEFFNsprite_data(name$) 1876SYS"OS_SpriteOp",&118,sprite_area1%,name$ TO r0%,r1%,r2% 1877sprite_one%=r2% 1878=sprite_one%+44
2�ADFS::HardDisc4.$.CURR_NEW.!Tables.Pt1.Paccy !È› "<TableA$Dir>.Pt1.Library" *FX225,1 *FX229,0 *FX220,17 �:�"FX229,1":� �:�dt|M !*KEY1 V%=stored_vga%:PROCdt|M *KEY5 PROCstats|M Q*KEY9 MOUSERECTANGLE 0,0,1278,960:REPEAT:MOUSEX,Y,Z:P.TAB(0,0)X,Y:UNTIL FALSE m*KEY3 length$=STR$~262144:from$=STR$~back_data%:file$="bgdata2":OSCLI"SAVE "+file$+" "+from$+" +"+length$ $� input_disk_name% 256,mouse% 16 J� pdrect% 16,pdrect2% 16,pdtrans% 16,pdplot% 8,ctrans% 256,paltab% 256 $� input% 16,output% 16,scale% 16 � but%(40,4),but$(40) � area%(10,4) � points%(2,10) � string% 128 � tables%(12,5) � tables$(12),ta$(12) � mov_tab%(5,5) � firstn%(12) � secondn%(12) � rnd_picker1%(12) � rnd_picker2%(12) � rnd_number1%(12) � rnd_number2%(12) � presented%(12) � x_answer%(12) � count_down%(6) � entry_areas%(5,4) � ds%(32,2) � corr%(30,3) � scale% 16 !� input% 16 "� output% 16 #� alx%(12),aly%(12) $� apx%(12),apy%(12) %� regroup%(12) &� link_code% 1024 'stored_vga%=V% (vga%=V% )�pull_variables *addrs$=�~m_code1% +,�"LOAD <TableA$Dir>.Pt1.GenCode "+addrs$ ,�assemble2 -�find_screens .�pull_gen_code_var /�pull_pac_code_var 0sa1%=sprite_area1% 1number_of%=10 2timer_on%=1 3style%=1 4order%=2 5 �palette2 6�19,1,24,0,0,0 7�V%=1 � 23,17,7,6,8;16;0; 8�Q%=24 � 9 �palette2 :�19,1,24,0,0,0 ; �paccy(2) <*FX113,1 =*FX112,1 >�tscore(512,360) ?�space(900,100,0,0) @ Q%=25 A� B2�Q%=25:V%=stored_vga%:�"<TableA$Dir>.Pt1.link" C�Q%=30 � D �palette2 E�19,1,24,0,0,0 F �paccy(2) G*FX113,1 H*FX112,1 I�tscore(512,360) J�space(900,100,0,0) K Q%=31 L� M2�Q%=31:V%=stored_vga%:�"<TableA$Dir>.Pt1.link" N�Q%=64 � O �palette2 P�19,1,24,0,0,0 Q �paccy(1) R*FX113,1 S*FX112,1 T�tscore(512,360) U�space(900,100,0,0) VF�text_box(100,110,1080,90,2,"You walk on to the next room.","","") W�space(900,10,0,0) X Q%=65 Y� Z2�Q%=65:V%=stored_vga%:�"<TableA$Dir>.Pt1.link" [�Q%=75 � \ �palette2 ]�19,1,24,0,0,0 ^ �paccy(1) _*FX113,1 `*FX112,1 a�tscore(512,360) b�space(900,100,0,0) cF�text_box(100,110,1080,90,2,"You walk on to the next room.","","") d�space(900,10,0,0) e Q%=66 f� g2�Q%=66:V%=stored_vga%:�"<TableA$Dir>.Pt1.link" h �Q%=211 � i �palette2 j�19,1,24,0,0,0 k�paccy(�(2)) l*FX113,1 m*FX112,1 n�tscore(512,360) o�space(900,100,0,0) p �S%=1 �dt q�"<TableA$Dir>.Pt1.link" r� s��set_up_screens(set%) t �set%=9 � udes_sprite$="game1s10" vKtitle$="Level 7. The crusher.":ad$="Allow the top alien to chase you." wman_gridx%=14 xman_gridy%=6 ytotal_apples%=4 zapx%(1)=12:apy%(1)=13 {apx%(2)=12:apy%(2)=14 |apx%(3)=13:apy%(3)=13 }apx%(4)=13:apy%(4)=14 ~apx%(5)=13:apy%(5)=13 apx%(6)=13:apy%(6)=14 �apx%(7)=13:apy%(7)=15 �apx%(8)=13:apy%(8)=16 �total_aliens%=2 �alx%(1)=3:aly%(1)=0 �alx%(2)=9:aly%(2)=17 �alx%(3)=22:aly%(3)=0 �time_area%=180 �� � �set%=7 � �des_sprite$="game1s9" �=title$="Level 9. Sand tunnels.":ad$="Move very quickly!" �man_gridx%=23 �man_gridy%=2 �total_apples%=4 �apx%(1)=12:apy%(1)=15 �apx%(2)=12:apy%(2)=16 �apx%(3)=13:apy%(3)=15 �apx%(4)=13:apy%(4)=16 �apx%(5)=13:apy%(5)=13 �apx%(6)=13:apy%(6)=14 �apx%(7)=13:apy%(7)=15 �apx%(8)=13:apy%(8)=16 �total_aliens%=3 �alx%(1)=3:aly%(1)=6 �alx%(2)=9:aly%(2)=17 �alx%(3)=15:aly%(3)=5 �time_area%=110 �� � �set%=1 � �des_sprite$="game1s1" �Jtitle$="Level 1. The store room.":ad$="Watch for the hidden dangers!" �man_gridx%=23 �man_gridy%=2 �total_apples%=2 �apx%(1)=9:apy%(1)=8 �apx%(2)=16:apy%(2)=8 �apx%(3)=14:apy%(3)=8 �apx%(4)=16:apy%(4)=8 �apx%(5)=14:apy%(5)=13 �apx%(6)=14:apy%(6)=14 �apx%(7)=13:apy%(7)=13 �apx%(8)=13:apy%(8)=14 �total_aliens%=2 �alx%(1)=5:aly%(1)=15 �alx%(2)=7:aly%(2)=15 �alx%(3)=7:aly%(3)=15 �alx%(4)=17:aly%(4)=15 �time_area%=120 �� � �set%=8 � �des_sprite$="game1s7" �Dtitle$="Level 7. The chemical works.":ad$="Go through the top." �man_gridx%=23 �man_gridy%=2 �total_apples%=2 �apx%(1)=8:apy%(1)=5 �apx%(2)=17:apy%(2)=5 �apx%(3)=11:apy%(3)=5 �apx%(4)=12:apy%(4)=5 �apx%(5)=13:apy%(5)=5 �apx%(6)=14:apy%(6)=5 �apx%(7)=15:apy%(7)=5 �apx%(8)=16:apy%(8)=5 �total_aliens%=3 �alx%(1)=12:aly%(1)=15 �alx%(2)=13:aly%(2)=15 �alx%(3)=22:aly%(3)=7 �alx%(3)=5:aly%(4)=7 �time_area%=180 �� � �set%=2 � �des_sprite$="game1s3" �Etitle$="Level 3. The hidden maze.":ad$="Use the secret passages." �man_gridx%=10 �man_gridy%=10 �total_apples%=2 �apx%(1)=9:apy%(1)=15 �apx%(2)=16:apy%(2)=15 �apx%(3)=16:apy%(3)=15 �apx%(4)=16:apy%(4)=16 �apx%(5)=16:apy%(5)=15 �apx%(6)=16:apy%(6)=16 �apx%(7)=16:apy%(7)=17 �apx%(8)=16:apy%(8)=18 �total_aliens%=2 �alx%(1)=2:aly%(1)=14 �alx%(2)=22:aly%(2)=16 �alx%(3)=23:aly%(3)=6 �alx%(4)=17:aly%(4)=15 �time_area%=120 �� � �set%=5 � �des_sprite$="game1s6" �Rtitle$="Level 6. Danger tunnels.":ad$="Take the power cells from the bottom." �man_gridx%=19 �man_gridy%=16 �total_apples%=4 �apx%(1)=9:apy%(1)=15 �apx%(2)=9:apy%(2)=16 �apx%(3)=16:apy%(3)=15 �apx%(4)=16:apy%(4)=16 �apx%(5)=16:apy%(5)=15 �apx%(6)=16:apy%(6)=16 �apx%(7)=16:apy%(7)=17 �apx%(8)=16:apy%(8)=18 �total_aliens%=4 �alx%(1)=3:aly%(1)=9 �alx%(2)=12:aly%(2)=2 �alx%(3)=7:aly%(3)=18 �alx%(4)=17:aly%(4)=18 �time_area%=180 �� � �set%=3 � �des_sprite$="game1s2" �Ititle$="Level 2. The control centre.":ad$="Choose the correct path." �man_gridx%=1 �man_gridy%=0 �total_apples%=2 �apx%(1)=13:apy%(1)=8 �apx%(2)=13:apy%(2)=10 �apx%(3)=13:apy%(3)=10 �apx%(4)=11:apy%(4)=11 �apx%(5)=15:apy%(5)=8 �apx%(6)=15:apy%(6)=9 �apx%(7)=15:apy%(7)=10 �apx%(8)=15:apy%(8)=11 �total_aliens%=4 �alx%(1)=21:aly%(1)=7 alx%(2)=11:aly%(2)=12 alx%(3)=15:aly%(3)=6 alx%(4)=6:aly%(4)=18 time_area%=160 � �set%=4 � des_sprite$="game1s4" Ltitle$="Level 4. The simple maze.":ad$="Don't get close to the aliens." man_gridx%=4 man_gridy%=0 total_apples%=3 apx%(1)=9:apy%(1)=0 apx%(2)=3:apy%(2)=14 apx%(3)=7:apy%(3)=14 apx%(4)=3:apy%(4)=15 apx%(5)=7:apy%(5)=12 apx%(6)=7:apy%(6)=13 apx%(7)=7:apy%(7)=14 apx%(8)=7:apy%(8)=15 total_aliens%=5 alx%(1)=24:aly%(1)=10 alx%(2)=18:aly%(2)=13 alx%(3)=16:aly%(3)=7 alx%(4)=11:aly%(4)=8 alx%(5)=14:aly%(5)=11 time_area%=160 � �set%=6 � des_sprite$="game1s5" Ktitle$="Level 5. Sorting area.":ad$="Take the right power cell first." man_gridx%=4 man_gridy%=2 total_apples%=3 !apx%(1)=9:apy%(1)=9 "apx%(2)=12:apy%(2)=10 #apx%(3)=15:apy%(3)=9 $apx%(4)=7:apy%(4)=9 %apx%(5)=9:apy%(5)=9 &apx%(6)=11:apy%(6)=9 'apx%(7)=13:apy%(7)=9 (apx%(8)=15:apy%(8)=9 )apx%(9)=17:apy%(9)=9 *apx%(10)=19:apy%(10)=9 +apx%(11)=21:apy%(11)=9 ,apx%(12)=23:apy%(12)=9 -total_aliens%=5 .alx%(1)=3:aly%(1)=18 /alx%(2)=7:aly%(2)=18 0alx%(3)=11:aly%(3)=18 1alx%(4)=15:aly%(4)=18 2alx%(5)=19:aly%(5)=18 3time_area%=160 4� 5�set%=10 � 6des_sprite$="game1s8" 7Ftitle$="Level 8. Raining sand.":ad$="Hide from the aliens first." 8man_gridx%=2 9man_gridy%=2 :total_apples%=3 ;apx%(1)=9:apy%(1)=15 <apx%(2)=11:apy%(2)=15 =apx%(3)=14:apy%(3)=15 >apx%(4)=16:apy%(4)=15 ?total_aliens%=3 @alx%(1)=10:aly%(1)=10 Aalx%(2)=12:aly%(2)=10 Balx%(3)=14:aly%(3)=10 Calx%(4)=15:aly%(4)=18 Dalx%(5)=19:aly%(5)=18 Etime_area%=160 F� G�set%=11 � Hdes_sprite$="game1s11" I"title$="Introduction.":ad$=" " Jman_gridx%=5 Kman_gridy%=17 Ltotal_apples%=4 Mapx%(1)=2:apy%(1)=14 Napx%(2)=4:apy%(2)=14 Oapx%(3)=6:apy%(3)=14 Papx%(4)=8:apy%(4)=14 Qtotal_aliens%=4 Ralx%(1)=2:aly%(1)=11 Salx%(2)=4:aly%(2)=11 Talx%(3)=6:aly%(3)=11 Ualx%(4)=8:aly%(4)=11 Vtime_area%=120 W� X�set%=12 � Ydes_sprite$="game1s12" ZKtitle$="Level 5. Sorting area.":ad$="Take the right power cell first." [man_gridx%=4 \man_gridy%=2 ]total_apples%=3 ^apx%(1)=9:apy%(1)=9 _apx%(2)=12:apy%(2)=10 `apx%(3)=15:apy%(3)=9 atotal_aliens%=5 balx%(1)=3:aly%(1)=18 calx%(2)=7:aly%(2)=18 dalx%(3)=11:aly%(3)=18 ealx%(4)=15:aly%(4)=18 falx%(5)=19:aly%(5)=18 gtime_area%=160 h� itx2%=32:ty2%=860 jm%=m_code2% k!(m%+&1C)=49 l!(m%+&24)=0 m!(m%+&28)=0 n!(m%+&2C)=0 o!(m%+&34)=0 p?(m%+&40)=0 q?(m%+&41)=0 r?(m%+&30)=man_gridx% s?(m%+&31)=man_gridy% t?(m%+&32)=man_gridx% u?(m%+&33)=man_gridy% v!(m%+&C)=man_gridx%*48 w!(m%+&10)=man_gridy%*48 x!(m%+&38)=total_apples% ya%=m%+&100 z�f%=0 � total_apples%-1 {"!(a%+(f%*28)+&0)=apx%(f%+1)*48 |"!(a%+(f%*28)+&4)=apy%(f%+1)*48 } ?(a%+(f%*28)+&14)=apx%(f%+1) ~ ?(a%+(f%*28)+&15)=apy%(f%+1) ?(a%+(f%*28)+&16)=apx%(f%+1) � ?(a%+(f%*28)+&17)=apy%(f%+1) �?(a%+(f%*28)+&18)=0 �� �!(m%+&20)=total_aliens% � a%=m%+&60 ��f%=0 � total_aliens%-1 �"!(a%+(f%*32)+&0)=alx%(f%+1)*48 �"!(a%+(f%*32)+&4)=aly%(f%+1)*48 �!(a%+(f%*32)+&8)=0 �!(a%+(f%*32)+&C)=49 � ?(a%+(f%*32)+&19)=alx%(f%+1) � ?(a%+(f%*32)+&1A)=aly%(f%+1) � ?(a%+(f%*32)+&1B)=alx%(f%+1) � ?(a%+(f%*32)+&1C)=aly%(f%+1) �?(a%+(f%*32)+&1D)=0 �� �� ���paccy(style%) ï¿½È 1 ��L%=0 � ��load_sprites("pac") ��merge_sprites("numbers") ��merge_sprites("numbuts") ��merge_sprites("buttons") �� �total_got_fp=20 �total_got%=20 �total_possible%=20 �� Q%=75 � Q%=64 � �total_got_fp=10 �total_got%=10 �total_possible%=10 �� ��L%=0 � ��set_up_screens(12) �*fx112,2 �� 132:� ��render_des_screen �'�plot_sprite(0,144,1,1,1,1,"exit3") �fade$="fade" ��fade(0,960,4,0,1,1) �*fx112,1 �area%=3 ��cachesound("aliensnear",1) ��f%=1 � 80 � �st_pause �� �nosound=�:� 1,&17F,1,1 �A%=m_code2% �B%=sprite_area1% �/�V%=0 C%=screen_one%+(16*320)+(8*320)+area% �&�V%=1 C%=screen_one%+(8*320)+area% �D%=(320*240)*(V%+1) ��V%=0:� rain% ��V%=1:� rain_vga% �#area%=area%+1:� area%=4 area%=0 ��en_pause(5) �� �$�plot_sprite(0,144,1,1,1,1,"73") �/B%=screen_one%:C%=screen_two%:�save_screen% �{�text_box(100,100,1080,160,2,"You have found yourself in the alien fuel store.","Do you require more instructions?","") ��define_buttons(2) ��:È—mx%,my%,mc%:�mc%=0 ��msxf%=1�10:È—mx%,my%,mc%:� ��bn%=1 � total_but% �/�but_off(but%(bn%,0),but%(bn%,1),but$(bn%)) �� �ȗ� �� ��check_buttons(an_num%) ��selected%>0 ��selected%=1 � �/C%=screen_one%:B%=screen_two%:�save_screen% ��pause(100) �}�text_box(100,160,1080,160,2,"The aliens store their yellow and blue fuel in","these rooms. You must try to escape.","") ��space(980,60,0,0) �/C%=screen_one%:B%=screen_two%:�save_screen% ��pause(100) �u�text_box(100,700,1080,160,2,"There are 'Code' boxes hidden in each room.","These will open the escape door.","") ��pause(200) ��space(980,100,0,0) ��set_up_screens(11) �*fx112,1 �� 132:� ��render_des_screen �A%=m_code2% �B%=sprite_area1% �C%=screen_one%+(16*320) ��?(m_code2%+&40)=0:� main% �A%=m_code2% �B%=sprite_area1% �C%=screen_one%+(16*320) �� alien% �A%=m_code2% �B%=sprite_area1% �C%=screen_one%+(16*320) �� apple% �C�text_box(600,760,560,140,2,"Use the arrow keys","to move.","") �0�plot_sprite_masked(500,820,1,1,1,1,"arrow") ��space(980,80,0,0) �=�text_box(600,650,560,90,2,"Find the coded boxes.","","") �0�plot_sprite_masked(500,670,1,1,1,1,"arrow") ��space(980,80,0,0) �?�text_box(600,518,560,90,2,"Avoid the Table Aliens!","","") �0�plot_sprite_masked(500,530,1,1,1,1,"arrow") ��space(980,80,0,0) �Y�text_box(600,288,560,210,2,"You can move through","the fuel. The aliens","cannot!") �0�plot_sprite_masked(500,380,1,1,1,1,"arrow") ��space(980,80,0,0) �Y�text_box(600,60,560,210,2,"After decoding the","code boxes, use the","escape door.") �0�plot_sprite_masked(500,140,1,1,1,1,"arrow") �'�plot_sprite(0,144,1,1,1,1,"exit3") ��space(980,64,0,0) �� �V%=stored_vga% � L%=1:� �� ��set_table_one � bom%=1 ��cachesound("aliensnear",1) � switch%=0 ��V%=0 � � sc1%=screen_one%+(16*320) �' sc2%=screen_one%+(16*320)+(8*320) � rainy%=rain% �* amount_rain%=((320*240)*(1))-(8*320) �� ��V%=1 � � sc1%=screen_one% sc2%=screen_one%+(8*320) rainy%=rain_vga% * amount_rain%=((320*240)*(2))-(8*320) � $�~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ � � � *fx112,1 �5 �f%=0 � 3 � 3 P%=link_code% [:OPT f% /register store .store /0 EQUD 0 .rain_area /4 EQUD 0 .m_code2 /8 EQUD m_code2% .sprite_area /C EQUD sprite_area1% .screen_one /10 EQUD sc1% .screen_two /14 EQUD sc2% .amount_rain /18 EQUD amount_rain% .rain_add /1C EQUD 0 .main /20 EQUD main% .alien /24 EQUD alien% .apple /28 !EQUD apple% ".rainy /2C #EQUD rainy% $.testing /30 %EQUD testing% & EQUD 0 ' ( .link )/A% = rain_add% *ADR R10,store +STR R14,[R1,#&0] ,STR R0,[R1,#&1C] - /main .LDR R0,[R10,#&8] /LDR R1,[R10,#&C] 0LDR R2,[R10,#&14] 1LDR R3,[R10,#&20] 2LDRB R4,[R0,#&40] 3CMP R4,#0:BLEQ 4� 5$�_______________________________ 6 7� 8set%=(O%*2)-(style%-1) 9�set_up_screens(set%) :*fx112,1 ;� 132:� <�render_des_screen = E%=37 >count_d%=�:T$="" ?:�set_up_count_down(tx2%,ty2%,3,(100*time_area%)+100,1) @'area%=3:escape%=0:got%=0:collect%=0 A$�plot_sprite(0,144,1,1,1,1,"73") BÈ— � C� Dntime%=� E� �nosound=�:� 1,&17F,1,1 F�count_d%+150<� � G# T$=�print_timer(tx2%,ty2%,3,1) H count_d%=� I � set%=8 � set%=10 � J. �plot_sprite(10*48,18*48,1,1,1,1,"bg16") K. �plot_sprite(12*48,18*48,1,1,1,1,"bg16") L. �plot_sprite(13*48,18*48,1,1,1,1,"bg16") M. �plot_sprite(15*48,18*48,1,1,1,1,"bg16") N � O� P Q A%=m_code2% R B%=sprite_area1% S C%=sc1% T�?(m_code2%+&40)=0:� main% U B%=sprite_area1% V C%=sc1% W� alien% X B%=sprite_area1% Y C%=sc1% Z� apple% [ B%=sprite_area1% \ C%=sc2%+area% ] D%=amount_rain% ^� rainy% _ area%=area%+1 ` � area%=4 area%=0 a� !screen_one%=&0 b A%=m_code2% c� testing% d e!� ?(m_code2%+&41)<>collect% � f res_x%=!(m_code2%+&C) g res_y%=!(m_code2%+&10) h �test_tables i �2,-15,20,&2000 j collect%=?(m_code2%+&41) k bom%=bom%+1 l� m�?(m_code2%+&40)=1 � n �cachesound("laser_door",1) o � 1,&17F,1,1 p got%=got%+1 q� r4�escape%=0 � (?(m_code2%+&41)=!(m_code2%+&38)) � s escape%=1 t� u�escape%>0 � v escape%=escape%+1 w� x�escape%=10 � y escape%=-1 z �cachesound("computer1",1) { �f%=1 �4 |( �plot_sprite(0,144,1,1,1,1,"exit3") } � 1,&17F,1,1 ~ �pause(20) ( �plot_sprite(0,144,1,1,1,1,"exit2") � �pause(20) � � � �cachesound("aliensnear",1) �� �E%=0 ��ntime%+3<� �:�ntime%+3<� �(� !(m_code2%+&C)=0 � got%>8 � T$="0" �ȗ � �� got%>8 � ��cachesound("wrong2",1) � ff%=1 ��f%=1 � 20 � �st_pause ��f% � 4=0 �1,-15,1,1 �ff%=(ff%*-1)+3 �R�plot_sprite((!(m_code2%+&C))-48,(!(m_code2%+&10))-48,1,1,1,1,"gotyou"+�(ff%)) ��en_pause(20) �� ���text_box(200,400,880,330,2,"The table aliens have captured you","again. You have another chance","to escape. Good luck.") ��space(900,100,0,0) �V%=stored_vga% �J%=J%+1 �� �� �� T$="0" � ��pause(200) �f�text_box(200,400,880,330,2,"You have run out of time.","Try again and work quickly","this time.") ��space(900,100,0,0) �V%=stored_vga% �J%=J%+1 �� �� �� !(m_code2%+&C)=0 �total_got%=total_got_fp-J% ��total_got%<0:total_got%=0 �� �?��text_box(st_x%,st_y%,length%,height%,just_type%,a$,b$,c$) �&�box2(st_x%,st_y%,length%,height%) � f_width1%=�font_string_w(a$) � f_width2%=�font_string_w(b$) � f_width3%=�font_string_w(c$) �f_height%=70 �,lines%=3:�c$="":lines%=2:�b$="":lines%=1 �.xpos1%=st_x%+((length%-(f_width1%/400))/2) �.xpos2%=st_x%+((length%-(f_width2%/400))/2) �.xpos3%=st_x%+((length%-(f_width3%/400))/2) ��just_type%=2 � �0�xpos1%<xpos2% xpos2%=xpos1% � xpos1%=xpos2% �0�xpos2%<xpos3% xpos3%=xpos2% � xpos2%=xpos3% �0�xpos3%<xpos1% xpos1%=xpos3% � xpos3%=xpos1% �� �Typos1%=(st_y%-(f_height%/6)*4)+(height%-(lines%*f_height%))/2+(lines%*f_height%) �ypos2%=ypos1%-f_height% �ypos3%=ypos2%-f_height% ��pri(xpos1%,ypos1%,a$) �$�lines%>1 �pri(xpos2%,ypos2%,b$) �$�lines%>2 �pri(xpos3%,ypos3%,c$) �� ���pri(x%,y%,a$) �:È™"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han% �#È™"Font_SetFontColours",0,0,1,2 ��0,0,0,0,0,0,0,0 �ș"Font_Paint",,a$,16,x%,y% �ș"Font_LoseFont",han% �� �ݤfont_string_w(string$) �$string%=string$ �:È™"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han% �GÈ™"Font_StringWidth",0,string%,600000,480000,-1,80 � r0,r1,f_width% �ș"Font_LoseFont",han% � =f_width% �ݤfont_string_h(string$) �$string%=string$ �:È™"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han% �JÈ™"Font_StringWidth",0,string%,600000,480000,-1,80 � r0,r1,r2,f_height �ș"Font_LoseFont",han% �=f_height% ���start_anim(blank$) �=È™"OS_SpriteOp",&118,sprite_area1%,sel_sprite$ � r0,r1,r2 �<width%=(!(r2+16)+1)*16:height%=(!(r2+20)+1)*(4*(vga%+1)) �VÈ™"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height% �8�plot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$) �an_xx%=an_x%:an_yy%=an_y% �� ���anim(blank$) �:�plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$) �VÈ™"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height% �8�plot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$) �an_xx%=an_x%:an_yy%=an_y% �� ���end_anim(blank$) �:�plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$) �� ���pri2(x%,y%,a$) �:È™"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han% �$È™"Font_SetFontColours",0,3,2,-2 ��0,0,0,0,0,0,0,0 �ș"Font_Paint",,a$,16,x%,y% �ș"Font_LoseFont",han% �� ���box(bx%,by%,bxx%,byy%) �bxx%=bx%+bxx%:byy%=by%+byy% �%�24,bx%;by%;bxx%;byy%;18,0,130,16 �-�24,bx%+4;by%+4;bxx%-4;byy%-4;18,0,129,16 �0�24,bx%+8;by%+8;bxx%-8;byy%-8;18,0,128,16,26 �/�0,3:� bx%+4,by%:�5,bxx%,by%:�5,bxx%,byy%-4 �2� bx%+4,by%+2:�5,bxx%-2,by%+2:�5,bxx%-2,byy%-4 �7�0,2:� bx%+8,by%+4:�5,bxx%-4,by%+4:�5,bxx%-4,byy%-8 �2� bx%+8,by%+6:�5,bxx%-6,by%+6:�5,bxx%-6,byy%-8 �� ���box2(bx%,by%,bxx%,byy%) �bxx%=bx%+bxx%:byy%=by%+byy% �-�24,bx%-4;by%-4;bxx%+4;byy%+4;18,0,131,16 �(�24,bx%;by%;bxx%;byy%;18,0,128,16,26 �� �7��set_up_count_down(tx%,ty%,digits%,amount%,timer%) � �box2(tx%,ty%,48*digits%,72) �!count_down%(timer%)=�+amount% �� �)ݤprint_timer(tx%,ty%,digits%,timer%) �&timer%=(count_down%(timer%)-�)/100 �/�timer%<0 timer%=0000:count_down%(timer%)=0 �t$=�(timer%) �*�plot_numbers(tx%+24,ty%+8,digits%,t$) �=t$ �$��plot_numbers(x%,y%,digits%,a$) ��(a$)<digits% � �� a$="d"+a$ ��(a$)=digits% � �pn%=1 � �(a$) 8�plot_sprite((x%-36)+(pn%*36),y%,1,1,1,1,�a$,pn%,1)) � � ��set_pos_buttons(bx%,by%) �bf%=1� total_but% but%(bf%,0)=but%(bf%,0)+bx% but%(bf%,1)=but%(bf%,1)+by% � � ��palette2 ,�V%=0 �24,0;960;1278;1022;18,0,131,16,26 �19,1,24,136,136,136 �p%,r%,g%,b% �+4 �p%=0�15 �r%,g%,b%:�p%,r%,g%,b% �:� /� 255,255,255,187,187,187,136,136,136,0,0,0 )� 0,0,175,0,0,255,0,204,255,255,255,0 (� 204,204,0,221,0,0,136,17,0,0,153,0 *� 0,187,34,0,255,0,255,221,170,0,0,175 ��assemble2 *FX113,1 *FX112,2 �opt%=0 � 3 �3 P%=m_code2% [ OPT0 .move_bombs !EQUD main "EQUD alien #EQUD apple $EQUD 720 %EQUD 672 &EQUD 0 'EQUD 0 (EQUD 49 )EQUD 4 *EQUD 0 +EQUD 0 ,EQUD 0 -EQUB 15 .EQUB 14 /EQUB 0 0EQUB 0 1EQUD 0 2EQUD 4 3EQUD testing 4EQUB 0 5EQUB 0 6EQUB 0 7EQUB 0 8EQUD rain 9EQUD rain_vga :EQUD 0 ;EQUD 0 <EQUD 0 =EQUD 0 >EQUD 0 ?.al @�EQUD 288:EQUD 432:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 3:EQUB 6:EQUB 9:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 A�EQUD 432:EQUD 240:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 9:EQUB 9:EQUB 5:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 B�EQUD 288:EQUD 288:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 6:EQUB 6:EQUB 6:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 C�EQUD 240:EQUD 240:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 12:EQUB 5:EQUB 5:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 D�EQUD 0:EQUD 0:EQUD 0:EQUD 49:EQUD 0: EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 E.ap FeEQUD 720:EQUD 720:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 15:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 GeEQUD 720:EQUD 768:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 16:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 HeEQUD 720:EQUD 816:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 17:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 IeEQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 JeEQUD 720:EQUD 720:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 15:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 KeEQUD 720:EQUD 768:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 16:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 LeEQUD 720:EQUD 816:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 17:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 MeEQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 NeEQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 OeEQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 PeEQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 QeEQUD 720:EQUD 864:EQUD 0:EQUD 0:EQUD 4: EQUB 15:EQUB 18:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0:EQUB 0 R ALIGN S.testing TMOV R10,R0 USTR R14,[R10,#&5C] VLDRB R1,[R10,#&30] WLDRB R2,[R10,#&32] XLDRB R5,[R10,#&31] YLDRB R6,[R10,#&33] ZLDR R12,[R10,#&20] [ADD R11,R10,#&60 \ADD R11,R11,#&19 ].test_alien_hit_loop ^LDRB R3,[R11,#&0] _LDRB R4,[R11,#&2] `LDRB R7,[R11,#&1] aLDRB R8,[R11,#&3] bBL check_grid_co cCMP R9,#1 dBEQ man_hit_alien eADD R11,R11,#32 fSUB R12,R12,#1 gCMP R12,#0 hBGT test_alien_hit_loop iB over_alien_hit j.man_hit_alien kSTRB R9,[R10,#&40] l.over_alien_hit mLDR R12,[R10,#&38] nADD R11,R10,#&100 oADD R11,R11,#&14 p.test_apple_hit_loop qLDRB R3,[R11,#&0] rLDRB R4,[R11,#&2] sLDRB R7,[R11,#&1] tLDRB R8,[R11,#&3] uBL check_grid_co vCMP R9,#1 wBEQ man_hit_apple xADD R11,R11,#28 ySUB R12,R12,#1 zCMP R12,#0 {BGT test_apple_hit_loop |B over_apple_hit }.man_hit_apple ~STRB R9,[R11,#4] LDRB R9,[R10,#&41] �ADD R9,R9,#1 �STRB R9,[R10,#&41] �.over_apple_hit �LDR R0,[R10,#&5C] �MOV R15,R0 �.temp_stack � EQUD 0 � EQUD 0 � EQUD 0 � EQUD 0 �.check_grid_co �ADR R9,temp_stack �STRB R1,[R9,#1] �STRB R2,[R9,#2] �STRB R3,[R9,#3] �STRB R4,[R9,#4] �STRB R5,[R9,#5] �STRB R6,[R9,#6] �STRB R7,[R9,#7] �STRB R8,[R9,#8] � MOV R9,#0 � CMP R1,R3 ��Q R9,#1 � CMP R1,R4 ��Q R9,#1 � CMP R2,R3 ��Q R9,#1 � CMP R2,R4 ��Q R9,#1 � CMP R9,#0 �BEQ no_x_match � MOV R9,#0 � CMP R5,R7 ��Q R9,#1 � CMP R5,R8 ��Q R9,#1 � CMP R6,R7 ��Q R9,#1 � CMP R6,R8 ��Q R9,#1 �.no_x_match �MOV R15,R14 � ALIGN � .rain �MOV R10,R0 �STR R1,[R10,#&50] �STR R2,[R10,#&54] �STR R14,[R10,#&5C] � MOV R0,#0 �MOV R9,#&77 �MOV R6,#320 �.rain_loop �LDRB R5,[R2,R3] �CMP R5,#&77 �BNE over_rain �ADD R7,R3,R6 �ADD R7,R7,R6 �LDRB R8,[R2,R7] �CMP R8,#&44 �BNE slide_right �STRB R8,[R2,R3] �STRB R9,[R2,R7] �B over_rain �.slide_right �SUB R7,R7,R6 �ADD R7,R7,#1 �LDRB R8,[R2,R7] �CMP R8,#&44 �BNE slide_left �STRB R8,[R2,R3] �STRB R9,[R2,R7] �B over_rain �.slide_left �SUB R7,R7,#2 �LDRB R8,[R2,R7] �CMP R8,#&44 �BNE over_rain �STRB R8,[R2,R3] �STRB R9,[R2,R7] �.over_rain �SUB R3,R3,#4 � CMP R3,#8 �BGT rain_loop �MOV R15,R14 � .rain_vga �MOV R10,R0 �STR R1,[R10,#&50] �STR R2,[R10,#&54] �STR R14,[R10,#&5C] � MOV R0,#239 � MOV R9,#&77 � MOV R6,R3 �SUB R6,R6,#4 �!.rain_vertical_loop_vga � SUB R6,R6,#640 � MOV R3,R6 � SUB R11,R3,#320 � ADD R7,R3,#1280 � SUB R12,R7,#320 � MOV R1,#320 �.rain_horizontal_loop_vga �SUB R3,R3,#4 �SUB R7,R7,#4 �SUB R11,R11,#4 �SUB R12,R12,#4 �LDRB R5,[R2,R3] �CMP R5,#&77 �BNE over_rain_vga �LDRB R8,[R2,R7] �CMP R8,#&44 �BNE slide_right_vga �STRB R8,[R2,R3] �STRB R8,[R2,R11] �STRB R9,[R2,R7] �STRB R9,[R2,R12] �B over_rain_vga �.slide_right_vga �SUB R7,R7,#640 �SUB R12,R12,#640 �ADD R7,R7,#1 �ADD R12,R12,#1 �LDRB R8,[R2,R7] �CMP R8,#&44 �BNE slide_left_vga �STRB R8,[R2,R3] �STRB R8,[R2,R11] �STRB R9,[R2,R7] �STRB R9,[R2,R12] SUB R7,R7,#1 SUB R12,R12,#1 B over_rain_vga_s .slide_left_vga SUB R7,R7,#2 SUB R12,R12,#2 LDRB R8,[R2,R7] CMP R8,#&44 ADDNE R7,R7,#1 ADDNE R12,R12,#1 BNE over_rain_vga_s STRB R8,[R2,R3] STRB R8,[R2,R11] STRB R9,[R2,R7] STRB R9,[R2,R12] ADD R7,R7,#1 ADD R12,R12,#1 .over_rain_vga_s ADD R7,R7,#640 ADD R12,R12,#640 .over_rain_vga SUB R1,R1,#4 CMP R1,#0 BNE rain_horizontal_loop_vga SUB R3,R3,#640 SUB R7,R7,#640 SUB R11,R11,#640 SUB R12,R12,#640 SUB R0,R0,#1 CMP R0,#0 BNE rain_vertical_loop_vga MOV R15,R14 ALIGN ! .apple "MOV R10,R0 #STR R1,[R10,#&50] $STR R2,[R10,#&54] %STR R14,[R10,#&5C] & MOV R0,#0 'STR R0,[R10,#&34] (.main_apple_loop )BL start_apple_move *BL apple_moving_loop +LDR R0,[R10,#&34] ,ADD R0,R0,#1 -STR R0,[R10,#&34] .LDR R1,[R10,#&38] / CMP R0,R1 0BLT main_apple_loop 1LDR R0,[R10,#&5C] 2MOV R15,R0 3.start_apple_move 4LDR R0,[R10,#&34] 5MOV R1,#28 6MUL R2,R1,R0 7ADD R2,R2,#&100 8ADD R11,R2,R10 9LDRB R2,[R11,#&18] : CMP R2,#0 ;BNE dead_apple <LDR R2,[R11,#8] = CMP R2,#0 >BNE out_of_apple_move ?MOV R4,#13 @MOV R12,#1 A MOV R5,#1 B MOV R6,#0 C MOV R3,#4 DLDR R8,[R11,#&0] ELDR R9,[R11,#&4] FLDR R0,[R10,#&54] GMOV R8,R8,LSR #2 HMOV R1,#956 IMOV R2,#320 JSUB R9,R1,R9 KMOV R9,R9,LSR #2-V% LMUL R7,R9,R2 MADD R7,R8,R7 NADD R7,R7,R0 OADD R7,R7,#320 PADD R7,R7,R6 Q MOV R1,#0 R.app_ch_u_l SLDRB R2,[R7] TCMP R2,#68 UMOVNE R4,#0 VADD R7,R7,R12 WADD R1,R1,R5 XCMP R1,#12 YBNE app_ch_u_l Z CMP R4,#0 [BEQ out_of_apple_check \LDRB R8,[R11,#&14] ]LDRB R9,[R11,#&15] ^SUB R9,R9,#1 _LDRB R5,[R10,#&30] `LDRB R6,[R10,#&31] aLDRB R7,[R10,#&32] bLDRB R2,[R10,#&33] cMOV R0,#0 d CMP R8,R5 eADDNE R0,R0,#1 f CMP R8,R7 gADDNE R0,R0,#1 h CMP R0,#2 iBEQ out_of_apple_check jMOV R0,#0 k CMP R9,R6 lADDNE R0,R0,#1 m CMP R9,R2 nADDNE R0,R0,#1 o CMP R0,#2 pMOVNE R4,#0 q.out_of_apple_check rSTR R4,[R11,#&8] s.out_of_apple_move tMOV R15,R14 u.dead_apple v CMP R2,#8 w�Q R15,R14 xADD R5,R2,#49 yADD R2,R2,#1 z MOV R0,#0 {STR R0,[R11,#&14] |STRB R2,[R11,#&18] }ADR R6,apple_sprite ~STRB R5,[R6,#3] LDR R8,[R11,#&0] �LDR R9,[R11,#&4] �B dead_apple_plot_sprite �.apple_moving_loop �LDRB R2,[R11,#&18] � CMP R2,#0 �MOVNE R15,R14 �LDR R4,[R11,#&8] � CMP R4,#0 ��Q R7,#0 �SUBNE R4,R4,#1 �STR R4,[R11,#&8] ��Q R5,#49 �BEQ out_apple_movement �CMP R4,#12 ��Q R7,#0 �MOVNE R7,#4 �BNE over_apple_first_move �LDR R3,[R11,#&10] �LDRB R9,[R11,#&15] �SUB R9,R9,#1 �STRB R9,[R11,#&17] �.over_apple_first_move � CMP R4,#0 �BNE over_apple_last_move �LDRB R9,[R11,#&17] �STRB R9,[R11,#&15] �.over_apple_last_move �MOV R5,#50 �LDR R9,[R11,#&4] �SUB R9,R9,R7 �MOV R5,#50 �STR R9,[R11,#&4] �.out_apple_movement �LDR R8,[R11,#0] �LDR R9,[R11,#4] �ADR R6,apple_sprite �STRB R5,[R6,#3] �.dead_apple_plot_sprite �MOV R0,#&34 �ADD R0,R0,#&100 �LDR R1,[R10,#&50] �ADR R2,apple_sprite �MOV R3,R8 �MOV R4,R9 �MOV R5,#&0 �ADR R6,apple_scale �MOV R7,#0 �SWI "OS_SpriteOp" �MOV R15,R14 �.apple_sprite �EQUS "app" �EQUB 49 � EQUB 0 � EQUB 0 � EQUB 0 � ALIGN �.apple_scale � EQUD 1 � EQUD 1+V% � EQUD 1 � EQUD 1 � .alien �MOV R10,R0 �STR R1,[R10,#&50] �STR R2,[R10,#&54] �STR R14,[R10,#&5C] � MOV R0,#0 �STR R0,[R10,#&24] �.main_alien_loop �BL start_alien_move �BL alien_moving_loop �LDR R0,[R10,#&24] �ADD R0,R0,#1 �STR R0,[R10,#&24] �LDR R1,[R10,#&20] � CMP R0,R1 �BLT main_alien_loop �LDR R0,[R10,#&5C] �MOV R15,R0 �.start_alien_move �STR R14,[R10,#&58] �LDR R0,[R10,#&24] �MOV R1,#32 �MUL R2,R1,R0 �ADD R2,R2,#&60 �ADD R11,R2,R10 �LDR R2,[R11,#8] � CMP R2,#0 �BNE out_of_alien_move �LDRB R0,[R11,#&14] � CMP R0,#8 �BGT set_up_rnd_sequence � CMP R0,#1 �BEQ set_alien_horiz � CMP R0,#3 �BEQ set_alien_horiz � CMP R0,#5 �BEQ set_alien_horiz � CMP R0,#7 �BEQ set_alien_horiz �.set_alien_vert �LDR R0,[R10,#&10] �LDR R9,[R11,#&4] �CMP R0,R9 �BNE vert_not_same �ADD R0,R0,#1 �STRB R0,[R11,#&14] �B out_of_alien_move �.vert_not_same �MOVLT R3,#4 �MOVGT R3,#3 �B set_up_a_check �.set_alien_horiz �LDR R0,[R10,#&C] �LDR R9,[R11,#&0] �CMP R0,R9 �BNE horiz_not_same �ADD R0,R0,#1 �STRB R0,[R11,#&14] �B out_of_alien_move �.horiz_not_same �MOVLT R3,#2 �MOVGT R3,#1 �B set_up_a_check �.set_up_rnd_sequence �ADR R1,random �LDRB R0,[R11,#&18] �ADD R0,R0,#1 CMP R0,#30 MOVGT R0,#0 STRB R0,[R11,#&18] LDRB R3,[R1,R0] LDRB R0,[R11,#&14] ADD R0,R0,#1 CMP R0,#10 MOVGT R0,#1 STRB R0,[R11,#&14] .set_up_a_check MOV R4,#13 CMP R3,#3 MOVLT R12,#320 MOVLT R5,#1 MOVLT R6,#0 CMP R3,#2 MOVGT R12,#1 MOVGT R5,#1 MOVGT R6,#0 LDR R8,[R11,#&0] LDR R9,[R11,#&4] BL check_edges CMP R4,#0 BNE alien_start_ok LDRB R0,[R11,#&14] ADD R0,R0,#1 CMP R0,#10 MOVGT R0,#1 STRB R0,[R11,#&14] B alien_start_no .alien_start_ok STR R3,[R11,#&10] STR R4,[R11,#&8] !MOV R0,#49 "STR R0,[R11,#&C] #.alien_start_no $.out_of_alien_move %LDR R0,[R10,#&58] &MOV R15,R0 '.random (;EQUB 1:EQUB 1:EQUB 3:EQUB 3:EQUB 2:EQUB 2:EQUB 2:EQUB 2 );EQUB 3:EQUB 3:EQUB 1:EQUB 1:EQUB 3:EQUB 3:EQUB 2:EQUB 2 *;EQUB 4:EQUB 4:EQUB 4:EQUB 4:EQUB 2:EQUB 2:EQUB 1:EQUB 1 +;EQUB 1:EQUB 1:EQUB 3:EQUB 3:EQUB 1:EQUB 1:EQUB 4:EQUB 4 ,.alien_moving_loop -LDR R4,[R11,#&8] . CMP R4,#0 /SUBNE R4,R4,#1 0STR R4,[R11,#&8] 1BEQ out_alien_movement 2CMP R4,#12 3�Q R7,#0 4MOVNE R7,#4 5!BNE over_aliens_first_move 6LDR R3,[R11,#&10] 7LDRB R8,[R11,#&19] 8LDRB R9,[R11,#&1A] 9 CMP R3,#1 :ADDEQ R8,R8,#1 ; CMP R3,#2 <SUBEQ R8,R8,#1 = CMP R3,#3 >ADDEQ R9,R9,#1 ? CMP R3,#4 @SUBEQ R9,R9,#1 ASTRB R8,[R11,#&1B] BSTRB R9,[R11,#&1C] C.over_aliens_first_move D CMP R4,#0 E"BNE over_aliens_last_move FLDRB R8,[R11,#&1B] GLDRB R9,[R11,#&1C] HSTRB R8,[R11,#&19] ISTRB R9,[R11,#&1A] J.over_aliens_last_move K CMP R4,#0 L�Q R4,#56 MBEQ overload_alientype NLDR R4,[R11,#&C] O.overload_alientype PADD R4,R4,#1 QCMP R4,#57 R �Q R4,#49 SSTR R4,[R11,#&C] TLDR R8,[R11,#&0] ULDR R9,[R11,#&4] VLDR R3,[R11,#&10] W CMP R3,#1 XADDEQ R8,R8,R7 Y�Q R5,#49 Z CMP R3,#2 [SUBEQ R8,R8,R7 \ �Q R5,#50 ] CMP R3,#3 ^ADDEQ R9,R9,R7 _ �Q R5,#51 ` CMP R3,#4 aSUBEQ R9,R9,R7 b �Q R5,#52 cADR R6,alien_sprite dSTRB R5,[R6,#3] eSTRB R4,[R6,#4] fSTR R8,[R11,#&0] gSTR R9,[R11,#&4] hMOV R0,#&34 iADD R0,R0,#&100 jLDR R1,[R10,#&50] kADR R2,alien_sprite lMOV R3,R8 mMOV R4,R9 nMOV R5,#&0 oADR R6,alien_scale pMOV R7,#0 qSWI "OS_SpriteOp" r.out_alien_movement sMOV R15,R14 t.alien_sprite uEQUS "ali" vEQUB 49 w EQUB 0 x EQUB 0 y EQUB 0 z ALIGN {.alien_scale | EQUD 1 } EQUD 1+V% ~ EQUD 1 EQUD 1 �.check_edges �LDR R0,[R10,#&54] �MOV R8,R8,LSR #2 �MOV R1,#956 �MOV R2,#320 �SUB R9,R1,R9 �MOV R9,R9,LSR #(2-V%) �MUL R7,R9,R2 �ADD R7,R8,R7 �ADD R7,R7,R0 �MOV R0,#0 � CMP R3,#1 �BNE over_right_check �ADD R7,R7,#12 �SUB R7,R7,R6 � MOV R1,#0 �.ch_r_l �LDRB R2,[R7] �CMP R2,#&44 �BEQ over_right_fail �MOV R4,#0 �.over_right_fail �SUB R7,R7,R12 �ADD R1,R1,R5 �CMP R1,#12 �BNE ch_r_l �B over_other_checks �.over_right_check � CMP R3,#2 �BNE over_left_check �SUB R7,R7,#1 �SUB R7,R7,R6 � MOV R1,#0 �.ch_l_l �LDRB R2,[R7] �CMP R2,#&44 �BEQ over_left_fail �MOV R4,#0 �.over_left_fail �SUB R7,R7,R12 �ADD R1,R1,R5 �CMP R1,#12 �BNE ch_l_l �B over_other_checks �.over_left_check � CMP R3,#3 �BNE over_up_check �SUB R7,R7,#(3840*(V%+1)) �ADD R7,R7,R6 � MOV R1,#0 �.ch_t_l �LDRB R2,[R7] �CMP R2,#&44 �BEQ over_up_fail �MOV R4,#0 �.over_up_fail �ADD R7,R7,R12 �ADD R1,R1,R5 �CMP R1,#12 �BNE ch_t_l �B over_other_checks �.over_up_check � CMP R3,#4 �BNE over_down_check �ADD R7,R7,#(320*(V%+1)) �ADD R7,R7,R6 � MOV R1,#0 �.ch_u_l �LDRB R2,[R7] �CMP R2,#&44 �BEQ over_down_fail �CMP R2,#&FF �BEQ over_down_fail �MOV R4,#0 �.over_down_fail �ADD R7,R7,R12 �ADD R1,R1,R5 �CMP R1,#12 �BNE ch_u_l �B over_other_checks �.over_down_check �.over_other_checks �MOV R15,R14 � .main � MOV R5,R4 �MOV R10,R0 �MOV R11,R1 �STR R2,[R10,#&54] �STR R14,[R10,#&5C] �BL key_entry_man �BL man_moving_loop �LDR R0,[R10,#&5C] �MOV R15,R0 �.end_of_main_loop �.key_entry_man �STR R14,[R10,#&58] �LDR R4,[R10,#&14] � CMP R4,#0 �BNE no_new_movement �LDR R8,[R10,#&C] �LDR R9,[R10,#&10] �MOV R4,#0 �MOV R3,#0 �CMP R5,#37 �BEQ set_man_moving_right �MOV R0,#&79 �MOV R1,#(121 � &80) �SWI "OS_Byte" �CMP R1,#&FF �BNE over_man_move_right �.set_man_moving_right � MOV R3,#1 �MOV R4,#13 �MOV R12,#(640*(V%+1)) � MOV R5,#2 �MOV R6,#320 �BL check_edges �B over_man_move_down �.over_man_move_right �MOV R0,#&79 �MOV R1,#(25 � &80) �SWI "OS_Byte" �CMP R1,#&FF �BNE over_man_move_left �MOV R3,#2 �MOV R4,#13 �MOV R12,#(640*(V%+1)) �MOV R5,#2 MOV R6,#0 BL check_edges B over_man_move_down .over_man_move_left MOV R0,#&79 MOV R1,#(57 � &80) SWI "OS_Byte" CMP R1,#&FF BNE over_man_move_up MOV R3,#3 MOV R4,#13 MOV R12,#2 MOV R5,#2 MOV R6,#1 BL check_edges B over_man_move_down .over_man_move_up MOV R0,#&79 MOV R1,#(41 � &80) SWI "OS_Byte" CMP R1,#&FF BNE over_man_move_down MOV R3,#4 MOV R4,#13 MOV R12,#2 MOV R5,#2 MOV R6,#0 BL check_edges .over_man_move_down STR R4,[R10,#&14] STR R3,[R10,#&18] .no_new_movement LDR R15,[R10,#&58] !.man_moving_loop "LDR R4,[R10,#&14] # CMP R4,#0 $SUBNE R4,R4,#1 %STR R4,[R10,#&14] & �Q R4,#53 ' �Q R5,#53 (LDREQ R8,[R10,#&C] )LDREQ R9,[R10,#&10] *BEQ out_man_movement +CMP R4,#12 ,�Q R7,#0 -MOVNE R7,#4 .BNE over_mans_first_move /LDR R3,[R10,#&18] 0LDRB R8,[R10,#&30] 1LDRB R9,[R10,#&31] 2 CMP R3,#1 3ADDEQ R8,R8,#1 4 CMP R3,#2 5SUBEQ R8,R8,#1 6 CMP R3,#3 7ADDEQ R9,R9,#1 8 CMP R3,#4 9SUBEQ R9,R9,#1 :STRB R8,[R10,#&32] ;STRB R9,[R10,#&33] <.over_mans_first_move = CMP R4,#0 >�Q R4,#56 ?BNE over_mans_last_move @LDRB R8,[R10,#&32] ALDRB R9,[R10,#&33] BSTRB R8,[R10,#&30] CSTRB R9,[R10,#&31] D.over_mans_last_move EBEQ overload_mantype FLDR R4,[R10,#&1C] G.overload_mantype HADD R4,R4,#1 ICMP R4,#57 J �Q R4,#49 KSTR R4,[R10,#&1C] LLDR R8,[R10,#&C] MLDR R9,[R10,#&10] NLDR R3,[R10,#&18] O CMP R3,#1 PADDEQ R8,R8,R7 Q�Q R5,#49 R CMP R3,#2 SSUBEQ R8,R8,R7 T �Q R5,#50 U CMP R3,#3 VADDEQ R9,R9,R7 W �Q R5,#51 X CMP R3,#4 YSUBEQ R9,R9,R7 Z �Q R5,#52 [.out_man_movement \ADR R6,man_sprite ]STRB R5,[R6,#3] ^STRB R4,[R6,#4] _STR R8,[R10,#&C] `STR R9,[R10,#&10] aMOV R0,#&34 bADD R0,R0,#&100 cMOV R1,R11 dADR R2,man_sprite eMOV R3,R8 fMOV R4,R9 gMOV R5,#&8 hADR R6,man_scale iMOV R7,#0 jSWI "OS_SpriteOp" kMOV R15,R14 l.man_sprite mEQUS "man" nEQUB 49 o EQUB 0 p EQUB 0 q EQUB 0 r ALIGN s.man_scale t EQUD 1 u EQUD 1+V% v EQUD 1 w EQUD 1 x.end_of_code2 y] z� {*FX112,1 |*FX113,1 }� ~��pull_pac_code_var main%=!(m_code2%+&0) �alien%=!(m_code2%+&4) �apple%=!(m_code2%+&8) �rain%=!(m_code2%+&44) �rain_vga%=!(m_code2%+&48) �testing%=!(m_code2%+&3C) �� ���set_screen ��clear:�clear_top ��sel_sprite$<>"" � � �4:�3:�56,1);sel_sprite$:�5 �FÈ™"OS_SpriteOp",&128,sprite_area1%,sel_sprite$ � ,,,width%,height% �;�plot_sprite(1150,960,60,16,width%,height%,sel_sprite$) �� �)�23,128,255,255,255,255,255,255,255,0 �<�f%=0�15:f$=�(f%)+�(128)+�(128):�64*f%,1022:�0,f%:�;f$:� �� �ݤcount_sprites �+È™"OS_SpriteOp",&108,sa1% � r0,r1,r2,r3 �=r3 �ݤsprite_data(name$) �:È™"OS_SpriteOp",&118,sprite_area1%,name$ � r0%,r1%,r2% �sprite_one%=r2% �=sprite_one%+44 �ݤsprite_size(sprite_area%) �8È™"OS_SpriteOp",&118,sprite_area%,"s1" � r0%,r1%,r2% �sprite_one%=r2% �=!(sprite_one%) ���test_tables �*fx113,1 �*fx112,1 ��res_x%<640 � �#tab_x%=res_x%+100:tab_y%=res_y% �� �#tab_x%=res_x%-400:tab_y%=res_y% �� �BÈ™"OS_SpriteOp",&110,sprite_area1%,"tab_blank",0,20,20,840,180 ��box2(28,28,800,140) �"�pri(60,112,"Missing number?") �� first_or_second%=1 � �7tables$=�(tables%(bom%,1))+"xk="+�(tables%(bom%,3)) �� �:tables$="kx"+�(tables%(bom%,2))+"="+�(tables%(bom%,3)) �� �%�plot_numbers2(460,102,5,tables$) �<�f%=0 � 14:�plot_sprite(80+f%*46,32,1,1,1,1,�(f%)+"o"):� �-�plot_sprite(80+1*46,32,1,1,1,1,�(1)+"n") �pointer%=1:out%=0:go%=0 �� �(È™"OS_Byte",&79,(25 � &80) � r0,yes% �5� yes%=&FF � pointer%>1:pointer%=pointer%-1:go%=1 �)È™"OS_Byte",&79,(121 � &80) � r0,yes% �6� yes%=&FF � pointer%<12:pointer%=pointer%+1:go%=1 �(È™"OS_Byte",&79,(73 � &80) � r0,yes% �� yes%=&FF out%=1 �"T$=�print_timer(tx2%,ty2%,3,1) ��go%=1 � ��cachesound("plop",1) �� 1,&17F,1,1 �;�plot_sprite(80+pointer%*46,32,1,1,1,1,�(pointer%)+"n") �A�plot_sprite(80+(pointer%-1)*46,32,1,1,1,1,�(pointer%-1)+"o") �A�plot_sprite(80+(pointer%+1)*46,32,1,1,1,1,�(pointer%+1)+"o") ��pause(20):go%=0 �� � �out%=1 � ��cachesound("wrong2",1) �� first_or_second%=1 � �1� pointer%<>tables%(bom%,2) out%=0:�1,-15,1,1 �� �1� pointer%<>tables%(bom%,1) out%=0:�1,-15,1,1 �� ��pause(30) �� �� out%=1 � T$="0" ��cachesound("ok2",1) �� 1,&17F,1,1 �Ltables$=�(tables%(bom%,1))+"x"+�(tables%(bom%,2))+"="+�(tables%(bom%,3)) �%�plot_numbers2(460,102,5,tables$) ��pause(100) �special%=special%-1 �!(scale%+0)=1 �!(scale%+4)=1 �!(scale%+8)=1 �!(scale%+12)=1 �:È™"OS_SpriteOp",&134,sa1%,"tab_blank",20,20,0,scale%,0 ��cachesound("aliensnear",1) �� ���intiger_icns ��f%=0 � 12 �9�(U% � (1<<f%))=(1<<f%) firstn%(f%)=1 � firstn%(f%)=0 �� ��f%=0 � 12 �;�(W% � (1<<f%))=(1<<f%) secondn%(f%)=1 � secondn%(f%)=0 �� �1�(W% � (1<<13))=(1<<13) mixedn%=1 � mixedn%=0 �� ���set_table_one ��intiger_icns ��clear_rnd1 ��clear_rnd2 ��find%=1 � number_of% �repeat_error%=0 �� �!repeat_error%=repeat_error%+1 �� �rnd%=(�(13)-1) �� firstn%(rnd%)=1 � rnd%>0 �-� rnd_picker1%(rnd%)=0 � repeat_error%=10 �rnd_picker1%(rnd%)=1 �rnd_number1%(find%)=rnd% �repeat_error%=0 �� �!repeat_error%=repeat_error%+1 �� �rnd%=(�(13)-1) �� secondn%(rnd%)=1 � rnd%>0 �-� rnd_picker2%(rnd%)=0 � repeat_error%=10 �rnd_picker2%(rnd%)=1 �rnd_number2%(find%)=rnd% �� ��find%=1 � number_of% ��mixedn%=1 � �(100)>50 � �1a%=rnd_number1%(find%):b%=rnd_number2%(find%) �1rnd_number2%(find%)=a%:rnd_number1%(find%)=b% �� �(tables%(find%,1)=rnd_number1%(find%) �(tables%(find%,2)=rnd_number2%(find%) �<tables%(find%,3)=rnd_number1%(find%)*rnd_number2%(find%) �� firn%=0 secn%=0 �f%=1�12 �secondn%(f%)=1:secn%+=1 � �f%=1�12 �firstn%(f%)=1:firn%+=1 � :�firn%<secn% � first_or_second%=1 � first_or_second%=2 � ��box2(bx%,by%,bxx%,byy%) bxx%=bx%+bxx%:byy%=by%+byy% -�24,bx%-4;by%-4;bxx%+4;byy%+4;18,0,131,16 (�24,bx%;by%;bxx%;byy%;18,0,128,16,26 � %��plot_numbers2(x%,y%,digits%,a$) �pn%=1 � �(a$) 8�plot_sprite((x%-36)+(pn%*42),y%,1,1,1,1,�a$,pn%,1)) � � ��clear_rnd1 �f%=0�12 rnd_picker1%(f%)=0 � � ��clear_rnd2 �f%=0�12 rnd_picker2%(f%)=0 � � ��define_buttons(set%) �set%=1:total_but%=1:��TfG �set%=2:total_but%=2:��TgG !�set%=3:total_but%=2:��ThG "�but_number%=1�total_but% #z�but%(but_number%,0),but%(but_number%,1),but%(but_number%,2),but%(but_number%,3),but%(but_number%,4),but$(but_number%) $� %� &� 100,100,200,40,2,Go on ']� 680,20,200,60,2,Yes,920,20,200,60,2,No,1060,72,200,60,2,Correct,20,72,200,60,2,Next box (3� 820,430,190,60,2,Left,1044,430,190,60,2,Right )��but_off(bx%,by%,text$) *+�plot_sprite(bx%,by%,1,1,1,1,"button1") +&left_margin%=(194-(�(text$)*16))/2 ,�5 -(�0,3:�bx%+left_margin%,by%+42:�text$ .� /��but_on(bx%,by%,text$) 0+�plot_sprite(bx%,by%,1,1,1,1,"button2") 1&left_margin%=(194-(�(text$)*16))/2 2�5 3(�0,3:�bx%+left_margin%,by%+42:�text$ 4� 5��check_buttons(an_num%) 6selected%=0 7�5 8�check_mouse(10) 9�but_n%=1 � total_but% :�but%(but_n%,4)<2:�:� ;y�mx%>but%(but_n%,0) � mx%<(but%(but_n%,0)+but%(but_n%,2)) � my%>but%(but_n%,1) � my%<(but%(but_n%,1)+but%(but_n%,3))� <�mz%=4 � =selected%=but_n% >7�but_on(but%(but_n%,0),but%(but_n%,1),but$(but_n%)) ?�pause(30) @�:È— x%,y%,z%:� z%=0 A8�but_off(but%(but_n%,0),but%(but_n%,1),but$(but_n%)) B� C� D �an_num%>0:�sp_anim(an_num%) E� F� G��render_des_screen H*main_sp_add%=�sprite_data(des_sprite$) I off%=0 Jrenx%=0:reny%=896 K�down%=864+48 � 0 � -48 L�acc%=0 � 1248+48 � 48 M sprite%=?(main_sp_add%+off%) N/�plot_sprite(acc%,down%,1,1,1,1,�(sprite%)) Ooff%=off%+1 P� Q� R� Sݤsprite_data(name$) T:È™"OS_SpriteOp",&118,sprite_area1%,name$ � r0%,r1%,r2% Usprite_one%=r2% V=sprite_one%+44 �
00000000 0d 00 00 32 f4 ff 41 44 46 53 3a 3a 48 61 72 64 |...2..ADFS::Hard| 00000010 44 69 73 63 34 2e 24 2e 43 55 52 52 5f 4e 45 57 |Disc4.$.CURR_NEW| 00000020 2e 21 54 61 62 6c 65 73 2e 50 74 31 2e 50 61 63 |.!Tables.Pt1.Pac| 00000030 63 79 0d 00 01 21 c8 9b 20 22 3c 54 61 62 6c 65 |cy...!.. "<Table| 00000040 41 24 44 69 72 3e 2e 50 74 31 2e 4c 69 62 72 61 |A$Dir>.Pt1.Libra| 00000050 72 79 22 0d 00 02 0c 2a 46 58 32 32 35 2c 31 0d |ry"....*FX225,1.| 00000060 00 03 0c 2a 46 58 32 32 39 2c 30 0d 00 04 0d 2a |...*FX229,0....*| 00000070 46 58 32 32 30 2c 31 37 0d 00 05 1c ee 85 3a ff |FX220,17......:.| 00000080 22 46 58 32 32 39 2c 31 22 3a ee 85 20 87 3a f2 |"FX229,1":.. .:.| 00000090 64 74 7c 4d 0d 00 06 21 2a 4b 45 59 31 20 56 25 |dt|M...!*KEY1 V%| 000000a0 3d 73 74 6f 72 65 64 5f 76 67 61 25 3a 50 52 4f |=stored_vga%:PRO| 000000b0 43 64 74 7c 4d 0d 00 07 15 2a 4b 45 59 35 20 50 |Cdt|M....*KEY5 P| 000000c0 52 4f 43 73 74 61 74 73 7c 4d 0d 00 08 51 2a 4b |ROCstats|M...Q*K| 000000d0 45 59 39 20 4d 4f 55 53 45 52 45 43 54 41 4e 47 |EY9 MOUSERECTANG| 000000e0 4c 45 20 30 2c 30 2c 31 32 37 38 2c 39 36 30 3a |LE 0,0,1278,960:| 000000f0 52 45 50 45 41 54 3a 4d 4f 55 53 45 58 2c 59 2c |REPEAT:MOUSEX,Y,| 00000100 5a 3a 50 2e 54 41 42 28 30 2c 30 29 58 2c 59 3a |Z:P.TAB(0,0)X,Y:| 00000110 55 4e 54 49 4c 20 46 41 4c 53 45 0d 00 09 6d 2a |UNTIL FALSE...m*| 00000120 4b 45 59 33 20 6c 65 6e 67 74 68 24 3d 53 54 52 |KEY3 length$=STR| 00000130 24 7e 32 36 32 31 34 34 3a 66 72 6f 6d 24 3d 53 |$~262144:from$=S| 00000140 54 52 24 7e 62 61 63 6b 5f 64 61 74 61 25 3a 66 |TR$~back_data%:f| 00000150 69 6c 65 24 3d 22 62 67 64 61 74 61 32 22 3a 4f |ile$="bgdata2":O| 00000160 53 43 4c 49 22 53 41 56 45 20 22 2b 66 69 6c 65 |SCLI"SAVE "+file| 00000170 24 2b 22 20 22 2b 66 72 6f 6d 24 2b 22 20 2b 22 |$+" "+from$+" +"| 00000180 2b 6c 65 6e 67 74 68 24 0d 00 0a 24 de 20 69 6e |+length$...$. in| 00000190 70 75 74 5f 64 69 73 6b 5f 6e 61 6d 65 25 20 32 |put_disk_name% 2| 000001a0 35 36 2c 6d 6f 75 73 65 25 20 31 36 0d 00 0b 4a |56,mouse% 16...J| 000001b0 de 20 70 64 72 65 63 74 25 20 31 36 2c 70 64 72 |. pdrect% 16,pdr| 000001c0 65 63 74 32 25 20 31 36 2c 70 64 74 72 61 6e 73 |ect2% 16,pdtrans| 000001d0 25 20 31 36 2c 70 64 70 6c 6f 74 25 20 38 2c 63 |% 16,pdplot% 8,c| 000001e0 74 72 61 6e 73 25 20 32 35 36 2c 70 61 6c 74 61 |trans% 256,palta| 000001f0 62 25 20 32 35 36 0d 00 0c 24 de 20 69 6e 70 75 |b% 256...$. inpu| 00000200 74 25 20 31 36 2c 6f 75 74 70 75 74 25 20 31 36 |t% 16,output% 16| 00000210 2c 73 63 61 6c 65 25 20 31 36 0d 00 0d 19 de 20 |,scale% 16..... | 00000220 62 75 74 25 28 34 30 2c 34 29 2c 62 75 74 24 28 |but%(40,4),but$(| 00000230 34 30 29 0d 00 0e 11 de 20 61 72 65 61 25 28 31 |40)..... area%(1| 00000240 30 2c 34 29 0d 00 0f 13 de 20 70 6f 69 6e 74 73 |0,4)..... points| 00000250 25 28 32 2c 31 30 29 0d 00 10 11 de 20 73 74 72 |%(2,10)..... str| 00000260 69 6e 67 25 20 31 32 38 0d 00 11 13 de 20 74 61 |ing% 128..... ta| 00000270 62 6c 65 73 25 28 31 32 2c 35 29 0d 00 12 19 de |bles%(12,5).....| 00000280 20 74 61 62 6c 65 73 24 28 31 32 29 2c 74 61 24 | tables$(12),ta$| 00000290 28 31 32 29 0d 00 13 13 de 20 6d 6f 76 5f 74 61 |(12)..... mov_ta| 000002a0 62 25 28 35 2c 35 29 0d 00 14 11 de 20 66 69 72 |b%(5,5)..... fir| 000002b0 73 74 6e 25 28 31 32 29 0d 00 15 12 de 20 73 65 |stn%(12)..... se| 000002c0 63 6f 6e 64 6e 25 28 31 32 29 0d 00 16 16 de 20 |condn%(12)..... | 000002d0 72 6e 64 5f 70 69 63 6b 65 72 31 25 28 31 32 29 |rnd_picker1%(12)| 000002e0 0d 00 17 16 de 20 72 6e 64 5f 70 69 63 6b 65 72 |..... rnd_picker| 000002f0 32 25 28 31 32 29 0d 00 18 16 de 20 72 6e 64 5f |2%(12)..... rnd_| 00000300 6e 75 6d 62 65 72 31 25 28 31 32 29 0d 00 19 16 |number1%(12)....| 00000310 de 20 72 6e 64 5f 6e 75 6d 62 65 72 32 25 28 31 |. rnd_number2%(1| 00000320 32 29 0d 00 1a 14 de 20 70 72 65 73 65 6e 74 65 |2)..... presente| 00000330 64 25 28 31 32 29 0d 00 1b 13 de 20 78 5f 61 6e |d%(12)..... x_an| 00000340 73 77 65 72 25 28 31 32 29 0d 00 1c 14 de 20 63 |swer%(12)..... c| 00000350 6f 75 6e 74 5f 64 6f 77 6e 25 28 36 29 0d 00 1d |ount_down%(6)...| 00000360 17 de 20 65 6e 74 72 79 5f 61 72 65 61 73 25 28 |.. entry_areas%(| 00000370 35 2c 34 29 0d 00 1e 0f de 20 64 73 25 28 33 32 |5,4)..... ds%(32| 00000380 2c 32 29 0d 00 1f 11 de 20 63 6f 72 72 25 28 33 |,2)..... corr%(3| 00000390 30 2c 33 29 0d 00 20 0f de 20 73 63 61 6c 65 25 |0,3).. .. scale%| 000003a0 20 31 36 0d 00 21 0f de 20 69 6e 70 75 74 25 20 | 16..!.. input% | 000003b0 31 36 0d 00 22 10 de 20 6f 75 74 70 75 74 25 20 |16..".. output% | 000003c0 31 36 0d 00 23 17 de 20 61 6c 78 25 28 31 32 29 |16..#.. alx%(12)| 000003d0 2c 61 6c 79 25 28 31 32 29 0d 00 24 17 de 20 61 |,aly%(12)..$.. a| 000003e0 70 78 25 28 31 32 29 2c 61 70 79 25 28 31 32 29 |px%(12),apy%(12)| 000003f0 0d 00 25 12 de 20 72 65 67 72 6f 75 70 25 28 31 |..%.. regroup%(1| 00000400 32 29 0d 00 26 15 de 20 6c 69 6e 6b 5f 63 6f 64 |2)..&.. link_cod| 00000410 65 25 20 31 30 32 34 0d 00 27 12 73 74 6f 72 65 |e% 1024..'.store| 00000420 64 5f 76 67 61 25 3d 56 25 0d 00 28 0b 76 67 61 |d_vga%=V%..(.vga| 00000430 25 3d 56 25 0d 00 29 13 f2 70 75 6c 6c 5f 76 61 |%=V%..)..pull_va| 00000440 72 69 61 62 6c 65 73 0d 00 2a 15 61 64 64 72 73 |riables..*.addrs| 00000450 24 3d c3 7e 6d 5f 63 6f 64 65 31 25 0d 00 2b 2c |$=.~m_code1%..+,| 00000460 ff 22 4c 4f 41 44 20 3c 54 61 62 6c 65 41 24 44 |."LOAD <TableA$D| 00000470 69 72 3e 2e 50 74 31 2e 47 65 6e 43 6f 64 65 20 |ir>.Pt1.GenCode | 00000480 22 2b 61 64 64 72 73 24 0d 00 2c 0e f2 61 73 73 |"+addrs$..,..ass| 00000490 65 6d 62 6c 65 32 0d 00 2d 11 f2 66 69 6e 64 5f |emble2..-..find_| 000004a0 73 63 72 65 65 6e 73 0d 00 2e 16 f2 70 75 6c 6c |screens.....pull| 000004b0 5f 67 65 6e 5f 63 6f 64 65 5f 76 61 72 0d 00 2f |_gen_code_var../| 000004c0 16 f2 70 75 6c 6c 5f 70 61 63 5f 63 6f 64 65 5f |..pull_pac_code_| 000004d0 76 61 72 0d 00 30 16 73 61 31 25 3d 73 70 72 69 |var..0.sa1%=spri| 000004e0 74 65 5f 61 72 65 61 31 25 0d 00 31 11 6e 75 6d |te_area1%..1.num| 000004f0 62 65 72 5f 6f 66 25 3d 31 30 0d 00 32 0f 74 69 |ber_of%=10..2.ti| 00000500 6d 65 72 5f 6f 6e 25 3d 31 0d 00 33 0c 73 74 79 |mer_on%=1..3.sty| 00000510 6c 65 25 3d 31 0d 00 34 0c 6f 72 64 65 72 25 3d |le%=1..4.order%=| 00000520 32 0d 00 35 0d f2 70 61 6c 65 74 74 65 32 0d 00 |2..5..palette2..| 00000530 36 12 ef 31 39 2c 31 2c 32 34 2c 30 2c 30 2c 30 |6..19,1,24,0,0,0| 00000540 0d 00 37 1d e7 56 25 3d 31 20 ef 20 32 33 2c 31 |..7..V%=1 . 23,1| 00000550 37 2c 37 2c 36 2c 38 3b 31 36 3b 30 3b 0d 00 38 |7,7,6,8;16;0;..8| 00000560 0c e7 51 25 3d 32 34 20 8c 0d 00 39 0d f2 70 61 |..Q%=24 ...9..pa| 00000570 6c 65 74 74 65 32 0d 00 3a 12 ef 31 39 2c 31 2c |lette2..:..19,1,| 00000580 32 34 2c 30 2c 30 2c 30 0d 00 3b 0d f2 70 61 63 |24,0,0,0..;..pac| 00000590 63 79 28 32 29 0d 00 3c 0c 2a 46 58 31 31 33 2c |cy(2)..<.*FX113,| 000005a0 31 0d 00 3d 0c 2a 46 58 31 31 32 2c 31 0d 00 3e |1..=.*FX112,1..>| 000005b0 14 f2 74 73 63 6f 72 65 28 35 31 32 2c 33 36 30 |..tscore(512,360| 000005c0 29 0d 00 3f 17 f2 73 70 61 63 65 28 39 30 30 2c |)..?..space(900,| 000005d0 31 30 30 2c 30 2c 30 29 0d 00 40 09 51 25 3d 32 |100,0,0)..@.Q%=2| 000005e0 35 0d 00 41 05 cd 0d 00 42 32 e7 51 25 3d 32 35 |5..A....B2.Q%=25| 000005f0 3a 56 25 3d 73 74 6f 72 65 64 5f 76 67 61 25 3a |:V%=stored_vga%:| 00000600 d7 22 3c 54 61 62 6c 65 41 24 44 69 72 3e 2e 50 |."<TableA$Dir>.P| 00000610 74 31 2e 6c 69 6e 6b 22 0d 00 43 0c e7 51 25 3d |t1.link"..C..Q%=| 00000620 33 30 20 8c 0d 00 44 0d f2 70 61 6c 65 74 74 65 |30 ...D..palette| 00000630 32 0d 00 45 12 ef 31 39 2c 31 2c 32 34 2c 30 2c |2..E..19,1,24,0,| 00000640 30 2c 30 0d 00 46 0d f2 70 61 63 63 79 28 32 29 |0,0..F..paccy(2)| 00000650 0d 00 47 0c 2a 46 58 31 31 33 2c 31 0d 00 48 0c |..G.*FX113,1..H.| 00000660 2a 46 58 31 31 32 2c 31 0d 00 49 14 f2 74 73 63 |*FX112,1..I..tsc| 00000670 6f 72 65 28 35 31 32 2c 33 36 30 29 0d 00 4a 17 |ore(512,360)..J.| 00000680 f2 73 70 61 63 65 28 39 30 30 2c 31 30 30 2c 30 |.space(900,100,0| 00000690 2c 30 29 0d 00 4b 09 51 25 3d 33 31 0d 00 4c 05 |,0)..K.Q%=31..L.| 000006a0 cd 0d 00 4d 32 e7 51 25 3d 33 31 3a 56 25 3d 73 |...M2.Q%=31:V%=s| 000006b0 74 6f 72 65 64 5f 76 67 61 25 3a d7 22 3c 54 61 |tored_vga%:."<Ta| 000006c0 62 6c 65 41 24 44 69 72 3e 2e 50 74 31 2e 6c 69 |bleA$Dir>.Pt1.li| 000006d0 6e 6b 22 0d 00 4e 0c e7 51 25 3d 36 34 20 8c 0d |nk"..N..Q%=64 ..| 000006e0 00 4f 0d f2 70 61 6c 65 74 74 65 32 0d 00 50 12 |.O..palette2..P.| 000006f0 ef 31 39 2c 31 2c 32 34 2c 30 2c 30 2c 30 0d 00 |.19,1,24,0,0,0..| 00000700 51 0d f2 70 61 63 63 79 28 31 29 0d 00 52 0c 2a |Q..paccy(1)..R.*| 00000710 46 58 31 31 33 2c 31 0d 00 53 0c 2a 46 58 31 31 |FX113,1..S.*FX11| 00000720 32 2c 31 0d 00 54 14 f2 74 73 63 6f 72 65 28 35 |2,1..T..tscore(5| 00000730 31 32 2c 33 36 30 29 0d 00 55 17 f2 73 70 61 63 |12,360)..U..spac| 00000740 65 28 39 30 30 2c 31 30 30 2c 30 2c 30 29 0d 00 |e(900,100,0,0)..| 00000750 56 46 f2 74 65 78 74 5f 62 6f 78 28 31 30 30 2c |VF.text_box(100,| 00000760 31 31 30 2c 31 30 38 30 2c 39 30 2c 32 2c 22 59 |110,1080,90,2,"Y| 00000770 6f 75 20 77 61 6c 6b 20 6f 6e 20 74 6f 20 74 68 |ou walk on to th| 00000780 65 20 6e 65 78 74 20 72 6f 6f 6d 2e 22 2c 22 22 |e next room.",""| 00000790 2c 22 22 29 0d 00 57 16 f2 73 70 61 63 65 28 39 |,"")..W..space(9| 000007a0 30 30 2c 31 30 2c 30 2c 30 29 0d 00 58 09 51 25 |00,10,0,0)..X.Q%| 000007b0 3d 36 35 0d 00 59 05 cd 0d 00 5a 32 e7 51 25 3d |=65..Y....Z2.Q%=| 000007c0 36 35 3a 56 25 3d 73 74 6f 72 65 64 5f 76 67 61 |65:V%=stored_vga| 000007d0 25 3a d7 22 3c 54 61 62 6c 65 41 24 44 69 72 3e |%:."<TableA$Dir>| 000007e0 2e 50 74 31 2e 6c 69 6e 6b 22 0d 00 5b 0c e7 51 |.Pt1.link"..[..Q| 000007f0 25 3d 37 35 20 8c 0d 00 5c 0d f2 70 61 6c 65 74 |%=75 ...\..palet| 00000800 74 65 32 0d 00 5d 12 ef 31 39 2c 31 2c 32 34 2c |te2..]..19,1,24,| 00000810 30 2c 30 2c 30 0d 00 5e 0d f2 70 61 63 63 79 28 |0,0,0..^..paccy(| 00000820 31 29 0d 00 5f 0c 2a 46 58 31 31 33 2c 31 0d 00 |1).._.*FX113,1..| 00000830 60 0c 2a 46 58 31 31 32 2c 31 0d 00 61 14 f2 74 |`.*FX112,1..a..t| 00000840 73 63 6f 72 65 28 35 31 32 2c 33 36 30 29 0d 00 |score(512,360)..| 00000850 62 17 f2 73 70 61 63 65 28 39 30 30 2c 31 30 30 |b..space(900,100| 00000860 2c 30 2c 30 29 0d 00 63 46 f2 74 65 78 74 5f 62 |,0,0)..cF.text_b| 00000870 6f 78 28 31 30 30 2c 31 31 30 2c 31 30 38 30 2c |ox(100,110,1080,| 00000880 39 30 2c 32 2c 22 59 6f 75 20 77 61 6c 6b 20 6f |90,2,"You walk o| 00000890 6e 20 74 6f 20 74 68 65 20 6e 65 78 74 20 72 6f |n to the next ro| 000008a0 6f 6d 2e 22 2c 22 22 2c 22 22 29 0d 00 64 16 f2 |om.","","")..d..| 000008b0 73 70 61 63 65 28 39 30 30 2c 31 30 2c 30 2c 30 |space(900,10,0,0| 000008c0 29 0d 00 65 09 51 25 3d 36 36 0d 00 66 05 cd 0d |)..e.Q%=66..f...| 000008d0 00 67 32 e7 51 25 3d 36 36 3a 56 25 3d 73 74 6f |.g2.Q%=66:V%=sto| 000008e0 72 65 64 5f 76 67 61 25 3a d7 22 3c 54 61 62 6c |red_vga%:."<Tabl| 000008f0 65 41 24 44 69 72 3e 2e 50 74 31 2e 6c 69 6e 6b |eA$Dir>.Pt1.link| 00000900 22 0d 00 68 0d e7 51 25 3d 32 31 31 20 8c 0d 00 |"..h..Q%=211 ...| 00000910 69 0d f2 70 61 6c 65 74 74 65 32 0d 00 6a 12 ef |i..palette2..j..| 00000920 31 39 2c 31 2c 32 34 2c 30 2c 30 2c 30 0d 00 6b |19,1,24,0,0,0..k| 00000930 10 f2 70 61 63 63 79 28 b3 28 32 29 29 0d 00 6c |..paccy(.(2))..l| 00000940 0c 2a 46 58 31 31 33 2c 31 0d 00 6d 0c 2a 46 58 |.*FX113,1..m.*FX| 00000950 31 31 32 2c 31 0d 00 6e 14 f2 74 73 63 6f 72 65 |112,1..n..tscore| 00000960 28 35 31 32 2c 33 36 30 29 0d 00 6f 17 f2 73 70 |(512,360)..o..sp| 00000970 61 63 65 28 39 30 30 2c 31 30 30 2c 30 2c 30 29 |ace(900,100,0,0)| 00000980 0d 00 70 0d e7 53 25 3d 31 20 f2 64 74 0d 00 71 |..p..S%=1 .dt..q| 00000990 1c d7 22 3c 54 61 62 6c 65 41 24 44 69 72 3e 2e |.."<TableA$Dir>.| 000009a0 50 74 31 2e 6c 69 6e 6b 22 0d 00 72 05 cd 0d 00 |Pt1.link"..r....| 000009b0 73 1a dd f2 73 65 74 5f 75 70 5f 73 63 72 65 65 |s...set_up_scree| 000009c0 6e 73 28 73 65 74 25 29 0d 00 74 0d e7 73 65 74 |ns(set%)..t..set| 000009d0 25 3d 39 20 8c 0d 00 75 1a 64 65 73 5f 73 70 72 |%=9 ...u.des_spr| 000009e0 69 74 65 24 3d 22 67 61 6d 65 31 73 31 30 22 0d |ite$="game1s10".| 000009f0 00 76 4b 74 69 74 6c 65 24 3d 22 4c 65 76 65 6c |.vKtitle$="Level| 00000a00 20 37 2e 20 20 54 68 65 20 63 72 75 73 68 65 72 | 7. The crusher| 00000a10 2e 22 3a 61 64 24 3d 22 41 6c 6c 6f 77 20 74 68 |.":ad$="Allow th| 00000a20 65 20 74 6f 70 20 61 6c 69 65 6e 20 74 6f 20 63 |e top alien to c| 00000a30 68 61 73 65 20 79 6f 75 2e 22 0d 00 77 11 6d 61 |hase you."..w.ma| 00000a40 6e 5f 67 72 69 64 78 25 3d 31 34 0d 00 78 10 6d |n_gridx%=14..x.m| 00000a50 61 6e 5f 67 72 69 64 79 25 3d 36 0d 00 79 13 74 |an_gridy%=6..y.t| 00000a60 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d 34 0d 00 |otal_apples%=4..| 00000a70 7a 19 61 70 78 25 28 31 29 3d 31 32 3a 61 70 79 |z.apx%(1)=12:apy| 00000a80 25 28 31 29 3d 31 33 0d 00 7b 19 61 70 78 25 28 |%(1)=13..{.apx%(| 00000a90 32 29 3d 31 32 3a 61 70 79 25 28 32 29 3d 31 34 |2)=12:apy%(2)=14| 00000aa0 0d 00 7c 19 61 70 78 25 28 33 29 3d 31 33 3a 61 |..|.apx%(3)=13:a| 00000ab0 70 79 25 28 33 29 3d 31 33 0d 00 7d 19 61 70 78 |py%(3)=13..}.apx| 00000ac0 25 28 34 29 3d 31 33 3a 61 70 79 25 28 34 29 3d |%(4)=13:apy%(4)=| 00000ad0 31 34 0d 00 7e 19 61 70 78 25 28 35 29 3d 31 33 |14..~.apx%(5)=13| 00000ae0 3a 61 70 79 25 28 35 29 3d 31 33 0d 00 7f 19 61 |:apy%(5)=13....a| 00000af0 70 78 25 28 36 29 3d 31 33 3a 61 70 79 25 28 36 |px%(6)=13:apy%(6| 00000b00 29 3d 31 34 0d 00 80 19 61 70 78 25 28 37 29 3d |)=14....apx%(7)=| 00000b10 31 33 3a 61 70 79 25 28 37 29 3d 31 35 0d 00 81 |13:apy%(7)=15...| 00000b20 19 61 70 78 25 28 38 29 3d 31 33 3a 61 70 79 25 |.apx%(8)=13:apy%| 00000b30 28 38 29 3d 31 36 0d 00 82 13 74 6f 74 61 6c 5f |(8)=16....total_| 00000b40 61 6c 69 65 6e 73 25 3d 32 0d 00 83 17 61 6c 78 |aliens%=2....alx| 00000b50 25 28 31 29 3d 33 3a 61 6c 79 25 28 31 29 3d 30 |%(1)=3:aly%(1)=0| 00000b60 0d 00 84 18 61 6c 78 25 28 32 29 3d 39 3a 61 6c |....alx%(2)=9:al| 00000b70 79 25 28 32 29 3d 31 37 0d 00 85 18 61 6c 78 25 |y%(2)=17....alx%| 00000b80 28 33 29 3d 32 32 3a 61 6c 79 25 28 33 29 3d 30 |(3)=22:aly%(3)=0| 00000b90 0d 00 86 12 74 69 6d 65 5f 61 72 65 61 25 3d 31 |....time_area%=1| 00000ba0 38 30 0d 00 87 05 cd 0d 00 88 0d e7 73 65 74 25 |80..........set%| 00000bb0 3d 37 20 8c 0d 00 89 19 64 65 73 5f 73 70 72 69 |=7 .....des_spri| 00000bc0 74 65 24 3d 22 67 61 6d 65 31 73 39 22 0d 00 8a |te$="game1s9"...| 00000bd0 3d 74 69 74 6c 65 24 3d 22 4c 65 76 65 6c 20 39 |=title$="Level 9| 00000be0 2e 20 20 53 61 6e 64 20 74 75 6e 6e 65 6c 73 2e |. Sand tunnels.| 00000bf0 22 3a 61 64 24 3d 22 4d 6f 76 65 20 76 65 72 79 |":ad$="Move very| 00000c00 20 71 75 69 63 6b 6c 79 21 22 0d 00 8b 11 6d 61 | quickly!"....ma| 00000c10 6e 5f 67 72 69 64 78 25 3d 32 33 0d 00 8c 10 6d |n_gridx%=23....m| 00000c20 61 6e 5f 67 72 69 64 79 25 3d 32 0d 00 8d 13 74 |an_gridy%=2....t| 00000c30 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d 34 0d 00 |otal_apples%=4..| 00000c40 8e 19 61 70 78 25 28 31 29 3d 31 32 3a 61 70 79 |..apx%(1)=12:apy| 00000c50 25 28 31 29 3d 31 35 0d 00 8f 19 61 70 78 25 28 |%(1)=15....apx%(| 00000c60 32 29 3d 31 32 3a 61 70 79 25 28 32 29 3d 31 36 |2)=12:apy%(2)=16| 00000c70 0d 00 90 19 61 70 78 25 28 33 29 3d 31 33 3a 61 |....apx%(3)=13:a| 00000c80 70 79 25 28 33 29 3d 31 35 0d 00 91 19 61 70 78 |py%(3)=15....apx| 00000c90 25 28 34 29 3d 31 33 3a 61 70 79 25 28 34 29 3d |%(4)=13:apy%(4)=| 00000ca0 31 36 0d 00 92 19 61 70 78 25 28 35 29 3d 31 33 |16....apx%(5)=13| 00000cb0 3a 61 70 79 25 28 35 29 3d 31 33 0d 00 93 19 61 |:apy%(5)=13....a| 00000cc0 70 78 25 28 36 29 3d 31 33 3a 61 70 79 25 28 36 |px%(6)=13:apy%(6| 00000cd0 29 3d 31 34 0d 00 94 19 61 70 78 25 28 37 29 3d |)=14....apx%(7)=| 00000ce0 31 33 3a 61 70 79 25 28 37 29 3d 31 35 0d 00 95 |13:apy%(7)=15...| 00000cf0 19 61 70 78 25 28 38 29 3d 31 33 3a 61 70 79 25 |.apx%(8)=13:apy%| 00000d00 28 38 29 3d 31 36 0d 00 96 13 74 6f 74 61 6c 5f |(8)=16....total_| 00000d10 61 6c 69 65 6e 73 25 3d 33 0d 00 97 17 61 6c 78 |aliens%=3....alx| 00000d20 25 28 31 29 3d 33 3a 61 6c 79 25 28 31 29 3d 36 |%(1)=3:aly%(1)=6| 00000d30 0d 00 98 18 61 6c 78 25 28 32 29 3d 39 3a 61 6c |....alx%(2)=9:al| 00000d40 79 25 28 32 29 3d 31 37 0d 00 99 18 61 6c 78 25 |y%(2)=17....alx%| 00000d50 28 33 29 3d 31 35 3a 61 6c 79 25 28 33 29 3d 35 |(3)=15:aly%(3)=5| 00000d60 0d 00 9a 12 74 69 6d 65 5f 61 72 65 61 25 3d 31 |....time_area%=1| 00000d70 31 30 0d 00 9b 05 cd 0d 00 9c 0d e7 73 65 74 25 |10..........set%| 00000d80 3d 31 20 8c 0d 00 9d 19 64 65 73 5f 73 70 72 69 |=1 .....des_spri| 00000d90 74 65 24 3d 22 67 61 6d 65 31 73 31 22 0d 00 9e |te$="game1s1"...| 00000da0 4a 74 69 74 6c 65 24 3d 22 4c 65 76 65 6c 20 31 |Jtitle$="Level 1| 00000db0 2e 20 20 54 68 65 20 73 74 6f 72 65 20 72 6f 6f |. The store roo| 00000dc0 6d 2e 22 3a 61 64 24 3d 22 57 61 74 63 68 20 66 |m.":ad$="Watch f| 00000dd0 6f 72 20 74 68 65 20 68 69 64 64 65 6e 20 64 61 |or the hidden da| 00000de0 6e 67 65 72 73 21 22 0d 00 9f 11 6d 61 6e 5f 67 |ngers!"....man_g| 00000df0 72 69 64 78 25 3d 32 33 0d 00 a0 10 6d 61 6e 5f |ridx%=23....man_| 00000e00 67 72 69 64 79 25 3d 32 0d 00 a1 13 74 6f 74 61 |gridy%=2....tota| 00000e10 6c 5f 61 70 70 6c 65 73 25 3d 32 0d 00 a2 17 61 |l_apples%=2....a| 00000e20 70 78 25 28 31 29 3d 39 3a 61 70 79 25 28 31 29 |px%(1)=9:apy%(1)| 00000e30 3d 38 0d 00 a3 18 61 70 78 25 28 32 29 3d 31 36 |=8....apx%(2)=16| 00000e40 3a 61 70 79 25 28 32 29 3d 38 0d 00 a4 18 61 70 |:apy%(2)=8....ap| 00000e50 78 25 28 33 29 3d 31 34 3a 61 70 79 25 28 33 29 |x%(3)=14:apy%(3)| 00000e60 3d 38 0d 00 a5 18 61 70 78 25 28 34 29 3d 31 36 |=8....apx%(4)=16| 00000e70 3a 61 70 79 25 28 34 29 3d 38 0d 00 a6 19 61 70 |:apy%(4)=8....ap| 00000e80 78 25 28 35 29 3d 31 34 3a 61 70 79 25 28 35 29 |x%(5)=14:apy%(5)| 00000e90 3d 31 33 0d 00 a7 19 61 70 78 25 28 36 29 3d 31 |=13....apx%(6)=1| 00000ea0 34 3a 61 70 79 25 28 36 29 3d 31 34 0d 00 a8 19 |4:apy%(6)=14....| 00000eb0 61 70 78 25 28 37 29 3d 31 33 3a 61 70 79 25 28 |apx%(7)=13:apy%(| 00000ec0 37 29 3d 31 33 0d 00 a9 19 61 70 78 25 28 38 29 |7)=13....apx%(8)| 00000ed0 3d 31 33 3a 61 70 79 25 28 38 29 3d 31 34 0d 00 |=13:apy%(8)=14..| 00000ee0 aa 13 74 6f 74 61 6c 5f 61 6c 69 65 6e 73 25 3d |..total_aliens%=| 00000ef0 32 0d 00 ab 18 61 6c 78 25 28 31 29 3d 35 3a 61 |2....alx%(1)=5:a| 00000f00 6c 79 25 28 31 29 3d 31 35 0d 00 ac 18 61 6c 78 |ly%(1)=15....alx| 00000f10 25 28 32 29 3d 37 3a 61 6c 79 25 28 32 29 3d 31 |%(2)=7:aly%(2)=1| 00000f20 35 0d 00 ad 18 61 6c 78 25 28 33 29 3d 37 3a 61 |5....alx%(3)=7:a| 00000f30 6c 79 25 28 33 29 3d 31 35 0d 00 ae 19 61 6c 78 |ly%(3)=15....alx| 00000f40 25 28 34 29 3d 31 37 3a 61 6c 79 25 28 34 29 3d |%(4)=17:aly%(4)=| 00000f50 31 35 0d 00 af 12 74 69 6d 65 5f 61 72 65 61 25 |15....time_area%| 00000f60 3d 31 32 30 0d 00 b0 05 cd 0d 00 b1 0d e7 73 65 |=120..........se| 00000f70 74 25 3d 38 20 8c 0d 00 b2 19 64 65 73 5f 73 70 |t%=8 .....des_sp| 00000f80 72 69 74 65 24 3d 22 67 61 6d 65 31 73 37 22 0d |rite$="game1s7".| 00000f90 00 b3 44 74 69 74 6c 65 24 3d 22 4c 65 76 65 6c |..Dtitle$="Level| 00000fa0 20 37 2e 20 20 54 68 65 20 63 68 65 6d 69 63 61 | 7. The chemica| 00000fb0 6c 20 77 6f 72 6b 73 2e 22 3a 61 64 24 3d 22 47 |l works.":ad$="G| 00000fc0 6f 20 74 68 72 6f 75 67 68 20 74 68 65 20 74 6f |o through the to| 00000fd0 70 2e 22 0d 00 b4 11 6d 61 6e 5f 67 72 69 64 78 |p."....man_gridx| 00000fe0 25 3d 32 33 0d 00 b5 10 6d 61 6e 5f 67 72 69 64 |%=23....man_grid| 00000ff0 79 25 3d 32 0d 00 b6 13 74 6f 74 61 6c 5f 61 70 |y%=2....total_ap| 00001000 70 6c 65 73 25 3d 32 0d 00 b7 17 61 70 78 25 28 |ples%=2....apx%(| 00001010 31 29 3d 38 3a 61 70 79 25 28 31 29 3d 35 0d 00 |1)=8:apy%(1)=5..| 00001020 b8 18 61 70 78 25 28 32 29 3d 31 37 3a 61 70 79 |..apx%(2)=17:apy| 00001030 25 28 32 29 3d 35 0d 00 b9 18 61 70 78 25 28 33 |%(2)=5....apx%(3| 00001040 29 3d 31 31 3a 61 70 79 25 28 33 29 3d 35 0d 00 |)=11:apy%(3)=5..| 00001050 ba 18 61 70 78 25 28 34 29 3d 31 32 3a 61 70 79 |..apx%(4)=12:apy| 00001060 25 28 34 29 3d 35 0d 00 bb 18 61 70 78 25 28 35 |%(4)=5....apx%(5| 00001070 29 3d 31 33 3a 61 70 79 25 28 35 29 3d 35 0d 00 |)=13:apy%(5)=5..| 00001080 bc 18 61 70 78 25 28 36 29 3d 31 34 3a 61 70 79 |..apx%(6)=14:apy| 00001090 25 28 36 29 3d 35 0d 00 bd 18 61 70 78 25 28 37 |%(6)=5....apx%(7| 000010a0 29 3d 31 35 3a 61 70 79 25 28 37 29 3d 35 0d 00 |)=15:apy%(7)=5..| 000010b0 be 18 61 70 78 25 28 38 29 3d 31 36 3a 61 70 79 |..apx%(8)=16:apy| 000010c0 25 28 38 29 3d 35 0d 00 bf 13 74 6f 74 61 6c 5f |%(8)=5....total_| 000010d0 61 6c 69 65 6e 73 25 3d 33 0d 00 c0 19 61 6c 78 |aliens%=3....alx| 000010e0 25 28 31 29 3d 31 32 3a 61 6c 79 25 28 31 29 3d |%(1)=12:aly%(1)=| 000010f0 31 35 0d 00 c1 19 61 6c 78 25 28 32 29 3d 31 33 |15....alx%(2)=13| 00001100 3a 61 6c 79 25 28 32 29 3d 31 35 0d 00 c2 18 61 |:aly%(2)=15....a| 00001110 6c 78 25 28 33 29 3d 32 32 3a 61 6c 79 25 28 33 |lx%(3)=22:aly%(3| 00001120 29 3d 37 0d 00 c3 17 61 6c 78 25 28 33 29 3d 35 |)=7....alx%(3)=5| 00001130 3a 61 6c 79 25 28 34 29 3d 37 0d 00 c4 12 74 69 |:aly%(4)=7....ti| 00001140 6d 65 5f 61 72 65 61 25 3d 31 38 30 0d 00 c5 05 |me_area%=180....| 00001150 cd 0d 00 c6 0d e7 73 65 74 25 3d 32 20 8c 0d 00 |......set%=2 ...| 00001160 c7 19 64 65 73 5f 73 70 72 69 74 65 24 3d 22 67 |..des_sprite$="g| 00001170 61 6d 65 31 73 33 22 0d 00 c8 45 74 69 74 6c 65 |ame1s3"...Etitle| 00001180 24 3d 22 4c 65 76 65 6c 20 33 2e 20 54 68 65 20 |$="Level 3. The | 00001190 68 69 64 64 65 6e 20 6d 61 7a 65 2e 22 3a 61 64 |hidden maze.":ad| 000011a0 24 3d 22 55 73 65 20 74 68 65 20 73 65 63 72 65 |$="Use the secre| 000011b0 74 20 70 61 73 73 61 67 65 73 2e 22 0d 00 c9 11 |t passages."....| 000011c0 6d 61 6e 5f 67 72 69 64 78 25 3d 31 30 0d 00 ca |man_gridx%=10...| 000011d0 11 6d 61 6e 5f 67 72 69 64 79 25 3d 31 30 0d 00 |.man_gridy%=10..| 000011e0 cb 13 74 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d |..total_apples%=| 000011f0 32 0d 00 cc 18 61 70 78 25 28 31 29 3d 39 3a 61 |2....apx%(1)=9:a| 00001200 70 79 25 28 31 29 3d 31 35 0d 00 cd 19 61 70 78 |py%(1)=15....apx| 00001210 25 28 32 29 3d 31 36 3a 61 70 79 25 28 32 29 3d |%(2)=16:apy%(2)=| 00001220 31 35 0d 00 ce 19 61 70 78 25 28 33 29 3d 31 36 |15....apx%(3)=16| 00001230 3a 61 70 79 25 28 33 29 3d 31 35 0d 00 cf 19 61 |:apy%(3)=15....a| 00001240 70 78 25 28 34 29 3d 31 36 3a 61 70 79 25 28 34 |px%(4)=16:apy%(4| 00001250 29 3d 31 36 0d 00 d0 19 61 70 78 25 28 35 29 3d |)=16....apx%(5)=| 00001260 31 36 3a 61 70 79 25 28 35 29 3d 31 35 0d 00 d1 |16:apy%(5)=15...| 00001270 19 61 70 78 25 28 36 29 3d 31 36 3a 61 70 79 25 |.apx%(6)=16:apy%| 00001280 28 36 29 3d 31 36 0d 00 d2 19 61 70 78 25 28 37 |(6)=16....apx%(7| 00001290 29 3d 31 36 3a 61 70 79 25 28 37 29 3d 31 37 0d |)=16:apy%(7)=17.| 000012a0 00 d3 19 61 70 78 25 28 38 29 3d 31 36 3a 61 70 |...apx%(8)=16:ap| 000012b0 79 25 28 38 29 3d 31 38 0d 00 d4 13 74 6f 74 61 |y%(8)=18....tota| 000012c0 6c 5f 61 6c 69 65 6e 73 25 3d 32 0d 00 d5 18 61 |l_aliens%=2....a| 000012d0 6c 78 25 28 31 29 3d 32 3a 61 6c 79 25 28 31 29 |lx%(1)=2:aly%(1)| 000012e0 3d 31 34 0d 00 d6 19 61 6c 78 25 28 32 29 3d 32 |=14....alx%(2)=2| 000012f0 32 3a 61 6c 79 25 28 32 29 3d 31 36 0d 00 d7 18 |2:aly%(2)=16....| 00001300 61 6c 78 25 28 33 29 3d 32 33 3a 61 6c 79 25 28 |alx%(3)=23:aly%(| 00001310 33 29 3d 36 0d 00 d8 19 61 6c 78 25 28 34 29 3d |3)=6....alx%(4)=| 00001320 31 37 3a 61 6c 79 25 28 34 29 3d 31 35 0d 00 d9 |17:aly%(4)=15...| 00001330 12 74 69 6d 65 5f 61 72 65 61 25 3d 31 32 30 0d |.time_area%=120.| 00001340 00 da 05 cd 0d 00 db 0d e7 73 65 74 25 3d 35 20 |.........set%=5 | 00001350 8c 0d 00 dc 19 64 65 73 5f 73 70 72 69 74 65 24 |.....des_sprite$| 00001360 3d 22 67 61 6d 65 31 73 36 22 0d 00 dd 52 74 69 |="game1s6"...Rti| 00001370 74 6c 65 24 3d 22 4c 65 76 65 6c 20 36 2e 20 20 |tle$="Level 6. | 00001380 44 61 6e 67 65 72 20 74 75 6e 6e 65 6c 73 2e 22 |Danger tunnels."| 00001390 3a 61 64 24 3d 22 54 61 6b 65 20 74 68 65 20 70 |:ad$="Take the p| 000013a0 6f 77 65 72 20 63 65 6c 6c 73 20 66 72 6f 6d 20 |ower cells from | 000013b0 74 68 65 20 62 6f 74 74 6f 6d 2e 22 0d 00 de 11 |the bottom."....| 000013c0 6d 61 6e 5f 67 72 69 64 78 25 3d 31 39 0d 00 df |man_gridx%=19...| 000013d0 11 6d 61 6e 5f 67 72 69 64 79 25 3d 31 36 0d 00 |.man_gridy%=16..| 000013e0 e0 13 74 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d |..total_apples%=| 000013f0 34 0d 00 e1 18 61 70 78 25 28 31 29 3d 39 3a 61 |4....apx%(1)=9:a| 00001400 70 79 25 28 31 29 3d 31 35 0d 00 e2 18 61 70 78 |py%(1)=15....apx| 00001410 25 28 32 29 3d 39 3a 61 70 79 25 28 32 29 3d 31 |%(2)=9:apy%(2)=1| 00001420 36 0d 00 e3 19 61 70 78 25 28 33 29 3d 31 36 3a |6....apx%(3)=16:| 00001430 61 70 79 25 28 33 29 3d 31 35 0d 00 e4 19 61 70 |apy%(3)=15....ap| 00001440 78 25 28 34 29 3d 31 36 3a 61 70 79 25 28 34 29 |x%(4)=16:apy%(4)| 00001450 3d 31 36 0d 00 e5 19 61 70 78 25 28 35 29 3d 31 |=16....apx%(5)=1| 00001460 36 3a 61 70 79 25 28 35 29 3d 31 35 0d 00 e6 19 |6:apy%(5)=15....| 00001470 61 70 78 25 28 36 29 3d 31 36 3a 61 70 79 25 28 |apx%(6)=16:apy%(| 00001480 36 29 3d 31 36 0d 00 e7 19 61 70 78 25 28 37 29 |6)=16....apx%(7)| 00001490 3d 31 36 3a 61 70 79 25 28 37 29 3d 31 37 0d 00 |=16:apy%(7)=17..| 000014a0 e8 19 61 70 78 25 28 38 29 3d 31 36 3a 61 70 79 |..apx%(8)=16:apy| 000014b0 25 28 38 29 3d 31 38 0d 00 e9 13 74 6f 74 61 6c |%(8)=18....total| 000014c0 5f 61 6c 69 65 6e 73 25 3d 34 0d 00 ea 17 61 6c |_aliens%=4....al| 000014d0 78 25 28 31 29 3d 33 3a 61 6c 79 25 28 31 29 3d |x%(1)=3:aly%(1)=| 000014e0 39 0d 00 eb 18 61 6c 78 25 28 32 29 3d 31 32 3a |9....alx%(2)=12:| 000014f0 61 6c 79 25 28 32 29 3d 32 0d 00 ec 18 61 6c 78 |aly%(2)=2....alx| 00001500 25 28 33 29 3d 37 3a 61 6c 79 25 28 33 29 3d 31 |%(3)=7:aly%(3)=1| 00001510 38 0d 00 ed 19 61 6c 78 25 28 34 29 3d 31 37 3a |8....alx%(4)=17:| 00001520 61 6c 79 25 28 34 29 3d 31 38 0d 00 ee 12 74 69 |aly%(4)=18....ti| 00001530 6d 65 5f 61 72 65 61 25 3d 31 38 30 0d 00 ef 05 |me_area%=180....| 00001540 cd 0d 00 f0 0d e7 73 65 74 25 3d 33 20 8c 0d 00 |......set%=3 ...| 00001550 f1 19 64 65 73 5f 73 70 72 69 74 65 24 3d 22 67 |..des_sprite$="g| 00001560 61 6d 65 31 73 32 22 0d 00 f2 49 74 69 74 6c 65 |ame1s2"...Ititle| 00001570 24 3d 22 4c 65 76 65 6c 20 32 2e 20 20 54 68 65 |$="Level 2. The| 00001580 20 63 6f 6e 74 72 6f 6c 20 63 65 6e 74 72 65 2e | control centre.| 00001590 22 3a 61 64 24 3d 22 43 68 6f 6f 73 65 20 74 68 |":ad$="Choose th| 000015a0 65 20 63 6f 72 72 65 63 74 20 70 61 74 68 2e 22 |e correct path."| 000015b0 0d 00 f3 10 6d 61 6e 5f 67 72 69 64 78 25 3d 31 |....man_gridx%=1| 000015c0 0d 00 f4 10 6d 61 6e 5f 67 72 69 64 79 25 3d 30 |....man_gridy%=0| 000015d0 0d 00 f5 13 74 6f 74 61 6c 5f 61 70 70 6c 65 73 |....total_apples| 000015e0 25 3d 32 0d 00 f6 18 61 70 78 25 28 31 29 3d 31 |%=2....apx%(1)=1| 000015f0 33 3a 61 70 79 25 28 31 29 3d 38 0d 00 f7 19 61 |3:apy%(1)=8....a| 00001600 70 78 25 28 32 29 3d 31 33 3a 61 70 79 25 28 32 |px%(2)=13:apy%(2| 00001610 29 3d 31 30 0d 00 f8 19 61 70 78 25 28 33 29 3d |)=10....apx%(3)=| 00001620 31 33 3a 61 70 79 25 28 33 29 3d 31 30 0d 00 f9 |13:apy%(3)=10...| 00001630 19 61 70 78 25 28 34 29 3d 31 31 3a 61 70 79 25 |.apx%(4)=11:apy%| 00001640 28 34 29 3d 31 31 0d 00 fa 18 61 70 78 25 28 35 |(4)=11....apx%(5| 00001650 29 3d 31 35 3a 61 70 79 25 28 35 29 3d 38 0d 00 |)=15:apy%(5)=8..| 00001660 fb 18 61 70 78 25 28 36 29 3d 31 35 3a 61 70 79 |..apx%(6)=15:apy| 00001670 25 28 36 29 3d 39 0d 00 fc 19 61 70 78 25 28 37 |%(6)=9....apx%(7| 00001680 29 3d 31 35 3a 61 70 79 25 28 37 29 3d 31 30 0d |)=15:apy%(7)=10.| 00001690 00 fd 19 61 70 78 25 28 38 29 3d 31 35 3a 61 70 |...apx%(8)=15:ap| 000016a0 79 25 28 38 29 3d 31 31 0d 00 fe 13 74 6f 74 61 |y%(8)=11....tota| 000016b0 6c 5f 61 6c 69 65 6e 73 25 3d 34 0d 00 ff 18 61 |l_aliens%=4....a| 000016c0 6c 78 25 28 31 29 3d 32 31 3a 61 6c 79 25 28 31 |lx%(1)=21:aly%(1| 000016d0 29 3d 37 0d 01 00 19 61 6c 78 25 28 32 29 3d 31 |)=7....alx%(2)=1| 000016e0 31 3a 61 6c 79 25 28 32 29 3d 31 32 0d 01 01 18 |1:aly%(2)=12....| 000016f0 61 6c 78 25 28 33 29 3d 31 35 3a 61 6c 79 25 28 |alx%(3)=15:aly%(| 00001700 33 29 3d 36 0d 01 02 18 61 6c 78 25 28 34 29 3d |3)=6....alx%(4)=| 00001710 36 3a 61 6c 79 25 28 34 29 3d 31 38 0d 01 03 12 |6:aly%(4)=18....| 00001720 74 69 6d 65 5f 61 72 65 61 25 3d 31 36 30 0d 01 |time_area%=160..| 00001730 04 05 cd 0d 01 05 0d e7 73 65 74 25 3d 34 20 8c |........set%=4 .| 00001740 0d 01 06 19 64 65 73 5f 73 70 72 69 74 65 24 3d |....des_sprite$=| 00001750 22 67 61 6d 65 31 73 34 22 0d 01 07 4c 74 69 74 |"game1s4"...Ltit| 00001760 6c 65 24 3d 22 4c 65 76 65 6c 20 34 2e 20 20 54 |le$="Level 4. T| 00001770 68 65 20 73 69 6d 70 6c 65 20 6d 61 7a 65 2e 22 |he simple maze."| 00001780 3a 61 64 24 3d 22 44 6f 6e 27 74 20 67 65 74 20 |:ad$="Don't get | 00001790 63 6c 6f 73 65 20 74 6f 20 74 68 65 20 61 6c 69 |close to the ali| 000017a0 65 6e 73 2e 22 0d 01 08 10 6d 61 6e 5f 67 72 69 |ens."....man_gri| 000017b0 64 78 25 3d 34 0d 01 09 10 6d 61 6e 5f 67 72 69 |dx%=4....man_gri| 000017c0 64 79 25 3d 30 0d 01 0a 13 74 6f 74 61 6c 5f 61 |dy%=0....total_a| 000017d0 70 70 6c 65 73 25 3d 33 0d 01 0b 17 61 70 78 25 |pples%=3....apx%| 000017e0 28 31 29 3d 39 3a 61 70 79 25 28 31 29 3d 30 0d |(1)=9:apy%(1)=0.| 000017f0 01 0c 18 61 70 78 25 28 32 29 3d 33 3a 61 70 79 |...apx%(2)=3:apy| 00001800 25 28 32 29 3d 31 34 0d 01 0d 18 61 70 78 25 28 |%(2)=14....apx%(| 00001810 33 29 3d 37 3a 61 70 79 25 28 33 29 3d 31 34 0d |3)=7:apy%(3)=14.| 00001820 01 0e 18 61 70 78 25 28 34 29 3d 33 3a 61 70 79 |...apx%(4)=3:apy| 00001830 25 28 34 29 3d 31 35 0d 01 0f 18 61 70 78 25 28 |%(4)=15....apx%(| 00001840 35 29 3d 37 3a 61 70 79 25 28 35 29 3d 31 32 0d |5)=7:apy%(5)=12.| 00001850 01 10 18 61 70 78 25 28 36 29 3d 37 3a 61 70 79 |...apx%(6)=7:apy| 00001860 25 28 36 29 3d 31 33 0d 01 11 18 61 70 78 25 28 |%(6)=13....apx%(| 00001870 37 29 3d 37 3a 61 70 79 25 28 37 29 3d 31 34 0d |7)=7:apy%(7)=14.| 00001880 01 12 18 61 70 78 25 28 38 29 3d 37 3a 61 70 79 |...apx%(8)=7:apy| 00001890 25 28 38 29 3d 31 35 0d 01 13 13 74 6f 74 61 6c |%(8)=15....total| 000018a0 5f 61 6c 69 65 6e 73 25 3d 35 0d 01 14 19 61 6c |_aliens%=5....al| 000018b0 78 25 28 31 29 3d 32 34 3a 61 6c 79 25 28 31 29 |x%(1)=24:aly%(1)| 000018c0 3d 31 30 0d 01 15 19 61 6c 78 25 28 32 29 3d 31 |=10....alx%(2)=1| 000018d0 38 3a 61 6c 79 25 28 32 29 3d 31 33 0d 01 16 18 |8:aly%(2)=13....| 000018e0 61 6c 78 25 28 33 29 3d 31 36 3a 61 6c 79 25 28 |alx%(3)=16:aly%(| 000018f0 33 29 3d 37 0d 01 17 18 61 6c 78 25 28 34 29 3d |3)=7....alx%(4)=| 00001900 31 31 3a 61 6c 79 25 28 34 29 3d 38 0d 01 18 19 |11:aly%(4)=8....| 00001910 61 6c 78 25 28 35 29 3d 31 34 3a 61 6c 79 25 28 |alx%(5)=14:aly%(| 00001920 35 29 3d 31 31 0d 01 19 12 74 69 6d 65 5f 61 72 |5)=11....time_ar| 00001930 65 61 25 3d 31 36 30 0d 01 1a 05 cd 0d 01 1b 0d |ea%=160.........| 00001940 e7 73 65 74 25 3d 36 20 8c 0d 01 1c 19 64 65 73 |.set%=6 .....des| 00001950 5f 73 70 72 69 74 65 24 3d 22 67 61 6d 65 31 73 |_sprite$="game1s| 00001960 35 22 0d 01 1d 4b 74 69 74 6c 65 24 3d 22 4c 65 |5"...Ktitle$="Le| 00001970 76 65 6c 20 35 2e 20 20 53 6f 72 74 69 6e 67 20 |vel 5. Sorting | 00001980 61 72 65 61 2e 22 3a 61 64 24 3d 22 54 61 6b 65 |area.":ad$="Take| 00001990 20 74 68 65 20 72 69 67 68 74 20 70 6f 77 65 72 | the right power| 000019a0 20 63 65 6c 6c 20 66 69 72 73 74 2e 22 0d 01 1e | cell first."...| 000019b0 10 6d 61 6e 5f 67 72 69 64 78 25 3d 34 0d 01 1f |.man_gridx%=4...| 000019c0 10 6d 61 6e 5f 67 72 69 64 79 25 3d 32 0d 01 20 |.man_gridy%=2.. | 000019d0 13 74 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d 33 |.total_apples%=3| 000019e0 0d 01 21 17 61 70 78 25 28 31 29 3d 39 3a 61 70 |..!.apx%(1)=9:ap| 000019f0 79 25 28 31 29 3d 39 0d 01 22 19 61 70 78 25 28 |y%(1)=9..".apx%(| 00001a00 32 29 3d 31 32 3a 61 70 79 25 28 32 29 3d 31 30 |2)=12:apy%(2)=10| 00001a10 0d 01 23 18 61 70 78 25 28 33 29 3d 31 35 3a 61 |..#.apx%(3)=15:a| 00001a20 70 79 25 28 33 29 3d 39 0d 01 24 17 61 70 78 25 |py%(3)=9..$.apx%| 00001a30 28 34 29 3d 37 3a 61 70 79 25 28 34 29 3d 39 0d |(4)=7:apy%(4)=9.| 00001a40 01 25 17 61 70 78 25 28 35 29 3d 39 3a 61 70 79 |.%.apx%(5)=9:apy| 00001a50 25 28 35 29 3d 39 0d 01 26 18 61 70 78 25 28 36 |%(5)=9..&.apx%(6| 00001a60 29 3d 31 31 3a 61 70 79 25 28 36 29 3d 39 0d 01 |)=11:apy%(6)=9..| 00001a70 27 18 61 70 78 25 28 37 29 3d 31 33 3a 61 70 79 |'.apx%(7)=13:apy| 00001a80 25 28 37 29 3d 39 0d 01 28 18 61 70 78 25 28 38 |%(7)=9..(.apx%(8| 00001a90 29 3d 31 35 3a 61 70 79 25 28 38 29 3d 39 0d 01 |)=15:apy%(8)=9..| 00001aa0 29 18 61 70 78 25 28 39 29 3d 31 37 3a 61 70 79 |).apx%(9)=17:apy| 00001ab0 25 28 39 29 3d 39 0d 01 2a 1a 61 70 78 25 28 31 |%(9)=9..*.apx%(1| 00001ac0 30 29 3d 31 39 3a 61 70 79 25 28 31 30 29 3d 39 |0)=19:apy%(10)=9| 00001ad0 0d 01 2b 1a 61 70 78 25 28 31 31 29 3d 32 31 3a |..+.apx%(11)=21:| 00001ae0 61 70 79 25 28 31 31 29 3d 39 0d 01 2c 1a 61 70 |apy%(11)=9..,.ap| 00001af0 78 25 28 31 32 29 3d 32 33 3a 61 70 79 25 28 31 |x%(12)=23:apy%(1| 00001b00 32 29 3d 39 0d 01 2d 13 74 6f 74 61 6c 5f 61 6c |2)=9..-.total_al| 00001b10 69 65 6e 73 25 3d 35 0d 01 2e 18 61 6c 78 25 28 |iens%=5....alx%(| 00001b20 31 29 3d 33 3a 61 6c 79 25 28 31 29 3d 31 38 0d |1)=3:aly%(1)=18.| 00001b30 01 2f 18 61 6c 78 25 28 32 29 3d 37 3a 61 6c 79 |./.alx%(2)=7:aly| 00001b40 25 28 32 29 3d 31 38 0d 01 30 19 61 6c 78 25 28 |%(2)=18..0.alx%(| 00001b50 33 29 3d 31 31 3a 61 6c 79 25 28 33 29 3d 31 38 |3)=11:aly%(3)=18| 00001b60 0d 01 31 19 61 6c 78 25 28 34 29 3d 31 35 3a 61 |..1.alx%(4)=15:a| 00001b70 6c 79 25 28 34 29 3d 31 38 0d 01 32 19 61 6c 78 |ly%(4)=18..2.alx| 00001b80 25 28 35 29 3d 31 39 3a 61 6c 79 25 28 35 29 3d |%(5)=19:aly%(5)=| 00001b90 31 38 0d 01 33 12 74 69 6d 65 5f 61 72 65 61 25 |18..3.time_area%| 00001ba0 3d 31 36 30 0d 01 34 05 cd 0d 01 35 0e e7 73 65 |=160..4....5..se| 00001bb0 74 25 3d 31 30 20 8c 0d 01 36 19 64 65 73 5f 73 |t%=10 ...6.des_s| 00001bc0 70 72 69 74 65 24 3d 22 67 61 6d 65 31 73 38 22 |prite$="game1s8"| 00001bd0 0d 01 37 46 74 69 74 6c 65 24 3d 22 4c 65 76 65 |..7Ftitle$="Leve| 00001be0 6c 20 38 2e 20 20 52 61 69 6e 69 6e 67 20 73 61 |l 8. Raining sa| 00001bf0 6e 64 2e 22 3a 61 64 24 3d 22 48 69 64 65 20 66 |nd.":ad$="Hide f| 00001c00 72 6f 6d 20 74 68 65 20 61 6c 69 65 6e 73 20 66 |rom the aliens f| 00001c10 69 72 73 74 2e 22 0d 01 38 10 6d 61 6e 5f 67 72 |irst."..8.man_gr| 00001c20 69 64 78 25 3d 32 0d 01 39 10 6d 61 6e 5f 67 72 |idx%=2..9.man_gr| 00001c30 69 64 79 25 3d 32 0d 01 3a 13 74 6f 74 61 6c 5f |idy%=2..:.total_| 00001c40 61 70 70 6c 65 73 25 3d 33 0d 01 3b 18 61 70 78 |apples%=3..;.apx| 00001c50 25 28 31 29 3d 39 3a 61 70 79 25 28 31 29 3d 31 |%(1)=9:apy%(1)=1| 00001c60 35 0d 01 3c 19 61 70 78 25 28 32 29 3d 31 31 3a |5..<.apx%(2)=11:| 00001c70 61 70 79 25 28 32 29 3d 31 35 0d 01 3d 19 61 70 |apy%(2)=15..=.ap| 00001c80 78 25 28 33 29 3d 31 34 3a 61 70 79 25 28 33 29 |x%(3)=14:apy%(3)| 00001c90 3d 31 35 0d 01 3e 19 61 70 78 25 28 34 29 3d 31 |=15..>.apx%(4)=1| 00001ca0 36 3a 61 70 79 25 28 34 29 3d 31 35 0d 01 3f 13 |6:apy%(4)=15..?.| 00001cb0 74 6f 74 61 6c 5f 61 6c 69 65 6e 73 25 3d 33 0d |total_aliens%=3.| 00001cc0 01 40 19 61 6c 78 25 28 31 29 3d 31 30 3a 61 6c |.@.alx%(1)=10:al| 00001cd0 79 25 28 31 29 3d 31 30 0d 01 41 19 61 6c 78 25 |y%(1)=10..A.alx%| 00001ce0 28 32 29 3d 31 32 3a 61 6c 79 25 28 32 29 3d 31 |(2)=12:aly%(2)=1| 00001cf0 30 0d 01 42 19 61 6c 78 25 28 33 29 3d 31 34 3a |0..B.alx%(3)=14:| 00001d00 61 6c 79 25 28 33 29 3d 31 30 0d 01 43 19 61 6c |aly%(3)=10..C.al| 00001d10 78 25 28 34 29 3d 31 35 3a 61 6c 79 25 28 34 29 |x%(4)=15:aly%(4)| 00001d20 3d 31 38 0d 01 44 19 61 6c 78 25 28 35 29 3d 31 |=18..D.alx%(5)=1| 00001d30 39 3a 61 6c 79 25 28 35 29 3d 31 38 0d 01 45 12 |9:aly%(5)=18..E.| 00001d40 74 69 6d 65 5f 61 72 65 61 25 3d 31 36 30 0d 01 |time_area%=160..| 00001d50 46 05 cd 0d 01 47 0e e7 73 65 74 25 3d 31 31 20 |F....G..set%=11 | 00001d60 8c 0d 01 48 1a 64 65 73 5f 73 70 72 69 74 65 24 |...H.des_sprite$| 00001d70 3d 22 67 61 6d 65 31 73 31 31 22 0d 01 49 22 74 |="game1s11"..I"t| 00001d80 69 74 6c 65 24 3d 22 49 6e 74 72 6f 64 75 63 74 |itle$="Introduct| 00001d90 69 6f 6e 2e 22 3a 61 64 24 3d 22 20 22 0d 01 4a |ion.":ad$=" "..J| 00001da0 10 6d 61 6e 5f 67 72 69 64 78 25 3d 35 0d 01 4b |.man_gridx%=5..K| 00001db0 11 6d 61 6e 5f 67 72 69 64 79 25 3d 31 37 0d 01 |.man_gridy%=17..| 00001dc0 4c 13 74 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d |L.total_apples%=| 00001dd0 34 0d 01 4d 18 61 70 78 25 28 31 29 3d 32 3a 61 |4..M.apx%(1)=2:a| 00001de0 70 79 25 28 31 29 3d 31 34 0d 01 4e 18 61 70 78 |py%(1)=14..N.apx| 00001df0 25 28 32 29 3d 34 3a 61 70 79 25 28 32 29 3d 31 |%(2)=4:apy%(2)=1| 00001e00 34 0d 01 4f 18 61 70 78 25 28 33 29 3d 36 3a 61 |4..O.apx%(3)=6:a| 00001e10 70 79 25 28 33 29 3d 31 34 0d 01 50 18 61 70 78 |py%(3)=14..P.apx| 00001e20 25 28 34 29 3d 38 3a 61 70 79 25 28 34 29 3d 31 |%(4)=8:apy%(4)=1| 00001e30 34 0d 01 51 13 74 6f 74 61 6c 5f 61 6c 69 65 6e |4..Q.total_alien| 00001e40 73 25 3d 34 0d 01 52 18 61 6c 78 25 28 31 29 3d |s%=4..R.alx%(1)=| 00001e50 32 3a 61 6c 79 25 28 31 29 3d 31 31 0d 01 53 18 |2:aly%(1)=11..S.| 00001e60 61 6c 78 25 28 32 29 3d 34 3a 61 6c 79 25 28 32 |alx%(2)=4:aly%(2| 00001e70 29 3d 31 31 0d 01 54 18 61 6c 78 25 28 33 29 3d |)=11..T.alx%(3)=| 00001e80 36 3a 61 6c 79 25 28 33 29 3d 31 31 0d 01 55 18 |6:aly%(3)=11..U.| 00001e90 61 6c 78 25 28 34 29 3d 38 3a 61 6c 79 25 28 34 |alx%(4)=8:aly%(4| 00001ea0 29 3d 31 31 0d 01 56 12 74 69 6d 65 5f 61 72 65 |)=11..V.time_are| 00001eb0 61 25 3d 31 32 30 0d 01 57 05 cd 0d 01 58 0e e7 |a%=120..W....X..| 00001ec0 73 65 74 25 3d 31 32 20 8c 0d 01 59 1a 64 65 73 |set%=12 ...Y.des| 00001ed0 5f 73 70 72 69 74 65 24 3d 22 67 61 6d 65 31 73 |_sprite$="game1s| 00001ee0 31 32 22 0d 01 5a 4b 74 69 74 6c 65 24 3d 22 4c |12"..ZKtitle$="L| 00001ef0 65 76 65 6c 20 35 2e 20 20 53 6f 72 74 69 6e 67 |evel 5. Sorting| 00001f00 20 61 72 65 61 2e 22 3a 61 64 24 3d 22 54 61 6b | area.":ad$="Tak| 00001f10 65 20 74 68 65 20 72 69 67 68 74 20 70 6f 77 65 |e the right powe| 00001f20 72 20 63 65 6c 6c 20 66 69 72 73 74 2e 22 0d 01 |r cell first."..| 00001f30 5b 10 6d 61 6e 5f 67 72 69 64 78 25 3d 34 0d 01 |[.man_gridx%=4..| 00001f40 5c 10 6d 61 6e 5f 67 72 69 64 79 25 3d 32 0d 01 |\.man_gridy%=2..| 00001f50 5d 13 74 6f 74 61 6c 5f 61 70 70 6c 65 73 25 3d |].total_apples%=| 00001f60 33 0d 01 5e 17 61 70 78 25 28 31 29 3d 39 3a 61 |3..^.apx%(1)=9:a| 00001f70 70 79 25 28 31 29 3d 39 0d 01 5f 19 61 70 78 25 |py%(1)=9.._.apx%| 00001f80 28 32 29 3d 31 32 3a 61 70 79 25 28 32 29 3d 31 |(2)=12:apy%(2)=1| 00001f90 30 0d 01 60 18 61 70 78 25 28 33 29 3d 31 35 3a |0..`.apx%(3)=15:| 00001fa0 61 70 79 25 28 33 29 3d 39 0d 01 61 13 74 6f 74 |apy%(3)=9..a.tot| 00001fb0 61 6c 5f 61 6c 69 65 6e 73 25 3d 35 0d 01 62 18 |al_aliens%=5..b.| 00001fc0 61 6c 78 25 28 31 29 3d 33 3a 61 6c 79 25 28 31 |alx%(1)=3:aly%(1| 00001fd0 29 3d 31 38 0d 01 63 18 61 6c 78 25 28 32 29 3d |)=18..c.alx%(2)=| 00001fe0 37 3a 61 6c 79 25 28 32 29 3d 31 38 0d 01 64 19 |7:aly%(2)=18..d.| 00001ff0 61 6c 78 25 28 33 29 3d 31 31 3a 61 6c 79 25 28 |alx%(3)=11:aly%(| 00002000 33 29 3d 31 38 0d 01 65 19 61 6c 78 25 28 34 29 |3)=18..e.alx%(4)| 00002010 3d 31 35 3a 61 6c 79 25 28 34 29 3d 31 38 0d 01 |=15:aly%(4)=18..| 00002020 66 19 61 6c 78 25 28 35 29 3d 31 39 3a 61 6c 79 |f.alx%(5)=19:aly| 00002030 25 28 35 29 3d 31 38 0d 01 67 12 74 69 6d 65 5f |%(5)=18..g.time_| 00002040 61 72 65 61 25 3d 31 36 30 0d 01 68 05 cd 0d 01 |area%=160..h....| 00002050 69 14 74 78 32 25 3d 33 32 3a 74 79 32 25 3d 38 |i.tx2%=32:ty2%=8| 00002060 36 30 0d 01 6a 0f 6d 25 3d 6d 5f 63 6f 64 65 32 |60..j.m%=m_code2| 00002070 25 0d 01 6b 10 21 28 6d 25 2b 26 31 43 29 3d 34 |%..k.!(m%+&1C)=4| 00002080 39 0d 01 6c 0f 21 28 6d 25 2b 26 32 34 29 3d 30 |9..l.!(m%+&24)=0| 00002090 0d 01 6d 0f 21 28 6d 25 2b 26 32 38 29 3d 30 0d |..m.!(m%+&28)=0.| 000020a0 01 6e 0f 21 28 6d 25 2b 26 32 43 29 3d 30 0d 01 |.n.!(m%+&2C)=0..| 000020b0 6f 0f 21 28 6d 25 2b 26 33 34 29 3d 30 0d 01 70 |o.!(m%+&34)=0..p| 000020c0 0f 3f 28 6d 25 2b 26 34 30 29 3d 30 0d 01 71 0f |.?(m%+&40)=0..q.| 000020d0 3f 28 6d 25 2b 26 34 31 29 3d 30 0d 01 72 18 3f |?(m%+&41)=0..r.?| 000020e0 28 6d 25 2b 26 33 30 29 3d 6d 61 6e 5f 67 72 69 |(m%+&30)=man_gri| 000020f0 64 78 25 0d 01 73 18 3f 28 6d 25 2b 26 33 31 29 |dx%..s.?(m%+&31)| 00002100 3d 6d 61 6e 5f 67 72 69 64 79 25 0d 01 74 18 3f |=man_gridy%..t.?| 00002110 28 6d 25 2b 26 33 32 29 3d 6d 61 6e 5f 67 72 69 |(m%+&32)=man_gri| 00002120 64 78 25 0d 01 75 18 3f 28 6d 25 2b 26 33 33 29 |dx%..u.?(m%+&33)| 00002130 3d 6d 61 6e 5f 67 72 69 64 79 25 0d 01 76 1a 21 |=man_gridy%..v.!| 00002140 28 6d 25 2b 26 43 29 3d 6d 61 6e 5f 67 72 69 64 |(m%+&C)=man_grid| 00002150 78 25 2a 34 38 0d 01 77 1b 21 28 6d 25 2b 26 31 |x%*48..w.!(m%+&1| 00002160 30 29 3d 6d 61 6e 5f 67 72 69 64 79 25 2a 34 38 |0)=man_gridy%*48| 00002170 0d 01 78 1b 21 28 6d 25 2b 26 33 38 29 3d 74 6f |..x.!(m%+&38)=to| 00002180 74 61 6c 5f 61 70 70 6c 65 73 25 0d 01 79 0e 61 |tal_apples%..y.a| 00002190 25 3d 6d 25 2b 26 31 30 30 0d 01 7a 1b e3 66 25 |%=m%+&100..z..f%| 000021a0 3d 30 20 b8 20 74 6f 74 61 6c 5f 61 70 70 6c 65 |=0 . total_apple| 000021b0 73 25 2d 31 0d 01 7b 22 21 28 61 25 2b 28 66 25 |s%-1..{"!(a%+(f%| 000021c0 2a 32 38 29 2b 26 30 29 3d 61 70 78 25 28 66 25 |*28)+&0)=apx%(f%| 000021d0 2b 31 29 2a 34 38 0d 01 7c 22 21 28 61 25 2b 28 |+1)*48..|"!(a%+(| 000021e0 66 25 2a 32 38 29 2b 26 34 29 3d 61 70 79 25 28 |f%*28)+&4)=apy%(| 000021f0 66 25 2b 31 29 2a 34 38 0d 01 7d 20 3f 28 61 25 |f%+1)*48..} ?(a%| 00002200 2b 28 66 25 2a 32 38 29 2b 26 31 34 29 3d 61 70 |+(f%*28)+&14)=ap| 00002210 78 25 28 66 25 2b 31 29 0d 01 7e 20 3f 28 61 25 |x%(f%+1)..~ ?(a%| 00002220 2b 28 66 25 2a 32 38 29 2b 26 31 35 29 3d 61 70 |+(f%*28)+&15)=ap| 00002230 79 25 28 66 25 2b 31 29 0d 01 7f 20 3f 28 61 25 |y%(f%+1)... ?(a%| 00002240 2b 28 66 25 2a 32 38 29 2b 26 31 36 29 3d 61 70 |+(f%*28)+&16)=ap| 00002250 78 25 28 66 25 2b 31 29 0d 01 80 20 3f 28 61 25 |x%(f%+1)... ?(a%| 00002260 2b 28 66 25 2a 32 38 29 2b 26 31 37 29 3d 61 70 |+(f%*28)+&17)=ap| 00002270 79 25 28 66 25 2b 31 29 0d 01 81 17 3f 28 61 25 |y%(f%+1)....?(a%| 00002280 2b 28 66 25 2a 32 38 29 2b 26 31 38 29 3d 30 0d |+(f%*28)+&18)=0.| 00002290 01 82 05 ed 0d 01 83 1b 21 28 6d 25 2b 26 32 30 |........!(m%+&20| 000022a0 29 3d 74 6f 74 61 6c 5f 61 6c 69 65 6e 73 25 0d |)=total_aliens%.| 000022b0 01 84 0d 61 25 3d 6d 25 2b 26 36 30 0d 01 85 1b |...a%=m%+&60....| 000022c0 e3 66 25 3d 30 20 b8 20 74 6f 74 61 6c 5f 61 6c |.f%=0 . total_al| 000022d0 69 65 6e 73 25 2d 31 0d 01 86 22 21 28 61 25 2b |iens%-1..."!(a%+| 000022e0 28 66 25 2a 33 32 29 2b 26 30 29 3d 61 6c 78 25 |(f%*32)+&0)=alx%| 000022f0 28 66 25 2b 31 29 2a 34 38 0d 01 87 22 21 28 61 |(f%+1)*48..."!(a| 00002300 25 2b 28 66 25 2a 33 32 29 2b 26 34 29 3d 61 6c |%+(f%*32)+&4)=al| 00002310 79 25 28 66 25 2b 31 29 2a 34 38 0d 01 88 16 21 |y%(f%+1)*48....!| 00002320 28 61 25 2b 28 66 25 2a 33 32 29 2b 26 38 29 3d |(a%+(f%*32)+&8)=| 00002330 30 0d 01 89 17 21 28 61 25 2b 28 66 25 2a 33 32 |0....!(a%+(f%*32| 00002340 29 2b 26 43 29 3d 34 39 0d 01 8a 20 3f 28 61 25 |)+&C)=49... ?(a%| 00002350 2b 28 66 25 2a 33 32 29 2b 26 31 39 29 3d 61 6c |+(f%*32)+&19)=al| 00002360 78 25 28 66 25 2b 31 29 0d 01 8b 20 3f 28 61 25 |x%(f%+1)... ?(a%| 00002370 2b 28 66 25 2a 33 32 29 2b 26 31 41 29 3d 61 6c |+(f%*32)+&1A)=al| 00002380 79 25 28 66 25 2b 31 29 0d 01 8c 20 3f 28 61 25 |y%(f%+1)... ?(a%| 00002390 2b 28 66 25 2a 33 32 29 2b 26 31 42 29 3d 61 6c |+(f%*32)+&1B)=al| 000023a0 78 25 28 66 25 2b 31 29 0d 01 8d 20 3f 28 61 25 |x%(f%+1)... ?(a%| 000023b0 2b 28 66 25 2a 33 32 29 2b 26 31 43 29 3d 61 6c |+(f%*32)+&1C)=al| 000023c0 79 25 28 66 25 2b 31 29 0d 01 8e 17 3f 28 61 25 |y%(f%+1)....?(a%| 000023d0 2b 28 66 25 2a 33 32 29 2b 26 31 44 29 3d 30 0d |+(f%*32)+&1D)=0.| 000023e0 01 8f 05 ed 0d 01 90 05 e1 0d 01 91 13 dd f2 70 |...............p| 000023f0 61 63 63 79 28 73 74 79 6c 65 25 29 0d 01 92 08 |accy(style%)....| 00002400 c8 a0 20 31 0d 01 93 0b e7 4c 25 3d 30 20 8c 0d |.. 1.....L%=0 ..| 00002410 01 94 18 f2 6c 6f 61 64 5f 73 70 72 69 74 65 73 |....load_sprites| 00002420 28 22 70 61 63 22 29 0d 01 95 1d f2 6d 65 72 67 |("pac").....merg| 00002430 65 5f 73 70 72 69 74 65 73 28 22 6e 75 6d 62 65 |e_sprites("numbe| 00002440 72 73 22 29 0d 01 96 1d f2 6d 65 72 67 65 5f 73 |rs").....merge_s| 00002450 70 72 69 74 65 73 28 22 6e 75 6d 62 75 74 73 22 |prites("numbuts"| 00002460 29 0d 01 97 1d f2 6d 65 72 67 65 5f 73 70 72 69 |).....merge_spri| 00002470 74 65 73 28 22 62 75 74 74 6f 6e 73 22 29 0d 01 |tes("buttons")..| 00002480 98 05 cd 0d 01 99 13 74 6f 74 61 6c 5f 67 6f 74 |.......total_got| 00002490 5f 66 70 3d 32 30 0d 01 9a 11 74 6f 74 61 6c 5f |_fp=20....total_| 000024a0 67 6f 74 25 3d 32 30 0d 01 9b 16 74 6f 74 61 6c |got%=20....total| 000024b0 5f 70 6f 73 73 69 62 6c 65 25 3d 32 30 0d 01 9c |_possible%=20...| 000024c0 15 e7 20 51 25 3d 37 35 20 84 20 51 25 3d 36 34 |.. Q%=75 . Q%=64| 000024d0 20 8c 0d 01 9d 13 74 6f 74 61 6c 5f 67 6f 74 5f | .....total_got_| 000024e0 66 70 3d 31 30 0d 01 9e 11 74 6f 74 61 6c 5f 67 |fp=10....total_g| 000024f0 6f 74 25 3d 31 30 0d 01 9f 16 74 6f 74 61 6c 5f |ot%=10....total_| 00002500 70 6f 73 73 69 62 6c 65 25 3d 31 30 0d 01 a0 05 |possible%=10....| 00002510 cd 0d 01 a1 0b e7 4c 25 3d 30 20 8c 0d 01 a2 17 |......L%=0 .....| 00002520 f2 73 65 74 5f 75 70 5f 73 63 72 65 65 6e 73 28 |.set_up_screens(| 00002530 31 32 29 0d 01 a3 0c 2a 66 78 31 31 32 2c 32 0d |12)....*fx112,2.| 00002540 01 a4 0b fb 20 31 33 32 3a db 0d 01 a5 16 f2 72 |.... 132:......r| 00002550 65 6e 64 65 72 5f 64 65 73 5f 73 63 72 65 65 6e |ender_des_screen| 00002560 0d 01 a6 27 f2 70 6c 6f 74 5f 73 70 72 69 74 65 |...'.plot_sprite| 00002570 28 30 2c 31 34 34 2c 31 2c 31 2c 31 2c 31 2c 22 |(0,144,1,1,1,1,"| 00002580 65 78 69 74 33 22 29 0d 01 a7 10 66 61 64 65 24 |exit3")....fade$| 00002590 3d 22 66 61 64 65 22 0d 01 a8 18 f2 66 61 64 65 |="fade".....fade| 000025a0 28 30 2c 39 36 30 2c 34 2c 30 2c 31 2c 31 29 0d |(0,960,4,0,1,1).| 000025b0 01 a9 0c 2a 66 78 31 31 32 2c 31 0d 01 aa 0b 61 |...*fx112,1....a| 000025c0 72 65 61 25 3d 33 0d 01 ab 1f f2 63 61 63 68 65 |rea%=3.....cache| 000025d0 73 6f 75 6e 64 28 22 61 6c 69 65 6e 73 6e 65 61 |sound("aliensnea| 000025e0 72 22 2c 31 29 0d 01 ac 0e e3 66 25 3d 31 20 b8 |r",1).....f%=1 .| 000025f0 20 38 30 0d 01 ad 0d f2 73 74 5f 70 61 75 73 65 | 80.....st_pause| 00002600 0d 01 ae 1d e7 20 a4 6e 6f 73 6f 75 6e 64 3d b9 |..... .nosound=.| 00002610 3a d4 20 31 2c 26 31 37 46 2c 31 2c 31 0d 01 af |:. 1,&17F,1,1...| 00002620 0f 41 25 3d 6d 5f 63 6f 64 65 32 25 0d 01 b0 14 |.A%=m_code2%....| 00002630 42 25 3d 73 70 72 69 74 65 5f 61 72 65 61 31 25 |B%=sprite_area1%| 00002640 0d 01 b1 2f e7 56 25 3d 30 20 43 25 3d 73 63 72 |.../.V%=0 C%=scr| 00002650 65 65 6e 5f 6f 6e 65 25 2b 28 31 36 2a 33 32 30 |een_one%+(16*320| 00002660 29 2b 28 38 2a 33 32 30 29 2b 61 72 65 61 25 0d |)+(8*320)+area%.| 00002670 01 b2 26 e7 56 25 3d 31 20 43 25 3d 73 63 72 65 |..&.V%=1 C%=scre| 00002680 65 6e 5f 6f 6e 65 25 2b 28 38 2a 33 32 30 29 2b |en_one%+(8*320)+| 00002690 61 72 65 61 25 0d 01 b3 17 44 25 3d 28 33 32 30 |area%....D%=(320| 000026a0 2a 32 34 30 29 2a 28 56 25 2b 31 29 0d 01 b4 11 |*240)*(V%+1)....| 000026b0 e7 56 25 3d 30 3a d6 20 72 61 69 6e 25 0d 01 b5 |.V%=0:. rain%...| 000026c0 15 e7 56 25 3d 31 3a d6 20 72 61 69 6e 5f 76 67 |..V%=1:. rain_vg| 000026d0 61 25 0d 01 b6 23 61 72 65 61 25 3d 61 72 65 61 |a%...#area%=area| 000026e0 25 2b 31 3a e7 20 61 72 65 61 25 3d 34 20 61 72 |%+1:. area%=4 ar| 000026f0 65 61 25 3d 30 0d 01 b7 10 f2 65 6e 5f 70 61 75 |ea%=0.....en_pau| 00002700 73 65 28 35 29 0d 01 b8 05 ed 0d 01 b9 24 f2 70 |se(5)........$.p| 00002710 6c 6f 74 5f 73 70 72 69 74 65 28 30 2c 31 34 34 |lot_sprite(0,144| 00002720 2c 31 2c 31 2c 31 2c 31 2c 22 37 33 22 29 0d 01 |,1,1,1,1,"73")..| 00002730 ba 2f 42 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 |./B%=screen_one%| 00002740 3a 43 25 3d 73 63 72 65 65 6e 5f 74 77 6f 25 3a |:C%=screen_two%:| 00002750 d6 73 61 76 65 5f 73 63 72 65 65 6e 25 0d 01 bb |.save_screen%...| 00002760 7b f2 74 65 78 74 5f 62 6f 78 28 31 30 30 2c 31 |{.text_box(100,1| 00002770 30 30 2c 31 30 38 30 2c 31 36 30 2c 32 2c 22 59 |00,1080,160,2,"Y| 00002780 6f 75 20 68 61 76 65 20 66 6f 75 6e 64 20 79 6f |ou have found yo| 00002790 75 72 73 65 6c 66 20 69 6e 20 74 68 65 20 61 6c |urself in the al| 000027a0 69 65 6e 20 66 75 65 6c 20 73 74 6f 72 65 2e 22 |ien fuel store."| 000027b0 2c 22 44 6f 20 79 6f 75 20 72 65 71 75 69 72 65 |,"Do you require| 000027c0 20 6d 6f 72 65 20 69 6e 73 74 72 75 63 74 69 6f | more instructio| 000027d0 6e 73 3f 22 2c 22 22 29 0d 01 bc 16 f2 64 65 66 |ns?","").....def| 000027e0 69 6e 65 5f 62 75 74 74 6f 6e 73 28 32 29 0d 01 |ine_buttons(2)..| 000027f0 bd 1a f5 3a c8 97 6d 78 25 2c 6d 79 25 2c 6d 63 |...:..mx%,my%,mc| 00002800 25 3a fd 6d 63 25 3d 30 0d 01 be 1f e3 6d 73 78 |%:.mc%=0.....msx| 00002810 66 25 3d 31 b8 31 30 3a c8 97 6d 78 25 2c 6d 79 |f%=1.10:..mx%,my| 00002820 25 2c 6d 63 25 3a ed 0d 01 bf 17 e3 62 6e 25 3d |%,mc%:......bn%=| 00002830 31 20 b8 20 74 6f 74 61 6c 5f 62 75 74 25 0d 01 |1 . total_but%..| 00002840 c0 2f f2 62 75 74 5f 6f 66 66 28 62 75 74 25 28 |./.but_off(but%(| 00002850 62 6e 25 2c 30 29 2c 62 75 74 25 28 62 6e 25 2c |bn%,0),but%(bn%,| 00002860 31 29 2c 62 75 74 24 28 62 6e 25 29 29 0d 01 c1 |1),but$(bn%))...| 00002870 05 ed 0d 01 c2 07 c8 97 ee 0d 01 c3 05 f5 0d 01 |................| 00002880 c4 1b f2 63 68 65 63 6b 5f 62 75 74 74 6f 6e 73 |...check_buttons| 00002890 28 61 6e 5f 6e 75 6d 25 29 0d 01 c5 10 fd 73 65 |(an_num%).....se| 000028a0 6c 65 63 74 65 64 25 3e 30 0d 01 c6 12 e7 73 65 |lected%>0.....se| 000028b0 6c 65 63 74 65 64 25 3d 31 20 8c 0d 01 c7 2f 43 |lected%=1 ..../C| 000028c0 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 3a 42 25 |%=screen_one%:B%| 000028d0 3d 73 63 72 65 65 6e 5f 74 77 6f 25 3a d6 73 61 |=screen_two%:.sa| 000028e0 76 65 5f 73 63 72 65 65 6e 25 0d 01 c8 0f f2 70 |ve_screen%.....p| 000028f0 61 75 73 65 28 31 30 30 29 0d 01 c9 7d f2 74 65 |ause(100)...}.te| 00002900 78 74 5f 62 6f 78 28 31 30 30 2c 31 36 30 2c 31 |xt_box(100,160,1| 00002910 30 38 30 2c 31 36 30 2c 32 2c 22 54 68 65 20 61 |080,160,2,"The a| 00002920 6c 69 65 6e 73 20 73 74 6f 72 65 20 74 68 65 69 |liens store thei| 00002930 72 20 79 65 6c 6c 6f 77 20 61 6e 64 20 62 6c 75 |r yellow and blu| 00002940 65 20 66 75 65 6c 20 69 6e 22 2c 22 74 68 65 73 |e fuel in","thes| 00002950 65 20 72 6f 6f 6d 73 2e 20 20 59 6f 75 20 6d 75 |e rooms. You mu| 00002960 73 74 20 74 72 79 20 74 6f 20 65 73 63 61 70 65 |st try to escape| 00002970 2e 22 2c 22 22 29 0d 01 ca 16 f2 73 70 61 63 65 |.","").....space| 00002980 28 39 38 30 2c 36 30 2c 30 2c 30 29 0d 01 cb 2f |(980,60,0,0).../| 00002990 43 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 3a 42 |C%=screen_one%:B| 000029a0 25 3d 73 63 72 65 65 6e 5f 74 77 6f 25 3a d6 73 |%=screen_two%:.s| 000029b0 61 76 65 5f 73 63 72 65 65 6e 25 0d 01 cc 0f f2 |ave_screen%.....| 000029c0 70 61 75 73 65 28 31 30 30 29 0d 01 cd 75 f2 74 |pause(100)...u.t| 000029d0 65 78 74 5f 62 6f 78 28 31 30 30 2c 37 30 30 2c |ext_box(100,700,| 000029e0 31 30 38 30 2c 31 36 30 2c 32 2c 22 54 68 65 72 |1080,160,2,"Ther| 000029f0 65 20 61 72 65 20 27 43 6f 64 65 27 20 62 6f 78 |e are 'Code' box| 00002a00 65 73 20 68 69 64 64 65 6e 20 69 6e 20 65 61 63 |es hidden in eac| 00002a10 68 20 72 6f 6f 6d 2e 22 2c 22 54 68 65 73 65 20 |h room.","These | 00002a20 77 69 6c 6c 20 6f 70 65 6e 20 74 68 65 20 65 73 |will open the es| 00002a30 63 61 70 65 20 64 6f 6f 72 2e 22 2c 22 22 29 0d |cape door.","").| 00002a40 01 ce 0f f2 70 61 75 73 65 28 32 30 30 29 0d 01 |....pause(200)..| 00002a50 cf 17 f2 73 70 61 63 65 28 39 38 30 2c 31 30 30 |...space(980,100| 00002a60 2c 30 2c 30 29 0d 01 d0 17 f2 73 65 74 5f 75 70 |,0,0).....set_up| 00002a70 5f 73 63 72 65 65 6e 73 28 31 31 29 0d 01 d1 0c |_screens(11)....| 00002a80 2a 66 78 31 31 32 2c 31 0d 01 d2 0b fb 20 31 33 |*fx112,1..... 13| 00002a90 32 3a db 0d 01 d3 16 f2 72 65 6e 64 65 72 5f 64 |2:......render_d| 00002aa0 65 73 5f 73 63 72 65 65 6e 0d 01 d4 0f 41 25 3d |es_screen....A%=| 00002ab0 6d 5f 63 6f 64 65 32 25 0d 01 d5 14 42 25 3d 73 |m_code2%....B%=s| 00002ac0 70 72 69 74 65 5f 61 72 65 61 31 25 0d 01 d6 1b |prite_area1%....| 00002ad0 43 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 2b 28 |C%=screen_one%+(| 00002ae0 31 36 2a 33 32 30 29 0d 01 d7 1e e7 3f 28 6d 5f |16*320).....?(m_| 00002af0 63 6f 64 65 32 25 2b 26 34 30 29 3d 30 3a d6 20 |code2%+&40)=0:. | 00002b00 6d 61 69 6e 25 0d 01 d8 0f 41 25 3d 6d 5f 63 6f |main%....A%=m_co| 00002b10 64 65 32 25 0d 01 d9 14 42 25 3d 73 70 72 69 74 |de2%....B%=sprit| 00002b20 65 5f 61 72 65 61 31 25 0d 01 da 1b 43 25 3d 73 |e_area1%....C%=s| 00002b30 63 72 65 65 6e 5f 6f 6e 65 25 2b 28 31 36 2a 33 |creen_one%+(16*3| 00002b40 32 30 29 0d 01 db 0c d6 20 61 6c 69 65 6e 25 0d |20)..... alien%.| 00002b50 01 dc 0f 41 25 3d 6d 5f 63 6f 64 65 32 25 0d 01 |...A%=m_code2%..| 00002b60 dd 14 42 25 3d 73 70 72 69 74 65 5f 61 72 65 61 |..B%=sprite_area| 00002b70 31 25 0d 01 de 1b 43 25 3d 73 63 72 65 65 6e 5f |1%....C%=screen_| 00002b80 6f 6e 65 25 2b 28 31 36 2a 33 32 30 29 0d 01 df |one%+(16*320)...| 00002b90 0c d6 20 61 70 70 6c 65 25 0d 01 e0 43 f2 74 65 |.. apple%...C.te| 00002ba0 78 74 5f 62 6f 78 28 36 30 30 2c 37 36 30 2c 35 |xt_box(600,760,5| 00002bb0 36 30 2c 31 34 30 2c 32 2c 22 55 73 65 20 74 68 |60,140,2,"Use th| 00002bc0 65 20 61 72 72 6f 77 20 6b 65 79 73 22 2c 22 74 |e arrow keys","t| 00002bd0 6f 20 6d 6f 76 65 2e 22 2c 22 22 29 0d 01 e1 30 |o move.","")...0| 00002be0 f2 70 6c 6f 74 5f 73 70 72 69 74 65 5f 6d 61 73 |.plot_sprite_mas| 00002bf0 6b 65 64 28 35 30 30 2c 38 32 30 2c 31 2c 31 2c |ked(500,820,1,1,| 00002c00 31 2c 31 2c 22 61 72 72 6f 77 22 29 0d 01 e2 16 |1,1,"arrow")....| 00002c10 f2 73 70 61 63 65 28 39 38 30 2c 38 30 2c 30 2c |.space(980,80,0,| 00002c20 30 29 0d 01 e3 3d f2 74 65 78 74 5f 62 6f 78 28 |0)...=.text_box(| 00002c30 36 30 30 2c 36 35 30 2c 35 36 30 2c 39 30 2c 32 |600,650,560,90,2| 00002c40 2c 22 46 69 6e 64 20 74 68 65 20 63 6f 64 65 64 |,"Find the coded| 00002c50 20 62 6f 78 65 73 2e 22 2c 22 22 2c 22 22 29 0d | boxes.","","").| 00002c60 01 e4 30 f2 70 6c 6f 74 5f 73 70 72 69 74 65 5f |..0.plot_sprite_| 00002c70 6d 61 73 6b 65 64 28 35 30 30 2c 36 37 30 2c 31 |masked(500,670,1| 00002c80 2c 31 2c 31 2c 31 2c 22 61 72 72 6f 77 22 29 0d |,1,1,1,"arrow").| 00002c90 01 e5 16 f2 73 70 61 63 65 28 39 38 30 2c 38 30 |....space(980,80| 00002ca0 2c 30 2c 30 29 0d 01 e6 3f f2 74 65 78 74 5f 62 |,0,0)...?.text_b| 00002cb0 6f 78 28 36 30 30 2c 35 31 38 2c 35 36 30 2c 39 |ox(600,518,560,9| 00002cc0 30 2c 32 2c 22 41 76 6f 69 64 20 74 68 65 20 54 |0,2,"Avoid the T| 00002cd0 61 62 6c 65 20 41 6c 69 65 6e 73 21 22 2c 22 22 |able Aliens!",""| 00002ce0 2c 22 22 29 0d 01 e7 30 f2 70 6c 6f 74 5f 73 70 |,"")...0.plot_sp| 00002cf0 72 69 74 65 5f 6d 61 73 6b 65 64 28 35 30 30 2c |rite_masked(500,| 00002d00 35 33 30 2c 31 2c 31 2c 31 2c 31 2c 22 61 72 72 |530,1,1,1,1,"arr| 00002d10 6f 77 22 29 0d 01 e8 16 f2 73 70 61 63 65 28 39 |ow").....space(9| 00002d20 38 30 2c 38 30 2c 30 2c 30 29 0d 01 e9 59 f2 74 |80,80,0,0)...Y.t| 00002d30 65 78 74 5f 62 6f 78 28 36 30 30 2c 32 38 38 2c |ext_box(600,288,| 00002d40 35 36 30 2c 32 31 30 2c 32 2c 22 59 6f 75 20 63 |560,210,2,"You c| 00002d50 61 6e 20 6d 6f 76 65 20 74 68 72 6f 75 67 68 22 |an move through"| 00002d60 2c 22 74 68 65 20 66 75 65 6c 2e 20 20 54 68 65 |,"the fuel. The| 00002d70 20 61 6c 69 65 6e 73 22 2c 22 63 61 6e 6e 6f 74 | aliens","cannot| 00002d80 21 22 29 0d 01 ea 30 f2 70 6c 6f 74 5f 73 70 72 |!")...0.plot_spr| 00002d90 69 74 65 5f 6d 61 73 6b 65 64 28 35 30 30 2c 33 |ite_masked(500,3| 00002da0 38 30 2c 31 2c 31 2c 31 2c 31 2c 22 61 72 72 6f |80,1,1,1,1,"arro| 00002db0 77 22 29 0d 01 eb 16 f2 73 70 61 63 65 28 39 38 |w").....space(98| 00002dc0 30 2c 38 30 2c 30 2c 30 29 0d 01 ec 59 f2 74 65 |0,80,0,0)...Y.te| 00002dd0 78 74 5f 62 6f 78 28 36 30 30 2c 36 30 2c 35 36 |xt_box(600,60,56| 00002de0 30 2c 32 31 30 2c 32 2c 22 41 66 74 65 72 20 64 |0,210,2,"After d| 00002df0 65 63 6f 64 69 6e 67 20 74 68 65 22 2c 22 63 6f |ecoding the","co| 00002e00 64 65 20 62 6f 78 65 73 2c 20 75 73 65 20 74 68 |de boxes, use th| 00002e10 65 22 2c 22 65 73 63 61 70 65 20 64 6f 6f 72 2e |e","escape door.| 00002e20 22 29 0d 01 ed 30 f2 70 6c 6f 74 5f 73 70 72 69 |")...0.plot_spri| 00002e30 74 65 5f 6d 61 73 6b 65 64 28 35 30 30 2c 31 34 |te_masked(500,14| 00002e40 30 2c 31 2c 31 2c 31 2c 31 2c 22 61 72 72 6f 77 |0,1,1,1,1,"arrow| 00002e50 22 29 0d 01 ee 27 f2 70 6c 6f 74 5f 73 70 72 69 |")...'.plot_spri| 00002e60 74 65 28 30 2c 31 34 34 2c 31 2c 31 2c 31 2c 31 |te(0,144,1,1,1,1| 00002e70 2c 22 65 78 69 74 33 22 29 0d 01 ef 16 f2 73 70 |,"exit3").....sp| 00002e80 61 63 65 28 39 38 30 2c 36 34 2c 30 2c 30 29 0d |ace(980,64,0,0).| 00002e90 01 f0 05 cd 0d 01 f1 12 56 25 3d 73 74 6f 72 65 |........V%=store| 00002ea0 64 5f 76 67 61 25 0d 01 f2 0a 4c 25 3d 31 3a f9 |d_vga%....L%=1:.| 00002eb0 0d 01 f3 05 cd 0d 01 f4 12 f2 73 65 74 5f 74 61 |..........set_ta| 00002ec0 62 6c 65 5f 6f 6e 65 0d 01 f5 0a 62 6f 6d 25 3d |ble_one....bom%=| 00002ed0 31 0d 01 f6 1f f2 63 61 63 68 65 73 6f 75 6e 64 |1.....cachesound| 00002ee0 28 22 61 6c 69 65 6e 73 6e 65 61 72 22 2c 31 29 |("aliensnear",1)| 00002ef0 0d 01 f7 0d 73 77 69 74 63 68 25 3d 30 0d 01 f8 |....switch%=0...| 00002f00 0b e7 56 25 3d 30 20 8c 0d 01 f9 1f 20 20 73 63 |..V%=0 ..... sc| 00002f10 31 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 2b 28 |1%=screen_one%+(| 00002f20 31 36 2a 33 32 30 29 0d 01 fa 27 20 20 73 63 32 |16*320)...' sc2| 00002f30 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 2b 28 31 |%=screen_one%+(1| 00002f40 36 2a 33 32 30 29 2b 28 38 2a 33 32 30 29 0d 01 |6*320)+(8*320)..| 00002f50 fb 12 20 20 72 61 69 6e 79 25 3d 72 61 69 6e 25 |.. rainy%=rain%| 00002f60 0d 01 fc 2a 20 20 61 6d 6f 75 6e 74 5f 72 61 69 |...* amount_rai| 00002f70 6e 25 3d 28 28 33 32 30 2a 32 34 30 29 2a 28 31 |n%=((320*240)*(1| 00002f80 29 29 2d 28 38 2a 33 32 30 29 0d 01 fd 05 cd 0d |))-(8*320)......| 00002f90 01 fe 0b e7 56 25 3d 31 20 8c 0d 01 ff 16 20 20 |....V%=1 ..... | 00002fa0 73 63 31 25 3d 73 63 72 65 65 6e 5f 6f 6e 65 25 |sc1%=screen_one%| 00002fb0 0d 02 00 1e 20 20 73 63 32 25 3d 73 63 72 65 65 |.... sc2%=scree| 00002fc0 6e 5f 6f 6e 65 25 2b 28 38 2a 33 32 30 29 0d 02 |n_one%+(8*320)..| 00002fd0 01 16 20 20 72 61 69 6e 79 25 3d 72 61 69 6e 5f |.. rainy%=rain_| 00002fe0 76 67 61 25 0d 02 02 2a 20 20 61 6d 6f 75 6e 74 |vga%...* amount| 00002ff0 5f 72 61 69 6e 25 3d 28 28 33 32 30 2a 32 34 30 |_rain%=((320*240| 00003000 29 2a 28 32 29 29 2d 28 38 2a 33 32 30 29 0d 02 |)*(2))-(8*320)..| 00003010 03 05 cd 0d 02 04 24 f4 7e 7e 7e 7e 7e 7e 7e 7e |......$.~~~~~~~~| 00003020 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e |~~~~~~~~~~~~~~~~| 00003030 7e 7e 7e 7e 7e 7e 7e 0d 02 05 09 e7 20 a3 20 8c |~~~~~~~..... . .| 00003040 0d 02 06 0c 2a 66 78 31 31 32 2c 31 0d 02 07 06 |....*fx112,1....| 00003050 ef 35 0d 02 08 11 e3 66 25 3d 30 20 b8 20 33 20 |.5.....f%=0 . 3 | 00003060 88 20 33 0d 02 09 11 50 25 3d 6c 69 6e 6b 5f 63 |. 3....P%=link_c| 00003070 6f 64 65 25 0d 02 0a 0c 5b 3a 4f 50 54 20 66 25 |ode%....[:OPT f%| 00003080 0d 02 0b 13 2f 72 65 67 69 73 74 65 72 20 73 74 |..../register st| 00003090 6f 72 65 0d 02 0c 19 2e 73 74 6f 72 65 20 20 20 |ore.....store | 000030a0 20 20 20 20 20 20 20 20 20 20 2f 30 0d 02 0d 0a | /0....| 000030b0 45 51 55 44 20 30 0d 02 0e 19 2e 72 61 69 6e 5f |EQUD 0.....rain_| 000030c0 61 72 65 61 20 20 20 20 20 20 20 20 20 2f 34 0d |area /4.| 000030d0 02 0f 0a 45 51 55 44 20 30 0d 02 10 19 2e 6d 5f |...EQUD 0.....m_| 000030e0 63 6f 64 65 32 20 20 20 20 20 20 20 20 20 20 20 |code2 | 000030f0 2f 38 0d 02 11 11 45 51 55 44 20 6d 5f 63 6f 64 |/8....EQUD m_cod| 00003100 65 32 25 0d 02 12 19 2e 73 70 72 69 74 65 5f 61 |e2%.....sprite_a| 00003110 72 65 61 20 20 20 20 20 20 20 2f 43 0d 02 13 16 |rea /C....| 00003120 45 51 55 44 20 73 70 72 69 74 65 5f 61 72 65 61 |EQUD sprite_area| 00003130 31 25 0d 02 14 1a 2e 73 63 72 65 65 6e 5f 6f 6e |1%.....screen_on| 00003140 65 20 20 20 20 20 20 20 20 2f 31 30 0d 02 15 0d |e /10....| 00003150 45 51 55 44 20 73 63 31 25 0d 02 16 1a 2e 73 63 |EQUD sc1%.....sc| 00003160 72 65 65 6e 5f 74 77 6f 20 20 20 20 20 20 20 20 |reen_two | 00003170 2f 31 34 0d 02 17 0d 45 51 55 44 20 73 63 32 25 |/14....EQUD sc2%| 00003180 0d 02 18 1a 2e 61 6d 6f 75 6e 74 5f 72 61 69 6e |.....amount_rain| 00003190 20 20 20 20 20 20 20 2f 31 38 0d 02 19 15 45 51 | /18....EQ| 000031a0 55 44 20 61 6d 6f 75 6e 74 5f 72 61 69 6e 25 0d |UD amount_rain%.| 000031b0 02 1a 1a 2e 72 61 69 6e 5f 61 64 64 20 20 20 20 |....rain_add | 000031c0 20 20 20 20 20 20 2f 31 43 0d 02 1b 0a 45 51 55 | /1C....EQU| 000031d0 44 20 30 0d 02 1c 1a 2e 6d 61 69 6e 20 20 20 20 |D 0.....main | 000031e0 20 20 20 20 20 20 20 20 20 20 2f 32 30 0d 02 1d | /20...| 000031f0 0e 45 51 55 44 20 6d 61 69 6e 25 0d 02 1e 1a 2e |.EQUD main%.....| 00003200 61 6c 69 65 6e 20 20 20 20 20 20 20 20 20 20 20 |alien | 00003210 20 20 2f 32 34 0d 02 1f 0f 45 51 55 44 20 61 6c | /24....EQUD al| 00003220 69 65 6e 25 0d 02 20 1a 2e 61 70 70 6c 65 20 20 |ien%.. ..apple | 00003230 20 20 20 20 20 20 20 20 20 20 20 2f 32 38 0d 02 | /28..| 00003240 21 0f 45 51 55 44 20 61 70 70 6c 65 25 0d 02 22 |!.EQUD apple%.."| 00003250 1a 2e 72 61 69 6e 79 20 20 20 20 20 20 20 20 20 |..rainy | 00003260 20 20 20 20 2f 32 43 0d 02 23 0f 45 51 55 44 20 | /2C..#.EQUD | 00003270 72 61 69 6e 79 25 0d 02 24 1a 2e 74 65 73 74 69 |rainy%..$..testi| 00003280 6e 67 20 20 20 20 20 20 20 20 20 20 20 2f 33 30 |ng /30| 00003290 0d 02 25 11 45 51 55 44 20 74 65 73 74 69 6e 67 |..%.EQUD testing| 000032a0 25 0d 02 26 0a 45 51 55 44 20 30 0d 02 27 04 0d |%..&.EQUD 0..'..| 000032b0 02 28 09 2e 6c 69 6e 6b 0d 02 29 13 2f 41 25 20 |.(..link..)./A% | 000032c0 3d 20 72 61 69 6e 5f 61 64 64 25 0d 02 2a 11 41 |= rain_add%..*.A| 000032d0 44 52 20 52 31 30 2c 73 74 6f 72 65 0d 02 2b 14 |DR R10,store..+.| 000032e0 53 54 52 20 52 31 34 2c 5b 52 31 2c 23 26 30 5d |STR R14,[R1,#&0]| 000032f0 0d 02 2c 14 53 54 52 20 52 30 2c 5b 52 31 2c 23 |..,.STR R0,[R1,#| 00003300 26 31 43 5d 0d 02 2d 09 2f 6d 61 69 6e 0d 02 2e |&1C]..-./main...| 00003310 14 4c 44 52 20 52 30 2c 5b 52 31 30 2c 23 26 38 |.LDR R0,[R10,#&8| 00003320 5d 0d 02 2f 14 4c 44 52 20 52 31 2c 5b 52 31 30 |]../.LDR R1,[R10| 00003330 2c 23 26 43 5d 0d 02 30 15 4c 44 52 20 52 32 2c |,#&C]..0.LDR R2,| 00003340 5b 52 31 30 2c 23 26 31 34 5d 0d 02 31 15 4c 44 |[R10,#&14]..1.LD| 00003350 52 20 52 33 2c 5b 52 31 30 2c 23 26 32 30 5d 0d |R R3,[R10,#&20].| 00003360 02 32 15 4c 44 52 42 20 52 34 2c 5b 52 30 2c 23 |.2.LDRB R4,[R0,#| 00003370 26 34 30 5d 0d 02 33 12 43 4d 50 20 52 34 2c 23 |&40]..3.CMP R4,#| 00003380 30 3a 42 4c 45 51 0d 02 34 05 cd 0d 02 35 24 f4 |0:BLEQ..4....5$.| 00003390 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f |________________| 000033a0 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 0d |_______________.| 000033b0 02 36 04 0d 02 37 05 f5 0d 02 38 1a 73 65 74 25 |.6...7....8.set%| 000033c0 3d 28 4f 25 2a 32 29 2d 28 73 74 79 6c 65 25 2d |=(O%*2)-(style%-| 000033d0 31 29 0d 02 39 19 f2 73 65 74 5f 75 70 5f 73 63 |1)..9..set_up_sc| 000033e0 72 65 65 6e 73 28 73 65 74 25 29 0d 02 3a 0c 2a |reens(set%)..:.*| 000033f0 66 78 31 31 32 2c 31 0d 02 3b 0b fb 20 31 33 32 |fx112,1..;.. 132| 00003400 3a db 0d 02 3c 16 f2 72 65 6e 64 65 72 5f 64 65 |:...<..render_de| 00003410 73 5f 73 63 72 65 65 6e 0d 02 3d 09 45 25 3d 33 |s_screen..=.E%=3| 00003420 37 0d 02 3e 14 63 6f 75 6e 74 5f 64 25 3d 91 3a |7..>.count_d%=.:| 00003430 54 24 3d 22 22 0d 02 3f 3a f2 73 65 74 5f 75 70 |T$=""..?:.set_up| 00003440 5f 63 6f 75 6e 74 5f 64 6f 77 6e 28 74 78 32 25 |_count_down(tx2%| 00003450 2c 74 79 32 25 2c 33 2c 28 31 30 30 2a 74 69 6d |,ty2%,3,(100*tim| 00003460 65 5f 61 72 65 61 25 29 2b 31 30 30 2c 31 29 0d |e_area%)+100,1).| 00003470 02 40 27 61 72 65 61 25 3d 33 3a 65 73 63 61 70 |.@'area%=3:escap| 00003480 65 25 3d 30 3a 67 6f 74 25 3d 30 3a 63 6f 6c 6c |e%=0:got%=0:coll| 00003490 65 63 74 25 3d 30 0d 02 41 24 f2 70 6c 6f 74 5f |ect%=0..A$.plot_| 000034a0 73 70 72 69 74 65 28 30 2c 31 34 34 2c 31 2c 31 |sprite(0,144,1,1| 000034b0 2c 31 2c 31 2c 22 37 33 22 29 0d 02 42 08 c8 97 |,1,1,"73")..B...| 000034c0 20 87 0d 02 43 05 f5 0d 02 44 0c 6e 74 69 6d 65 | ...C....D.ntime| 000034d0 25 3d 91 0d 02 45 1d e7 20 a4 6e 6f 73 6f 75 6e |%=...E.. .nosoun| 000034e0 64 3d b9 3a d4 20 31 2c 26 31 37 46 2c 31 2c 31 |d=.:. 1,&17F,1,1| 000034f0 0d 02 46 15 e7 63 6f 75 6e 74 5f 64 25 2b 31 35 |..F..count_d%+15| 00003500 30 3c 91 20 8c 0d 02 47 23 20 54 24 3d a4 70 72 |0<. ...G# T$=.pr| 00003510 69 6e 74 5f 74 69 6d 65 72 28 74 78 32 25 2c 74 |int_timer(tx2%,t| 00003520 79 32 25 2c 33 2c 31 29 0d 02 48 0f 20 63 6f 75 |y2%,3,1)..H. cou| 00003530 6e 74 5f 64 25 3d 91 0d 02 49 19 20 e7 20 73 65 |nt_d%=...I. . se| 00003540 74 25 3d 38 20 84 20 73 65 74 25 3d 31 30 20 8c |t%=8 . set%=10 .| 00003550 0d 02 4a 2e 20 20 f2 70 6c 6f 74 5f 73 70 72 69 |..J. .plot_spri| 00003560 74 65 28 31 30 2a 34 38 2c 31 38 2a 34 38 2c 31 |te(10*48,18*48,1| 00003570 2c 31 2c 31 2c 31 2c 22 62 67 31 36 22 29 0d 02 |,1,1,1,"bg16")..| 00003580 4b 2e 20 20 f2 70 6c 6f 74 5f 73 70 72 69 74 65 |K. .plot_sprite| 00003590 28 31 32 2a 34 38 2c 31 38 2a 34 38 2c 31 2c 31 |(12*48,18*48,1,1| 000035a0 2c 31 2c 31 2c 22 62 67 31 36 22 29 0d 02 4c 2e |,1,1,"bg16")..L.| 000035b0 20 20 f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 31 | .plot_sprite(1| 000035c0 33 2a 34 38 2c 31 38 2a 34 38 2c 31 2c 31 2c 31 |3*48,18*48,1,1,1| 000035d0 2c 31 2c 22 62 67 31 36 22 29 0d 02 4d 2e 20 20 |,1,"bg16")..M. | 000035e0 f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 31 35 2a |.plot_sprite(15*| 000035f0 34 38 2c 31 38 2a 34 38 2c 31 2c 31 2c 31 2c 31 |48,18*48,1,1,1,1| 00003600 2c 22 62 67 31 36 22 29 0d 02 4e 06 20 cd 0d 02 |,"bg16")..N. ...| 00003610 4f 05 cd 0d 02 50 04 0d 02 51 10 20 41 25 3d 6d |O....P...Q. A%=m| 00003620 5f 63 6f 64 65 32 25 0d 02 52 15 20 42 25 3d 73 |_code2%..R. B%=s| 00003630 70 72 69 74 65 5f 61 72 65 61 31 25 0d 02 53 0c |prite_area1%..S.| 00003640 20 43 25 3d 73 63 31 25 0d 02 54 1e e7 3f 28 6d | C%=sc1%..T..?(m| 00003650 5f 63 6f 64 65 32 25 2b 26 34 30 29 3d 30 3a d6 |_code2%+&40)=0:.| 00003660 20 6d 61 69 6e 25 0d 02 55 15 20 42 25 3d 73 70 | main%..U. B%=sp| 00003670 72 69 74 65 5f 61 72 65 61 31 25 0d 02 56 0c 20 |rite_area1%..V. | 00003680 43 25 3d 73 63 31 25 0d 02 57 0c d6 20 61 6c 69 |C%=sc1%..W.. ali| 00003690 65 6e 25 0d 02 58 15 20 42 25 3d 73 70 72 69 74 |en%..X. B%=sprit| 000036a0 65 5f 61 72 65 61 31 25 0d 02 59 0c 20 43 25 3d |e_area1%..Y. C%=| 000036b0 73 63 31 25 0d 02 5a 0c d6 20 61 70 70 6c 65 25 |sc1%..Z.. apple%| 000036c0 0d 02 5b 15 20 42 25 3d 73 70 72 69 74 65 5f 61 |..[. B%=sprite_a| 000036d0 72 65 61 31 25 0d 02 5c 12 20 43 25 3d 73 63 32 |rea1%..\. C%=sc2| 000036e0 25 2b 61 72 65 61 25 0d 02 5d 14 20 44 25 3d 61 |%+area%..]. D%=a| 000036f0 6d 6f 75 6e 74 5f 72 61 69 6e 25 0d 02 5e 0c d6 |mount_rain%..^..| 00003700 20 72 61 69 6e 79 25 0d 02 5f 12 20 61 72 65 61 | rainy%.._. area| 00003710 25 3d 61 72 65 61 25 2b 31 0d 02 60 16 20 e7 20 |%=area%+1..`. . | 00003720 61 72 65 61 25 3d 34 20 61 72 65 61 25 3d 30 0d |area%=4 area%=0.| 00003730 02 61 16 f4 20 20 21 73 63 72 65 65 6e 5f 6f 6e |.a.. !screen_on| 00003740 65 25 3d 26 30 0d 02 62 10 20 41 25 3d 6d 5f 63 |e%=&0..b. A%=m_c| 00003750 6f 64 65 32 25 0d 02 63 0e d6 20 74 65 73 74 69 |ode2%..c.. testi| 00003760 6e 67 25 0d 02 64 04 0d 02 65 21 e7 20 3f 28 6d |ng%..d...e!. ?(m| 00003770 5f 63 6f 64 65 32 25 2b 26 34 31 29 3c 3e 63 6f |_code2%+&41)<>co| 00003780 6c 6c 65 63 74 25 20 8c 0d 02 66 1a 20 72 65 73 |llect% ...f. res| 00003790 5f 78 25 3d 21 28 6d 5f 63 6f 64 65 32 25 2b 26 |_x%=!(m_code2%+&| 000037a0 43 29 0d 02 67 1b 20 72 65 73 5f 79 25 3d 21 28 |C)..g. res_y%=!(| 000037b0 6d 5f 63 6f 64 65 32 25 2b 26 31 30 29 0d 02 68 |m_code2%+&10)..h| 000037c0 11 20 f2 74 65 73 74 5f 74 61 62 6c 65 73 0d 02 |. .test_tables..| 000037d0 69 14 20 d4 32 2c 2d 31 35 2c 32 30 2c 26 32 30 |i. .2,-15,20,&20| 000037e0 30 30 0d 02 6a 1d 20 63 6f 6c 6c 65 63 74 25 3d |00..j. collect%=| 000037f0 3f 28 6d 5f 63 6f 64 65 32 25 2b 26 34 31 29 0d |?(m_code2%+&41).| 00003800 02 6b 10 20 62 6f 6d 25 3d 62 6f 6d 25 2b 31 0d |.k. bom%=bom%+1.| 00003810 02 6c 05 cd 0d 02 6d 18 e7 3f 28 6d 5f 63 6f 64 |.l....m..?(m_cod| 00003820 65 32 25 2b 26 34 30 29 3d 31 20 8c 0d 02 6e 20 |e2%+&40)=1 ...n | 00003830 20 f2 63 61 63 68 65 73 6f 75 6e 64 28 22 6c 61 | .cachesound("la| 00003840 73 65 72 5f 64 6f 6f 72 22 2c 31 29 0d 02 6f 11 |ser_door",1)..o.| 00003850 20 d4 20 31 2c 26 31 37 46 2c 31 2c 31 0d 02 70 | . 1,&17F,1,1..p| 00003860 10 20 67 6f 74 25 3d 67 6f 74 25 2b 31 0d 02 71 |. got%=got%+1..q| 00003870 05 cd 0d 02 72 34 e7 65 73 63 61 70 65 25 3d 30 |....r4.escape%=0| 00003880 20 80 20 28 3f 28 6d 5f 63 6f 64 65 32 25 2b 26 | . (?(m_code2%+&| 00003890 34 31 29 3d 21 28 6d 5f 63 6f 64 65 32 25 2b 26 |41)=!(m_code2%+&| 000038a0 33 38 29 29 20 8c 0d 02 73 0e 20 65 73 63 61 70 |38)) ...s. escap| 000038b0 65 25 3d 31 0d 02 74 05 cd 0d 02 75 10 e7 65 73 |e%=1..t....u..es| 000038c0 63 61 70 65 25 3e 30 20 8c 0d 02 76 16 20 65 73 |cape%>0 ...v. es| 000038d0 63 61 70 65 25 3d 65 73 63 61 70 65 25 2b 31 0d |cape%=escape%+1.| 000038e0 02 77 05 cd 0d 02 78 11 e7 65 73 63 61 70 65 25 |.w....x..escape%| 000038f0 3d 31 30 20 8c 0d 02 79 0f 20 65 73 63 61 70 65 |=10 ...y. escape| 00003900 25 3d 2d 31 0d 02 7a 1f 20 f2 63 61 63 68 65 73 |%=-1..z. .caches| 00003910 6f 75 6e 64 28 22 63 6f 6d 70 75 74 65 72 31 22 |ound("computer1"| 00003920 2c 31 29 0d 02 7b 0d 20 e3 66 25 3d 31 20 b8 34 |,1)..{. .f%=1 .4| 00003930 0d 02 7c 28 20 f2 70 6c 6f 74 5f 73 70 72 69 74 |..|( .plot_sprit| 00003940 65 28 30 2c 31 34 34 2c 31 2c 31 2c 31 2c 31 2c |e(0,144,1,1,1,1,| 00003950 22 65 78 69 74 33 22 29 0d 02 7d 11 20 d4 20 31 |"exit3")..}. . 1| 00003960 2c 26 31 37 46 2c 31 2c 31 0d 02 7e 0f 20 f2 70 |,&17F,1,1..~. .p| 00003970 61 75 73 65 28 32 30 29 0d 02 7f 28 20 f2 70 6c |ause(20)...( .pl| 00003980 6f 74 5f 73 70 72 69 74 65 28 30 2c 31 34 34 2c |ot_sprite(0,144,| 00003990 31 2c 31 2c 31 2c 31 2c 22 65 78 69 74 32 22 29 |1,1,1,1,"exit2")| 000039a0 0d 02 80 0f 20 f2 70 61 75 73 65 28 32 30 29 0d |.... .pause(20).| 000039b0 02 81 06 20 ed 0d 02 82 20 20 f2 63 61 63 68 65 |... .... .cache| 000039c0 73 6f 75 6e 64 28 22 61 6c 69 65 6e 73 6e 65 61 |sound("aliensnea| 000039d0 72 22 2c 31 29 0d 02 83 05 cd 0d 02 84 08 45 25 |r",1).........E%| 000039e0 3d 30 0d 02 85 1d e7 6e 74 69 6d 65 25 2b 33 3c |=0.....ntime%+3<| 000039f0 91 20 f5 3a fd 6e 74 69 6d 65 25 2b 33 3c 91 0d |. .:.ntime%+3<..| 00003a00 02 86 28 fd 20 21 28 6d 5f 63 6f 64 65 32 25 2b |..(. !(m_code2%+| 00003a10 26 43 29 3d 30 20 84 20 67 6f 74 25 3e 38 20 84 |&C)=0 . got%>8 .| 00003a20 20 54 24 3d 22 30 22 0d 02 87 08 c8 97 20 ee 0d | T$="0"...... ..| 00003a30 02 88 0e e7 20 67 6f 74 25 3e 38 20 8c 0d 02 89 |.... got%>8 ....| 00003a40 1b f2 63 61 63 68 65 73 6f 75 6e 64 28 22 77 72 |..cachesound("wr| 00003a50 6f 6e 67 32 22 2c 31 29 0d 02 8a 09 66 66 25 3d |ong2",1)....ff%=| 00003a60 31 0d 02 8b 0e e3 66 25 3d 31 20 b8 20 32 30 0d |1.....f%=1 . 20.| 00003a70 02 8c 0d f2 73 74 5f 70 61 75 73 65 0d 02 8d 18 |....st_pause....| 00003a80 e7 66 25 20 83 20 34 3d 30 20 d4 31 2c 2d 31 35 |.f% . 4=0 .1,-15| 00003a90 2c 31 2c 31 0d 02 8e 12 66 66 25 3d 28 66 66 25 |,1,1....ff%=(ff%| 00003aa0 2a 2d 31 29 2b 33 0d 02 8f 52 f2 70 6c 6f 74 5f |*-1)+3...R.plot_| 00003ab0 73 70 72 69 74 65 28 28 21 28 6d 5f 63 6f 64 65 |sprite((!(m_code| 00003ac0 32 25 2b 26 43 29 29 2d 34 38 2c 28 21 28 6d 5f |2%+&C))-48,(!(m_| 00003ad0 63 6f 64 65 32 25 2b 26 31 30 29 29 2d 34 38 2c |code2%+&10))-48,| 00003ae0 31 2c 31 2c 31 2c 31 2c 22 67 6f 74 79 6f 75 22 |1,1,1,1,"gotyou"| 00003af0 2b c3 28 66 66 25 29 29 0d 02 90 11 f2 65 6e 5f |+.(ff%)).....en_| 00003b00 70 61 75 73 65 28 32 30 29 0d 02 91 05 ed 0d 02 |pause(20).......| 00003b10 92 80 f2 74 65 78 74 5f 62 6f 78 28 32 30 30 2c |...text_box(200,| 00003b20 34 30 30 2c 38 38 30 2c 33 33 30 2c 32 2c 22 54 |400,880,330,2,"T| 00003b30 68 65 20 74 61 62 6c 65 20 61 6c 69 65 6e 73 20 |he table aliens | 00003b40 68 61 76 65 20 63 61 70 74 75 72 65 64 20 79 6f |have captured yo| 00003b50 75 22 2c 22 61 67 61 69 6e 2e 20 20 59 6f 75 20 |u","again. You | 00003b60 68 61 76 65 20 61 6e 6f 74 68 65 72 20 63 68 61 |have another cha| 00003b70 6e 63 65 22 2c 22 74 6f 20 65 73 63 61 70 65 2e |nce","to escape.| 00003b80 20 20 47 6f 6f 64 20 6c 75 63 6b 2e 22 29 0d 02 | Good luck.")..| 00003b90 93 17 f2 73 70 61 63 65 28 39 30 30 2c 31 30 30 |...space(900,100| 00003ba0 2c 30 2c 30 29 0d 02 94 12 56 25 3d 73 74 6f 72 |,0,0)....V%=stor| 00003bb0 65 64 5f 76 67 61 25 0d 02 95 0b 4a 25 3d 4a 25 |ed_vga%....J%=J%| 00003bc0 2b 31 0d 02 96 05 f9 0d 02 97 05 cd 0d 02 98 0e |+1..............| 00003bd0 e7 20 54 24 3d 22 30 22 20 8c 0d 02 99 0f f2 70 |. T$="0" ......p| 00003be0 61 75 73 65 28 32 30 30 29 0d 02 9a 66 f2 74 65 |ause(200)...f.te| 00003bf0 78 74 5f 62 6f 78 28 32 30 30 2c 34 30 30 2c 38 |xt_box(200,400,8| 00003c00 38 30 2c 33 33 30 2c 32 2c 22 59 6f 75 20 68 61 |80,330,2,"You ha| 00003c10 76 65 20 72 75 6e 20 6f 75 74 20 6f 66 20 74 69 |ve run out of ti| 00003c20 6d 65 2e 22 2c 22 54 72 79 20 61 67 61 69 6e 20 |me.","Try again | 00003c30 61 6e 64 20 77 6f 72 6b 20 71 75 69 63 6b 6c 79 |and work quickly| 00003c40 22 2c 22 74 68 69 73 20 74 69 6d 65 2e 22 29 0d |","this time.").| 00003c50 02 9b 17 f2 73 70 61 63 65 28 39 30 30 2c 31 30 |....space(900,10| 00003c60 30 2c 30 2c 30 29 0d 02 9c 12 56 25 3d 73 74 6f |0,0,0)....V%=sto| 00003c70 72 65 64 5f 76 67 61 25 0d 02 9d 0b 4a 25 3d 4a |red_vga%....J%=J| 00003c80 25 2b 31 0d 02 9e 05 f9 0d 02 9f 05 cd 0d 02 a0 |%+1.............| 00003c90 16 fd 20 21 28 6d 5f 63 6f 64 65 32 25 2b 26 43 |.. !(m_code2%+&C| 00003ca0 29 3d 30 0d 02 a1 1e 74 6f 74 61 6c 5f 67 6f 74 |)=0....total_got| 00003cb0 25 3d 74 6f 74 61 6c 5f 67 6f 74 5f 66 70 2d 4a |%=total_got_fp-J| 00003cc0 25 0d 02 a2 1e e7 74 6f 74 61 6c 5f 67 6f 74 25 |%.....total_got%| 00003cd0 3c 30 3a 74 6f 74 61 6c 5f 67 6f 74 25 3d 30 0d |<0:total_got%=0.| 00003ce0 02 a3 05 e1 0d 02 a4 3f dd f2 74 65 78 74 5f 62 |.......?..text_b| 00003cf0 6f 78 28 73 74 5f 78 25 2c 73 74 5f 79 25 2c 6c |ox(st_x%,st_y%,l| 00003d00 65 6e 67 74 68 25 2c 68 65 69 67 68 74 25 2c 6a |ength%,height%,j| 00003d10 75 73 74 5f 74 79 70 65 25 2c 61 24 2c 62 24 2c |ust_type%,a$,b$,| 00003d20 63 24 29 0d 02 a5 26 f2 62 6f 78 32 28 73 74 5f |c$)...&.box2(st_| 00003d30 78 25 2c 73 74 5f 79 25 2c 6c 65 6e 67 74 68 25 |x%,st_y%,length%| 00003d40 2c 68 65 69 67 68 74 25 29 0d 02 a6 20 66 5f 77 |,height%)... f_w| 00003d50 69 64 74 68 31 25 3d a4 66 6f 6e 74 5f 73 74 72 |idth1%=.font_str| 00003d60 69 6e 67 5f 77 28 61 24 29 0d 02 a7 20 66 5f 77 |ing_w(a$)... f_w| 00003d70 69 64 74 68 32 25 3d a4 66 6f 6e 74 5f 73 74 72 |idth2%=.font_str| 00003d80 69 6e 67 5f 77 28 62 24 29 0d 02 a8 20 66 5f 77 |ing_w(b$)... f_w| 00003d90 69 64 74 68 33 25 3d a4 66 6f 6e 74 5f 73 74 72 |idth3%=.font_str| 00003da0 69 6e 67 5f 77 28 63 24 29 0d 02 a9 10 66 5f 68 |ing_w(c$)....f_h| 00003db0 65 69 67 68 74 25 3d 37 30 0d 02 aa 2c 6c 69 6e |eight%=70...,lin| 00003dc0 65 73 25 3d 33 3a e7 63 24 3d 22 22 3a 6c 69 6e |es%=3:.c$="":lin| 00003dd0 65 73 25 3d 32 3a e7 62 24 3d 22 22 3a 6c 69 6e |es%=2:.b$="":lin| 00003de0 65 73 25 3d 31 0d 02 ab 2e 78 70 6f 73 31 25 3d |es%=1....xpos1%=| 00003df0 73 74 5f 78 25 2b 28 28 6c 65 6e 67 74 68 25 2d |st_x%+((length%-| 00003e00 28 66 5f 77 69 64 74 68 31 25 2f 34 30 30 29 29 |(f_width1%/400))| 00003e10 2f 32 29 0d 02 ac 2e 78 70 6f 73 32 25 3d 73 74 |/2)....xpos2%=st| 00003e20 5f 78 25 2b 28 28 6c 65 6e 67 74 68 25 2d 28 66 |_x%+((length%-(f| 00003e30 5f 77 69 64 74 68 32 25 2f 34 30 30 29 29 2f 32 |_width2%/400))/2| 00003e40 29 0d 02 ad 2e 78 70 6f 73 33 25 3d 73 74 5f 78 |)....xpos3%=st_x| 00003e50 25 2b 28 28 6c 65 6e 67 74 68 25 2d 28 66 5f 77 |%+((length%-(f_w| 00003e60 69 64 74 68 33 25 2f 34 30 30 29 29 2f 32 29 0d |idth3%/400))/2).| 00003e70 02 ae 13 e7 6a 75 73 74 5f 74 79 70 65 25 3d 32 |....just_type%=2| 00003e80 20 8c 0d 02 af 30 e7 78 70 6f 73 31 25 3c 78 70 | ....0.xpos1%<xp| 00003e90 6f 73 32 25 20 78 70 6f 73 32 25 3d 78 70 6f 73 |os2% xpos2%=xpos| 00003ea0 31 25 20 8b 20 78 70 6f 73 31 25 3d 78 70 6f 73 |1% . xpos1%=xpos| 00003eb0 32 25 0d 02 b0 30 e7 78 70 6f 73 32 25 3c 78 70 |2%...0.xpos2%<xp| 00003ec0 6f 73 33 25 20 78 70 6f 73 33 25 3d 78 70 6f 73 |os3% xpos3%=xpos| 00003ed0 32 25 20 8b 20 78 70 6f 73 32 25 3d 78 70 6f 73 |2% . xpos2%=xpos| 00003ee0 33 25 0d 02 b1 30 e7 78 70 6f 73 33 25 3c 78 70 |3%...0.xpos3%<xp| 00003ef0 6f 73 31 25 20 78 70 6f 73 31 25 3d 78 70 6f 73 |os1% xpos1%=xpos| 00003f00 33 25 20 8b 20 78 70 6f 73 33 25 3d 78 70 6f 73 |3% . xpos3%=xpos| 00003f10 31 25 0d 02 b2 05 cd 0d 02 b3 54 79 70 6f 73 31 |1%........Typos1| 00003f20 25 3d 28 73 74 5f 79 25 2d 28 66 5f 68 65 69 67 |%=(st_y%-(f_heig| 00003f30 68 74 25 2f 36 29 2a 34 29 2b 28 68 65 69 67 68 |ht%/6)*4)+(heigh| 00003f40 74 25 2d 28 6c 69 6e 65 73 25 2a 66 5f 68 65 69 |t%-(lines%*f_hei| 00003f50 67 68 74 25 29 29 2f 32 2b 28 6c 69 6e 65 73 25 |ght%))/2+(lines%| 00003f60 2a 66 5f 68 65 69 67 68 74 25 29 0d 02 b4 1b 79 |*f_height%)....y| 00003f70 70 6f 73 32 25 3d 79 70 6f 73 31 25 2d 66 5f 68 |pos2%=ypos1%-f_h| 00003f80 65 69 67 68 74 25 0d 02 b5 1b 79 70 6f 73 33 25 |eight%....ypos3%| 00003f90 3d 79 70 6f 73 32 25 2d 66 5f 68 65 69 67 68 74 |=ypos2%-f_height| 00003fa0 25 0d 02 b6 1a f2 70 72 69 28 78 70 6f 73 31 25 |%.....pri(xpos1%| 00003fb0 2c 79 70 6f 73 31 25 2c 61 24 29 0d 02 b7 24 e7 |,ypos1%,a$)...$.| 00003fc0 6c 69 6e 65 73 25 3e 31 20 f2 70 72 69 28 78 70 |lines%>1 .pri(xp| 00003fd0 6f 73 32 25 2c 79 70 6f 73 32 25 2c 62 24 29 0d |os2%,ypos2%,b$).| 00003fe0 02 b8 24 e7 6c 69 6e 65 73 25 3e 32 20 f2 70 72 |..$.lines%>2 .pr| 00003ff0 69 28 78 70 6f 73 33 25 2c 79 70 6f 73 33 25 2c |i(xpos3%,ypos3%,| 00004000 63 24 29 0d 02 b9 05 e1 0d 02 ba 13 dd f2 70 72 |c$)...........pr| 00004010 69 28 78 25 2c 79 25 2c 61 24 29 0d 02 bb 3a c8 |i(x%,y%,a$)...:.| 00004020 99 22 46 6f 6e 74 5f 46 69 6e 64 46 6f 6e 74 22 |."Font_FindFont"| 00004030 2c 2c 22 54 41 42 4c 4f 49 44 2e 4d 65 64 69 75 |,,"TABLOID.Mediu| 00004040 6d 22 2c 33 32 30 2c 33 36 30 2c 30 2c 30 20 b8 |m",320,360,0,0 .| 00004050 20 68 61 6e 25 0d 02 bc 23 c8 99 22 46 6f 6e 74 | han%...#.."Font| 00004060 5f 53 65 74 46 6f 6e 74 43 6f 6c 6f 75 72 73 22 |_SetFontColours"| 00004070 2c 30 2c 30 2c 31 2c 32 0d 02 bd 14 ef 30 2c 30 |,0,0,1,2.....0,0| 00004080 2c 30 2c 30 2c 30 2c 30 2c 30 2c 30 0d 02 be 1f |,0,0,0,0,0,0....| 00004090 c8 99 22 46 6f 6e 74 5f 50 61 69 6e 74 22 2c 2c |.."Font_Paint",,| 000040a0 61 24 2c 31 36 2c 78 25 2c 79 25 0d 02 bf 1a c8 |a$,16,x%,y%.....| 000040b0 99 22 46 6f 6e 74 5f 4c 6f 73 65 46 6f 6e 74 22 |."Font_LoseFont"| 000040c0 2c 68 61 6e 25 0d 02 c0 05 e1 0d 02 c1 1c dd a4 |,han%...........| 000040d0 66 6f 6e 74 5f 73 74 72 69 6e 67 5f 77 28 73 74 |font_string_w(st| 000040e0 72 69 6e 67 24 29 0d 02 c2 14 24 73 74 72 69 6e |ring$)....$strin| 000040f0 67 25 3d 73 74 72 69 6e 67 24 0d 02 c3 3a c8 99 |g%=string$...:..| 00004100 22 46 6f 6e 74 5f 46 69 6e 64 46 6f 6e 74 22 2c |"Font_FindFont",| 00004110 2c 22 54 41 42 4c 4f 49 44 2e 4d 65 64 69 75 6d |,"TABLOID.Medium| 00004120 22 2c 33 32 30 2c 33 36 30 2c 30 2c 30 20 b8 20 |",320,360,0,0 . | 00004130 68 61 6e 25 0d 02 c4 47 c8 99 22 46 6f 6e 74 5f |han%...G.."Font_| 00004140 53 74 72 69 6e 67 57 69 64 74 68 22 2c 30 2c 73 |StringWidth",0,s| 00004150 74 72 69 6e 67 25 2c 36 30 30 30 30 30 2c 34 38 |tring%,600000,48| 00004160 30 30 30 30 2c 2d 31 2c 38 30 20 b8 20 72 30 2c |0000,-1,80 . r0,| 00004170 72 31 2c 66 5f 77 69 64 74 68 25 0d 02 c5 1a c8 |r1,f_width%.....| 00004180 99 22 46 6f 6e 74 5f 4c 6f 73 65 46 6f 6e 74 22 |."Font_LoseFont"| 00004190 2c 68 61 6e 25 0d 02 c6 0d 3d 66 5f 77 69 64 74 |,han%....=f_widt| 000041a0 68 25 0d 02 c7 1c dd a4 66 6f 6e 74 5f 73 74 72 |h%......font_str| 000041b0 69 6e 67 5f 68 28 73 74 72 69 6e 67 24 29 0d 02 |ing_h(string$)..| 000041c0 c8 14 24 73 74 72 69 6e 67 25 3d 73 74 72 69 6e |..$string%=strin| 000041d0 67 24 0d 02 c9 3a c8 99 22 46 6f 6e 74 5f 46 69 |g$...:.."Font_Fi| 000041e0 6e 64 46 6f 6e 74 22 2c 2c 22 54 41 42 4c 4f 49 |ndFont",,"TABLOI| 000041f0 44 2e 4d 65 64 69 75 6d 22 2c 33 32 30 2c 33 36 |D.Medium",320,36| 00004200 30 2c 30 2c 30 20 b8 20 68 61 6e 25 0d 02 ca 4a |0,0,0 . han%...J| 00004210 c8 99 22 46 6f 6e 74 5f 53 74 72 69 6e 67 57 69 |.."Font_StringWi| 00004220 64 74 68 22 2c 30 2c 73 74 72 69 6e 67 25 2c 36 |dth",0,string%,6| 00004230 30 30 30 30 30 2c 34 38 30 30 30 30 2c 2d 31 2c |00000,480000,-1,| 00004240 38 30 20 b8 20 72 30 2c 72 31 2c 72 32 2c 66 5f |80 . r0,r1,r2,f_| 00004250 68 65 69 67 68 74 0d 02 cb 1a c8 99 22 46 6f 6e |height......"Fon| 00004260 74 5f 4c 6f 73 65 46 6f 6e 74 22 2c 68 61 6e 25 |t_LoseFont",han%| 00004270 0d 02 cc 0e 3d 66 5f 68 65 69 67 68 74 25 0d 02 |....=f_height%..| 00004280 cd 18 dd f2 73 74 61 72 74 5f 61 6e 69 6d 28 62 |....start_anim(b| 00004290 6c 61 6e 6b 24 29 0d 02 ce 3d c8 99 22 4f 53 5f |lank$)...=.."OS_| 000042a0 53 70 72 69 74 65 4f 70 22 2c 26 31 31 38 2c 73 |SpriteOp",&118,s| 000042b0 70 72 69 74 65 5f 61 72 65 61 31 25 2c 73 65 6c |prite_area1%,sel| 000042c0 5f 73 70 72 69 74 65 24 20 b8 20 72 30 2c 72 31 |_sprite$ . r0,r1| 000042d0 2c 72 32 0d 02 cf 3c 77 69 64 74 68 25 3d 28 21 |,r2...<width%=(!| 000042e0 28 72 32 2b 31 36 29 2b 31 29 2a 31 36 3a 68 65 |(r2+16)+1)*16:he| 000042f0 69 67 68 74 25 3d 28 21 28 72 32 2b 32 30 29 2b |ight%=(!(r2+20)+| 00004300 31 29 2a 28 34 2a 28 76 67 61 25 2b 31 29 29 0d |1)*(4*(vga%+1)).| 00004310 02 d0 56 c8 99 22 4f 53 5f 53 70 72 69 74 65 4f |..V.."OS_SpriteO| 00004320 70 22 2c 26 31 31 30 2c 73 70 72 69 74 65 5f 61 |p",&110,sprite_a| 00004330 72 65 61 31 25 2c 62 6c 61 6e 6b 24 2c 30 2c 61 |rea1%,blank$,0,a| 00004340 6e 5f 78 25 2c 61 6e 5f 79 25 2c 61 6e 5f 78 25 |n_x%,an_y%,an_x%| 00004350 2b 77 69 64 74 68 25 2c 61 6e 5f 79 25 2b 68 65 |+width%,an_y%+he| 00004360 69 67 68 74 25 0d 02 d1 38 f2 70 6c 6f 74 5f 73 |ight%...8.plot_s| 00004370 70 72 69 74 65 5f 6d 61 73 6b 65 64 28 61 6e 5f |prite_masked(an_| 00004380 78 25 2c 61 6e 5f 79 25 2c 31 2c 31 2c 31 2c 31 |x%,an_y%,1,1,1,1| 00004390 2c 73 65 6c 5f 73 70 72 69 74 65 24 29 0d 02 d2 |,sel_sprite$)...| 000043a0 1d 61 6e 5f 78 78 25 3d 61 6e 5f 78 25 3a 61 6e |.an_xx%=an_x%:an| 000043b0 5f 79 79 25 3d 61 6e 5f 79 25 0d 02 d3 05 e1 0d |_yy%=an_y%......| 000043c0 02 d4 12 dd f2 61 6e 69 6d 28 62 6c 61 6e 6b 24 |.....anim(blank$| 000043d0 29 0d 02 d5 3a f2 70 6c 6f 74 5f 73 70 72 69 74 |)...:.plot_sprit| 000043e0 65 5f 6d 61 73 6b 65 64 28 61 6e 5f 78 78 25 2c |e_masked(an_xx%,| 000043f0 61 6e 5f 79 79 25 2c 31 2c 31 2c 31 2c 31 2b 76 |an_yy%,1,1,1,1+v| 00004400 67 61 25 2c 62 6c 61 6e 6b 24 29 0d 02 d6 56 c8 |ga%,blank$)...V.| 00004410 99 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c 26 |."OS_SpriteOp",&| 00004420 31 31 30 2c 73 70 72 69 74 65 5f 61 72 65 61 31 |110,sprite_area1| 00004430 25 2c 62 6c 61 6e 6b 24 2c 30 2c 61 6e 5f 78 25 |%,blank$,0,an_x%| 00004440 2c 61 6e 5f 79 25 2c 61 6e 5f 78 25 2b 77 69 64 |,an_y%,an_x%+wid| 00004450 74 68 25 2c 61 6e 5f 79 25 2b 68 65 69 67 68 74 |th%,an_y%+height| 00004460 25 0d 02 d7 38 f2 70 6c 6f 74 5f 73 70 72 69 74 |%...8.plot_sprit| 00004470 65 5f 6d 61 73 6b 65 64 28 61 6e 5f 78 25 2c 61 |e_masked(an_x%,a| 00004480 6e 5f 79 25 2c 31 2c 31 2c 31 2c 31 2c 73 65 6c |n_y%,1,1,1,1,sel| 00004490 5f 73 70 72 69 74 65 24 29 0d 02 d8 1d 61 6e 5f |_sprite$)....an_| 000044a0 78 78 25 3d 61 6e 5f 78 25 3a 61 6e 5f 79 79 25 |xx%=an_x%:an_yy%| 000044b0 3d 61 6e 5f 79 25 0d 02 d9 05 e1 0d 02 da 16 dd |=an_y%..........| 000044c0 f2 65 6e 64 5f 61 6e 69 6d 28 62 6c 61 6e 6b 24 |.end_anim(blank$| 000044d0 29 0d 02 db 3a f2 70 6c 6f 74 5f 73 70 72 69 74 |)...:.plot_sprit| 000044e0 65 5f 6d 61 73 6b 65 64 28 61 6e 5f 78 78 25 2c |e_masked(an_xx%,| 000044f0 61 6e 5f 79 79 25 2c 31 2c 31 2c 31 2c 31 2b 76 |an_yy%,1,1,1,1+v| 00004500 67 61 25 2c 62 6c 61 6e 6b 24 29 0d 02 dc 05 e1 |ga%,blank$).....| 00004510 0d 02 dd 14 dd f2 70 72 69 32 28 78 25 2c 79 25 |......pri2(x%,y%| 00004520 2c 61 24 29 0d 02 de 3a c8 99 22 46 6f 6e 74 5f |,a$)...:.."Font_| 00004530 46 69 6e 64 46 6f 6e 74 22 2c 2c 22 54 41 42 4c |FindFont",,"TABL| 00004540 4f 49 44 2e 4d 65 64 69 75 6d 22 2c 33 32 30 2c |OID.Medium",320,| 00004550 33 36 30 2c 30 2c 30 20 b8 20 68 61 6e 25 0d 02 |360,0,0 . han%..| 00004560 df 24 c8 99 22 46 6f 6e 74 5f 53 65 74 46 6f 6e |.$.."Font_SetFon| 00004570 74 43 6f 6c 6f 75 72 73 22 2c 30 2c 33 2c 32 2c |tColours",0,3,2,| 00004580 2d 32 0d 02 e0 14 ef 30 2c 30 2c 30 2c 30 2c 30 |-2.....0,0,0,0,0| 00004590 2c 30 2c 30 2c 30 0d 02 e1 1f c8 99 22 46 6f 6e |,0,0,0......"Fon| 000045a0 74 5f 50 61 69 6e 74 22 2c 2c 61 24 2c 31 36 2c |t_Paint",,a$,16,| 000045b0 78 25 2c 79 25 0d 02 e2 1a c8 99 22 46 6f 6e 74 |x%,y%......"Font| 000045c0 5f 4c 6f 73 65 46 6f 6e 74 22 2c 68 61 6e 25 0d |_LoseFont",han%.| 000045d0 02 e3 05 e1 0d 02 e4 1c dd f2 62 6f 78 28 62 78 |..........box(bx| 000045e0 25 2c 62 79 25 2c 62 78 78 25 2c 62 79 79 25 29 |%,by%,bxx%,byy%)| 000045f0 0d 02 e5 1f 62 78 78 25 3d 62 78 25 2b 62 78 78 |....bxx%=bx%+bxx| 00004600 25 3a 62 79 79 25 3d 62 79 25 2b 62 79 79 25 0d |%:byy%=by%+byy%.| 00004610 02 e6 25 ef 32 34 2c 62 78 25 3b 62 79 25 3b 62 |..%.24,bx%;by%;b| 00004620 78 78 25 3b 62 79 79 25 3b 31 38 2c 30 2c 31 33 |xx%;byy%;18,0,13| 00004630 30 2c 31 36 0d 02 e7 2d ef 32 34 2c 62 78 25 2b |0,16...-.24,bx%+| 00004640 34 3b 62 79 25 2b 34 3b 62 78 78 25 2d 34 3b 62 |4;by%+4;bxx%-4;b| 00004650 79 79 25 2d 34 3b 31 38 2c 30 2c 31 32 39 2c 31 |yy%-4;18,0,129,1| 00004660 36 0d 02 e8 30 ef 32 34 2c 62 78 25 2b 38 3b 62 |6...0.24,bx%+8;b| 00004670 79 25 2b 38 3b 62 78 78 25 2d 38 3b 62 79 79 25 |y%+8;bxx%-8;byy%| 00004680 2d 38 3b 31 38 2c 30 2c 31 32 38 2c 31 36 2c 32 |-8;18,0,128,16,2| 00004690 36 0d 02 e9 2f e6 30 2c 33 3a ec 20 62 78 25 2b |6.../.0,3:. bx%+| 000046a0 34 2c 62 79 25 3a f0 35 2c 62 78 78 25 2c 62 79 |4,by%:.5,bxx%,by| 000046b0 25 3a f0 35 2c 62 78 78 25 2c 62 79 79 25 2d 34 |%:.5,bxx%,byy%-4| 000046c0 0d 02 ea 32 ec 20 62 78 25 2b 34 2c 62 79 25 2b |...2. bx%+4,by%+| 000046d0 32 3a f0 35 2c 62 78 78 25 2d 32 2c 62 79 25 2b |2:.5,bxx%-2,by%+| 000046e0 32 3a f0 35 2c 62 78 78 25 2d 32 2c 62 79 79 25 |2:.5,bxx%-2,byy%| 000046f0 2d 34 0d 02 eb 37 e6 30 2c 32 3a ec 20 62 78 25 |-4...7.0,2:. bx%| 00004700 2b 38 2c 62 79 25 2b 34 3a f0 35 2c 62 78 78 25 |+8,by%+4:.5,bxx%| 00004710 2d 34 2c 62 79 25 2b 34 3a f0 35 2c 62 78 78 25 |-4,by%+4:.5,bxx%| 00004720 2d 34 2c 62 79 79 25 2d 38 0d 02 ec 32 ec 20 62 |-4,byy%-8...2. b| 00004730 78 25 2b 38 2c 62 79 25 2b 36 3a f0 35 2c 62 78 |x%+8,by%+6:.5,bx| 00004740 78 25 2d 36 2c 62 79 25 2b 36 3a f0 35 2c 62 78 |x%-6,by%+6:.5,bx| 00004750 78 25 2d 36 2c 62 79 79 25 2d 38 0d 02 ed 05 e1 |x%-6,byy%-8.....| 00004760 0d 02 ee 1d dd f2 62 6f 78 32 28 62 78 25 2c 62 |......box2(bx%,b| 00004770 79 25 2c 62 78 78 25 2c 62 79 79 25 29 0d 02 ef |y%,bxx%,byy%)...| 00004780 1f 62 78 78 25 3d 62 78 25 2b 62 78 78 25 3a 62 |.bxx%=bx%+bxx%:b| 00004790 79 79 25 3d 62 79 25 2b 62 79 79 25 0d 02 f0 2d |yy%=by%+byy%...-| 000047a0 ef 32 34 2c 62 78 25 2d 34 3b 62 79 25 2d 34 3b |.24,bx%-4;by%-4;| 000047b0 62 78 78 25 2b 34 3b 62 79 79 25 2b 34 3b 31 38 |bxx%+4;byy%+4;18| 000047c0 2c 30 2c 31 33 31 2c 31 36 0d 02 f1 28 ef 32 34 |,0,131,16...(.24| 000047d0 2c 62 78 25 3b 62 79 25 3b 62 78 78 25 3b 62 79 |,bx%;by%;bxx%;by| 000047e0 79 25 3b 31 38 2c 30 2c 31 32 38 2c 31 36 2c 32 |y%;18,0,128,16,2| 000047f0 36 0d 02 f2 05 e1 0d 02 f3 37 dd f2 73 65 74 5f |6........7..set_| 00004800 75 70 5f 63 6f 75 6e 74 5f 64 6f 77 6e 28 74 78 |up_count_down(tx| 00004810 25 2c 74 79 25 2c 64 69 67 69 74 73 25 2c 61 6d |%,ty%,digits%,am| 00004820 6f 75 6e 74 25 2c 74 69 6d 65 72 25 29 0d 02 f4 |ount%,timer%)...| 00004830 20 f2 62 6f 78 32 28 74 78 25 2c 74 79 25 2c 34 | .box2(tx%,ty%,4| 00004840 38 2a 64 69 67 69 74 73 25 2c 37 32 29 0d 02 f5 |8*digits%,72)...| 00004850 21 63 6f 75 6e 74 5f 64 6f 77 6e 25 28 74 69 6d |!count_down%(tim| 00004860 65 72 25 29 3d 91 2b 61 6d 6f 75 6e 74 25 0d 02 |er%)=.+amount%..| 00004870 f6 05 e1 0d 02 f7 29 dd a4 70 72 69 6e 74 5f 74 |......)..print_t| 00004880 69 6d 65 72 28 74 78 25 2c 74 79 25 2c 64 69 67 |imer(tx%,ty%,dig| 00004890 69 74 73 25 2c 74 69 6d 65 72 25 29 0d 02 f8 26 |its%,timer%)...&| 000048a0 74 69 6d 65 72 25 3d 28 63 6f 75 6e 74 5f 64 6f |timer%=(count_do| 000048b0 77 6e 25 28 74 69 6d 65 72 25 29 2d 91 29 2f 31 |wn%(timer%)-.)/1| 000048c0 30 30 0d 02 f9 2f e7 74 69 6d 65 72 25 3c 30 20 |00.../.timer%<0 | 000048d0 74 69 6d 65 72 25 3d 30 30 30 30 3a 63 6f 75 6e |timer%=0000:coun| 000048e0 74 5f 64 6f 77 6e 25 28 74 69 6d 65 72 25 29 3d |t_down%(timer%)=| 000048f0 30 0d 02 fa 10 74 24 3d c3 28 74 69 6d 65 72 25 |0....t$=.(timer%| 00004900 29 0d 02 fb 2a f2 70 6c 6f 74 5f 6e 75 6d 62 65 |)...*.plot_numbe| 00004910 72 73 28 74 78 25 2b 32 34 2c 74 79 25 2b 38 2c |rs(tx%+24,ty%+8,| 00004920 64 69 67 69 74 73 25 2c 74 24 29 0d 02 fc 07 3d |digits%,t$)....=| 00004930 74 24 0d 02 fd 24 dd f2 70 6c 6f 74 5f 6e 75 6d |t$...$..plot_num| 00004940 62 65 72 73 28 78 25 2c 79 25 2c 64 69 67 69 74 |bers(x%,y%,digit| 00004950 73 25 2c 61 24 29 0d 02 fe 14 e7 a9 28 61 24 29 |s%,a$)......(a$)| 00004960 3c 64 69 67 69 74 73 25 20 8c 0d 02 ff 05 f5 0d |<digits% .......| 00004970 03 00 0d 61 24 3d 22 64 22 2b 61 24 0d 03 01 12 |...a$="d"+a$....| 00004980 fd a9 28 61 24 29 3d 64 69 67 69 74 73 25 0d 03 |..(a$)=digits%..| 00004990 02 05 cd 0d 03 03 12 e3 70 6e 25 3d 31 20 b8 20 |........pn%=1 . | 000049a0 a9 28 61 24 29 0d 03 04 38 f2 70 6c 6f 74 5f 73 |.(a$)...8.plot_s| 000049b0 70 72 69 74 65 28 28 78 25 2d 33 36 29 2b 28 70 |prite((x%-36)+(p| 000049c0 6e 25 2a 33 36 29 2c 79 25 2c 31 2c 31 2c 31 2c |n%*36),y%,1,1,1,| 000049d0 31 2c c1 61 24 2c 70 6e 25 2c 31 29 29 0d 03 05 |1,.a$,pn%,1))...| 000049e0 05 ed 0d 03 06 05 e1 0d 03 07 1e dd f2 73 65 74 |.............set| 000049f0 5f 70 6f 73 5f 62 75 74 74 6f 6e 73 28 62 78 25 |_pos_buttons(bx%| 00004a00 2c 62 79 25 29 0d 03 08 16 e3 62 66 25 3d 31 b8 |,by%).....bf%=1.| 00004a10 20 74 6f 74 61 6c 5f 62 75 74 25 0d 03 09 1f 62 | total_but%....b| 00004a20 75 74 25 28 62 66 25 2c 30 29 3d 62 75 74 25 28 |ut%(bf%,0)=but%(| 00004a30 62 66 25 2c 30 29 2b 62 78 25 0d 03 0a 1f 62 75 |bf%,0)+bx%....bu| 00004a40 74 25 28 62 66 25 2c 31 29 3d 62 75 74 25 28 62 |t%(bf%,1)=but%(b| 00004a50 66 25 2c 31 29 2b 62 79 25 0d 03 0b 05 ed 0d 03 |f%,1)+by%.......| 00004a60 0c 05 e1 0d 03 0d 0e dd f2 70 61 6c 65 74 74 65 |.........palette| 00004a70 32 0d 03 0e 2c e7 56 25 3d 30 20 ef 32 34 2c 30 |2...,.V%=0 .24,0| 00004a80 3b 39 36 30 3b 31 32 37 38 3b 31 30 32 32 3b 31 |;960;1278;1022;1| 00004a90 38 2c 30 2c 31 33 31 2c 31 36 2c 32 36 0d 03 0f |8,0,131,16,26...| 00004aa0 18 ef 31 39 2c 31 2c 32 34 2c 31 33 36 2c 31 33 |..19,1,24,136,13| 00004ab0 36 2c 31 33 36 0d 03 10 10 ea 70 25 2c 72 25 2c |6,136.....p%,r%,| 00004ac0 67 25 2c 62 25 0d 03 11 07 f7 2b 34 0d 03 12 0c |g%,b%.....+4....| 00004ad0 e3 70 25 3d 30 b8 31 35 0d 03 13 1a f3 72 25 2c |.p%=0.15.....r%,| 00004ae0 67 25 2c 62 25 3a fb 70 25 2c 72 25 2c 67 25 2c |g%,b%:.p%,r%,g%,| 00004af0 62 25 0d 03 14 07 ed 3a e1 0d 03 15 2f dc 20 32 |b%.....:..../. 2| 00004b00 35 35 2c 32 35 35 2c 32 35 35 2c 31 38 37 2c 31 |55,255,255,187,1| 00004b10 38 37 2c 31 38 37 2c 31 33 36 2c 31 33 36 2c 31 |87,187,136,136,1| 00004b20 33 36 2c 30 2c 30 2c 30 0d 03 16 29 dc 20 30 2c |36,0,0,0...). 0,| 00004b30 30 2c 31 37 35 2c 30 2c 30 2c 32 35 35 2c 30 2c |0,175,0,0,255,0,| 00004b40 32 30 34 2c 32 35 35 2c 32 35 35 2c 32 35 35 2c |204,255,255,255,| 00004b50 30 0d 03 17 28 dc 20 32 30 34 2c 32 30 34 2c 30 |0...(. 204,204,0| 00004b60 2c 32 32 31 2c 30 2c 30 2c 31 33 36 2c 31 37 2c |,221,0,0,136,17,| 00004b70 30 2c 30 2c 31 35 33 2c 30 0d 03 18 2a dc 20 30 |0,0,153,0...*. 0| 00004b80 2c 31 38 37 2c 33 34 2c 30 2c 32 35 35 2c 30 2c |,187,34,0,255,0,| 00004b90 32 35 35 2c 32 32 31 2c 31 37 30 2c 30 2c 30 2c |255,221,170,0,0,| 00004ba0 31 37 35 0d 03 19 0f dd f2 61 73 73 65 6d 62 6c |175......assembl| 00004bb0 65 32 0d 03 1a 0c 2a 46 58 31 31 33 2c 31 0d 03 |e2....*FX113,1..| 00004bc0 1b 0c 2a 46 58 31 31 32 2c 32 0d 03 1c 12 e3 6f |..*FX112,2.....o| 00004bd0 70 74 25 3d 30 20 b8 20 33 20 88 33 0d 03 1d 0f |pt%=0 . 3 .3....| 00004be0 50 25 3d 6d 5f 63 6f 64 65 32 25 0d 03 1e 05 5b |P%=m_code2%....[| 00004bf0 0d 03 1f 08 4f 50 54 30 0d 03 20 0f 2e 6d 6f 76 |....OPT0.. ..mov| 00004c00 65 5f 62 6f 6d 62 73 0d 03 21 1c 45 51 55 44 20 |e_bombs..!.EQUD | 00004c10 6d 61 69 6e 20 20 20 20 20 20 20 20 20 20 20 20 |main | 00004c20 20 20 20 0d 03 22 1c 45 51 55 44 20 61 6c 69 65 | ..".EQUD alie| 00004c30 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d |n .| 00004c40 03 23 1c 45 51 55 44 20 61 70 70 6c 65 20 20 20 |.#.EQUD apple | 00004c50 20 20 20 20 20 20 20 20 20 20 20 0d 03 24 1c 45 | ..$.E| 00004c60 51 55 44 20 37 32 30 20 20 20 20 20 20 20 20 20 |QUD 720 | 00004c70 20 20 20 20 20 20 20 0d 03 25 1c 45 51 55 44 20 | ..%.EQUD | 00004c80 36 37 32 20 20 20 20 20 20 20 20 20 20 20 20 20 |672 | 00004c90 20 20 20 0d 03 26 1c 45 51 55 44 20 30 20 20 20 | ..&.EQUD 0 | 00004ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004cb0 03 27 1c 45 51 55 44 20 30 20 20 20 20 20 20 20 |.'.EQUD 0 | 00004cc0 20 20 20 20 20 20 20 20 20 20 20 0d 03 28 1c 45 | ..(.E| 00004cd0 51 55 44 20 34 39 20 20 20 20 20 20 20 20 20 20 |QUD 49 | 00004ce0 20 20 20 20 20 20 20 0d 03 29 1c 45 51 55 44 20 | ..).EQUD | 00004cf0 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |4 | 00004d00 20 20 20 0d 03 2a 1c 45 51 55 44 20 30 20 20 20 | ..*.EQUD 0 | 00004d10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004d20 03 2b 1c 45 51 55 44 20 30 20 20 20 20 20 20 20 |.+.EQUD 0 | 00004d30 20 20 20 20 20 20 20 20 20 20 20 0d 03 2c 1c 45 | ..,.E| 00004d40 51 55 44 20 30 20 20 20 20 20 20 20 20 20 20 20 |QUD 0 | 00004d50 20 20 20 20 20 20 20 0d 03 2d 1c 45 51 55 42 20 | ..-.EQUB | 00004d60 31 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |15 | 00004d70 20 20 20 0d 03 2e 1c 45 51 55 42 20 31 34 20 20 | ....EQUB 14 | 00004d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004d90 03 2f 1c 45 51 55 42 20 30 20 20 20 20 20 20 20 |./.EQUB 0 | 00004da0 20 20 20 20 20 20 20 20 20 20 20 0d 03 30 1c 45 | ..0.E| 00004db0 51 55 42 20 30 20 20 20 20 20 20 20 20 20 20 20 |QUB 0 | 00004dc0 20 20 20 20 20 20 20 0d 03 31 1c 45 51 55 44 20 | ..1.EQUD | 00004dd0 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |0 | 00004de0 20 20 20 0d 03 32 1c 45 51 55 44 20 34 20 20 20 | ..2.EQUD 4 | 00004df0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004e00 03 33 1c 45 51 55 44 20 74 65 73 74 69 6e 67 20 |.3.EQUD testing | 00004e10 20 20 20 20 20 20 20 20 20 20 20 0d 03 34 1c 45 | ..4.E| 00004e20 51 55 42 20 30 20 20 20 20 20 20 20 20 20 20 20 |QUB 0 | 00004e30 20 20 20 20 20 20 20 0d 03 35 1c 45 51 55 42 20 | ..5.EQUB | 00004e40 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |0 | 00004e50 20 20 20 0d 03 36 1c 45 51 55 42 20 30 20 20 20 | ..6.EQUB 0 | 00004e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004e70 03 37 1c 45 51 55 42 20 30 20 20 20 20 20 20 20 |.7.EQUB 0 | 00004e80 20 20 20 20 20 20 20 20 20 20 20 0d 03 38 1c 45 | ..8.E| 00004e90 51 55 44 20 72 61 69 6e 20 20 20 20 20 20 20 20 |QUD rain | 00004ea0 20 20 20 20 20 20 20 0d 03 39 1c 45 51 55 44 20 | ..9.EQUD | 00004eb0 72 61 69 6e 5f 76 67 61 20 20 20 20 20 20 20 20 |rain_vga | 00004ec0 20 20 20 0d 03 3a 1c 45 51 55 44 20 30 20 20 20 | ..:.EQUD 0 | 00004ed0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004ee0 03 3b 1c 45 51 55 44 20 30 20 20 20 20 20 20 20 |.;.EQUD 0 | 00004ef0 20 20 20 20 20 20 20 20 20 20 20 0d 03 3c 1c 45 | ..<.E| 00004f00 51 55 44 20 30 20 20 20 20 20 20 20 20 20 20 20 |QUD 0 | 00004f10 20 20 20 20 20 20 20 0d 03 3d 1c 45 51 55 44 20 | ..=.EQUD | 00004f20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |0 | 00004f30 20 20 20 0d 03 3e 1c 45 51 55 44 20 30 20 20 20 | ..>.EQUD 0 | 00004f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00004f50 03 3f 07 2e 61 6c 0d 03 40 82 45 51 55 44 20 32 |.?..al..@.EQUD 2| 00004f60 38 38 3a 45 51 55 44 20 34 33 32 3a 45 51 55 44 |88:EQUD 432:EQUD| 00004f70 20 30 3a 45 51 55 44 20 34 39 3a 45 51 55 44 20 | 0:EQUD 49:EQUD | 00004f80 30 3a 20 45 51 55 42 20 30 3a 45 51 55 42 20 30 |0: EQUB 0:EQUB 0| 00004f90 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 |:EQUB 0:EQUB 0:E| 00004fa0 51 55 42 20 33 3a 45 51 55 42 20 36 3a 45 51 55 |QUB 3:EQUB 6:EQU| 00004fb0 42 20 39 3a 45 51 55 42 20 30 3a 45 51 55 42 20 |B 9:EQUB 0:EQUB | 00004fc0 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a |0:EQUB 0:EQUB 0:| 00004fd0 45 51 55 42 20 30 20 20 0d 03 41 82 45 51 55 44 |EQUB 0 ..A.EQUD| 00004fe0 20 34 33 32 3a 45 51 55 44 20 32 34 30 3a 45 51 | 432:EQUD 240:EQ| 00004ff0 55 44 20 30 3a 45 51 55 44 20 34 39 3a 45 51 55 |UD 0:EQUD 49:EQU| 00005000 44 20 30 3a 20 45 51 55 42 20 30 3a 45 51 55 42 |D 0: EQUB 0:EQUB| 00005010 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 | 0:EQUB 0:EQUB 0| 00005020 3a 45 51 55 42 20 39 3a 45 51 55 42 20 39 3a 45 |:EQUB 9:EQUB 9:E| 00005030 51 55 42 20 35 3a 45 51 55 42 20 30 3a 45 51 55 |QUB 5:EQUB 0:EQU| 00005040 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 |B 0:EQUB 0:EQUB | 00005050 30 3a 45 51 55 42 20 30 20 20 0d 03 42 82 45 51 |0:EQUB 0 ..B.EQ| 00005060 55 44 20 32 38 38 3a 45 51 55 44 20 32 38 38 3a |UD 288:EQUD 288:| 00005070 45 51 55 44 20 30 3a 45 51 55 44 20 34 39 3a 45 |EQUD 0:EQUD 49:E| 00005080 51 55 44 20 30 3a 20 45 51 55 42 20 30 3a 45 51 |QUD 0: EQUB 0:EQ| 00005090 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 |UB 0:EQUB 0:EQUB| 000050a0 20 30 3a 45 51 55 42 20 36 3a 45 51 55 42 20 36 | 0:EQUB 6:EQUB 6| 000050b0 3a 45 51 55 42 20 36 3a 45 51 55 42 20 30 3a 45 |:EQUB 6:EQUB 0:E| 000050c0 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 |QUB 0:EQUB 0:EQU| 000050d0 42 20 30 3a 45 51 55 42 20 30 20 20 0d 03 43 82 |B 0:EQUB 0 ..C.| 000050e0 45 51 55 44 20 32 34 30 3a 45 51 55 44 20 32 34 |EQUD 240:EQUD 24| 000050f0 30 3a 45 51 55 44 20 30 3a 45 51 55 44 20 34 39 |0:EQUD 0:EQUD 49| 00005100 3a 45 51 55 44 20 30 3a 20 45 51 55 42 20 30 3a |:EQUD 0: EQUB 0:| 00005110 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 |EQUB 0:EQUB 0:EQ| 00005120 55 42 20 30 3a 45 51 55 42 20 31 32 3a 45 51 55 |UB 0:EQUB 12:EQU| 00005130 42 20 35 3a 45 51 55 42 20 35 3a 45 51 55 42 20 |B 5:EQUB 5:EQUB | 00005140 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a |0:EQUB 0:EQUB 0:| 00005150 45 51 55 42 20 30 3a 45 51 55 42 20 30 20 0d 03 |EQUB 0:EQUB 0 ..| 00005160 44 82 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a |D.EQUD 0:EQUD 0:| 00005170 45 51 55 44 20 30 3a 45 51 55 44 20 34 39 3a 45 |EQUD 0:EQUD 49:E| 00005180 51 55 44 20 30 3a 20 45 51 55 42 20 30 3a 45 51 |QUD 0: EQUB 0:EQ| 00005190 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 |UB 0:EQUB 0:EQUB| 000051a0 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 | 0:EQUB 0:EQUB 0| 000051b0 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 |:EQUB 0:EQUB 0:E| 000051c0 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 |QUB 0:EQUB 0:EQU| 000051d0 42 20 30 3a 45 51 55 42 20 30 20 20 20 20 20 20 |B 0:EQUB 0 | 000051e0 0d 03 45 07 2e 61 70 0d 03 46 65 45 51 55 44 20 |..E..ap..FeEQUD | 000051f0 37 32 30 3a 45 51 55 44 20 37 32 30 3a 45 51 55 |720:EQUD 720:EQU| 00005200 44 20 30 3a 45 51 55 44 20 30 3a 45 51 55 44 20 |D 0:EQUD 0:EQUD | 00005210 34 3a 20 45 51 55 42 20 31 35 3a 45 51 55 42 20 |4: EQUB 15:EQUB | 00005220 31 35 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 |15:EQUB 0:EQUB 0| 00005230 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 |:EQUB 0:EQUB 0:E| 00005240 51 55 42 20 30 3a 45 51 55 42 20 30 0d 03 47 65 |QUB 0:EQUB 0..Ge| 00005250 45 51 55 44 20 37 32 30 3a 45 51 55 44 20 37 36 |EQUD 720:EQUD 76| 00005260 38 3a 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a |8:EQUD 0:EQUD 0:| 00005270 45 51 55 44 20 34 3a 20 45 51 55 42 20 31 35 3a |EQUD 4: EQUB 15:| 00005280 45 51 55 42 20 31 36 3a 45 51 55 42 20 30 3a 45 |EQUB 16:EQUB 0:E| 00005290 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 |QUB 0:EQUB 0:EQU| 000052a0 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 |B 0:EQUB 0:EQUB | 000052b0 30 0d 03 48 65 45 51 55 44 20 37 32 30 3a 45 51 |0..HeEQUD 720:EQ| 000052c0 55 44 20 38 31 36 3a 45 51 55 44 20 30 3a 45 51 |UD 816:EQUD 0:EQ| 000052d0 55 44 20 30 3a 45 51 55 44 20 34 3a 20 45 51 55 |UD 0:EQUD 4: EQU| 000052e0 42 20 31 35 3a 45 51 55 42 20 31 37 3a 45 51 55 |B 15:EQUB 17:EQU| 000052f0 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 |B 0:EQUB 0:EQUB | 00005300 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a |0:EQUB 0:EQUB 0:| 00005310 45 51 55 42 20 30 0d 03 49 65 45 51 55 44 20 37 |EQUB 0..IeEQUD 7| 00005320 32 30 3a 45 51 55 44 20 38 36 34 3a 45 51 55 44 |20:EQUD 864:EQUD| 00005330 20 30 3a 45 51 55 44 20 30 3a 45 51 55 44 20 34 | 0:EQUD 0:EQUD 4| 00005340 3a 20 45 51 55 42 20 31 35 3a 45 51 55 42 20 31 |: EQUB 15:EQUB 1| 00005350 38 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a |8:EQUB 0:EQUB 0:| 00005360 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 |EQUB 0:EQUB 0:EQ| 00005370 55 42 20 30 3a 45 51 55 42 20 30 0d 03 4a 65 45 |UB 0:EQUB 0..JeE| 00005380 51 55 44 20 37 32 30 3a 45 51 55 44 20 37 32 30 |QUD 720:EQUD 720| 00005390 3a 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a 45 |:EQUD 0:EQUD 0:E| 000053a0 51 55 44 20 34 3a 20 45 51 55 42 20 31 35 3a 45 |QUD 4: EQUB 15:E| 000053b0 51 55 42 20 31 35 3a 45 51 55 42 20 30 3a 45 51 |QUB 15:EQUB 0:EQ| 000053c0 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 |UB 0:EQUB 0:EQUB| 000053d0 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 | 0:EQUB 0:EQUB 0| 000053e0 0d 03 4b 65 45 51 55 44 20 37 32 30 3a 45 51 55 |..KeEQUD 720:EQU| 000053f0 44 20 37 36 38 3a 45 51 55 44 20 30 3a 45 51 55 |D 768:EQUD 0:EQU| 00005400 44 20 30 3a 45 51 55 44 20 34 3a 20 45 51 55 42 |D 0:EQUD 4: EQUB| 00005410 20 31 35 3a 45 51 55 42 20 31 36 3a 45 51 55 42 | 15:EQUB 16:EQUB| 00005420 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 | 0:EQUB 0:EQUB 0| 00005430 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 |:EQUB 0:EQUB 0:E| 00005440 51 55 42 20 30 0d 03 4c 65 45 51 55 44 20 37 32 |QUB 0..LeEQUD 72| 00005450 30 3a 45 51 55 44 20 38 31 36 3a 45 51 55 44 20 |0:EQUD 816:EQUD | 00005460 30 3a 45 51 55 44 20 30 3a 45 51 55 44 20 34 3a |0:EQUD 0:EQUD 4:| 00005470 20 45 51 55 42 20 31 35 3a 45 51 55 42 20 31 37 | EQUB 15:EQUB 17| 00005480 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 |:EQUB 0:EQUB 0:E| 00005490 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 |QUB 0:EQUB 0:EQU| 000054a0 42 20 30 3a 45 51 55 42 20 30 0d 03 4d 65 45 51 |B 0:EQUB 0..MeEQ| 000054b0 55 44 20 37 32 30 3a 45 51 55 44 20 38 36 34 3a |UD 720:EQUD 864:| 000054c0 45 51 55 44 20 30 3a 45 51 55 44 20 30 3a 45 51 |EQUD 0:EQUD 0:EQ| 000054d0 55 44 20 34 3a 20 45 51 55 42 20 31 35 3a 45 51 |UD 4: EQUB 15:EQ| 000054e0 55 42 20 31 38 3a 45 51 55 42 20 30 3a 45 51 55 |UB 18:EQUB 0:EQU| 000054f0 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 |B 0:EQUB 0:EQUB | 00005500 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 0d |0:EQUB 0:EQUB 0.| 00005510 03 4e 65 45 51 55 44 20 37 32 30 3a 45 51 55 44 |.NeEQUD 720:EQUD| 00005520 20 38 36 34 3a 45 51 55 44 20 30 3a 45 51 55 44 | 864:EQUD 0:EQUD| 00005530 20 30 3a 45 51 55 44 20 34 3a 20 45 51 55 42 20 | 0:EQUD 4: EQUB | 00005540 31 35 3a 45 51 55 42 20 31 38 3a 45 51 55 42 20 |15:EQUB 18:EQUB | 00005550 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a |0:EQUB 0:EQUB 0:| 00005560 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 |EQUB 0:EQUB 0:EQ| 00005570 55 42 20 30 0d 03 4f 65 45 51 55 44 20 37 32 30 |UB 0..OeEQUD 720| 00005580 3a 45 51 55 44 20 38 36 34 3a 45 51 55 44 20 30 |:EQUD 864:EQUD 0| 00005590 3a 45 51 55 44 20 30 3a 45 51 55 44 20 34 3a 20 |:EQUD 0:EQUD 4: | 000055a0 45 51 55 42 20 31 35 3a 45 51 55 42 20 31 38 3a |EQUB 15:EQUB 18:| 000055b0 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 |EQUB 0:EQUB 0:EQ| 000055c0 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 |UB 0:EQUB 0:EQUB| 000055d0 20 30 3a 45 51 55 42 20 30 0d 03 50 65 45 51 55 | 0:EQUB 0..PeEQU| 000055e0 44 20 37 32 30 3a 45 51 55 44 20 38 36 34 3a 45 |D 720:EQUD 864:E| 000055f0 51 55 44 20 30 3a 45 51 55 44 20 30 3a 45 51 55 |QUD 0:EQUD 0:EQU| 00005600 44 20 34 3a 20 45 51 55 42 20 31 35 3a 45 51 55 |D 4: EQUB 15:EQU| 00005610 42 20 31 38 3a 45 51 55 42 20 30 3a 45 51 55 42 |B 18:EQUB 0:EQUB| 00005620 20 30 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 | 0:EQUB 0:EQUB 0| 00005630 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 0d 03 |:EQUB 0:EQUB 0..| 00005640 51 65 45 51 55 44 20 37 32 30 3a 45 51 55 44 20 |QeEQUD 720:EQUD | 00005650 38 36 34 3a 45 51 55 44 20 30 3a 45 51 55 44 20 |864:EQUD 0:EQUD | 00005660 30 3a 45 51 55 44 20 34 3a 20 45 51 55 42 20 31 |0:EQUD 4: EQUB 1| 00005670 35 3a 45 51 55 42 20 31 38 3a 45 51 55 42 20 30 |5:EQUB 18:EQUB 0| 00005680 3a 45 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 |:EQUB 0:EQUB 0:E| 00005690 51 55 42 20 30 3a 45 51 55 42 20 30 3a 45 51 55 |QUB 0:EQUB 0:EQU| 000056a0 42 20 30 0d 03 52 09 41 4c 49 47 4e 0d 03 53 0c |B 0..R.ALIGN..S.| 000056b0 2e 74 65 73 74 69 6e 67 0d 03 54 0e 4d 4f 56 20 |.testing..T.MOV | 000056c0 52 31 30 2c 52 30 0d 03 55 16 53 54 52 20 52 31 |R10,R0..U.STR R1| 000056d0 34 2c 5b 52 31 30 2c 23 26 35 43 5d 0d 03 56 1b |4,[R10,#&5C]..V.| 000056e0 4c 44 52 42 20 52 31 2c 5b 52 31 30 2c 23 26 33 |LDRB R1,[R10,#&3| 000056f0 30 5d 20 20 20 20 20 0d 03 57 1b 4c 44 52 42 20 |0] ..W.LDRB | 00005700 52 32 2c 5b 52 31 30 2c 23 26 33 32 5d 20 20 20 |R2,[R10,#&32] | 00005710 20 20 0d 03 58 1b 4c 44 52 42 20 52 35 2c 5b 52 | ..X.LDRB R5,[R| 00005720 31 30 2c 23 26 33 31 5d 20 20 20 20 20 0d 03 59 |10,#&31] ..Y| 00005730 1b 4c 44 52 42 20 52 36 2c 5b 52 31 30 2c 23 26 |.LDRB R6,[R10,#&| 00005740 33 33 5d 20 20 20 20 20 0d 03 5a 1a 4c 44 52 20 |33] ..Z.LDR | 00005750 52 31 32 2c 5b 52 31 30 2c 23 26 32 30 5d 20 20 |R12,[R10,#&20] | 00005760 20 20 0d 03 5b 1a 41 44 44 20 52 31 31 2c 52 31 | ..[.ADD R11,R1| 00005770 30 2c 23 26 36 30 20 20 20 20 20 20 0d 03 5c 1a |0,#&60 ..\.| 00005780 41 44 44 20 52 31 31 2c 52 31 31 2c 23 26 31 39 |ADD R11,R11,#&19| 00005790 20 20 20 20 20 20 0d 03 5d 18 2e 74 65 73 74 5f | ..]..test_| 000057a0 61 6c 69 65 6e 5f 68 69 74 5f 6c 6f 6f 70 0d 03 |alien_hit_loop..| 000057b0 5e 1a 4c 44 52 42 20 52 33 2c 5b 52 31 31 2c 23 |^.LDRB R3,[R11,#| 000057c0 26 30 5d 20 20 20 20 20 0d 03 5f 1a 4c 44 52 42 |&0] .._.LDRB| 000057d0 20 52 34 2c 5b 52 31 31 2c 23 26 32 5d 20 20 20 | R4,[R11,#&2] | 000057e0 20 20 0d 03 60 1a 4c 44 52 42 20 52 37 2c 5b 52 | ..`.LDRB R7,[R| 000057f0 31 31 2c 23 26 31 5d 20 20 20 20 20 0d 03 61 1a |11,#&1] ..a.| 00005800 4c 44 52 42 20 52 38 2c 5b 52 31 31 2c 23 26 33 |LDRB R8,[R11,#&3| 00005810 5d 20 20 20 20 20 0d 03 62 14 42 4c 20 63 68 65 |] ..b.BL che| 00005820 63 6b 5f 67 72 69 64 5f 63 6f 0d 03 63 1a 43 4d |ck_grid_co..c.CM| 00005830 50 20 52 39 2c 23 31 20 20 20 20 20 20 20 20 20 |P R9,#1 | 00005840 20 20 20 20 0d 03 64 15 42 45 51 20 6d 61 6e 5f | ..d.BEQ man_| 00005850 68 69 74 5f 61 6c 69 65 6e 0d 03 65 1a 41 44 44 |hit_alien..e.ADD| 00005860 20 52 31 31 2c 52 31 31 2c 23 33 32 20 20 20 20 | R11,R11,#32 | 00005870 20 20 20 0d 03 66 12 53 55 42 20 52 31 32 2c 52 | ..f.SUB R12,R| 00005880 31 32 2c 23 31 0d 03 67 0e 43 4d 50 20 52 31 32 |12,#1..g.CMP R12| 00005890 2c 23 30 0d 03 68 1b 42 47 54 20 74 65 73 74 5f |,#0..h.BGT test_| 000058a0 61 6c 69 65 6e 5f 68 69 74 5f 6c 6f 6f 70 0d 03 |alien_hit_loop..| 000058b0 69 14 42 20 6f 76 65 72 5f 61 6c 69 65 6e 5f 68 |i.B over_alien_h| 000058c0 69 74 0d 03 6a 12 2e 6d 61 6e 5f 68 69 74 5f 61 |it..j..man_hit_a| 000058d0 6c 69 65 6e 0d 03 6b 1b 53 54 52 42 20 52 39 2c |lien..k.STRB R9,| 000058e0 5b 52 31 30 2c 23 26 34 30 5d 20 20 20 20 20 0d |[R10,#&40] .| 000058f0 03 6c 13 2e 6f 76 65 72 5f 61 6c 69 65 6e 5f 68 |.l..over_alien_h| 00005900 69 74 0d 03 6d 1b 4c 44 52 20 52 31 32 2c 5b 52 |it..m.LDR R12,[R| 00005910 31 30 2c 23 26 33 38 5d 20 20 20 20 20 0d 03 6e |10,#&38] ..n| 00005920 1b 41 44 44 20 52 31 31 2c 52 31 30 2c 23 26 31 |.ADD R11,R10,#&1| 00005930 30 30 20 20 20 20 20 20 0d 03 6f 1b 41 44 44 20 |00 ..o.ADD | 00005940 52 31 31 2c 52 31 31 2c 23 26 31 34 20 20 20 20 |R11,R11,#&14 | 00005950 20 20 20 0d 03 70 18 2e 74 65 73 74 5f 61 70 70 | ..p..test_app| 00005960 6c 65 5f 68 69 74 5f 6c 6f 6f 70 0d 03 71 1a 4c |le_hit_loop..q.L| 00005970 44 52 42 20 52 33 2c 5b 52 31 31 2c 23 26 30 5d |DRB R3,[R11,#&0]| 00005980 20 20 20 20 20 0d 03 72 1a 4c 44 52 42 20 52 34 | ..r.LDRB R4| 00005990 2c 5b 52 31 31 2c 23 26 32 5d 20 20 20 20 20 0d |,[R11,#&2] .| 000059a0 03 73 1a 4c 44 52 42 20 52 37 2c 5b 52 31 31 2c |.s.LDRB R7,[R11,| 000059b0 23 26 31 5d 20 20 20 20 20 0d 03 74 1a 4c 44 52 |#&1] ..t.LDR| 000059c0 42 20 52 38 2c 5b 52 31 31 2c 23 26 33 5d 20 20 |B R8,[R11,#&3] | 000059d0 20 20 20 0d 03 75 14 42 4c 20 63 68 65 63 6b 5f | ..u.BL check_| 000059e0 67 72 69 64 5f 63 6f 0d 03 76 1a 43 4d 50 20 52 |grid_co..v.CMP R| 000059f0 39 2c 23 31 20 20 20 20 20 20 20 20 20 20 20 20 |9,#1 | 00005a00 20 0d 03 77 15 42 45 51 20 6d 61 6e 5f 68 69 74 | ..w.BEQ man_hit| 00005a10 5f 61 70 70 6c 65 0d 03 78 1a 41 44 44 20 52 31 |_apple..x.ADD R1| 00005a20 31 2c 52 31 31 2c 23 32 38 20 20 20 20 20 20 20 |1,R11,#28 | 00005a30 0d 03 79 12 53 55 42 20 52 31 32 2c 52 31 32 2c |..y.SUB R12,R12,| 00005a40 23 31 0d 03 7a 0e 43 4d 50 20 52 31 32 2c 23 30 |#1..z.CMP R12,#0| 00005a50 0d 03 7b 1b 42 47 54 20 74 65 73 74 5f 61 70 70 |..{.BGT test_app| 00005a60 6c 65 5f 68 69 74 5f 6c 6f 6f 70 0d 03 7c 14 42 |le_hit_loop..|.B| 00005a70 20 6f 76 65 72 5f 61 70 70 6c 65 5f 68 69 74 0d | over_apple_hit.| 00005a80 03 7d 12 2e 6d 61 6e 5f 68 69 74 5f 61 70 70 6c |.}..man_hit_appl| 00005a90 65 0d 03 7e 1f 53 54 52 42 20 52 39 2c 5b 52 31 |e..~.STRB R9,[R1| 00005aa0 31 2c 23 34 5d 20 20 20 20 20 20 20 20 20 20 20 |1,#4] | 00005ab0 0d 03 7f 16 4c 44 52 42 20 52 39 2c 5b 52 31 30 |....LDRB R9,[R10| 00005ac0 2c 23 26 34 31 5d 0d 03 80 1f 41 44 44 20 52 39 |,#&41]....ADD R9| 00005ad0 2c 52 39 2c 23 31 20 20 20 20 20 20 20 20 20 20 |,R9,#1 | 00005ae0 20 20 20 20 20 0d 03 81 16 53 54 52 42 20 52 39 | ....STRB R9| 00005af0 2c 5b 52 31 30 2c 23 26 34 31 5d 0d 03 82 13 2e |,[R10,#&41].....| 00005b00 6f 76 65 72 5f 61 70 70 6c 65 5f 68 69 74 0d 03 |over_apple_hit..| 00005b10 83 15 4c 44 52 20 52 30 2c 5b 52 31 30 2c 23 26 |..LDR R0,[R10,#&| 00005b20 35 43 5d 0d 03 84 0e 4d 4f 56 20 52 31 35 2c 52 |5C]....MOV R15,R| 00005b30 30 0d 03 85 0f 2e 74 65 6d 70 5f 73 74 61 63 6b |0.....temp_stack| 00005b40 0d 03 86 0a 45 51 55 44 20 30 0d 03 87 0a 45 51 |....EQUD 0....EQ| 00005b50 55 44 20 30 0d 03 88 0a 45 51 55 44 20 30 0d 03 |UD 0....EQUD 0..| 00005b60 89 0a 45 51 55 44 20 30 0d 03 8a 12 2e 63 68 65 |..EQUD 0.....che| 00005b70 63 6b 5f 67 72 69 64 5f 63 6f 0d 03 8b 15 41 44 |ck_grid_co....AD| 00005b80 52 20 52 39 2c 74 65 6d 70 5f 73 74 61 63 6b 0d |R R9,temp_stack.| 00005b90 03 8c 13 53 54 52 42 20 52 31 2c 5b 52 39 2c 23 |...STRB R1,[R9,#| 00005ba0 31 5d 0d 03 8d 13 53 54 52 42 20 52 32 2c 5b 52 |1]....STRB R2,[R| 00005bb0 39 2c 23 32 5d 0d 03 8e 13 53 54 52 42 20 52 33 |9,#2]....STRB R3| 00005bc0 2c 5b 52 39 2c 23 33 5d 0d 03 8f 13 53 54 52 42 |,[R9,#3]....STRB| 00005bd0 20 52 34 2c 5b 52 39 2c 23 34 5d 0d 03 90 13 53 | R4,[R9,#4]....S| 00005be0 54 52 42 20 52 35 2c 5b 52 39 2c 23 35 5d 0d 03 |TRB R5,[R9,#5]..| 00005bf0 91 13 53 54 52 42 20 52 36 2c 5b 52 39 2c 23 36 |..STRB R6,[R9,#6| 00005c00 5d 0d 03 92 13 53 54 52 42 20 52 37 2c 5b 52 39 |]....STRB R7,[R9| 00005c10 2c 23 37 5d 0d 03 93 13 53 54 52 42 20 52 38 2c |,#7]....STRB R8,| 00005c20 5b 52 39 2c 23 38 5d 0d 03 94 0d 4d 4f 56 20 52 |[R9,#8]....MOV R| 00005c30 39 2c 23 30 0d 03 95 0d 43 4d 50 20 52 31 2c 52 |9,#0....CMP R1,R| 00005c40 33 0d 03 96 0c ec 51 20 52 39 2c 23 31 0d 03 97 |3.....Q R9,#1...| 00005c50 0d 43 4d 50 20 52 31 2c 52 34 0d 03 98 0c ec 51 |.CMP R1,R4.....Q| 00005c60 20 52 39 2c 23 31 0d 03 99 0d 43 4d 50 20 52 32 | R9,#1....CMP R2| 00005c70 2c 52 33 0d 03 9a 0c ec 51 20 52 39 2c 23 31 0d |,R3.....Q R9,#1.| 00005c80 03 9b 0d 43 4d 50 20 52 32 2c 52 34 0d 03 9c 0c |...CMP R2,R4....| 00005c90 ec 51 20 52 39 2c 23 31 0d 03 9d 0d 43 4d 50 20 |.Q R9,#1....CMP | 00005ca0 52 39 2c 23 30 0d 03 9e 12 42 45 51 20 6e 6f 5f |R9,#0....BEQ no_| 00005cb0 78 5f 6d 61 74 63 68 0d 03 9f 0d 4d 4f 56 20 52 |x_match....MOV R| 00005cc0 39 2c 23 30 0d 03 a0 0d 43 4d 50 20 52 35 2c 52 |9,#0....CMP R5,R| 00005cd0 37 0d 03 a1 0c ec 51 20 52 39 2c 23 31 0d 03 a2 |7.....Q R9,#1...| 00005ce0 0d 43 4d 50 20 52 35 2c 52 38 0d 03 a3 0c ec 51 |.CMP R5,R8.....Q| 00005cf0 20 52 39 2c 23 31 0d 03 a4 0d 43 4d 50 20 52 36 | R9,#1....CMP R6| 00005d00 2c 52 37 0d 03 a5 0c ec 51 20 52 39 2c 23 31 0d |,R7.....Q R9,#1.| 00005d10 03 a6 0d 43 4d 50 20 52 36 2c 52 38 0d 03 a7 0c |...CMP R6,R8....| 00005d20 ec 51 20 52 39 2c 23 31 0d 03 a8 0f 2e 6e 6f 5f |.Q R9,#1.....no_| 00005d30 78 5f 6d 61 74 63 68 0d 03 a9 0f 4d 4f 56 20 52 |x_match....MOV R| 00005d40 31 35 2c 52 31 34 0d 03 aa 09 41 4c 49 47 4e 0d |15,R14....ALIGN.| 00005d50 03 ab 09 2e 72 61 69 6e 0d 03 ac 0e 4d 4f 56 20 |....rain....MOV | 00005d60 52 31 30 2c 52 30 0d 03 ad 15 53 54 52 20 52 31 |R10,R0....STR R1| 00005d70 2c 5b 52 31 30 2c 23 26 35 30 5d 0d 03 ae 15 53 |,[R10,#&50]....S| 00005d80 54 52 20 52 32 2c 5b 52 31 30 2c 23 26 35 34 5d |TR R2,[R10,#&54]| 00005d90 0d 03 af 16 53 54 52 20 52 31 34 2c 5b 52 31 30 |....STR R14,[R10| 00005da0 2c 23 26 35 43 5d 0d 03 b0 0d 4d 4f 56 20 52 30 |,#&5C]....MOV R0| 00005db0 2c 23 30 0d 03 b1 0f 4d 4f 56 20 52 39 2c 23 26 |,#0....MOV R9,#&| 00005dc0 37 37 0d 03 b2 0f 4d 4f 56 20 52 36 2c 23 33 32 |77....MOV R6,#32| 00005dd0 30 0d 03 b3 0e 2e 72 61 69 6e 5f 6c 6f 6f 70 0d |0.....rain_loop.| 00005de0 03 b4 13 4c 44 52 42 20 52 35 2c 5b 52 32 2c 52 |...LDRB R5,[R2,R| 00005df0 33 5d 0d 03 b5 0f 43 4d 50 20 52 35 2c 23 26 37 |3]....CMP R5,#&7| 00005e00 37 0d 03 b6 11 42 4e 45 20 6f 76 65 72 5f 72 61 |7....BNE over_ra| 00005e10 69 6e 0d 03 b7 10 41 44 44 20 52 37 2c 52 33 2c |in....ADD R7,R3,| 00005e20 52 36 0d 03 b8 10 41 44 44 20 52 37 2c 52 37 2c |R6....ADD R7,R7,| 00005e30 52 36 0d 03 b9 13 4c 44 52 42 20 52 38 2c 5b 52 |R6....LDRB R8,[R| 00005e40 32 2c 52 37 5d 0d 03 ba 0f 43 4d 50 20 52 38 2c |2,R7]....CMP R8,| 00005e50 23 26 34 34 0d 03 bb 13 42 4e 45 20 73 6c 69 64 |#&44....BNE slid| 00005e60 65 5f 72 69 67 68 74 0d 03 bc 13 53 54 52 42 20 |e_right....STRB | 00005e70 52 38 2c 5b 52 32 2c 52 33 5d 0d 03 bd 13 53 54 |R8,[R2,R3]....ST| 00005e80 52 42 20 52 39 2c 5b 52 32 2c 52 37 5d 0d 03 be |RB R9,[R2,R7]...| 00005e90 0f 42 20 6f 76 65 72 5f 72 61 69 6e 0d 03 bf 10 |.B over_rain....| 00005ea0 2e 73 6c 69 64 65 5f 72 69 67 68 74 0d 03 c0 1d |.slide_right....| 00005eb0 53 55 42 20 52 37 2c 52 37 2c 52 36 20 20 20 20 |SUB R7,R7,R6 | 00005ec0 20 20 20 20 20 20 20 20 20 0d 03 c1 1d 41 44 44 | ....ADD| 00005ed0 20 52 37 2c 52 37 2c 23 31 20 20 20 20 20 20 20 | R7,R7,#1 | 00005ee0 20 20 20 20 20 20 0d 03 c2 13 4c 44 52 42 20 52 | ....LDRB R| 00005ef0 38 2c 5b 52 32 2c 52 37 5d 0d 03 c3 0f 43 4d 50 |8,[R2,R7]....CMP| 00005f00 20 52 38 2c 23 26 34 34 0d 03 c4 12 42 4e 45 20 | R8,#&44....BNE | 00005f10 73 6c 69 64 65 5f 6c 65 66 74 0d 03 c5 13 53 54 |slide_left....ST| 00005f20 52 42 20 52 38 2c 5b 52 32 2c 52 33 5d 0d 03 c6 |RB R8,[R2,R3]...| 00005f30 13 53 54 52 42 20 52 39 2c 5b 52 32 2c 52 37 5d |.STRB R9,[R2,R7]| 00005f40 0d 03 c7 0f 42 20 6f 76 65 72 5f 72 61 69 6e 0d |....B over_rain.| 00005f50 03 c8 0f 2e 73 6c 69 64 65 5f 6c 65 66 74 0d 03 |....slide_left..| 00005f60 c9 19 53 55 42 20 52 37 2c 52 37 2c 23 32 20 20 |..SUB R7,R7,#2 | 00005f70 20 20 20 20 20 20 20 0d 03 ca 13 4c 44 52 42 20 | ....LDRB | 00005f80 52 38 2c 5b 52 32 2c 52 37 5d 0d 03 cb 0f 43 4d |R8,[R2,R7]....CM| 00005f90 50 20 52 38 2c 23 26 34 34 0d 03 cc 11 42 4e 45 |P R8,#&44....BNE| 00005fa0 20 6f 76 65 72 5f 72 61 69 6e 0d 03 cd 13 53 54 | over_rain....ST| 00005fb0 52 42 20 52 38 2c 5b 52 32 2c 52 33 5d 0d 03 ce |RB R8,[R2,R3]...| 00005fc0 13 53 54 52 42 20 52 39 2c 5b 52 32 2c 52 37 5d |.STRB R9,[R2,R7]| 00005fd0 0d 03 cf 0e 2e 6f 76 65 72 5f 72 61 69 6e 0d 03 |.....over_rain..| 00005fe0 d0 10 53 55 42 20 52 33 2c 52 33 2c 23 34 0d 03 |..SUB R3,R3,#4..| 00005ff0 d1 0d 43 4d 50 20 52 33 2c 23 38 0d 03 d2 11 42 |..CMP R3,#8....B| 00006000 47 54 20 72 61 69 6e 5f 6c 6f 6f 70 0d 03 d3 0f |GT rain_loop....| 00006010 4d 4f 56 20 52 31 35 2c 52 31 34 0d 03 d4 0d 2e |MOV R15,R14.....| 00006020 72 61 69 6e 5f 76 67 61 0d 03 d5 0e 4d 4f 56 20 |rain_vga....MOV | 00006030 52 31 30 2c 52 30 0d 03 d6 15 53 54 52 20 52 31 |R10,R0....STR R1| 00006040 2c 5b 52 31 30 2c 23 26 35 30 5d 0d 03 d7 15 53 |,[R10,#&50]....S| 00006050 54 52 20 52 32 2c 5b 52 31 30 2c 23 26 35 34 5d |TR R2,[R10,#&54]| 00006060 0d 03 d8 16 53 54 52 20 52 31 34 2c 5b 52 31 30 |....STR R14,[R10| 00006070 2c 23 26 35 43 5d 0d 03 d9 20 4d 4f 56 20 52 30 |,#&5C]... MOV R0| 00006080 2c 23 32 33 39 20 20 20 20 20 20 20 20 20 20 20 |,#239 | 00006090 20 20 20 20 20 20 0d 03 da 20 4d 4f 56 20 52 39 | ... MOV R9| 000060a0 2c 23 26 37 37 20 20 20 20 20 20 20 20 20 20 20 |,#&77 | 000060b0 20 20 20 20 20 20 0d 03 db 0d 4d 4f 56 20 52 36 | ....MOV R6| 000060c0 2c 52 33 0d 03 dc 10 53 55 42 20 52 36 2c 52 36 |,R3....SUB R6,R6| 000060d0 2c 23 34 0d 03 dd 21 2e 72 61 69 6e 5f 76 65 72 |,#4...!.rain_ver| 000060e0 74 69 63 61 6c 5f 6c 6f 6f 70 5f 76 67 61 20 20 |tical_loop_vga | 000060f0 20 20 20 20 0d 03 de 20 53 55 42 20 52 36 2c 52 | ... SUB R6,R| 00006100 36 2c 23 36 34 30 20 20 20 20 20 20 20 20 20 20 |6,#640 | 00006110 20 20 20 20 0d 03 df 20 4d 4f 56 20 52 33 2c 52 | ... MOV R3,R| 00006120 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |6 | 00006130 20 20 20 20 0d 03 e0 20 53 55 42 20 52 31 31 2c | ... SUB R11,| 00006140 52 33 2c 23 33 32 30 20 20 20 20 20 20 20 20 20 |R3,#320 | 00006150 20 20 20 20 0d 03 e1 20 41 44 44 20 52 37 2c 52 | ... ADD R7,R| 00006160 33 2c 23 31 32 38 30 20 20 20 20 20 20 20 20 20 |3,#1280 | 00006170 20 20 20 20 0d 03 e2 20 53 55 42 20 52 31 32 2c | ... SUB R12,| 00006180 52 37 2c 23 33 32 30 20 20 20 20 20 20 20 20 20 |R7,#320 | 00006190 20 20 20 20 0d 03 e3 20 4d 4f 56 20 52 31 2c 23 | ... MOV R1,#| 000061a0 33 32 30 20 20 20 20 20 20 20 20 20 20 20 20 20 |320 | 000061b0 20 20 20 20 0d 03 e4 1d 2e 72 61 69 6e 5f 68 6f | .....rain_ho| 000061c0 72 69 7a 6f 6e 74 61 6c 5f 6c 6f 6f 70 5f 76 67 |rizontal_loop_vg| 000061d0 61 0d 03 e5 1f 53 55 42 20 52 33 2c 52 33 2c 23 |a....SUB R3,R3,#| 000061e0 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |4 | 000061f0 0d 03 e6 1f 53 55 42 20 52 37 2c 52 37 2c 23 34 |....SUB R7,R7,#4| 00006200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 00006210 03 e7 1f 53 55 42 20 52 31 31 2c 52 31 31 2c 23 |...SUB R11,R11,#| 00006220 34 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 03 |4 ..| 00006230 e8 1f 53 55 42 20 52 31 32 2c 52 31 32 2c 23 34 |..SUB R12,R12,#4| 00006240 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 03 e9 | ...| 00006250 13 4c 44 52 42 20 52 35 2c 5b 52 32 2c 52 33 5d |.LDRB R5,[R2,R3]| 00006260 0d 03 ea 0f 43 4d 50 20 52 35 2c 23 26 37 37 0d |....CMP R5,#&77.| 00006270 03 eb 15 42 4e 45 20 6f 76 65 72 5f 72 61 69 6e |...BNE over_rain| 00006280 5f 76 67 61 0d 03 ec 13 4c 44 52 42 20 52 38 2c |_vga....LDRB R8,| 00006290 5b 52 32 2c 52 37 5d 0d 03 ed 0f 43 4d 50 20 52 |[R2,R7]....CMP R| 000062a0 38 2c 23 26 34 34 0d 03 ee 17 42 4e 45 20 73 6c |8,#&44....BNE sl| 000062b0 69 64 65 5f 72 69 67 68 74 5f 76 67 61 0d 03 ef |ide_right_vga...| 000062c0 13 53 54 52 42 20 52 38 2c 5b 52 32 2c 52 33 5d |.STRB R8,[R2,R3]| 000062d0 0d 03 f0 14 53 54 52 42 20 52 38 2c 5b 52 32 2c |....STRB R8,[R2,| 000062e0 52 31 31 5d 0d 03 f1 13 53 54 52 42 20 52 39 2c |R11]....STRB R9,| 000062f0 5b 52 32 2c 52 37 5d 0d 03 f2 14 53 54 52 42 20 |[R2,R7]....STRB | 00006300 52 39 2c 5b 52 32 2c 52 31 32 5d 0d 03 f3 13 42 |R9,[R2,R12]....B| 00006310 20 6f 76 65 72 5f 72 61 69 6e 5f 76 67 61 0d 03 | over_rain_vga..| 00006320 f4 14 2e 73 6c 69 64 65 5f 72 69 67 68 74 5f 76 |...slide_right_v| 00006330 67 61 0d 03 f5 12 53 55 42 20 52 37 2c 52 37 2c |ga....SUB R7,R7,| 00006340 23 36 34 30 0d 03 f6 1f 53 55 42 20 52 31 32 2c |#640....SUB R12,| 00006350 52 31 32 2c 23 36 34 30 20 20 20 20 20 20 20 20 |R12,#640 | 00006360 20 20 20 0d 03 f7 1f 41 44 44 20 52 37 2c 52 37 | ....ADD R7,R7| 00006370 2c 23 31 20 20 20 20 20 20 20 20 20 20 20 20 20 |,#1 | 00006380 20 20 0d 03 f8 1f 41 44 44 20 52 31 32 2c 52 31 | ....ADD R12,R1| 00006390 32 2c 23 31 20 20 20 20 20 20 20 20 20 20 20 20 |2,#1 | 000063a0 20 0d 03 f9 13 4c 44 52 42 20 52 38 2c 5b 52 32 | ....LDRB R8,[R2| 000063b0 2c 52 37 5d 0d 03 fa 0f 43 4d 50 20 52 38 2c 23 |,R7]....CMP R8,#| 000063c0 26 34 34 0d 03 fb 16 42 4e 45 20 73 6c 69 64 65 |&44....BNE slide| 000063d0 5f 6c 65 66 74 5f 76 67 61 0d 03 fc 13 53 54 52 |_left_vga....STR| 000063e0 42 20 52 38 2c 5b 52 32 2c 52 33 5d 0d 03 fd 14 |B R8,[R2,R3]....| 000063f0 53 54 52 42 20 52 38 2c 5b 52 32 2c 52 31 31 5d |STRB R8,[R2,R11]| 00006400 0d 03 fe 13 53 54 52 42 20 52 39 2c 5b 52 32 2c |....STRB R9,[R2,| 00006410 52 37 5d 0d 03 ff 14 53 54 52 42 20 52 39 2c 5b |R7]....STRB R9,[| 00006420 52 32 2c 52 31 32 5d 0d 04 00 1f 53 55 42 20 52 |R2,R12]....SUB R| 00006430 37 2c 52 37 2c 23 31 20 20 20 20 20 20 20 20 20 |7,R7,#1 | 00006440 20 20 20 20 20 20 0d 04 01 1f 53 55 42 20 52 31 | ....SUB R1| 00006450 32 2c 52 31 32 2c 23 31 20 20 20 20 20 20 20 20 |2,R12,#1 | 00006460 20 20 20 20 20 0d 04 02 15 42 20 6f 76 65 72 5f | ....B over_| 00006470 72 61 69 6e 5f 76 67 61 5f 73 0d 04 03 13 2e 73 |rain_vga_s.....s| 00006480 6c 69 64 65 5f 6c 65 66 74 5f 76 67 61 0d 04 04 |lide_left_vga...| 00006490 1f 53 55 42 20 52 37 2c 52 37 2c 23 32 20 20 20 |.SUB R7,R7,#2 | 000064a0 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 05 1f | ....| 000064b0 53 55 42 20 52 31 32 2c 52 31 32 2c 23 32 20 20 |SUB R12,R12,#2 | 000064c0 20 20 20 20 20 20 20 20 20 20 20 0d 04 06 13 4c | ....L| 000064d0 44 52 42 20 52 38 2c 5b 52 32 2c 52 37 5d 0d 04 |DRB R8,[R2,R7]..| 000064e0 07 0f 43 4d 50 20 52 38 2c 23 26 34 34 0d 04 08 |..CMP R8,#&44...| 000064f0 1f 41 44 44 4e 45 20 52 37 2c 52 37 2c 23 31 20 |.ADDNE R7,R7,#1 | 00006500 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 09 1f | ....| 00006510 41 44 44 4e 45 20 52 31 32 2c 52 31 32 2c 23 31 |ADDNE R12,R12,#1| 00006520 20 20 20 20 20 20 20 20 20 20 20 0d 04 0a 17 42 | ....B| 00006530 4e 45 20 6f 76 65 72 5f 72 61 69 6e 5f 76 67 61 |NE over_rain_vga| 00006540 5f 73 0d 04 0b 13 53 54 52 42 20 52 38 2c 5b 52 |_s....STRB R8,[R| 00006550 32 2c 52 33 5d 0d 04 0c 14 53 54 52 42 20 52 38 |2,R3]....STRB R8| 00006560 2c 5b 52 32 2c 52 31 31 5d 0d 04 0d 13 53 54 52 |,[R2,R11]....STR| 00006570 42 20 52 39 2c 5b 52 32 2c 52 37 5d 0d 04 0e 14 |B R9,[R2,R7]....| 00006580 53 54 52 42 20 52 39 2c 5b 52 32 2c 52 31 32 5d |STRB R9,[R2,R12]| 00006590 0d 04 0f 1f 41 44 44 20 52 37 2c 52 37 2c 23 31 |....ADD R7,R7,#1| 000065a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d | .| 000065b0 04 10 1f 41 44 44 20 52 31 32 2c 52 31 32 2c 23 |...ADD R12,R12,#| 000065c0 31 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 |1 ..| 000065d0 11 14 2e 6f 76 65 72 5f 72 61 69 6e 5f 76 67 61 |...over_rain_vga| 000065e0 5f 73 0d 04 12 1f 41 44 44 20 52 37 2c 52 37 2c |_s....ADD R7,R7,| 000065f0 23 36 34 30 20 20 20 20 20 20 20 20 20 20 20 20 |#640 | 00006600 20 0d 04 13 14 41 44 44 20 52 31 32 2c 52 31 32 | ....ADD R12,R12| 00006610 2c 23 36 34 30 0d 04 14 12 2e 6f 76 65 72 5f 72 |,#640.....over_r| 00006620 61 69 6e 5f 76 67 61 0d 04 15 10 53 55 42 20 52 |ain_vga....SUB R| 00006630 31 2c 52 31 2c 23 34 0d 04 16 0d 43 4d 50 20 52 |1,R1,#4....CMP R| 00006640 31 2c 23 30 0d 04 17 20 42 4e 45 20 72 61 69 6e |1,#0... BNE rain| 00006650 5f 68 6f 72 69 7a 6f 6e 74 61 6c 5f 6c 6f 6f 70 |_horizontal_loop| 00006660 5f 76 67 61 0d 04 18 1d 53 55 42 20 52 33 2c 52 |_vga....SUB R3,R| 00006670 33 2c 23 36 34 30 20 20 20 20 20 20 20 20 20 20 |3,#640 | 00006680 20 0d 04 19 1d 53 55 42 20 52 37 2c 52 37 2c 23 | ....SUB R7,R7,#| 00006690 36 34 30 20 20 20 20 20 20 20 20 20 20 20 0d 04 |640 ..| 000066a0 1a 1d 53 55 42 20 52 31 31 2c 52 31 31 2c 23 36 |..SUB R11,R11,#6| 000066b0 34 30 20 20 20 20 20 20 20 20 20 0d 04 1b 1d 53 |40 ....S| 000066c0 55 42 20 52 31 32 2c 52 31 32 2c 23 36 34 30 20 |UB R12,R12,#640 | 000066d0 20 20 20 20 20 20 20 20 0d 04 1c 10 53 55 42 20 | ....SUB | 000066e0 52 30 2c 52 30 2c 23 31 0d 04 1d 0d 43 4d 50 20 |R0,R0,#1....CMP | 000066f0 52 30 2c 23 30 0d 04 1e 1e 42 4e 45 20 72 61 69 |R0,#0....BNE rai| 00006700 6e 5f 76 65 72 74 69 63 61 6c 5f 6c 6f 6f 70 5f |n_vertical_loop_| 00006710 76 67 61 0d 04 1f 0f 4d 4f 56 20 52 31 35 2c 52 |vga....MOV R15,R| 00006720 31 34 0d 04 20 09 41 4c 49 47 4e 0d 04 21 0a 2e |14.. .ALIGN..!..| 00006730 61 70 70 6c 65 0d 04 22 0e 4d 4f 56 20 52 31 30 |apple..".MOV R10| 00006740 2c 52 30 0d 04 23 15 53 54 52 20 52 31 2c 5b 52 |,R0..#.STR R1,[R| 00006750 31 30 2c 23 26 35 30 5d 0d 04 24 15 53 54 52 20 |10,#&50]..$.STR | 00006760 52 32 2c 5b 52 31 30 2c 23 26 35 34 5d 0d 04 25 |R2,[R10,#&54]..%| 00006770 16 53 54 52 20 52 31 34 2c 5b 52 31 30 2c 23 26 |.STR R14,[R10,#&| 00006780 35 43 5d 0d 04 26 0d 4d 4f 56 20 52 30 2c 23 30 |5C]..&.MOV R0,#0| 00006790 0d 04 27 1b 53 54 52 20 52 30 2c 5b 52 31 30 2c |..'.STR R0,[R10,| 000067a0 23 26 33 34 5d 20 20 20 20 20 20 0d 04 28 14 2e |#&34] ..(..| 000067b0 6d 61 69 6e 5f 61 70 70 6c 65 5f 6c 6f 6f 70 0d |main_apple_loop.| 000067c0 04 29 17 42 4c 20 73 74 61 72 74 5f 61 70 70 6c |.).BL start_appl| 000067d0 65 5f 6d 6f 76 65 0d 04 2a 18 42 4c 20 61 70 70 |e_move..*.BL app| 000067e0 6c 65 5f 6d 6f 76 69 6e 67 5f 6c 6f 6f 70 0d 04 |le_moving_loop..| 000067f0 2b 15 4c 44 52 20 52 30 2c 5b 52 31 30 2c 23 26 |+.LDR R0,[R10,#&| 00006800 33 34 5d 0d 04 2c 10 41 44 44 20 52 30 2c 52 30 |34]..,.ADD R0,R0| 00006810 2c 23 31 0d 04 2d 15 53 54 52 20 52 30 2c 5b 52 |,#1..-.STR R0,[R| 00006820 31 30 2c 23 26 33 34 5d 0d 04 2e 15 4c 44 52 20 |10,#&34]....LDR | 00006830 52 31 2c 5b 52 31 30 2c 23 26 33 38 5d 0d 04 2f |R1,[R10,#&38]../| 00006840 0d 43 4d 50 20 52 30 2c 52 31 0d 04 30 17 42 4c |.CMP R0,R1..0.BL| 00006850 54 20 6d 61 69 6e 5f 61 70 70 6c 65 5f 6c 6f 6f |T main_apple_loo| 00006860 70 0d 04 31 15 4c 44 52 20 52 30 2c 5b 52 31 30 |p..1.LDR R0,[R10| 00006870 2c 23 26 35 43 5d 0d 04 32 0e 4d 4f 56 20 52 31 |,#&5C]..2.MOV R1| 00006880 35 2c 52 30 0d 04 33 15 2e 73 74 61 72 74 5f 61 |5,R0..3..start_a| 00006890 70 70 6c 65 5f 6d 6f 76 65 0d 04 34 15 4c 44 52 |pple_move..4.LDR| 000068a0 20 52 30 2c 5b 52 31 30 2c 23 26 33 34 5d 0d 04 | R0,[R10,#&34]..| 000068b0 35 1c 4d 4f 56 20 52 31 2c 23 32 38 20 20 20 20 |5.MOV R1,#28 | 000068c0 20 20 20 20 20 20 20 20 20 20 0d 04 36 10 4d 55 | ..6.MU| 000068d0 4c 20 52 32 2c 52 31 2c 52 30 0d 04 37 1c 41 44 |L R2,R1,R0..7.AD| 000068e0 44 20 52 32 2c 52 32 2c 23 26 31 30 30 20 20 20 |D R2,R2,#&100 | 000068f0 20 20 20 20 20 20 0d 04 38 1c 41 44 44 20 52 31 | ..8.ADD R1| 00006900 31 2c 52 32 2c 52 31 30 20 20 20 20 20 20 20 20 |1,R2,R10 | 00006910 20 20 0d 04 39 1c 4c 44 52 42 20 52 32 2c 5b 52 | ..9.LDRB R2,[R| 00006920 31 31 2c 23 26 31 38 5d 20 20 20 20 20 20 0d 04 |11,#&18] ..| 00006930 3a 0d 43 4d 50 20 52 32 2c 23 30 0d 04 3b 12 42 |:.CMP R2,#0..;.B| 00006940 4e 45 20 64 65 61 64 5f 61 70 70 6c 65 0d 04 3c |NE dead_apple..<| 00006950 13 4c 44 52 20 52 32 2c 5b 52 31 31 2c 23 38 5d |.LDR R2,[R11,#8]| 00006960 0d 04 3d 0d 43 4d 50 20 52 32 2c 23 30 0d 04 3e |..=.CMP R2,#0..>| 00006970 19 42 4e 45 20 6f 75 74 5f 6f 66 5f 61 70 70 6c |.BNE out_of_appl| 00006980 65 5f 6d 6f 76 65 0d 04 3f 1c 4d 4f 56 20 52 34 |e_move..?.MOV R4| 00006990 2c 23 31 33 20 20 20 20 20 20 20 20 20 20 20 20 |,#13 | 000069a0 20 20 0d 04 40 1c 4d 4f 56 20 52 31 32 2c 23 31 | ..@.MOV R12,#1| 000069b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 | ..| 000069c0 41 0d 4d 4f 56 20 52 35 2c 23 31 0d 04 42 0d 4d |A.MOV R5,#1..B.M| 000069d0 4f 56 20 52 36 2c 23 30 0d 04 43 0d 4d 4f 56 20 |OV R6,#0..C.MOV | 000069e0 52 33 2c 23 34 0d 04 44 1c 4c 44 52 20 52 38 2c |R3,#4..D.LDR R8,| 000069f0 5b 52 31 31 2c 23 26 30 5d 20 20 20 20 20 20 20 |[R11,#&0] | 00006a00 20 0d 04 45 1c 4c 44 52 20 52 39 2c 5b 52 31 31 | ..E.LDR R9,[R11| 00006a10 2c 23 26 34 5d 20 20 20 20 20 20 20 20 0d 04 46 |,#&4] ..F| 00006a20 1b 4c 44 52 20 52 30 2c 5b 52 31 30 2c 23 26 35 |.LDR R0,[R10,#&5| 00006a30 34 5d 20 20 20 20 20 20 0d 04 47 1b 4d 4f 56 20 |4] ..G.MOV | 00006a40 52 38 2c 52 38 2c 4c 53 52 20 23 32 20 20 20 20 |R8,R8,LSR #2 | 00006a50 20 20 20 0d 04 48 0f 4d 4f 56 20 52 31 2c 23 39 | ..H.MOV R1,#9| 00006a60 35 36 0d 04 49 0f 4d 4f 56 20 52 32 2c 23 33 32 |56..I.MOV R2,#32| 00006a70 30 0d 04 4a 1b 53 55 42 20 52 39 2c 52 31 2c 52 |0..J.SUB R9,R1,R| 00006a80 39 20 20 20 20 20 20 20 20 20 20 20 0d 04 4b 1b |9 ..K.| 00006a90 4d 4f 56 20 52 39 2c 52 39 2c 4c 53 52 20 23 32 |MOV R9,R9,LSR #2| 00006aa0 2d 56 25 20 20 20 20 0d 04 4c 1b 4d 55 4c 20 52 |-V% ..L.MUL R| 00006ab0 37 2c 52 39 2c 52 32 20 20 20 20 20 20 20 20 20 |7,R9,R2 | 00006ac0 20 20 0d 04 4d 1b 41 44 44 20 52 37 2c 52 38 2c | ..M.ADD R7,R8,| 00006ad0 52 37 20 20 20 20 20 20 20 20 20 20 20 0d 04 4e |R7 ..N| 00006ae0 1b 41 44 44 20 52 37 2c 52 37 2c 52 30 20 20 20 |.ADD R7,R7,R0 | 00006af0 20 20 20 20 20 20 20 20 0d 04 4f 1b 41 44 44 20 | ..O.ADD | 00006b00 52 37 2c 52 37 2c 23 33 32 30 20 20 20 20 20 20 |R7,R7,#320 | 00006b10 20 20 20 0d 04 50 1b 41 44 44 20 52 37 2c 52 37 | ..P.ADD R7,R7| 00006b20 2c 52 36 20 20 20 20 20 20 20 20 20 20 20 0d 04 |,R6 ..| 00006b30 51 0d 4d 4f 56 20 52 31 2c 23 30 0d 04 52 0f 2e |Q.MOV R1,#0..R..| 00006b40 61 70 70 5f 63 68 5f 75 5f 6c 0d 04 53 10 4c 44 |app_ch_u_l..S.LD| 00006b50 52 42 20 52 32 2c 5b 52 37 5d 0d 04 54 1b 43 4d |RB R2,[R7]..T.CM| 00006b60 50 20 52 32 2c 23 36 38 20 20 20 20 20 20 20 20 |P R2,#68 | 00006b70 20 20 20 20 20 0d 04 55 1b 4d 4f 56 4e 45 20 52 | ..U.MOVNE R| 00006b80 34 2c 23 30 20 20 20 20 20 20 20 20 20 20 20 20 |4,#0 | 00006b90 0d 04 56 11 41 44 44 20 52 37 2c 52 37 2c 52 31 |..V.ADD R7,R7,R1| 00006ba0 32 0d 04 57 10 41 44 44 20 52 31 2c 52 31 2c 52 |2..W.ADD R1,R1,R| 00006bb0 35 0d 04 58 1b 43 4d 50 20 52 31 2c 23 31 32 20 |5..X.CMP R1,#12 | 00006bc0 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 59 12 | ..Y.| 00006bd0 42 4e 45 20 61 70 70 5f 63 68 5f 75 5f 6c 0d 04 |BNE app_ch_u_l..| 00006be0 5a 0d 43 4d 50 20 52 34 2c 23 30 0d 04 5b 1a 42 |Z.CMP R4,#0..[.B| 00006bf0 45 51 20 6f 75 74 5f 6f 66 5f 61 70 70 6c 65 5f |EQ out_of_apple_| 00006c00 63 68 65 63 6b 0d 04 5c 1b 4c 44 52 42 20 52 38 |check..\.LDRB R8| 00006c10 2c 5b 52 31 31 2c 23 26 31 34 5d 20 20 20 20 20 |,[R11,#&14] | 00006c20 0d 04 5d 1b 4c 44 52 42 20 52 39 2c 5b 52 31 31 |..].LDRB R9,[R11| 00006c30 2c 23 26 31 35 5d 20 20 20 20 20 0d 04 5e 1b 53 |,#&15] ..^.S| 00006c40 55 42 20 52 39 2c 52 39 2c 23 31 20 20 20 20 20 |UB R9,R9,#1 | 00006c50 20 20 20 20 20 20 0d 04 5f 1b 4c 44 52 42 20 52 | .._.LDRB R| 00006c60 35 2c 5b 52 31 30 2c 23 26 33 30 5d 20 20 20 20 |5,[R10,#&30] | 00006c70 20 0d 04 60 1b 4c 44 52 42 20 52 36 2c 5b 52 31 | ..`.LDRB R6,[R1| 00006c80 30 2c 23 26 33 31 5d 20 20 20 20 20 0d 04 61 1b |0,#&31] ..a.| 00006c90 4c 44 52 42 20 52 37 2c 5b 52 31 30 2c 23 26 33 |LDRB R7,[R10,#&3| 00006ca0 32 5d 20 20 20 20 20 0d 04 62 1b 4c 44 52 42 20 |2] ..b.LDRB | 00006cb0 52 32 2c 5b 52 31 30 2c 23 26 33 33 5d 20 20 20 |R2,[R10,#&33] | 00006cc0 20 20 0d 04 63 1b 4d 4f 56 20 52 30 2c 23 30 20 | ..c.MOV R0,#0 | 00006cd0 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 64 | ..d| 00006ce0 0d 43 4d 50 20 52 38 2c 52 35 0d 04 65 12 41 44 |.CMP R8,R5..e.AD| 00006cf0 44 4e 45 20 52 30 2c 52 30 2c 23 31 0d 04 66 0d |DNE R0,R0,#1..f.| 00006d00 43 4d 50 20 52 38 2c 52 37 0d 04 67 12 41 44 44 |CMP R8,R7..g.ADD| 00006d10 4e 45 20 52 30 2c 52 30 2c 23 31 0d 04 68 0d 43 |NE R0,R0,#1..h.C| 00006d20 4d 50 20 52 30 2c 23 32 0d 04 69 1a 42 45 51 20 |MP R0,#2..i.BEQ | 00006d30 6f 75 74 5f 6f 66 5f 61 70 70 6c 65 5f 63 68 65 |out_of_apple_che| 00006d40 63 6b 0d 04 6a 1b 4d 4f 56 20 52 30 2c 23 30 20 |ck..j.MOV R0,#0 | 00006d50 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 6b | ..k| 00006d60 0d 43 4d 50 20 52 39 2c 52 36 0d 04 6c 12 41 44 |.CMP R9,R6..l.AD| 00006d70 44 4e 45 20 52 30 2c 52 30 2c 23 31 0d 04 6d 0d |DNE R0,R0,#1..m.| 00006d80 43 4d 50 20 52 39 2c 52 32 0d 04 6e 12 41 44 44 |CMP R9,R2..n.ADD| 00006d90 4e 45 20 52 30 2c 52 30 2c 23 31 0d 04 6f 0d 43 |NE R0,R0,#1..o.C| 00006da0 4d 50 20 52 30 2c 23 32 0d 04 70 1c 4d 4f 56 4e |MP R0,#2..p.MOVN| 00006db0 45 20 52 34 2c 23 30 20 20 20 20 20 20 20 20 20 |E R4,#0 | 00006dc0 20 20 20 20 0d 04 71 17 2e 6f 75 74 5f 6f 66 5f | ..q..out_of_| 00006dd0 61 70 70 6c 65 5f 63 68 65 63 6b 0d 04 72 1d 53 |apple_check..r.S| 00006de0 54 52 20 52 34 2c 5b 52 31 31 2c 23 26 38 5d 20 |TR R4,[R11,#&8] | 00006df0 20 20 20 20 20 20 20 20 0d 04 73 16 2e 6f 75 74 | ..s..out| 00006e00 5f 6f 66 5f 61 70 70 6c 65 5f 6d 6f 76 65 0d 04 |_of_apple_move..| 00006e10 74 0f 4d 4f 56 20 52 31 35 2c 52 31 34 0d 04 75 |t.MOV R15,R14..u| 00006e20 0f 2e 64 65 61 64 5f 61 70 70 6c 65 0d 04 76 0d |..dead_apple..v.| 00006e30 43 4d 50 20 52 32 2c 23 38 0d 04 77 19 ec 51 20 |CMP R2,#8..w..Q | 00006e40 52 31 35 2c 52 31 34 20 20 20 20 20 20 20 20 20 |R15,R14 | 00006e50 20 20 0d 04 78 11 41 44 44 20 52 35 2c 52 32 2c | ..x.ADD R5,R2,| 00006e60 23 34 39 0d 04 79 10 41 44 44 20 52 32 2c 52 32 |#49..y.ADD R2,R2| 00006e70 2c 23 31 0d 04 7a 0d 4d 4f 56 20 52 30 2c 23 30 |,#1..z.MOV R0,#0| 00006e80 0d 04 7b 1c 53 54 52 20 52 30 2c 5b 52 31 31 2c |..{.STR R0,[R11,| 00006e90 23 26 31 34 5d 20 20 20 20 20 20 20 0d 04 7c 1c |#&14] ..|.| 00006ea0 53 54 52 42 20 52 32 2c 5b 52 31 31 2c 23 26 31 |STRB R2,[R11,#&1| 00006eb0 38 5d 20 20 20 20 20 20 0d 04 7d 17 41 44 52 20 |8] ..}.ADR | 00006ec0 52 36 2c 61 70 70 6c 65 5f 73 70 72 69 74 65 0d |R6,apple_sprite.| 00006ed0 04 7e 13 53 54 52 42 20 52 35 2c 5b 52 36 2c 23 |.~.STRB R5,[R6,#| 00006ee0 33 5d 0d 04 7f 1c 4c 44 52 20 52 38 2c 5b 52 31 |3]....LDR R8,[R1| 00006ef0 31 2c 23 26 30 5d 20 20 20 20 20 20 20 20 0d 04 |1,#&0] ..| 00006f00 80 1c 4c 44 52 20 52 39 2c 5b 52 31 31 2c 23 26 |..LDR R9,[R11,#&| 00006f10 34 5d 20 20 20 20 20 20 20 20 0d 04 81 1c 42 20 |4] ....B | 00006f20 64 65 61 64 5f 61 70 70 6c 65 5f 70 6c 6f 74 5f |dead_apple_plot_| 00006f30 73 70 72 69 74 65 0d 04 82 16 2e 61 70 70 6c 65 |sprite.....apple| 00006f40 5f 6d 6f 76 69 6e 67 5f 6c 6f 6f 70 0d 04 83 1b |_moving_loop....| 00006f50 4c 44 52 42 20 52 32 2c 5b 52 31 31 2c 23 26 31 |LDRB R2,[R11,#&1| 00006f60 38 5d 20 20 20 20 20 0d 04 84 0d 43 4d 50 20 52 |8] ....CMP R| 00006f70 32 2c 23 30 0d 04 85 1b 4d 4f 56 4e 45 20 52 31 |2,#0....MOVNE R1| 00006f80 35 2c 52 31 34 20 20 20 20 20 20 20 20 20 20 0d |5,R14 .| 00006f90 04 86 1c 4c 44 52 20 52 34 2c 5b 52 31 31 2c 23 |...LDR R4,[R11,#| 00006fa0 26 38 5d 20 20 20 20 20 20 20 20 0d 04 87 0d 43 |&8] ....C| 00006fb0 4d 50 20 52 34 2c 23 30 0d 04 88 0c ec 51 20 52 |MP R4,#0.....Q R| 00006fc0 37 2c 23 30 0d 04 89 12 53 55 42 4e 45 20 52 34 |7,#0....SUBNE R4| 00006fd0 2c 52 34 2c 23 31 0d 04 8a 14 53 54 52 20 52 34 |,R4,#1....STR R4| 00006fe0 2c 5b 52 31 31 2c 23 26 38 5d 0d 04 8b 19 ec 51 |,[R11,#&8].....Q| 00006ff0 20 52 35 2c 23 34 39 20 20 20 20 20 20 20 20 20 | R5,#49 | 00007000 20 20 20 0d 04 8c 1a 42 45 51 20 6f 75 74 5f 61 | ....BEQ out_a| 00007010 70 70 6c 65 5f 6d 6f 76 65 6d 65 6e 74 0d 04 8d |pple_movement...| 00007020 1c 43 4d 50 20 52 34 2c 23 31 32 20 20 20 20 20 |.CMP R4,#12 | 00007030 20 20 20 20 20 20 20 20 20 0d 04 8e 19 ec 51 20 | .....Q | 00007040 52 37 2c 23 30 20 20 20 20 20 20 20 20 20 20 20 |R7,#0 | 00007050 20 20 0d 04 8f 0f 4d 4f 56 4e 45 20 52 37 2c 23 | ....MOVNE R7,#| 00007060 34 0d 04 90 1d 42 4e 45 20 6f 76 65 72 5f 61 70 |4....BNE over_ap| 00007070 70 6c 65 5f 66 69 72 73 74 5f 6d 6f 76 65 0d 04 |ple_first_move..| 00007080 91 1c 4c 44 52 20 52 33 2c 5b 52 31 31 2c 23 26 |..LDR R3,[R11,#&| 00007090 31 30 5d 20 20 20 20 20 20 20 0d 04 92 1c 4c 44 |10] ....LD| 000070a0 52 42 20 52 39 2c 5b 52 31 31 2c 23 26 31 35 5d |RB R9,[R11,#&15]| 000070b0 20 20 20 20 20 20 0d 04 93 10 53 55 42 20 52 39 | ....SUB R9| 000070c0 2c 52 39 2c 23 31 0d 04 94 1c 53 54 52 42 20 52 |,R9,#1....STRB R| 000070d0 39 2c 5b 52 31 31 2c 23 26 31 37 5d 20 20 20 20 |9,[R11,#&17] | 000070e0 20 20 0d 04 95 1a 2e 6f 76 65 72 5f 61 70 70 6c | .....over_appl| 000070f0 65 5f 66 69 72 73 74 5f 6d 6f 76 65 0d 04 96 0d |e_first_move....| 00007100 43 4d 50 20 52 34 2c 23 30 0d 04 97 1c 42 4e 45 |CMP R4,#0....BNE| 00007110 20 6f 76 65 72 5f 61 70 70 6c 65 5f 6c 61 73 74 | over_apple_last| 00007120 5f 6d 6f 76 65 0d 04 98 1c 4c 44 52 42 20 52 39 |_move....LDRB R9| 00007130 2c 5b 52 31 31 2c 23 26 31 37 5d 20 20 20 20 20 |,[R11,#&17] | 00007140 20 0d 04 99 1c 53 54 52 42 20 52 39 2c 5b 52 31 | ....STRB R9,[R1| 00007150 31 2c 23 26 31 35 5d 20 20 20 20 20 20 0d 04 9a |1,#&15] ...| 00007160 19 2e 6f 76 65 72 5f 61 70 70 6c 65 5f 6c 61 73 |..over_apple_las| 00007170 74 5f 6d 6f 76 65 0d 04 9b 1c 4d 4f 56 20 52 35 |t_move....MOV R5| 00007180 2c 23 35 30 20 20 20 20 20 20 20 20 20 20 20 20 |,#50 | 00007190 20 20 0d 04 9c 14 4c 44 52 20 52 39 2c 5b 52 31 | ....LDR R9,[R1| 000071a0 31 2c 23 26 34 5d 0d 04 9d 10 53 55 42 20 52 39 |1,#&4]....SUB R9| 000071b0 2c 52 39 2c 52 37 0d 04 9e 0e 4d 4f 56 20 52 35 |,R9,R7....MOV R5| 000071c0 2c 23 35 30 0d 04 9f 14 53 54 52 20 52 39 2c 5b |,#50....STR R9,[| 000071d0 52 31 31 2c 23 26 34 5d 0d 04 a0 17 2e 6f 75 74 |R11,#&4].....out| 000071e0 5f 61 70 70 6c 65 5f 6d 6f 76 65 6d 65 6e 74 0d |_apple_movement.| 000071f0 04 a1 13 4c 44 52 20 52 38 2c 5b 52 31 31 2c 23 |...LDR R8,[R11,#| 00007200 30 5d 0d 04 a2 13 4c 44 52 20 52 39 2c 5b 52 31 |0]....LDR R9,[R1| 00007210 31 2c 23 34 5d 0d 04 a3 17 41 44 52 20 52 36 2c |1,#4]....ADR R6,| 00007220 61 70 70 6c 65 5f 73 70 72 69 74 65 0d 04 a4 13 |apple_sprite....| 00007230 53 54 52 42 20 52 35 2c 5b 52 36 2c 23 33 5d 0d |STRB R5,[R6,#3].| 00007240 04 a5 1b 2e 64 65 61 64 5f 61 70 70 6c 65 5f 70 |....dead_apple_p| 00007250 6c 6f 74 5f 73 70 72 69 74 65 0d 04 a6 0f 4d 4f |lot_sprite....MO| 00007260 56 20 52 30 2c 23 26 33 34 0d 04 a7 1d 41 44 44 |V R0,#&34....ADD| 00007270 20 52 30 2c 52 30 2c 23 26 31 30 30 20 20 20 20 | R0,R0,#&100 | 00007280 20 20 20 20 20 20 0d 04 a8 1d 4c 44 52 20 52 31 | ....LDR R1| 00007290 2c 5b 52 31 30 2c 23 26 35 30 5d 20 20 20 20 20 |,[R10,#&50] | 000072a0 20 20 20 0d 04 a9 1d 41 44 52 20 52 32 2c 61 70 | ....ADR R2,ap| 000072b0 70 6c 65 5f 73 70 72 69 74 65 20 20 20 20 20 20 |ple_sprite | 000072c0 0d 04 aa 1d 4d 4f 56 20 52 33 2c 52 38 20 20 20 |....MOV R3,R8 | 000072d0 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 04 ab | ...| 000072e0 1d 4d 4f 56 20 52 34 2c 52 39 20 20 20 20 20 20 |.MOV R4,R9 | 000072f0 20 20 20 20 20 20 20 20 20 20 0d 04 ac 1d 4d 4f | ....MO| 00007300 56 20 52 35 2c 23 26 30 20 20 20 20 20 20 20 20 |V R5,#&0 | 00007310 20 20 20 20 20 20 20 0d 04 ad 1d 41 44 52 20 52 | ....ADR R| 00007320 36 2c 61 70 70 6c 65 5f 73 63 61 6c 65 20 20 20 |6,apple_scale | 00007330 20 20 20 20 0d 04 ae 1d 4d 4f 56 20 52 37 2c 23 | ....MOV R7,#| 00007340 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |0 | 00007350 20 0d 04 af 15 53 57 49 20 22 4f 53 5f 53 70 72 | ....SWI "OS_Spr| 00007360 69 74 65 4f 70 22 0d 04 b0 0f 4d 4f 56 20 52 31 |iteOp"....MOV R1| 00007370 35 2c 52 31 34 0d 04 b1 11 2e 61 70 70 6c 65 5f |5,R14.....apple_| 00007380 73 70 72 69 74 65 0d 04 b2 0e 45 51 55 53 20 22 |sprite....EQUS "| 00007390 61 70 70 22 0d 04 b3 0b 45 51 55 42 20 34 39 0d |app"....EQUB 49.| 000073a0 04 b4 0a 45 51 55 42 20 30 0d 04 b5 0a 45 51 55 |...EQUB 0....EQU| 000073b0 42 20 30 0d 04 b6 0a 45 51 55 42 20 30 0d 04 b7 |B 0....EQUB 0...| 000073c0 09 41 4c 49 47 4e 0d 04 b8 10 2e 61 70 70 6c 65 |.ALIGN.....apple| 000073d0 5f 73 63 61 6c 65 0d 04 b9 0a 45 51 55 44 20 31 |_scale....EQUD 1| 000073e0 0d 04 ba 0d 45 51 55 44 20 31 2b 56 25 0d 04 bb |....EQUD 1+V%...| 000073f0 0a 45 51 55 44 20 31 0d 04 bc 0a 45 51 55 44 20 |.EQUD 1....EQUD | 00007400 31 0d 04 bd 0a 2e 61 6c 69 65 6e 0d 04 be 0e 4d |1.....alien....M| 00007410 4f 56 20 52 31 30 2c 52 30 0d 04 bf 15 53 54 52 |OV R10,R0....STR| 00007420 20 52 31 2c 5b 52 31 30 2c 23 26 35 30 5d 0d 04 | R1,[R10,#&50]..| 00007430 c0 15 53 54 52 20 52 32 2c 5b 52 31 30 2c 23 26 |..STR R2,[R10,#&| 00007440 35 34 5d 0d 04 c1 16 53 54 52 20 52 31 34 2c 5b |54]....STR R14,[| 00007450 52 31 30 2c 23 26 35 43 5d 0d 04 c2 0d 4d 4f 56 |R10,#&5C]....MOV| 00007460 20 52 30 2c 23 30 0d 04 c3 1b 53 54 52 20 52 30 | R0,#0....STR R0| 00007470 2c 5b 52 31 30 2c 23 26 32 34 5d 20 20 20 20 20 |,[R10,#&24] | 00007480 20 0d 04 c4 14 2e 6d 61 69 6e 5f 61 6c 69 65 6e | .....main_alien| 00007490 5f 6c 6f 6f 70 0d 04 c5 17 42 4c 20 73 74 61 72 |_loop....BL star| 000074a0 74 5f 61 6c 69 65 6e 5f 6d 6f 76 65 0d 04 c6 18 |t_alien_move....| 000074b0 42 4c 20 61 6c 69 65 6e 5f 6d 6f 76 69 6e 67 5f |BL alien_moving_| 000074c0 6c 6f 6f 70 0d 04 c7 15 4c 44 52 20 52 30 2c 5b |loop....LDR R0,[| 000074d0 52 31 30 2c 23 26 32 34 5d 0d 04 c8 10 41 44 44 |R10,#&24]....ADD| 000074e0 20 52 30 2c 52 30 2c 23 31 0d 04 c9 15 53 54 52 | R0,R0,#1....STR| 000074f0 20 52 30 2c 5b 52 31 30 2c 23 26 32 34 5d 0d 04 | R0,[R10,#&24]..| 00007500 ca 15 4c 44 52 20 52 31 2c 5b 52 31 30 2c 23 26 |..LDR R1,[R10,#&| 00007510 32 30 5d 0d 04 cb 0d 43 4d 50 20 52 30 2c 52 31 |20]....CMP R0,R1| 00007520 0d 04 cc 17 42 4c 54 20 6d 61 69 6e 5f 61 6c 69 |....BLT main_ali| 00007530 65 6e 5f 6c 6f 6f 70 0d 04 cd 15 4c 44 52 20 52 |en_loop....LDR R| 00007540 30 2c 5b 52 31 30 2c 23 26 35 43 5d 0d 04 ce 0e |0,[R10,#&5C]....| 00007550 4d 4f 56 20 52 31 35 2c 52 30 0d 04 cf 15 2e 73 |MOV R15,R0.....s| 00007560 74 61 72 74 5f 61 6c 69 65 6e 5f 6d 6f 76 65 0d |tart_alien_move.| 00007570 04 d0 16 53 54 52 20 52 31 34 2c 5b 52 31 30 2c |...STR R14,[R10,| 00007580 23 26 35 38 5d 0d 04 d1 15 4c 44 52 20 52 30 2c |#&58]....LDR R0,| 00007590 5b 52 31 30 2c 23 26 32 34 5d 0d 04 d2 1c 4d 4f |[R10,#&24]....MO| 000075a0 56 20 52 31 2c 23 33 32 20 20 20 20 20 20 20 20 |V R1,#32 | 000075b0 20 20 20 20 20 20 0d 04 d3 10 4d 55 4c 20 52 32 | ....MUL R2| 000075c0 2c 52 31 2c 52 30 0d 04 d4 1c 41 44 44 20 52 32 |,R1,R0....ADD R2| 000075d0 2c 52 32 2c 23 26 36 30 20 20 20 20 20 20 20 20 |,R2,#&60 | 000075e0 20 20 0d 04 d5 1c 41 44 44 20 52 31 31 2c 52 32 | ....ADD R11,R2| 000075f0 2c 52 31 30 20 20 20 20 20 20 20 20 20 20 0d 04 |,R10 ..| 00007600 d6 13 4c 44 52 20 52 32 2c 5b 52 31 31 2c 23 38 |..LDR R2,[R11,#8| 00007610 5d 0d 04 d7 0d 43 4d 50 20 52 32 2c 23 30 0d 04 |]....CMP R2,#0..| 00007620 d8 19 42 4e 45 20 6f 75 74 5f 6f 66 5f 61 6c 69 |..BNE out_of_ali| 00007630 65 6e 5f 6d 6f 76 65 0d 04 d9 1b 4c 44 52 42 20 |en_move....LDRB | 00007640 52 30 2c 5b 52 31 31 2c 23 26 31 34 5d 20 20 20 |R0,[R11,#&14] | 00007650 20 20 0d 04 da 0d 43 4d 50 20 52 30 2c 23 38 0d | ....CMP R0,#8.| 00007660 04 db 1b 42 47 54 20 73 65 74 5f 75 70 5f 72 6e |...BGT set_up_rn| 00007670 64 5f 73 65 71 75 65 6e 63 65 0d 04 dc 0d 43 4d |d_sequence....CM| 00007680 50 20 52 30 2c 23 31 0d 04 dd 17 42 45 51 20 73 |P R0,#1....BEQ s| 00007690 65 74 5f 61 6c 69 65 6e 5f 68 6f 72 69 7a 0d 04 |et_alien_horiz..| 000076a0 de 0d 43 4d 50 20 52 30 2c 23 33 0d 04 df 17 42 |..CMP R0,#3....B| 000076b0 45 51 20 73 65 74 5f 61 6c 69 65 6e 5f 68 6f 72 |EQ set_alien_hor| 000076c0 69 7a 0d 04 e0 0d 43 4d 50 20 52 30 2c 23 35 0d |iz....CMP R0,#5.| 000076d0 04 e1 17 42 45 51 20 73 65 74 5f 61 6c 69 65 6e |...BEQ set_alien| 000076e0 5f 68 6f 72 69 7a 0d 04 e2 0d 43 4d 50 20 52 30 |_horiz....CMP R0| 000076f0 2c 23 37 0d 04 e3 17 42 45 51 20 73 65 74 5f 61 |,#7....BEQ set_a| 00007700 6c 69 65 6e 5f 68 6f 72 69 7a 0d 04 e4 13 2e 73 |lien_horiz.....s| 00007710 65 74 5f 61 6c 69 65 6e 5f 76 65 72 74 0d 04 e5 |et_alien_vert...| 00007720 1a 4c 44 52 20 52 30 2c 5b 52 31 30 2c 23 26 31 |.LDR R0,[R10,#&1| 00007730 30 5d 20 20 20 20 20 0d 04 e6 1a 4c 44 52 20 52 |0] ....LDR R| 00007740 39 2c 5b 52 31 31 2c 23 26 34 5d 20 20 20 20 20 |9,[R11,#&4] | 00007750 20 0d 04 e7 1a 43 4d 50 20 52 30 2c 52 39 20 20 | ....CMP R0,R9 | 00007760 20 20 20 20 20 20 20 20 20 20 20 0d 04 e8 15 42 | ....B| 00007770 4e 45 20 76 65 72 74 5f 6e 6f 74 5f 73 61 6d 65 |NE vert_not_same| 00007780 0d 04 e9 10 41 44 44 20 52 30 2c 52 30 2c 23 31 |....ADD R0,R0,#1| 00007790 0d 04 ea 1a 53 54 52 42 20 52 30 2c 5b 52 31 31 |....STRB R0,[R11| 000077a0 2c 23 26 31 34 5d 20 20 20 20 0d 04 eb 17 42 20 |,#&14] ....B | 000077b0 6f 75 74 5f 6f 66 5f 61 6c 69 65 6e 5f 6d 6f 76 |out_of_alien_mov| 000077c0 65 0d 04 ec 12 2e 76 65 72 74 5f 6e 6f 74 5f 73 |e.....vert_not_s| 000077d0 61 6d 65 0d 04 ed 0f 4d 4f 56 4c 54 20 52 33 2c |ame....MOVLT R3,| 000077e0 23 34 0d 04 ee 0f 4d 4f 56 47 54 20 52 33 2c 23 |#4....MOVGT R3,#| 000077f0 33 0d 04 ef 14 42 20 73 65 74 5f 75 70 5f 61 5f |3....B set_up_a_| 00007800 63 68 65 63 6b 0d 04 f0 14 2e 73 65 74 5f 61 6c |check.....set_al| 00007810 69 65 6e 5f 68 6f 72 69 7a 0d 04 f1 1a 4c 44 52 |ien_horiz....LDR| 00007820 20 52 30 2c 5b 52 31 30 2c 23 26 43 5d 20 20 20 | R0,[R10,#&C] | 00007830 20 20 20 0d 04 f2 1a 4c 44 52 20 52 39 2c 5b 52 | ....LDR R9,[R| 00007840 31 31 2c 23 26 30 5d 20 20 20 20 20 20 0d 04 f3 |11,#&0] ...| 00007850 1a 43 4d 50 20 52 30 2c 52 39 20 20 20 20 20 20 |.CMP R0,R9 | 00007860 20 20 20 20 20 20 20 0d 04 f4 16 42 4e 45 20 68 | ....BNE h| 00007870 6f 72 69 7a 5f 6e 6f 74 5f 73 61 6d 65 0d 04 f5 |oriz_not_same...| 00007880 10 41 44 44 20 52 30 2c 52 30 2c 23 31 0d 04 f6 |.ADD R0,R0,#1...| 00007890 1a 53 54 52 42 20 52 30 2c 5b 52 31 31 2c 23 26 |.STRB R0,[R11,#&| 000078a0 31 34 5d 20 20 20 20 0d 04 f7 17 42 20 6f 75 74 |14] ....B out| 000078b0 5f 6f 66 5f 61 6c 69 65 6e 5f 6d 6f 76 65 0d 04 |_of_alien_move..| 000078c0 f8 13 2e 68 6f 72 69 7a 5f 6e 6f 74 5f 73 61 6d |...horiz_not_sam| 000078d0 65 0d 04 f9 0f 4d 4f 56 4c 54 20 52 33 2c 23 32 |e....MOVLT R3,#2| 000078e0 0d 04 fa 0f 4d 4f 56 47 54 20 52 33 2c 23 31 0d |....MOVGT R3,#1.| 000078f0 04 fb 14 42 20 73 65 74 5f 75 70 5f 61 5f 63 68 |...B set_up_a_ch| 00007900 65 63 6b 0d 04 fc 18 2e 73 65 74 5f 75 70 5f 72 |eck.....set_up_r| 00007910 6e 64 5f 73 65 71 75 65 6e 63 65 0d 04 fd 11 41 |nd_sequence....A| 00007920 44 52 20 52 31 2c 72 61 6e 64 6f 6d 0d 04 fe 16 |DR R1,random....| 00007930 4c 44 52 42 20 52 30 2c 5b 52 31 31 2c 23 26 31 |LDRB R0,[R11,#&1| 00007940 38 5d 0d 04 ff 10 41 44 44 20 52 30 2c 52 30 2c |8]....ADD R0,R0,| 00007950 23 31 0d 05 00 0e 43 4d 50 20 52 30 2c 23 33 30 |#1....CMP R0,#30| 00007960 0d 05 01 0f 4d 4f 56 47 54 20 52 30 2c 23 30 0d |....MOVGT R0,#0.| 00007970 05 02 16 53 54 52 42 20 52 30 2c 5b 52 31 31 2c |...STRB R0,[R11,| 00007980 23 26 31 38 5d 0d 05 03 1a 4c 44 52 42 20 52 33 |#&18]....LDRB R3| 00007990 2c 5b 52 31 2c 52 30 5d 20 20 20 20 20 20 20 0d |,[R1,R0] .| 000079a0 05 04 1a 4c 44 52 42 20 52 30 2c 5b 52 31 31 2c |...LDRB R0,[R11,| 000079b0 23 26 31 34 5d 20 20 20 20 0d 05 05 1a 41 44 44 |#&14] ....ADD| 000079c0 20 52 30 2c 52 30 2c 23 31 20 20 20 20 20 20 20 | R0,R0,#1 | 000079d0 20 20 20 0d 05 06 1a 43 4d 50 20 52 30 2c 23 31 | ....CMP R0,#1| 000079e0 30 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 07 |0 ...| 000079f0 0f 4d 4f 56 47 54 20 52 30 2c 23 31 0d 05 08 1a |.MOVGT R0,#1....| 00007a00 53 54 52 42 20 52 30 2c 5b 52 31 31 2c 23 26 31 |STRB R0,[R11,#&1| 00007a10 34 5d 20 20 20 20 0d 05 09 13 2e 73 65 74 5f 75 |4] .....set_u| 00007a20 70 5f 61 5f 63 68 65 63 6b 0d 05 0a 1a 4d 4f 56 |p_a_check....MOV| 00007a30 20 52 34 2c 23 31 33 20 20 20 20 20 20 20 20 20 | R4,#13 | 00007a40 20 20 20 0d 05 0b 0d 43 4d 50 20 52 33 2c 23 33 | ....CMP R3,#3| 00007a50 0d 05 0c 1a 4d 4f 56 4c 54 20 52 31 32 2c 23 33 |....MOVLT R12,#3| 00007a60 32 30 20 20 20 20 20 20 20 20 0d 05 0d 0f 4d 4f |20 ....MO| 00007a70 56 4c 54 20 52 35 2c 23 31 0d 05 0e 0f 4d 4f 56 |VLT R5,#1....MOV| 00007a80 4c 54 20 52 36 2c 23 30 0d 05 0f 0d 43 4d 50 20 |LT R6,#0....CMP | 00007a90 52 33 2c 23 32 0d 05 10 1a 4d 4f 56 47 54 20 52 |R3,#2....MOVGT R| 00007aa0 31 32 2c 23 31 20 20 20 20 20 20 20 20 20 20 0d |12,#1 .| 00007ab0 05 11 0f 4d 4f 56 47 54 20 52 35 2c 23 31 0d 05 |...MOVGT R5,#1..| 00007ac0 12 0f 4d 4f 56 47 54 20 52 36 2c 23 30 0d 05 13 |..MOVGT R6,#0...| 00007ad0 1a 4c 44 52 20 52 38 2c 5b 52 31 31 2c 23 26 30 |.LDR R8,[R11,#&0| 00007ae0 5d 20 20 20 20 20 20 0d 05 14 1a 4c 44 52 20 52 |] ....LDR R| 00007af0 39 2c 5b 52 31 31 2c 23 26 34 5d 20 20 20 20 20 |9,[R11,#&4] | 00007b00 20 0d 05 15 12 42 4c 20 63 68 65 63 6b 5f 65 64 | ....BL check_ed| 00007b10 67 65 73 0d 05 16 0d 43 4d 50 20 52 34 2c 23 30 |ges....CMP R4,#0| 00007b20 0d 05 17 16 42 4e 45 20 61 6c 69 65 6e 5f 73 74 |....BNE alien_st| 00007b30 61 72 74 5f 6f 6b 0d 05 18 1a 4c 44 52 42 20 52 |art_ok....LDRB R| 00007b40 30 2c 5b 52 31 31 2c 23 26 31 34 5d 20 20 20 20 |0,[R11,#&14] | 00007b50 0d 05 19 1a 41 44 44 20 52 30 2c 52 30 2c 23 31 |....ADD R0,R0,#1| 00007b60 20 20 20 20 20 20 20 20 20 20 0d 05 1a 1a 43 4d | ....CM| 00007b70 50 20 52 30 2c 23 31 30 20 20 20 20 20 20 20 20 |P R0,#10 | 00007b80 20 20 20 20 0d 05 1b 0f 4d 4f 56 47 54 20 52 30 | ....MOVGT R0| 00007b90 2c 23 31 0d 05 1c 1a 53 54 52 42 20 52 30 2c 5b |,#1....STRB R0,[| 00007ba0 52 31 31 2c 23 26 31 34 5d 20 20 20 20 0d 05 1d |R11,#&14] ...| 00007bb0 14 42 20 61 6c 69 65 6e 5f 73 74 61 72 74 5f 6e |.B alien_start_n| 00007bc0 6f 0d 05 1e 13 2e 61 6c 69 65 6e 5f 73 74 61 72 |o.....alien_star| 00007bd0 74 5f 6f 6b 0d 05 1f 1a 53 54 52 20 52 33 2c 5b |t_ok....STR R3,[| 00007be0 52 31 31 2c 23 26 31 30 5d 20 20 20 20 20 0d 05 |R11,#&10] ..| 00007bf0 20 1a 53 54 52 20 52 34 2c 5b 52 31 31 2c 23 26 | .STR R4,[R11,#&| 00007c00 38 5d 20 20 20 20 20 20 0d 05 21 0e 4d 4f 56 20 |8] ..!.MOV | 00007c10 52 30 2c 23 34 39 0d 05 22 1a 53 54 52 20 52 30 |R0,#49..".STR R0| 00007c20 2c 5b 52 31 31 2c 23 26 43 5d 20 20 20 20 20 20 |,[R11,#&C] | 00007c30 0d 05 23 13 2e 61 6c 69 65 6e 5f 73 74 61 72 74 |..#..alien_start| 00007c40 5f 6e 6f 0d 05 24 16 2e 6f 75 74 5f 6f 66 5f 61 |_no..$..out_of_a| 00007c50 6c 69 65 6e 5f 6d 6f 76 65 0d 05 25 15 4c 44 52 |lien_move..%.LDR| 00007c60 20 52 30 2c 5b 52 31 30 2c 23 26 35 38 5d 0d 05 | R0,[R10,#&58]..| 00007c70 26 0e 4d 4f 56 20 52 31 35 2c 52 30 0d 05 27 0b |&.MOV R15,R0..'.| 00007c80 2e 72 61 6e 64 6f 6d 0d 05 28 3b 45 51 55 42 20 |.random..(;EQUB | 00007c90 31 3a 45 51 55 42 20 31 3a 45 51 55 42 20 33 3a |1:EQUB 1:EQUB 3:| 00007ca0 45 51 55 42 20 33 3a 45 51 55 42 20 32 3a 45 51 |EQUB 3:EQUB 2:EQ| 00007cb0 55 42 20 32 3a 45 51 55 42 20 32 3a 45 51 55 42 |UB 2:EQUB 2:EQUB| 00007cc0 20 32 0d 05 29 3b 45 51 55 42 20 33 3a 45 51 55 | 2..);EQUB 3:EQU| 00007cd0 42 20 33 3a 45 51 55 42 20 31 3a 45 51 55 42 20 |B 3:EQUB 1:EQUB | 00007ce0 31 3a 45 51 55 42 20 33 3a 45 51 55 42 20 33 3a |1:EQUB 3:EQUB 3:| 00007cf0 45 51 55 42 20 32 3a 45 51 55 42 20 32 0d 05 2a |EQUB 2:EQUB 2..*| 00007d00 3b 45 51 55 42 20 34 3a 45 51 55 42 20 34 3a 45 |;EQUB 4:EQUB 4:E| 00007d10 51 55 42 20 34 3a 45 51 55 42 20 34 3a 45 51 55 |QUB 4:EQUB 4:EQU| 00007d20 42 20 32 3a 45 51 55 42 20 32 3a 45 51 55 42 20 |B 2:EQUB 2:EQUB | 00007d30 31 3a 45 51 55 42 20 31 0d 05 2b 3b 45 51 55 42 |1:EQUB 1..+;EQUB| 00007d40 20 31 3a 45 51 55 42 20 31 3a 45 51 55 42 20 33 | 1:EQUB 1:EQUB 3| 00007d50 3a 45 51 55 42 20 33 3a 45 51 55 42 20 31 3a 45 |:EQUB 3:EQUB 1:E| 00007d60 51 55 42 20 31 3a 45 51 55 42 20 34 3a 45 51 55 |QUB 1:EQUB 4:EQU| 00007d70 42 20 34 0d 05 2c 16 2e 61 6c 69 65 6e 5f 6d 6f |B 4..,..alien_mo| 00007d80 76 69 6e 67 5f 6c 6f 6f 70 0d 05 2d 1c 4c 44 52 |ving_loop..-.LDR| 00007d90 20 52 34 2c 5b 52 31 31 2c 23 26 38 5d 20 20 20 | R4,[R11,#&8] | 00007da0 20 20 20 20 20 0d 05 2e 0d 43 4d 50 20 52 34 2c | ....CMP R4,| 00007db0 23 30 0d 05 2f 12 53 55 42 4e 45 20 52 34 2c 52 |#0../.SUBNE R4,R| 00007dc0 34 2c 23 31 0d 05 30 14 53 54 52 20 52 34 2c 5b |4,#1..0.STR R4,[| 00007dd0 52 31 31 2c 23 26 38 5d 0d 05 31 1a 42 45 51 20 |R11,#&8]..1.BEQ | 00007de0 6f 75 74 5f 61 6c 69 65 6e 5f 6d 6f 76 65 6d 65 |out_alien_moveme| 00007df0 6e 74 0d 05 32 1c 43 4d 50 20 52 34 2c 23 31 32 |nt..2.CMP R4,#12| 00007e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 | ..| 00007e10 33 19 ec 51 20 52 37 2c 23 30 20 20 20 20 20 20 |3..Q R7,#0 | 00007e20 20 20 20 20 20 20 20 0d 05 34 0f 4d 4f 56 4e 45 | ..4.MOVNE| 00007e30 20 52 37 2c 23 34 0d 05 35 21 42 4e 45 20 6f 76 | R7,#4..5!BNE ov| 00007e40 65 72 5f 61 6c 69 65 6e 73 5f 66 69 72 73 74 5f |er_aliens_first_| 00007e50 6d 6f 76 65 20 20 20 0d 05 36 18 4c 44 52 20 52 |move ..6.LDR R| 00007e60 33 2c 5b 52 31 31 2c 23 26 31 30 5d 20 20 20 0d |3,[R11,#&10] .| 00007e70 05 37 18 4c 44 52 42 20 52 38 2c 5b 52 31 31 2c |.7.LDRB R8,[R11,| 00007e80 23 26 31 39 5d 20 20 0d 05 38 18 4c 44 52 42 20 |#&19] ..8.LDRB | 00007e90 52 39 2c 5b 52 31 31 2c 23 26 31 41 5d 20 20 0d |R9,[R11,#&1A] .| 00007ea0 05 39 0d 43 4d 50 20 52 33 2c 23 31 0d 05 3a 12 |.9.CMP R3,#1..:.| 00007eb0 41 44 44 45 51 20 52 38 2c 52 38 2c 23 31 0d 05 |ADDEQ R8,R8,#1..| 00007ec0 3b 0d 43 4d 50 20 52 33 2c 23 32 0d 05 3c 12 53 |;.CMP R3,#2..<.S| 00007ed0 55 42 45 51 20 52 38 2c 52 38 2c 23 31 0d 05 3d |UBEQ R8,R8,#1..=| 00007ee0 0d 43 4d 50 20 52 33 2c 23 33 0d 05 3e 12 41 44 |.CMP R3,#3..>.AD| 00007ef0 44 45 51 20 52 39 2c 52 39 2c 23 31 0d 05 3f 0d |DEQ R9,R9,#1..?.| 00007f00 43 4d 50 20 52 33 2c 23 34 0d 05 40 12 53 55 42 |CMP R3,#4..@.SUB| 00007f10 45 51 20 52 39 2c 52 39 2c 23 31 0d 05 41 18 53 |EQ R9,R9,#1..A.S| 00007f20 54 52 42 20 52 38 2c 5b 52 31 31 2c 23 26 31 42 |TRB R8,[R11,#&1B| 00007f30 5d 20 20 0d 05 42 18 53 54 52 42 20 52 39 2c 5b |] ..B.STRB R9,[| 00007f40 52 31 31 2c 23 26 31 43 5d 20 20 0d 05 43 1b 2e |R11,#&1C] ..C..| 00007f50 6f 76 65 72 5f 61 6c 69 65 6e 73 5f 66 69 72 73 |over_aliens_firs| 00007f60 74 5f 6d 6f 76 65 0d 05 44 0d 43 4d 50 20 52 34 |t_move..D.CMP R4| 00007f70 2c 23 30 0d 05 45 22 42 4e 45 20 6f 76 65 72 5f |,#0..E"BNE over_| 00007f80 61 6c 69 65 6e 73 5f 6c 61 73 74 5f 6d 6f 76 65 |aliens_last_move| 00007f90 20 20 20 20 20 0d 05 46 18 4c 44 52 42 20 52 38 | ..F.LDRB R8| 00007fa0 2c 5b 52 31 31 2c 23 26 31 42 5d 20 20 0d 05 47 |,[R11,#&1B] ..G| 00007fb0 18 4c 44 52 42 20 52 39 2c 5b 52 31 31 2c 23 26 |.LDRB R9,[R11,#&| 00007fc0 31 43 5d 20 20 0d 05 48 18 53 54 52 42 20 52 38 |1C] ..H.STRB R8| 00007fd0 2c 5b 52 31 31 2c 23 26 31 39 5d 20 20 0d 05 49 |,[R11,#&19] ..I| 00007fe0 18 53 54 52 42 20 52 39 2c 5b 52 31 31 2c 23 26 |.STRB R9,[R11,#&| 00007ff0 31 41 5d 20 20 0d 05 4a 1a 2e 6f 76 65 72 5f 61 |1A] ..J..over_a| 00008000 6c 69 65 6e 73 5f 6c 61 73 74 5f 6d 6f 76 65 0d |liens_last_move.| 00008010 05 4b 0d 43 4d 50 20 52 34 2c 23 30 0d 05 4c 1b |.K.CMP R4,#0..L.| 00008020 ec 51 20 52 34 2c 23 35 36 20 20 20 20 20 20 20 |.Q R4,#56 | 00008030 20 20 20 20 20 20 20 0d 05 4d 1a 42 45 51 20 6f | ..M.BEQ o| 00008040 76 65 72 6c 6f 61 64 5f 61 6c 69 65 6e 74 79 70 |verload_alientyp| 00008050 65 0d 05 4e 14 4c 44 52 20 52 34 2c 5b 52 31 31 |e..N.LDR R4,[R11| 00008060 2c 23 26 43 5d 0d 05 4f 17 2e 6f 76 65 72 6c 6f |,#&C]..O..overlo| 00008070 61 64 5f 61 6c 69 65 6e 74 79 70 65 0d 05 50 10 |ad_alientype..P.| 00008080 41 44 44 20 52 34 2c 52 34 2c 23 31 0d 05 51 0e |ADD R4,R4,#1..Q.| 00008090 43 4d 50 20 52 34 2c 23 35 37 0d 05 52 0d ec 51 |CMP R4,#57..R..Q| 000080a0 20 52 34 2c 23 34 39 0d 05 53 14 53 54 52 20 52 | R4,#49..S.STR R| 000080b0 34 2c 5b 52 31 31 2c 23 26 43 5d 0d 05 54 14 4c |4,[R11,#&C]..T.L| 000080c0 44 52 20 52 38 2c 5b 52 31 31 2c 23 26 30 5d 0d |DR R8,[R11,#&0].| 000080d0 05 55 14 4c 44 52 20 52 39 2c 5b 52 31 31 2c 23 |.U.LDR R9,[R11,#| 000080e0 26 34 5d 0d 05 56 15 4c 44 52 20 52 33 2c 5b 52 |&4]..V.LDR R3,[R| 000080f0 31 31 2c 23 26 31 30 5d 0d 05 57 0d 43 4d 50 20 |11,#&10]..W.CMP | 00008100 52 33 2c 23 31 0d 05 58 12 41 44 44 45 51 20 52 |R3,#1..X.ADDEQ R| 00008110 38 2c 52 38 2c 52 37 0d 05 59 1b ec 51 20 52 35 |8,R8,R7..Y..Q R5| 00008120 2c 23 34 39 20 20 20 20 20 20 20 20 20 20 20 20 |,#49 | 00008130 20 20 0d 05 5a 0d 43 4d 50 20 52 33 2c 23 32 0d | ..Z.CMP R3,#2.| 00008140 05 5b 12 53 55 42 45 51 20 52 38 2c 52 38 2c 52 |.[.SUBEQ R8,R8,R| 00008150 37 0d 05 5c 0d ec 51 20 52 35 2c 23 35 30 0d 05 |7..\..Q R5,#50..| 00008160 5d 0d 43 4d 50 20 52 33 2c 23 33 0d 05 5e 12 41 |].CMP R3,#3..^.A| 00008170 44 44 45 51 20 52 39 2c 52 39 2c 52 37 0d 05 5f |DDEQ R9,R9,R7.._| 00008180 0d ec 51 20 52 35 2c 23 35 31 0d 05 60 0d 43 4d |..Q R5,#51..`.CM| 00008190 50 20 52 33 2c 23 34 0d 05 61 12 53 55 42 45 51 |P R3,#4..a.SUBEQ| 000081a0 20 52 39 2c 52 39 2c 52 37 0d 05 62 0d ec 51 20 | R9,R9,R7..b..Q | 000081b0 52 35 2c 23 35 32 0d 05 63 17 41 44 52 20 52 36 |R5,#52..c.ADR R6| 000081c0 2c 61 6c 69 65 6e 5f 73 70 72 69 74 65 0d 05 64 |,alien_sprite..d| 000081d0 13 53 54 52 42 20 52 35 2c 5b 52 36 2c 23 33 5d |.STRB R5,[R6,#3]| 000081e0 0d 05 65 13 53 54 52 42 20 52 34 2c 5b 52 36 2c |..e.STRB R4,[R6,| 000081f0 23 34 5d 0d 05 66 14 53 54 52 20 52 38 2c 5b 52 |#4]..f.STR R8,[R| 00008200 31 31 2c 23 26 30 5d 0d 05 67 14 53 54 52 20 52 |11,#&0]..g.STR R| 00008210 39 2c 5b 52 31 31 2c 23 26 34 5d 0d 05 68 0f 4d |9,[R11,#&4]..h.M| 00008220 4f 56 20 52 30 2c 23 26 33 34 0d 05 69 1e 41 44 |OV R0,#&34..i.AD| 00008230 44 20 52 30 2c 52 30 2c 23 26 31 30 30 20 20 20 |D R0,R0,#&100 | 00008240 20 20 20 20 20 20 20 20 0d 05 6a 1e 4c 44 52 20 | ..j.LDR | 00008250 52 31 2c 5b 52 31 30 2c 23 26 35 30 5d 20 20 20 |R1,[R10,#&50] | 00008260 20 20 20 20 20 20 0d 05 6b 1e 41 44 52 20 52 32 | ..k.ADR R2| 00008270 2c 61 6c 69 65 6e 5f 73 70 72 69 74 65 20 20 20 |,alien_sprite | 00008280 20 20 20 20 0d 05 6c 1e 4d 4f 56 20 52 33 2c 52 | ..l.MOV R3,R| 00008290 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |8 | 000082a0 20 20 0d 05 6d 1e 4d 4f 56 20 52 34 2c 52 39 20 | ..m.MOV R4,R9 | 000082b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000082c0 0d 05 6e 1e 4d 4f 56 20 52 35 2c 23 26 30 20 20 |..n.MOV R5,#&0 | 000082d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 | ..| 000082e0 6f 1e 41 44 52 20 52 36 2c 61 6c 69 65 6e 5f 73 |o.ADR R6,alien_s| 000082f0 63 61 6c 65 20 20 20 20 20 20 20 20 0d 05 70 1e |cale ..p.| 00008300 4d 4f 56 20 52 37 2c 23 30 20 20 20 20 20 20 20 |MOV R7,#0 | 00008310 20 20 20 20 20 20 20 20 20 20 0d 05 71 15 53 57 | ..q.SW| 00008320 49 20 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 0d |I "OS_SpriteOp".| 00008330 05 72 17 2e 6f 75 74 5f 61 6c 69 65 6e 5f 6d 6f |.r..out_alien_mo| 00008340 76 65 6d 65 6e 74 0d 05 73 0f 4d 4f 56 20 52 31 |vement..s.MOV R1| 00008350 35 2c 52 31 34 0d 05 74 11 2e 61 6c 69 65 6e 5f |5,R14..t..alien_| 00008360 73 70 72 69 74 65 0d 05 75 0e 45 51 55 53 20 22 |sprite..u.EQUS "| 00008370 61 6c 69 22 0d 05 76 0b 45 51 55 42 20 34 39 0d |ali"..v.EQUB 49.| 00008380 05 77 0a 45 51 55 42 20 30 0d 05 78 0a 45 51 55 |.w.EQUB 0..x.EQU| 00008390 42 20 30 0d 05 79 0a 45 51 55 42 20 30 0d 05 7a |B 0..y.EQUB 0..z| 000083a0 09 41 4c 49 47 4e 0d 05 7b 10 2e 61 6c 69 65 6e |.ALIGN..{..alien| 000083b0 5f 73 63 61 6c 65 0d 05 7c 0a 45 51 55 44 20 31 |_scale..|.EQUD 1| 000083c0 0d 05 7d 0d 45 51 55 44 20 31 2b 56 25 0d 05 7e |..}.EQUD 1+V%..~| 000083d0 0a 45 51 55 44 20 31 0d 05 7f 0a 45 51 55 44 20 |.EQUD 1....EQUD | 000083e0 31 0d 05 80 10 2e 63 68 65 63 6b 5f 65 64 67 65 |1.....check_edge| 000083f0 73 0d 05 81 1a 4c 44 52 20 52 30 2c 5b 52 31 30 |s....LDR R0,[R10| 00008400 2c 23 26 35 34 5d 20 20 20 20 20 0d 05 82 1a 4d |,#&54] ....M| 00008410 4f 56 20 52 38 2c 52 38 2c 4c 53 52 20 23 32 20 |OV R8,R8,LSR #2 | 00008420 20 20 20 20 20 0d 05 83 0f 4d 4f 56 20 52 31 2c | ....MOV R1,| 00008430 23 39 35 36 0d 05 84 0f 4d 4f 56 20 52 32 2c 23 |#956....MOV R2,#| 00008440 33 32 30 0d 05 85 1a 53 55 42 20 52 39 2c 52 31 |320....SUB R9,R1| 00008450 2c 52 39 20 20 20 20 20 20 20 20 20 20 0d 05 86 |,R9 ...| 00008460 1a 4d 4f 56 20 52 39 2c 52 39 2c 4c 53 52 20 23 |.MOV R9,R9,LSR #| 00008470 28 32 2d 56 25 29 20 0d 05 87 1a 4d 55 4c 20 52 |(2-V%) ....MUL R| 00008480 37 2c 52 39 2c 52 32 20 20 20 20 20 20 20 20 20 |7,R9,R2 | 00008490 20 0d 05 88 1a 41 44 44 20 52 37 2c 52 38 2c 52 | ....ADD R7,R8,R| 000084a0 37 20 20 20 20 20 20 20 20 20 20 0d 05 89 1a 41 |7 ....A| 000084b0 44 44 20 52 37 2c 52 37 2c 52 30 20 20 20 20 20 |DD R7,R7,R0 | 000084c0 20 20 20 20 20 0d 05 8a 1a 4d 4f 56 20 52 30 2c | ....MOV R0,| 000084d0 23 30 20 20 20 20 20 20 20 20 20 20 20 20 20 0d |#0 .| 000084e0 05 8b 0d 43 4d 50 20 52 33 2c 23 31 0d 05 8c 18 |...CMP R3,#1....| 000084f0 42 4e 45 20 6f 76 65 72 5f 72 69 67 68 74 5f 63 |BNE over_right_c| 00008500 68 65 63 6b 0d 05 8d 1a 41 44 44 20 52 37 2c 52 |heck....ADD R7,R| 00008510 37 2c 23 31 32 20 20 20 20 20 20 20 20 20 0d 05 |7,#12 ..| 00008520 8e 1a 53 55 42 20 52 37 2c 52 37 2c 52 36 20 20 |..SUB R7,R7,R6 | 00008530 20 20 20 20 20 20 20 20 0d 05 8f 0d 4d 4f 56 20 | ....MOV | 00008540 52 31 2c 23 30 0d 05 90 0b 2e 63 68 5f 72 5f 6c |R1,#0.....ch_r_l| 00008550 0d 05 91 10 4c 44 52 42 20 52 32 2c 5b 52 37 5d |....LDRB R2,[R7]| 00008560 0d 05 92 1a 43 4d 50 20 52 32 2c 23 26 34 34 20 |....CMP R2,#&44 | 00008570 20 20 20 20 20 20 20 20 20 20 0d 05 93 17 42 45 | ....BE| 00008580 51 20 6f 76 65 72 5f 72 69 67 68 74 5f 66 61 69 |Q over_right_fai| 00008590 6c 0d 05 94 1a 4d 4f 56 20 52 34 2c 23 30 20 20 |l....MOV R4,#0 | 000085a0 20 20 20 20 20 20 20 20 20 20 20 0d 05 95 14 2e | .....| 000085b0 6f 76 65 72 5f 72 69 67 68 74 5f 66 61 69 6c 0d |over_right_fail.| 000085c0 05 96 11 53 55 42 20 52 37 2c 52 37 2c 52 31 32 |...SUB R7,R7,R12| 000085d0 0d 05 97 10 41 44 44 20 52 31 2c 52 31 2c 52 35 |....ADD R1,R1,R5| 000085e0 0d 05 98 1a 43 4d 50 20 52 31 2c 23 31 32 20 20 |....CMP R1,#12 | 000085f0 20 20 20 20 20 20 20 20 20 20 0d 05 99 0e 42 4e | ....BN| 00008600 45 20 63 68 5f 72 5f 6c 0d 05 9a 17 42 20 6f 76 |E ch_r_l....B ov| 00008610 65 72 5f 6f 74 68 65 72 5f 63 68 65 63 6b 73 0d |er_other_checks.| 00008620 05 9b 15 2e 6f 76 65 72 5f 72 69 67 68 74 5f 63 |....over_right_c| 00008630 68 65 63 6b 0d 05 9c 0d 43 4d 50 20 52 33 2c 23 |heck....CMP R3,#| 00008640 32 0d 05 9d 17 42 4e 45 20 6f 76 65 72 5f 6c 65 |2....BNE over_le| 00008650 66 74 5f 63 68 65 63 6b 0d 05 9e 1a 53 55 42 20 |ft_check....SUB | 00008660 52 37 2c 52 37 2c 23 31 20 20 20 20 20 20 20 20 |R7,R7,#1 | 00008670 20 20 0d 05 9f 1a 53 55 42 20 52 37 2c 52 37 2c | ....SUB R7,R7,| 00008680 52 36 20 20 20 20 20 20 20 20 20 20 0d 05 a0 0d |R6 ....| 00008690 4d 4f 56 20 52 31 2c 23 30 0d 05 a1 0b 2e 63 68 |MOV R1,#0.....ch| 000086a0 5f 6c 5f 6c 0d 05 a2 10 4c 44 52 42 20 52 32 2c |_l_l....LDRB R2,| 000086b0 5b 52 37 5d 0d 05 a3 1a 43 4d 50 20 52 32 2c 23 |[R7]....CMP R2,#| 000086c0 26 34 34 20 20 20 20 20 20 20 20 20 20 20 0d 05 |&44 ..| 000086d0 a4 16 42 45 51 20 6f 76 65 72 5f 6c 65 66 74 5f |..BEQ over_left_| 000086e0 66 61 69 6c 0d 05 a5 1a 4d 4f 56 20 52 34 2c 23 |fail....MOV R4,#| 000086f0 30 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 |0 ..| 00008700 a6 13 2e 6f 76 65 72 5f 6c 65 66 74 5f 66 61 69 |...over_left_fai| 00008710 6c 0d 05 a7 11 53 55 42 20 52 37 2c 52 37 2c 52 |l....SUB R7,R7,R| 00008720 31 32 0d 05 a8 10 41 44 44 20 52 31 2c 52 31 2c |12....ADD R1,R1,| 00008730 52 35 0d 05 a9 1a 43 4d 50 20 52 31 2c 23 31 32 |R5....CMP R1,#12| 00008740 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 aa 0e | ....| 00008750 42 4e 45 20 63 68 5f 6c 5f 6c 0d 05 ab 17 42 20 |BNE ch_l_l....B | 00008760 6f 76 65 72 5f 6f 74 68 65 72 5f 63 68 65 63 6b |over_other_check| 00008770 73 0d 05 ac 14 2e 6f 76 65 72 5f 6c 65 66 74 5f |s.....over_left_| 00008780 63 68 65 63 6b 0d 05 ad 0d 43 4d 50 20 52 33 2c |check....CMP R3,| 00008790 23 33 0d 05 ae 15 42 4e 45 20 6f 76 65 72 5f 75 |#3....BNE over_u| 000087a0 70 5f 63 68 65 63 6b 0d 05 af 1e 53 55 42 20 52 |p_check....SUB R| 000087b0 37 2c 52 37 2c 23 28 33 38 34 30 2a 28 56 25 2b |7,R7,#(3840*(V%+| 000087c0 31 29 29 20 20 0d 05 b0 1e 41 44 44 20 52 37 2c |1)) ....ADD R7,| 000087d0 52 37 2c 52 36 20 20 20 20 20 20 20 20 20 20 20 |R7,R6 | 000087e0 20 20 20 0d 05 b1 0d 4d 4f 56 20 52 31 2c 23 30 | ....MOV R1,#0| 000087f0 0d 05 b2 0b 2e 63 68 5f 74 5f 6c 0d 05 b3 10 4c |.....ch_t_l....L| 00008800 44 52 42 20 52 32 2c 5b 52 37 5d 0d 05 b4 1a 43 |DRB R2,[R7]....C| 00008810 4d 50 20 52 32 2c 23 26 34 34 20 20 20 20 20 20 |MP R2,#&44 | 00008820 20 20 20 20 20 0d 05 b5 14 42 45 51 20 6f 76 65 | ....BEQ ove| 00008830 72 5f 75 70 5f 66 61 69 6c 0d 05 b6 1a 4d 4f 56 |r_up_fail....MOV| 00008840 20 52 34 2c 23 30 20 20 20 20 20 20 20 20 20 20 | R4,#0 | 00008850 20 20 20 0d 05 b7 11 2e 6f 76 65 72 5f 75 70 5f | .....over_up_| 00008860 66 61 69 6c 0d 05 b8 11 41 44 44 20 52 37 2c 52 |fail....ADD R7,R| 00008870 37 2c 52 31 32 0d 05 b9 10 41 44 44 20 52 31 2c |7,R12....ADD R1,| 00008880 52 31 2c 52 35 0d 05 ba 1a 43 4d 50 20 52 31 2c |R1,R5....CMP R1,| 00008890 23 31 32 20 20 20 20 20 20 20 20 20 20 20 20 0d |#12 .| 000088a0 05 bb 0e 42 4e 45 20 63 68 5f 74 5f 6c 0d 05 bc |...BNE ch_t_l...| 000088b0 17 42 20 6f 76 65 72 5f 6f 74 68 65 72 5f 63 68 |.B over_other_ch| 000088c0 65 63 6b 73 0d 05 bd 12 2e 6f 76 65 72 5f 75 70 |ecks.....over_up| 000088d0 5f 63 68 65 63 6b 0d 05 be 0d 43 4d 50 20 52 33 |_check....CMP R3| 000088e0 2c 23 34 0d 05 bf 17 42 4e 45 20 6f 76 65 72 5f |,#4....BNE over_| 000088f0 64 6f 77 6e 5f 63 68 65 63 6b 0d 05 c0 1b 41 44 |down_check....AD| 00008900 44 20 52 37 2c 52 37 2c 23 28 33 32 30 2a 28 56 |D R7,R7,#(320*(V| 00008910 25 2b 31 29 29 0d 05 c1 1b 41 44 44 20 52 37 2c |%+1))....ADD R7,| 00008920 52 37 2c 52 36 20 20 20 20 20 20 20 20 20 20 20 |R7,R6 | 00008930 0d 05 c2 0d 4d 4f 56 20 52 31 2c 23 30 0d 05 c3 |....MOV R1,#0...| 00008940 0b 2e 63 68 5f 75 5f 6c 0d 05 c4 10 4c 44 52 42 |..ch_u_l....LDRB| 00008950 20 52 32 2c 5b 52 37 5d 0d 05 c5 1a 43 4d 50 20 | R2,[R7]....CMP | 00008960 52 32 2c 23 26 34 34 20 20 20 20 20 20 20 20 20 |R2,#&44 | 00008970 20 20 0d 05 c6 16 42 45 51 20 6f 76 65 72 5f 64 | ....BEQ over_d| 00008980 6f 77 6e 5f 66 61 69 6c 0d 05 c7 1a 43 4d 50 20 |own_fail....CMP | 00008990 52 32 2c 23 26 46 46 20 20 20 20 20 20 20 20 20 |R2,#&FF | 000089a0 20 20 0d 05 c8 16 42 45 51 20 6f 76 65 72 5f 64 | ....BEQ over_d| 000089b0 6f 77 6e 5f 66 61 69 6c 0d 05 c9 1a 4d 4f 56 20 |own_fail....MOV | 000089c0 52 34 2c 23 30 20 20 20 20 20 20 20 20 20 20 20 |R4,#0 | 000089d0 20 20 0d 05 ca 13 2e 6f 76 65 72 5f 64 6f 77 6e | .....over_down| 000089e0 5f 66 61 69 6c 0d 05 cb 11 41 44 44 20 52 37 2c |_fail....ADD R7,| 000089f0 52 37 2c 52 31 32 0d 05 cc 10 41 44 44 20 52 31 |R7,R12....ADD R1| 00008a00 2c 52 31 2c 52 35 0d 05 cd 1a 43 4d 50 20 52 31 |,R1,R5....CMP R1| 00008a10 2c 23 31 32 20 20 20 20 20 20 20 20 20 20 20 20 |,#12 | 00008a20 0d 05 ce 0e 42 4e 45 20 63 68 5f 75 5f 6c 0d 05 |....BNE ch_u_l..| 00008a30 cf 17 42 20 6f 76 65 72 5f 6f 74 68 65 72 5f 63 |..B over_other_c| 00008a40 68 65 63 6b 73 0d 05 d0 14 2e 6f 76 65 72 5f 64 |hecks.....over_d| 00008a50 6f 77 6e 5f 63 68 65 63 6b 0d 05 d1 16 2e 6f 76 |own_check.....ov| 00008a60 65 72 5f 6f 74 68 65 72 5f 63 68 65 63 6b 73 0d |er_other_checks.| 00008a70 05 d2 0f 4d 4f 56 20 52 31 35 2c 52 31 34 0d 05 |...MOV R15,R14..| 00008a80 d3 09 2e 6d 61 69 6e 0d 05 d4 0d 4d 4f 56 20 52 |...main....MOV R| 00008a90 35 2c 52 34 0d 05 d5 0e 4d 4f 56 20 52 31 30 2c |5,R4....MOV R10,| 00008aa0 52 30 0d 05 d6 0e 4d 4f 56 20 52 31 31 2c 52 31 |R0....MOV R11,R1| 00008ab0 0d 05 d7 15 53 54 52 20 52 32 2c 5b 52 31 30 2c |....STR R2,[R10,| 00008ac0 23 26 35 34 5d 0d 05 d8 16 53 54 52 20 52 31 34 |#&54]....STR R14| 00008ad0 2c 5b 52 31 30 2c 23 26 35 43 5d 0d 05 d9 14 42 |,[R10,#&5C]....B| 00008ae0 4c 20 6b 65 79 5f 65 6e 74 72 79 5f 6d 61 6e 0d |L key_entry_man.| 00008af0 05 da 16 42 4c 20 6d 61 6e 5f 6d 6f 76 69 6e 67 |...BL man_moving| 00008b00 5f 6c 6f 6f 70 0d 05 db 15 4c 44 52 20 52 30 2c |_loop....LDR R0,| 00008b10 5b 52 31 30 2c 23 26 35 43 5d 0d 05 dc 0e 4d 4f |[R10,#&5C]....MO| 00008b20 56 20 52 31 35 2c 52 30 0d 05 dd 15 2e 65 6e 64 |V R15,R0.....end| 00008b30 5f 6f 66 5f 6d 61 69 6e 5f 6c 6f 6f 70 0d 05 de |_of_main_loop...| 00008b40 12 2e 6b 65 79 5f 65 6e 74 72 79 5f 6d 61 6e 0d |..key_entry_man.| 00008b50 05 df 16 53 54 52 20 52 31 34 2c 5b 52 31 30 2c |...STR R14,[R10,| 00008b60 23 26 35 38 5d 0d 05 e0 15 4c 44 52 20 52 34 2c |#&58]....LDR R4,| 00008b70 5b 52 31 30 2c 23 26 31 34 5d 0d 05 e1 0d 43 4d |[R10,#&14]....CM| 00008b80 50 20 52 34 2c 23 30 0d 05 e2 17 42 4e 45 20 6e |P R4,#0....BNE n| 00008b90 6f 5f 6e 65 77 5f 6d 6f 76 65 6d 65 6e 74 0d 05 |o_new_movement..| 00008ba0 e3 14 4c 44 52 20 52 38 2c 5b 52 31 30 2c 23 26 |..LDR R8,[R10,#&| 00008bb0 43 5d 0d 05 e4 15 4c 44 52 20 52 39 2c 5b 52 31 |C]....LDR R9,[R1| 00008bc0 30 2c 23 26 31 30 5d 0d 05 e5 1d 4d 4f 56 20 52 |0,#&10]....MOV R| 00008bd0 34 2c 23 30 20 20 20 20 20 20 20 20 20 20 20 20 |4,#0 | 00008be0 20 20 20 20 0d 05 e6 1d 4d 4f 56 20 52 33 2c 23 | ....MOV R3,#| 00008bf0 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |0 | 00008c00 20 0d 05 e7 1d 43 4d 50 20 52 35 2c 23 33 37 20 | ....CMP R5,#37 | 00008c10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 | ..| 00008c20 e8 1c 42 45 51 20 73 65 74 5f 6d 61 6e 5f 6d 6f |..BEQ set_man_mo| 00008c30 76 69 6e 67 5f 72 69 67 68 74 0d 05 e9 0f 4d 4f |ving_right....MO| 00008c40 56 20 52 30 2c 23 26 37 39 0d 05 ea 17 4d 4f 56 |V R0,#&79....MOV| 00008c50 20 52 31 2c 23 28 31 32 31 20 82 20 26 38 30 29 | R1,#(121 . &80)| 00008c60 0d 05 eb 11 53 57 49 20 22 4f 53 5f 42 79 74 65 |....SWI "OS_Byte| 00008c70 22 0d 05 ec 0f 43 4d 50 20 52 31 2c 23 26 46 46 |"....CMP R1,#&FF| 00008c80 0d 05 ed 1b 42 4e 45 20 6f 76 65 72 5f 6d 61 6e |....BNE over_man| 00008c90 5f 6d 6f 76 65 5f 72 69 67 68 74 0d 05 ee 19 2e |_move_right.....| 00008ca0 73 65 74 5f 6d 61 6e 5f 6d 6f 76 69 6e 67 5f 72 |set_man_moving_r| 00008cb0 69 67 68 74 0d 05 ef 0d 4d 4f 56 20 52 33 2c 23 |ight....MOV R3,#| 00008cc0 31 0d 05 f0 0e 4d 4f 56 20 52 34 2c 23 31 33 0d |1....MOV R4,#13.| 00008cd0 05 f1 19 4d 4f 56 20 52 31 32 2c 23 28 36 34 30 |...MOV R12,#(640| 00008ce0 2a 28 56 25 2b 31 29 29 0d 05 f2 0d 4d 4f 56 20 |*(V%+1))....MOV | 00008cf0 52 35 2c 23 32 0d 05 f3 1e 4d 4f 56 20 52 36 2c |R5,#2....MOV R6,| 00008d00 23 33 32 30 20 20 20 20 20 20 20 20 20 20 20 20 |#320 | 00008d10 20 20 20 0d 05 f4 12 42 4c 20 63 68 65 63 6b 5f | ....BL check_| 00008d20 65 64 67 65 73 0d 05 f5 18 42 20 6f 76 65 72 5f |edges....B over_| 00008d30 6d 61 6e 5f 6d 6f 76 65 5f 64 6f 77 6e 0d 05 f6 |man_move_down...| 00008d40 18 2e 6f 76 65 72 5f 6d 61 6e 5f 6d 6f 76 65 5f |..over_man_move_| 00008d50 72 69 67 68 74 0d 05 f7 0f 4d 4f 56 20 52 30 2c |right....MOV R0,| 00008d60 23 26 37 39 0d 05 f8 16 4d 4f 56 20 52 31 2c 23 |#&79....MOV R1,#| 00008d70 28 32 35 20 82 20 26 38 30 29 0d 05 f9 11 53 57 |(25 . &80)....SW| 00008d80 49 20 22 4f 53 5f 42 79 74 65 22 0d 05 fa 0f 43 |I "OS_Byte"....C| 00008d90 4d 50 20 52 31 2c 23 26 46 46 0d 05 fb 1a 42 4e |MP R1,#&FF....BN| 00008da0 45 20 6f 76 65 72 5f 6d 61 6e 5f 6d 6f 76 65 5f |E over_man_move_| 00008db0 6c 65 66 74 0d 05 fc 1d 4d 4f 56 20 52 33 2c 23 |left....MOV R3,#| 00008dc0 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |2 | 00008dd0 20 0d 05 fd 1d 4d 4f 56 20 52 34 2c 23 31 33 20 | ....MOV R4,#13 | 00008de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 05 | ..| 00008df0 fe 1d 4d 4f 56 20 52 31 32 2c 23 28 36 34 30 2a |..MOV R12,#(640*| 00008e00 28 56 25 2b 31 29 29 20 20 20 20 0d 05 ff 1d 4d |(V%+1)) ....M| 00008e10 4f 56 20 52 35 2c 23 32 20 20 20 20 20 20 20 20 |OV R5,#2 | 00008e20 20 20 20 20 20 20 20 20 0d 06 00 1d 4d 4f 56 20 | ....MOV | 00008e30 52 36 2c 23 30 20 20 20 20 20 20 20 20 20 20 20 |R6,#0 | 00008e40 20 20 20 20 20 0d 06 01 12 42 4c 20 63 68 65 63 | ....BL chec| 00008e50 6b 5f 65 64 67 65 73 0d 06 02 18 42 20 6f 76 65 |k_edges....B ove| 00008e60 72 5f 6d 61 6e 5f 6d 6f 76 65 5f 64 6f 77 6e 0d |r_man_move_down.| 00008e70 06 03 17 2e 6f 76 65 72 5f 6d 61 6e 5f 6d 6f 76 |....over_man_mov| 00008e80 65 5f 6c 65 66 74 0d 06 04 0f 4d 4f 56 20 52 30 |e_left....MOV R0| 00008e90 2c 23 26 37 39 0d 06 05 16 4d 4f 56 20 52 31 2c |,#&79....MOV R1,| 00008ea0 23 28 35 37 20 82 20 26 38 30 29 0d 06 06 11 53 |#(57 . &80)....S| 00008eb0 57 49 20 22 4f 53 5f 42 79 74 65 22 0d 06 07 0f |WI "OS_Byte"....| 00008ec0 43 4d 50 20 52 31 2c 23 26 46 46 0d 06 08 18 42 |CMP R1,#&FF....B| 00008ed0 4e 45 20 6f 76 65 72 5f 6d 61 6e 5f 6d 6f 76 65 |NE over_man_move| 00008ee0 5f 75 70 0d 06 09 0d 4d 4f 56 20 52 33 2c 23 33 |_up....MOV R3,#3| 00008ef0 0d 06 0a 0e 4d 4f 56 20 52 34 2c 23 31 33 0d 06 |....MOV R4,#13..| 00008f00 0b 0e 4d 4f 56 20 52 31 32 2c 23 32 0d 06 0c 0d |..MOV R12,#2....| 00008f10 4d 4f 56 20 52 35 2c 23 32 0d 06 0d 1e 4d 4f 56 |MOV R5,#2....MOV| 00008f20 20 52 36 2c 23 31 20 20 20 20 20 20 20 20 20 20 | R6,#1 | 00008f30 20 20 20 20 20 20 20 0d 06 0e 12 42 4c 20 63 68 | ....BL ch| 00008f40 65 63 6b 5f 65 64 67 65 73 0d 06 0f 18 42 20 6f |eck_edges....B o| 00008f50 76 65 72 5f 6d 61 6e 5f 6d 6f 76 65 5f 64 6f 77 |ver_man_move_dow| 00008f60 6e 0d 06 10 15 2e 6f 76 65 72 5f 6d 61 6e 5f 6d |n.....over_man_m| 00008f70 6f 76 65 5f 75 70 0d 06 11 0f 4d 4f 56 20 52 30 |ove_up....MOV R0| 00008f80 2c 23 26 37 39 0d 06 12 16 4d 4f 56 20 52 31 2c |,#&79....MOV R1,| 00008f90 23 28 34 31 20 82 20 26 38 30 29 0d 06 13 11 53 |#(41 . &80)....S| 00008fa0 57 49 20 22 4f 53 5f 42 79 74 65 22 0d 06 14 0f |WI "OS_Byte"....| 00008fb0 43 4d 50 20 52 31 2c 23 26 46 46 0d 06 15 1a 42 |CMP R1,#&FF....B| 00008fc0 4e 45 20 6f 76 65 72 5f 6d 61 6e 5f 6d 6f 76 65 |NE over_man_move| 00008fd0 5f 64 6f 77 6e 0d 06 16 0d 4d 4f 56 20 52 33 2c |_down....MOV R3,| 00008fe0 23 34 0d 06 17 0e 4d 4f 56 20 52 34 2c 23 31 33 |#4....MOV R4,#13| 00008ff0 0d 06 18 0e 4d 4f 56 20 52 31 32 2c 23 32 0d 06 |....MOV R12,#2..| 00009000 19 0d 4d 4f 56 20 52 35 2c 23 32 0d 06 1a 1e 4d |..MOV R5,#2....M| 00009010 4f 56 20 52 36 2c 23 30 20 20 20 20 20 20 20 20 |OV R6,#0 | 00009020 20 20 20 20 20 20 20 20 20 0d 06 1b 12 42 4c 20 | ....BL | 00009030 63 68 65 63 6b 5f 65 64 67 65 73 0d 06 1c 17 2e |check_edges.....| 00009040 6f 76 65 72 5f 6d 61 6e 5f 6d 6f 76 65 5f 64 6f |over_man_move_do| 00009050 77 6e 0d 06 1d 15 53 54 52 20 52 34 2c 5b 52 31 |wn....STR R4,[R1| 00009060 30 2c 23 26 31 34 5d 0d 06 1e 15 53 54 52 20 52 |0,#&14]....STR R| 00009070 33 2c 5b 52 31 30 2c 23 26 31 38 5d 0d 06 1f 14 |3,[R10,#&18]....| 00009080 2e 6e 6f 5f 6e 65 77 5f 6d 6f 76 65 6d 65 6e 74 |.no_new_movement| 00009090 0d 06 20 16 4c 44 52 20 52 31 35 2c 5b 52 31 30 |.. .LDR R15,[R10| 000090a0 2c 23 26 35 38 5d 0d 06 21 14 2e 6d 61 6e 5f 6d |,#&58]..!..man_m| 000090b0 6f 76 69 6e 67 5f 6c 6f 6f 70 0d 06 22 15 4c 44 |oving_loop..".LD| 000090c0 52 20 52 34 2c 5b 52 31 30 2c 23 26 31 34 5d 0d |R R4,[R10,#&14].| 000090d0 06 23 0d 43 4d 50 20 52 34 2c 23 30 0d 06 24 12 |.#.CMP R4,#0..$.| 000090e0 53 55 42 4e 45 20 52 34 2c 52 34 2c 23 31 0d 06 |SUBNE R4,R4,#1..| 000090f0 25 15 53 54 52 20 52 34 2c 5b 52 31 30 2c 23 26 |%.STR R4,[R10,#&| 00009100 31 34 5d 0d 06 26 0d ec 51 20 52 34 2c 23 35 33 |14]..&..Q R4,#53| 00009110 0d 06 27 0d ec 51 20 52 35 2c 23 35 33 0d 06 28 |..'..Q R5,#53..(| 00009120 19 4c 44 52 45 51 20 52 38 2c 5b 52 31 30 2c 23 |.LDREQ R8,[R10,#| 00009130 26 43 5d 20 20 20 0d 06 29 19 4c 44 52 45 51 20 |&C] ..).LDREQ | 00009140 52 39 2c 5b 52 31 30 2c 23 26 31 30 5d 20 20 0d |R9,[R10,#&10] .| 00009150 06 2a 19 42 45 51 20 6f 75 74 5f 6d 61 6e 5f 6d |.*.BEQ out_man_m| 00009160 6f 76 65 6d 65 6e 74 20 0d 06 2b 18 43 4d 50 20 |ovement ..+.CMP | 00009170 52 34 2c 23 31 32 20 20 20 20 20 20 20 20 20 20 |R4,#12 | 00009180 0d 06 2c 15 ec 51 20 52 37 2c 23 30 20 20 20 20 |..,..Q R7,#0 | 00009190 20 20 20 20 20 0d 06 2d 0f 4d 4f 56 4e 45 20 52 | ..-.MOVNE R| 000091a0 37 2c 23 34 0d 06 2e 1c 42 4e 45 20 6f 76 65 72 |7,#4....BNE over| 000091b0 5f 6d 61 6e 73 5f 66 69 72 73 74 5f 6d 6f 76 65 |_mans_first_move| 000091c0 0d 06 2f 18 4c 44 52 20 52 33 2c 5b 52 31 30 2c |../.LDR R3,[R10,| 000091d0 23 26 31 38 5d 20 20 20 0d 06 30 18 4c 44 52 42 |#&18] ..0.LDRB| 000091e0 20 52 38 2c 5b 52 31 30 2c 23 26 33 30 5d 20 20 | R8,[R10,#&30] | 000091f0 0d 06 31 18 4c 44 52 42 20 52 39 2c 5b 52 31 30 |..1.LDRB R9,[R10| 00009200 2c 23 26 33 31 5d 20 20 0d 06 32 0d 43 4d 50 20 |,#&31] ..2.CMP | 00009210 52 33 2c 23 31 0d 06 33 12 41 44 44 45 51 20 52 |R3,#1..3.ADDEQ R| 00009220 38 2c 52 38 2c 23 31 0d 06 34 0d 43 4d 50 20 52 |8,R8,#1..4.CMP R| 00009230 33 2c 23 32 0d 06 35 12 53 55 42 45 51 20 52 38 |3,#2..5.SUBEQ R8| 00009240 2c 52 38 2c 23 31 0d 06 36 0d 43 4d 50 20 52 33 |,R8,#1..6.CMP R3| 00009250 2c 23 33 0d 06 37 12 41 44 44 45 51 20 52 39 2c |,#3..7.ADDEQ R9,| 00009260 52 39 2c 23 31 0d 06 38 0d 43 4d 50 20 52 33 2c |R9,#1..8.CMP R3,| 00009270 23 34 0d 06 39 12 53 55 42 45 51 20 52 39 2c 52 |#4..9.SUBEQ R9,R| 00009280 39 2c 23 31 0d 06 3a 18 53 54 52 42 20 52 38 2c |9,#1..:.STRB R8,| 00009290 5b 52 31 30 2c 23 26 33 32 5d 20 20 0d 06 3b 18 |[R10,#&32] ..;.| 000092a0 53 54 52 42 20 52 39 2c 5b 52 31 30 2c 23 26 33 |STRB R9,[R10,#&3| 000092b0 33 5d 20 20 0d 06 3c 19 2e 6f 76 65 72 5f 6d 61 |3] ..<..over_ma| 000092c0 6e 73 5f 66 69 72 73 74 5f 6d 6f 76 65 0d 06 3d |ns_first_move..=| 000092d0 0d 43 4d 50 20 52 34 2c 23 30 0d 06 3e 15 ec 51 |.CMP R4,#0..>..Q| 000092e0 20 52 34 2c 23 35 36 20 20 20 20 20 20 20 20 0d | R4,#56 .| 000092f0 06 3f 1b 42 4e 45 20 6f 76 65 72 5f 6d 61 6e 73 |.?.BNE over_mans| 00009300 5f 6c 61 73 74 5f 6d 6f 76 65 0d 06 40 18 4c 44 |_last_move..@.LD| 00009310 52 42 20 52 38 2c 5b 52 31 30 2c 23 26 33 32 5d |RB R8,[R10,#&32]| 00009320 20 20 0d 06 41 18 4c 44 52 42 20 52 39 2c 5b 52 | ..A.LDRB R9,[R| 00009330 31 30 2c 23 26 33 33 5d 20 20 0d 06 42 18 53 54 |10,#&33] ..B.ST| 00009340 52 42 20 52 38 2c 5b 52 31 30 2c 23 26 33 30 5d |RB R8,[R10,#&30]| 00009350 20 20 0d 06 43 18 53 54 52 42 20 52 39 2c 5b 52 | ..C.STRB R9,[R| 00009360 31 30 2c 23 26 33 31 5d 20 20 0d 06 44 18 2e 6f |10,#&31] ..D..o| 00009370 76 65 72 5f 6d 61 6e 73 5f 6c 61 73 74 5f 6d 6f |ver_mans_last_mo| 00009380 76 65 0d 06 45 18 42 45 51 20 6f 76 65 72 6c 6f |ve..E.BEQ overlo| 00009390 61 64 5f 6d 61 6e 74 79 70 65 0d 06 46 15 4c 44 |ad_mantype..F.LD| 000093a0 52 20 52 34 2c 5b 52 31 30 2c 23 26 31 43 5d 0d |R R4,[R10,#&1C].| 000093b0 06 47 15 2e 6f 76 65 72 6c 6f 61 64 5f 6d 61 6e |.G..overload_man| 000093c0 74 79 70 65 0d 06 48 10 41 44 44 20 52 34 2c 52 |type..H.ADD R4,R| 000093d0 34 2c 23 31 0d 06 49 0e 43 4d 50 20 52 34 2c 23 |4,#1..I.CMP R4,#| 000093e0 35 37 0d 06 4a 0d ec 51 20 52 34 2c 23 34 39 0d |57..J..Q R4,#49.| 000093f0 06 4b 15 53 54 52 20 52 34 2c 5b 52 31 30 2c 23 |.K.STR R4,[R10,#| 00009400 26 31 43 5d 0d 06 4c 14 4c 44 52 20 52 38 2c 5b |&1C]..L.LDR R8,[| 00009410 52 31 30 2c 23 26 43 5d 0d 06 4d 15 4c 44 52 20 |R10,#&C]..M.LDR | 00009420 52 39 2c 5b 52 31 30 2c 23 26 31 30 5d 0d 06 4e |R9,[R10,#&10]..N| 00009430 15 4c 44 52 20 52 33 2c 5b 52 31 30 2c 23 26 31 |.LDR R3,[R10,#&1| 00009440 38 5d 0d 06 4f 0d 43 4d 50 20 52 33 2c 23 31 0d |8]..O.CMP R3,#1.| 00009450 06 50 12 41 44 44 45 51 20 52 38 2c 52 38 2c 52 |.P.ADDEQ R8,R8,R| 00009460 37 0d 06 51 15 ec 51 20 52 35 2c 23 34 39 20 20 |7..Q..Q R5,#49 | 00009470 20 20 20 20 20 20 0d 06 52 0d 43 4d 50 20 52 33 | ..R.CMP R3| 00009480 2c 23 32 0d 06 53 12 53 55 42 45 51 20 52 38 2c |,#2..S.SUBEQ R8,| 00009490 52 38 2c 52 37 0d 06 54 0d ec 51 20 52 35 2c 23 |R8,R7..T..Q R5,#| 000094a0 35 30 0d 06 55 0d 43 4d 50 20 52 33 2c 23 33 0d |50..U.CMP R3,#3.| 000094b0 06 56 12 41 44 44 45 51 20 52 39 2c 52 39 2c 52 |.V.ADDEQ R9,R9,R| 000094c0 37 0d 06 57 0d ec 51 20 52 35 2c 23 35 31 0d 06 |7..W..Q R5,#51..| 000094d0 58 0d 43 4d 50 20 52 33 2c 23 34 0d 06 59 12 53 |X.CMP R3,#4..Y.S| 000094e0 55 42 45 51 20 52 39 2c 52 39 2c 52 37 0d 06 5a |UBEQ R9,R9,R7..Z| 000094f0 0d ec 51 20 52 35 2c 23 35 32 0d 06 5b 15 2e 6f |..Q R5,#52..[..o| 00009500 75 74 5f 6d 61 6e 5f 6d 6f 76 65 6d 65 6e 74 0d |ut_man_movement.| 00009510 06 5c 15 41 44 52 20 52 36 2c 6d 61 6e 5f 73 70 |.\.ADR R6,man_sp| 00009520 72 69 74 65 0d 06 5d 13 53 54 52 42 20 52 35 2c |rite..].STRB R5,| 00009530 5b 52 36 2c 23 33 5d 0d 06 5e 13 53 54 52 42 20 |[R6,#3]..^.STRB | 00009540 52 34 2c 5b 52 36 2c 23 34 5d 0d 06 5f 14 53 54 |R4,[R6,#4].._.ST| 00009550 52 20 52 38 2c 5b 52 31 30 2c 23 26 43 5d 0d 06 |R R8,[R10,#&C]..| 00009560 60 15 53 54 52 20 52 39 2c 5b 52 31 30 2c 23 26 |`.STR R9,[R10,#&| 00009570 31 30 5d 0d 06 61 0f 4d 4f 56 20 52 30 2c 23 26 |10]..a.MOV R0,#&| 00009580 33 34 0d 06 62 1e 41 44 44 20 52 30 2c 52 30 2c |34..b.ADD R0,R0,| 00009590 23 26 31 30 30 20 20 20 20 20 20 20 20 20 20 20 |#&100 | 000095a0 0d 06 63 1e 4d 4f 56 20 52 31 2c 52 31 31 20 20 |..c.MOV R1,R11 | 000095b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d 06 | ..| 000095c0 64 1e 41 44 52 20 52 32 2c 6d 61 6e 5f 73 70 72 |d.ADR R2,man_spr| 000095d0 69 74 65 20 20 20 20 20 20 20 20 20 0d 06 65 1e |ite ..e.| 000095e0 4d 4f 56 20 52 33 2c 52 38 20 20 20 20 20 20 20 |MOV R3,R8 | 000095f0 20 20 20 20 20 20 20 20 20 20 0d 06 66 1e 4d 4f | ..f.MO| 00009600 56 20 52 34 2c 52 39 20 20 20 20 20 20 20 20 20 |V R4,R9 | 00009610 20 20 20 20 20 20 20 20 0d 06 67 1e 4d 4f 56 20 | ..g.MOV | 00009620 52 35 2c 23 26 38 20 20 20 20 20 20 20 20 20 20 |R5,#&8 | 00009630 20 20 20 20 20 20 0d 06 68 1e 41 44 52 20 52 36 | ..h.ADR R6| 00009640 2c 6d 61 6e 5f 73 63 61 6c 65 20 20 20 20 20 20 |,man_scale | 00009650 20 20 20 20 0d 06 69 1e 4d 4f 56 20 52 37 2c 23 | ..i.MOV R7,#| 00009660 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |0 | 00009670 20 20 0d 06 6a 15 53 57 49 20 22 4f 53 5f 53 70 | ..j.SWI "OS_Sp| 00009680 72 69 74 65 4f 70 22 0d 06 6b 0f 4d 4f 56 20 52 |riteOp"..k.MOV R| 00009690 31 35 2c 52 31 34 0d 06 6c 0f 2e 6d 61 6e 5f 73 |15,R14..l..man_s| 000096a0 70 72 69 74 65 0d 06 6d 0e 45 51 55 53 20 22 6d |prite..m.EQUS "m| 000096b0 61 6e 22 0d 06 6e 0b 45 51 55 42 20 34 39 0d 06 |an"..n.EQUB 49..| 000096c0 6f 0a 45 51 55 42 20 30 0d 06 70 0a 45 51 55 42 |o.EQUB 0..p.EQUB| 000096d0 20 30 0d 06 71 0a 45 51 55 42 20 30 0d 06 72 09 | 0..q.EQUB 0..r.| 000096e0 41 4c 49 47 4e 0d 06 73 0e 2e 6d 61 6e 5f 73 63 |ALIGN..s..man_sc| 000096f0 61 6c 65 0d 06 74 0a 45 51 55 44 20 31 0d 06 75 |ale..t.EQUD 1..u| 00009700 0d 45 51 55 44 20 31 2b 56 25 0d 06 76 0a 45 51 |.EQUD 1+V%..v.EQ| 00009710 55 44 20 31 0d 06 77 0a 45 51 55 44 20 31 0d 06 |UD 1..w.EQUD 1..| 00009720 78 11 2e 65 6e 64 5f 6f 66 5f 63 6f 64 65 32 0d |x..end_of_code2.| 00009730 06 79 05 5d 0d 06 7a 05 ed 0d 06 7b 0c 2a 46 58 |.y.]..z....{.*FX| 00009740 31 31 32 2c 31 0d 06 7c 0c 2a 46 58 31 31 33 2c |112,1..|.*FX113,| 00009750 31 0d 06 7d 05 e1 0d 06 7e 17 dd f2 70 75 6c 6c |1..}....~...pull| 00009760 5f 70 61 63 5f 63 6f 64 65 5f 76 61 72 0d 06 7f |_pac_code_var...| 00009770 18 6d 61 69 6e 25 3d 21 28 6d 5f 63 6f 64 65 32 |.main%=!(m_code2| 00009780 25 2b 26 30 29 0d 06 80 19 61 6c 69 65 6e 25 3d |%+&0)....alien%=| 00009790 21 28 6d 5f 63 6f 64 65 32 25 2b 26 34 29 0d 06 |!(m_code2%+&4)..| 000097a0 81 19 61 70 70 6c 65 25 3d 21 28 6d 5f 63 6f 64 |..apple%=!(m_cod| 000097b0 65 32 25 2b 26 38 29 0d 06 82 19 72 61 69 6e 25 |e2%+&8)....rain%| 000097c0 3d 21 28 6d 5f 63 6f 64 65 32 25 2b 26 34 34 29 |=!(m_code2%+&44)| 000097d0 0d 06 83 1d 72 61 69 6e 5f 76 67 61 25 3d 21 28 |....rain_vga%=!(| 000097e0 6d 5f 63 6f 64 65 32 25 2b 26 34 38 29 0d 06 84 |m_code2%+&48)...| 000097f0 1c 74 65 73 74 69 6e 67 25 3d 21 28 6d 5f 63 6f |.testing%=!(m_co| 00009800 64 65 32 25 2b 26 33 43 29 0d 06 85 05 e1 0d 06 |de2%+&3C).......| 00009810 86 10 dd f2 73 65 74 5f 73 63 72 65 65 6e 0d 06 |....set_screen..| 00009820 87 15 f2 63 6c 65 61 72 3a f2 63 6c 65 61 72 5f |...clear:.clear_| 00009830 74 6f 70 0d 06 88 16 e7 73 65 6c 5f 73 70 72 69 |top.....sel_spri| 00009840 74 65 24 3c 3e 22 22 20 8c 0d 06 89 20 ef 34 3a |te$<>"" .... .4:| 00009850 fb 33 3a f1 8a 35 36 2c 31 29 3b 73 65 6c 5f 73 |.3:..56,1);sel_s| 00009860 70 72 69 74 65 24 3a ef 35 0d 06 8a 46 c8 99 22 |prite$:.5...F.."| 00009870 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c 26 31 32 |OS_SpriteOp",&12| 00009880 38 2c 73 70 72 69 74 65 5f 61 72 65 61 31 25 2c |8,sprite_area1%,| 00009890 73 65 6c 5f 73 70 72 69 74 65 24 20 b8 20 2c 2c |sel_sprite$ . ,,| 000098a0 2c 77 69 64 74 68 25 2c 68 65 69 67 68 74 25 0d |,width%,height%.| 000098b0 06 8b 3b f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 |..;.plot_sprite(| 000098c0 31 31 35 30 2c 39 36 30 2c 36 30 2c 31 36 2c 77 |1150,960,60,16,w| 000098d0 69 64 74 68 25 2c 68 65 69 67 68 74 25 2c 73 65 |idth%,height%,se| 000098e0 6c 5f 73 70 72 69 74 65 24 29 0d 06 8c 05 cd 0d |l_sprite$)......| 000098f0 06 8d 29 ef 32 33 2c 31 32 38 2c 32 35 35 2c 32 |..).23,128,255,2| 00009900 35 35 2c 32 35 35 2c 32 35 35 2c 32 35 35 2c 32 |55,255,255,255,2| 00009910 35 35 2c 32 35 35 2c 30 0d 06 8e 3c e3 66 25 3d |55,255,0...<.f%=| 00009920 30 b8 31 35 3a 66 24 3d c3 28 66 25 29 2b bd 28 |0.15:f$=.(f%)+.(| 00009930 31 32 38 29 2b bd 28 31 32 38 29 3a ec 36 34 2a |128)+.(128):.64*| 00009940 66 25 2c 31 30 32 32 3a e6 30 2c 66 25 3a f1 3b |f%,1022:.0,f%:.;| 00009950 66 24 3a ed 0d 06 8f 05 e1 0d 06 90 13 dd a4 63 |f$:............c| 00009960 6f 75 6e 74 5f 73 70 72 69 74 65 73 0d 06 91 2b |ount_sprites...+| 00009970 c8 99 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c |.."OS_SpriteOp",| 00009980 26 31 30 38 2c 73 61 31 25 20 b8 20 72 30 2c 72 |&108,sa1% . r0,r| 00009990 31 2c 72 32 2c 72 33 0d 06 92 07 3d 72 33 0d 06 |1,r2,r3....=r3..| 000099a0 93 18 dd a4 73 70 72 69 74 65 5f 64 61 74 61 28 |....sprite_data(| 000099b0 6e 61 6d 65 24 29 0d 06 94 3a c8 99 22 4f 53 5f |name$)...:.."OS_| 000099c0 53 70 72 69 74 65 4f 70 22 2c 26 31 31 38 2c 73 |SpriteOp",&118,s| 000099d0 70 72 69 74 65 5f 61 72 65 61 31 25 2c 6e 61 6d |prite_area1%,nam| 000099e0 65 24 20 b8 20 72 30 25 2c 72 31 25 2c 72 32 25 |e$ . r0%,r1%,r2%| 000099f0 0d 06 95 13 73 70 72 69 74 65 5f 6f 6e 65 25 3d |....sprite_one%=| 00009a00 72 32 25 0d 06 96 13 3d 73 70 72 69 74 65 5f 6f |r2%....=sprite_o| 00009a10 6e 65 25 2b 34 34 0d 06 97 1f dd a4 73 70 72 69 |ne%+44......spri| 00009a20 74 65 5f 73 69 7a 65 28 73 70 72 69 74 65 5f 61 |te_size(sprite_a| 00009a30 72 65 61 25 29 0d 06 98 38 c8 99 22 4f 53 5f 53 |rea%)...8.."OS_S| 00009a40 70 72 69 74 65 4f 70 22 2c 26 31 31 38 2c 73 70 |priteOp",&118,sp| 00009a50 72 69 74 65 5f 61 72 65 61 25 2c 22 73 31 22 20 |rite_area%,"s1" | 00009a60 b8 20 72 30 25 2c 72 31 25 2c 72 32 25 0d 06 99 |. r0%,r1%,r2%...| 00009a70 13 73 70 72 69 74 65 5f 6f 6e 65 25 3d 72 32 25 |.sprite_one%=r2%| 00009a80 0d 06 9a 13 3d 21 28 73 70 72 69 74 65 5f 6f 6e |....=!(sprite_on| 00009a90 65 25 29 0d 06 9b 11 dd f2 74 65 73 74 5f 74 61 |e%)......test_ta| 00009aa0 62 6c 65 73 0d 06 9c 0c 2a 66 78 31 31 33 2c 31 |bles....*fx113,1| 00009ab0 0d 06 9d 0c 2a 66 78 31 31 32 2c 31 0d 06 9e 11 |....*fx112,1....| 00009ac0 e7 72 65 73 5f 78 25 3c 36 34 30 20 8c 0d 06 9f |.res_x%<640 ....| 00009ad0 23 74 61 62 5f 78 25 3d 72 65 73 5f 78 25 2b 31 |#tab_x%=res_x%+1| 00009ae0 30 30 3a 74 61 62 5f 79 25 3d 72 65 73 5f 79 25 |00:tab_y%=res_y%| 00009af0 0d 06 a0 05 cc 0d 06 a1 23 74 61 62 5f 78 25 3d |........#tab_x%=| 00009b00 72 65 73 5f 78 25 2d 34 30 30 3a 74 61 62 5f 79 |res_x%-400:tab_y| 00009b10 25 3d 72 65 73 5f 79 25 0d 06 a2 05 cd 0d 06 a3 |%=res_y%........| 00009b20 42 c8 99 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 |B.."OS_SpriteOp"| 00009b30 2c 26 31 31 30 2c 73 70 72 69 74 65 5f 61 72 65 |,&110,sprite_are| 00009b40 61 31 25 2c 22 74 61 62 5f 62 6c 61 6e 6b 22 2c |a1%,"tab_blank",| 00009b50 30 2c 32 30 2c 32 30 2c 38 34 30 2c 31 38 30 0d |0,20,20,840,180.| 00009b60 06 a4 18 f2 62 6f 78 32 28 32 38 2c 32 38 2c 38 |....box2(28,28,8| 00009b70 30 30 2c 31 34 30 29 0d 06 a5 22 f2 70 72 69 28 |00,140)...".pri(| 00009b80 36 30 2c 31 31 32 2c 22 4d 69 73 73 69 6e 67 20 |60,112,"Missing | 00009b90 6e 75 6d 62 65 72 3f 22 29 0d 06 a6 1a e7 20 66 |number?")..... f| 00009ba0 69 72 73 74 5f 6f 72 5f 73 65 63 6f 6e 64 25 3d |irst_or_second%=| 00009bb0 31 20 8c 0d 06 a7 37 74 61 62 6c 65 73 24 3d c3 |1 ....7tables$=.| 00009bc0 28 74 61 62 6c 65 73 25 28 62 6f 6d 25 2c 31 29 |(tables%(bom%,1)| 00009bd0 29 2b 22 78 6b 3d 22 2b c3 28 74 61 62 6c 65 73 |)+"xk="+.(tables| 00009be0 25 28 62 6f 6d 25 2c 33 29 29 0d 06 a8 05 cc 0d |%(bom%,3))......| 00009bf0 06 a9 3a 74 61 62 6c 65 73 24 3d 22 6b 78 22 2b |..:tables$="kx"+| 00009c00 c3 28 74 61 62 6c 65 73 25 28 62 6f 6d 25 2c 32 |.(tables%(bom%,2| 00009c10 29 29 2b 22 3d 22 2b c3 28 74 61 62 6c 65 73 25 |))+"="+.(tables%| 00009c20 28 62 6f 6d 25 2c 33 29 29 0d 06 aa 05 cd 0d 06 |(bom%,3)).......| 00009c30 ab 25 f2 70 6c 6f 74 5f 6e 75 6d 62 65 72 73 32 |.%.plot_numbers2| 00009c40 28 34 36 30 2c 31 30 32 2c 35 2c 74 61 62 6c 65 |(460,102,5,table| 00009c50 73 24 29 0d 06 ac 3c e3 66 25 3d 30 20 b8 20 31 |s$)...<.f%=0 . 1| 00009c60 34 3a f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 38 |4:.plot_sprite(8| 00009c70 30 2b 66 25 2a 34 36 2c 33 32 2c 31 2c 31 2c 31 |0+f%*46,32,1,1,1| 00009c80 2c 31 2c c3 28 66 25 29 2b 22 6f 22 29 3a ed 0d |,1,.(f%)+"o"):..| 00009c90 06 ad 2d f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 |..-.plot_sprite(| 00009ca0 38 30 2b 31 2a 34 36 2c 33 32 2c 31 2c 31 2c 31 |80+1*46,32,1,1,1| 00009cb0 2c 31 2c c3 28 31 29 2b 22 6e 22 29 0d 06 ae 1b |,1,.(1)+"n")....| 00009cc0 70 6f 69 6e 74 65 72 25 3d 31 3a 6f 75 74 25 3d |pointer%=1:out%=| 00009cd0 30 3a 67 6f 25 3d 30 0d 06 af 05 f5 0d 06 b0 28 |0:go%=0........(| 00009ce0 c8 99 22 4f 53 5f 42 79 74 65 22 2c 26 37 39 2c |.."OS_Byte",&79,| 00009cf0 28 32 35 20 82 20 26 38 30 29 20 b8 20 72 30 2c |(25 . &80) . r0,| 00009d00 79 65 73 25 0d 06 b1 35 e7 20 79 65 73 25 3d 26 |yes%...5. yes%=&| 00009d10 46 46 20 80 20 70 6f 69 6e 74 65 72 25 3e 31 3a |FF . pointer%>1:| 00009d20 70 6f 69 6e 74 65 72 25 3d 70 6f 69 6e 74 65 72 |pointer%=pointer| 00009d30 25 2d 31 3a 67 6f 25 3d 31 0d 06 b2 29 c8 99 22 |%-1:go%=1...).."| 00009d40 4f 53 5f 42 79 74 65 22 2c 26 37 39 2c 28 31 32 |OS_Byte",&79,(12| 00009d50 31 20 82 20 26 38 30 29 20 b8 20 72 30 2c 79 65 |1 . &80) . r0,ye| 00009d60 73 25 0d 06 b3 36 e7 20 79 65 73 25 3d 26 46 46 |s%...6. yes%=&FF| 00009d70 20 80 20 70 6f 69 6e 74 65 72 25 3c 31 32 3a 70 | . pointer%<12:p| 00009d80 6f 69 6e 74 65 72 25 3d 70 6f 69 6e 74 65 72 25 |ointer%=pointer%| 00009d90 2b 31 3a 67 6f 25 3d 31 0d 06 b4 28 c8 99 22 4f |+1:go%=1...(.."O| 00009da0 53 5f 42 79 74 65 22 2c 26 37 39 2c 28 37 33 20 |S_Byte",&79,(73 | 00009db0 82 20 26 38 30 29 20 b8 20 72 30 2c 79 65 73 25 |. &80) . r0,yes%| 00009dc0 0d 06 b5 15 e7 20 79 65 73 25 3d 26 46 46 20 6f |..... yes%=&FF o| 00009dd0 75 74 25 3d 31 0d 06 b6 22 54 24 3d a4 70 72 69 |ut%=1..."T$=.pri| 00009de0 6e 74 5f 74 69 6d 65 72 28 74 78 32 25 2c 74 79 |nt_timer(tx2%,ty| 00009df0 32 25 2c 33 2c 31 29 0d 06 b7 0c e7 67 6f 25 3d |2%,3,1).....go%=| 00009e00 31 20 8c 0d 06 b8 19 f2 63 61 63 68 65 73 6f 75 |1 ......cachesou| 00009e10 6e 64 28 22 70 6c 6f 70 22 2c 31 29 0d 06 b9 10 |nd("plop",1)....| 00009e20 d4 20 31 2c 26 31 37 46 2c 31 2c 31 0d 06 ba 3b |. 1,&17F,1,1...;| 00009e30 f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 38 30 2b |.plot_sprite(80+| 00009e40 70 6f 69 6e 74 65 72 25 2a 34 36 2c 33 32 2c 31 |pointer%*46,32,1| 00009e50 2c 31 2c 31 2c 31 2c c3 28 70 6f 69 6e 74 65 72 |,1,1,1,.(pointer| 00009e60 25 29 2b 22 6e 22 29 0d 06 bb 41 f2 70 6c 6f 74 |%)+"n")...A.plot| 00009e70 5f 73 70 72 69 74 65 28 38 30 2b 28 70 6f 69 6e |_sprite(80+(poin| 00009e80 74 65 72 25 2d 31 29 2a 34 36 2c 33 32 2c 31 2c |ter%-1)*46,32,1,| 00009e90 31 2c 31 2c 31 2c c3 28 70 6f 69 6e 74 65 72 25 |1,1,1,.(pointer%| 00009ea0 2d 31 29 2b 22 6f 22 29 0d 06 bc 41 f2 70 6c 6f |-1)+"o")...A.plo| 00009eb0 74 5f 73 70 72 69 74 65 28 38 30 2b 28 70 6f 69 |t_sprite(80+(poi| 00009ec0 6e 74 65 72 25 2b 31 29 2a 34 36 2c 33 32 2c 31 |nter%+1)*46,32,1| 00009ed0 2c 31 2c 31 2c 31 2c c3 28 70 6f 69 6e 74 65 72 |,1,1,1,.(pointer| 00009ee0 25 2b 31 29 2b 22 6f 22 29 0d 06 bd 14 f2 70 61 |%+1)+"o").....pa| 00009ef0 75 73 65 28 32 30 29 3a 67 6f 25 3d 30 0d 06 be |use(20):go%=0...| 00009f00 05 cd 0d 06 bf 0d e7 6f 75 74 25 3d 31 20 8c 0d |.......out%=1 ..| 00009f10 06 c0 1b f2 63 61 63 68 65 73 6f 75 6e 64 28 22 |....cachesound("| 00009f20 77 72 6f 6e 67 32 22 2c 31 29 0d 06 c1 1a e7 20 |wrong2",1)..... | 00009f30 66 69 72 73 74 5f 6f 72 5f 73 65 63 6f 6e 64 25 |first_or_second%| 00009f40 3d 31 20 8c 0d 06 c2 31 e7 20 70 6f 69 6e 74 65 |=1 ....1. pointe| 00009f50 72 25 3c 3e 74 61 62 6c 65 73 25 28 62 6f 6d 25 |r%<>tables%(bom%| 00009f60 2c 32 29 20 6f 75 74 25 3d 30 3a d4 31 2c 2d 31 |,2) out%=0:.1,-1| 00009f70 35 2c 31 2c 31 0d 06 c3 05 cc 0d 06 c4 31 e7 20 |5,1,1........1. | 00009f80 70 6f 69 6e 74 65 72 25 3c 3e 74 61 62 6c 65 73 |pointer%<>tables| 00009f90 25 28 62 6f 6d 25 2c 31 29 20 6f 75 74 25 3d 30 |%(bom%,1) out%=0| 00009fa0 3a d4 31 2c 2d 31 35 2c 31 2c 31 0d 06 c5 05 cd |:.1,-15,1,1.....| 00009fb0 0d 06 c6 0e f2 70 61 75 73 65 28 33 30 29 0d 06 |.....pause(30)..| 00009fc0 c7 05 cd 0d 06 c8 15 fd 20 6f 75 74 25 3d 31 20 |........ out%=1 | 00009fd0 84 20 54 24 3d 22 30 22 0d 06 c9 18 f2 63 61 63 |. T$="0".....cac| 00009fe0 68 65 73 6f 75 6e 64 28 22 6f 6b 32 22 2c 31 29 |hesound("ok2",1)| 00009ff0 0d 06 ca 10 d4 20 31 2c 26 31 37 46 2c 31 2c 31 |..... 1,&17F,1,1| 0000a000 0d 06 cb 4c 74 61 62 6c 65 73 24 3d c3 28 74 61 |...Ltables$=.(ta| 0000a010 62 6c 65 73 25 28 62 6f 6d 25 2c 31 29 29 2b 22 |bles%(bom%,1))+"| 0000a020 78 22 2b c3 28 74 61 62 6c 65 73 25 28 62 6f 6d |x"+.(tables%(bom| 0000a030 25 2c 32 29 29 2b 22 3d 22 2b c3 28 74 61 62 6c |%,2))+"="+.(tabl| 0000a040 65 73 25 28 62 6f 6d 25 2c 33 29 29 0d 06 cc 25 |es%(bom%,3))...%| 0000a050 f2 70 6c 6f 74 5f 6e 75 6d 62 65 72 73 32 28 34 |.plot_numbers2(4| 0000a060 36 30 2c 31 30 32 2c 35 2c 74 61 62 6c 65 73 24 |60,102,5,tables$| 0000a070 29 0d 06 cd 0f f2 70 61 75 73 65 28 31 30 30 29 |).....pause(100)| 0000a080 0d 06 ce 17 73 70 65 63 69 61 6c 25 3d 73 70 65 |....special%=spe| 0000a090 63 69 61 6c 25 2d 31 0d 06 cf 11 21 28 73 63 61 |cial%-1....!(sca| 0000a0a0 6c 65 25 2b 30 29 3d 31 0d 06 d0 11 21 28 73 63 |le%+0)=1....!(sc| 0000a0b0 61 6c 65 25 2b 34 29 3d 31 0d 06 d1 11 21 28 73 |ale%+4)=1....!(s| 0000a0c0 63 61 6c 65 25 2b 38 29 3d 31 0d 06 d2 12 21 28 |cale%+8)=1....!(| 0000a0d0 73 63 61 6c 65 25 2b 31 32 29 3d 31 0d 06 d3 3a |scale%+12)=1...:| 0000a0e0 c8 99 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c |.."OS_SpriteOp",| 0000a0f0 26 31 33 34 2c 73 61 31 25 2c 22 74 61 62 5f 62 |&134,sa1%,"tab_b| 0000a100 6c 61 6e 6b 22 2c 32 30 2c 32 30 2c 30 2c 73 63 |lank",20,20,0,sc| 0000a110 61 6c 65 25 2c 30 0d 06 d4 1f f2 63 61 63 68 65 |ale%,0.....cache| 0000a120 73 6f 75 6e 64 28 22 61 6c 69 65 6e 73 6e 65 61 |sound("aliensnea| 0000a130 72 22 2c 31 29 0d 06 d5 05 e1 0d 06 d6 12 dd f2 |r",1)...........| 0000a140 69 6e 74 69 67 65 72 5f 69 63 6e 73 0d 06 d7 0e |intiger_icns....| 0000a150 e3 66 25 3d 30 20 b8 20 31 32 0d 06 d8 39 e7 28 |.f%=0 . 12...9.(| 0000a160 55 25 20 80 20 28 31 3c 3c 66 25 29 29 3d 28 31 |U% . (1<<f%))=(1| 0000a170 3c 3c 66 25 29 20 66 69 72 73 74 6e 25 28 66 25 |<<f%) firstn%(f%| 0000a180 29 3d 31 20 8b 20 66 69 72 73 74 6e 25 28 66 25 |)=1 . firstn%(f%| 0000a190 29 3d 30 0d 06 d9 05 ed 0d 06 da 0e e3 66 25 3d |)=0..........f%=| 0000a1a0 30 20 b8 20 31 32 0d 06 db 3b e7 28 57 25 20 80 |0 . 12...;.(W% .| 0000a1b0 20 28 31 3c 3c 66 25 29 29 3d 28 31 3c 3c 66 25 | (1<<f%))=(1<<f%| 0000a1c0 29 20 73 65 63 6f 6e 64 6e 25 28 66 25 29 3d 31 |) secondn%(f%)=1| 0000a1d0 20 8b 20 73 65 63 6f 6e 64 6e 25 28 66 25 29 3d | . secondn%(f%)=| 0000a1e0 30 0d 06 dc 05 ed 0d 06 dd 31 e7 28 57 25 20 80 |0........1.(W% .| 0000a1f0 20 28 31 3c 3c 31 33 29 29 3d 28 31 3c 3c 31 33 | (1<<13))=(1<<13| 0000a200 29 20 6d 69 78 65 64 6e 25 3d 31 20 8b 20 6d 69 |) mixedn%=1 . mi| 0000a210 78 65 64 6e 25 3d 30 0d 06 de 05 e1 0d 06 df 13 |xedn%=0.........| 0000a220 dd f2 73 65 74 5f 74 61 62 6c 65 5f 6f 6e 65 0d |..set_table_one.| 0000a230 06 e0 11 f2 69 6e 74 69 67 65 72 5f 69 63 6e 73 |....intiger_icns| 0000a240 0d 06 e1 0f f2 63 6c 65 61 72 5f 72 6e 64 31 0d |.....clear_rnd1.| 0000a250 06 e2 0f f2 63 6c 65 61 72 5f 72 6e 64 32 0d 06 |....clear_rnd2..| 0000a260 e3 19 e3 66 69 6e 64 25 3d 31 20 b8 20 6e 75 6d |...find%=1 . num| 0000a270 62 65 72 5f 6f 66 25 0d 06 e4 13 72 65 70 65 61 |ber_of%....repea| 0000a280 74 5f 65 72 72 6f 72 25 3d 30 0d 06 e5 05 f5 0d |t_error%=0......| 0000a290 06 e6 21 72 65 70 65 61 74 5f 65 72 72 6f 72 25 |..!repeat_error%| 0000a2a0 3d 72 65 70 65 61 74 5f 65 72 72 6f 72 25 2b 31 |=repeat_error%+1| 0000a2b0 0d 06 e7 05 f5 0d 06 e8 12 72 6e 64 25 3d 28 b3 |.........rnd%=(.| 0000a2c0 28 31 33 29 2d 31 29 0d 06 e9 1e fd 20 66 69 72 |(13)-1)..... fir| 0000a2d0 73 74 6e 25 28 72 6e 64 25 29 3d 31 20 80 20 72 |stn%(rnd%)=1 . r| 0000a2e0 6e 64 25 3e 30 0d 06 ea 2d fd 20 72 6e 64 5f 70 |nd%>0...-. rnd_p| 0000a2f0 69 63 6b 65 72 31 25 28 72 6e 64 25 29 3d 30 20 |icker1%(rnd%)=0 | 0000a300 84 20 72 65 70 65 61 74 5f 65 72 72 6f 72 25 3d |. repeat_error%=| 0000a310 31 30 0d 06 eb 18 72 6e 64 5f 70 69 63 6b 65 72 |10....rnd_picker| 0000a320 31 25 28 72 6e 64 25 29 3d 31 0d 06 ec 1c 72 6e |1%(rnd%)=1....rn| 0000a330 64 5f 6e 75 6d 62 65 72 31 25 28 66 69 6e 64 25 |d_number1%(find%| 0000a340 29 3d 72 6e 64 25 0d 06 ed 13 72 65 70 65 61 74 |)=rnd%....repeat| 0000a350 5f 65 72 72 6f 72 25 3d 30 0d 06 ee 05 f5 0d 06 |_error%=0.......| 0000a360 ef 21 72 65 70 65 61 74 5f 65 72 72 6f 72 25 3d |.!repeat_error%=| 0000a370 72 65 70 65 61 74 5f 65 72 72 6f 72 25 2b 31 0d |repeat_error%+1.| 0000a380 06 f0 05 f5 0d 06 f1 12 72 6e 64 25 3d 28 b3 28 |........rnd%=(.(| 0000a390 31 33 29 2d 31 29 0d 06 f2 1f fd 20 73 65 63 6f |13)-1)..... seco| 0000a3a0 6e 64 6e 25 28 72 6e 64 25 29 3d 31 20 80 20 72 |ndn%(rnd%)=1 . r| 0000a3b0 6e 64 25 3e 30 0d 06 f3 2d fd 20 72 6e 64 5f 70 |nd%>0...-. rnd_p| 0000a3c0 69 63 6b 65 72 32 25 28 72 6e 64 25 29 3d 30 20 |icker2%(rnd%)=0 | 0000a3d0 84 20 72 65 70 65 61 74 5f 65 72 72 6f 72 25 3d |. repeat_error%=| 0000a3e0 31 30 0d 06 f4 18 72 6e 64 5f 70 69 63 6b 65 72 |10....rnd_picker| 0000a3f0 32 25 28 72 6e 64 25 29 3d 31 0d 06 f5 1c 72 6e |2%(rnd%)=1....rn| 0000a400 64 5f 6e 75 6d 62 65 72 32 25 28 66 69 6e 64 25 |d_number2%(find%| 0000a410 29 3d 72 6e 64 25 0d 06 f6 05 ed 0d 06 f7 19 e3 |)=rnd%..........| 0000a420 66 69 6e 64 25 3d 31 20 b8 20 6e 75 6d 62 65 72 |find%=1 . number| 0000a430 5f 6f 66 25 0d 06 f8 1c e7 6d 69 78 65 64 6e 25 |_of%.....mixedn%| 0000a440 3d 31 20 80 20 b3 28 31 30 30 29 3e 35 30 20 8c |=1 . .(100)>50 .| 0000a450 0d 06 f9 31 61 25 3d 72 6e 64 5f 6e 75 6d 62 65 |...1a%=rnd_numbe| 0000a460 72 31 25 28 66 69 6e 64 25 29 3a 62 25 3d 72 6e |r1%(find%):b%=rn| 0000a470 64 5f 6e 75 6d 62 65 72 32 25 28 66 69 6e 64 25 |d_number2%(find%| 0000a480 29 0d 06 fa 31 72 6e 64 5f 6e 75 6d 62 65 72 32 |)...1rnd_number2| 0000a490 25 28 66 69 6e 64 25 29 3d 61 25 3a 72 6e 64 5f |%(find%)=a%:rnd_| 0000a4a0 6e 75 6d 62 65 72 31 25 28 66 69 6e 64 25 29 3d |number1%(find%)=| 0000a4b0 62 25 0d 06 fb 05 cd 0d 06 fc 28 74 61 62 6c 65 |b%........(table| 0000a4c0 73 25 28 66 69 6e 64 25 2c 31 29 3d 72 6e 64 5f |s%(find%,1)=rnd_| 0000a4d0 6e 75 6d 62 65 72 31 25 28 66 69 6e 64 25 29 0d |number1%(find%).| 0000a4e0 06 fd 28 74 61 62 6c 65 73 25 28 66 69 6e 64 25 |..(tables%(find%| 0000a4f0 2c 32 29 3d 72 6e 64 5f 6e 75 6d 62 65 72 32 25 |,2)=rnd_number2%| 0000a500 28 66 69 6e 64 25 29 0d 06 fe 3c 74 61 62 6c 65 |(find%)...<table| 0000a510 73 25 28 66 69 6e 64 25 2c 33 29 3d 72 6e 64 5f |s%(find%,3)=rnd_| 0000a520 6e 75 6d 62 65 72 31 25 28 66 69 6e 64 25 29 2a |number1%(find%)*| 0000a530 72 6e 64 5f 6e 75 6d 62 65 72 32 25 28 66 69 6e |rnd_number2%(fin| 0000a540 64 25 29 0d 06 ff 05 ed 0d 07 00 0b 66 69 72 6e |d%).........firn| 0000a550 25 3d 30 0d 07 01 0b 73 65 63 6e 25 3d 30 0d 07 |%=0....secn%=0..| 0000a560 02 0c e3 66 25 3d 31 b8 31 32 0d 07 03 1c e7 73 |...f%=1.12.....s| 0000a570 65 63 6f 6e 64 6e 25 28 66 25 29 3d 31 3a 73 65 |econdn%(f%)=1:se| 0000a580 63 6e 25 2b 3d 31 0d 07 04 05 ed 0d 07 05 0c e3 |cn%+=1..........| 0000a590 66 25 3d 31 b8 31 32 0d 07 06 1b e7 66 69 72 73 |f%=1.12.....firs| 0000a5a0 74 6e 25 28 66 25 29 3d 31 3a 66 69 72 6e 25 2b |tn%(f%)=1:firn%+| 0000a5b0 3d 31 0d 07 07 05 ed 0d 07 08 3a e7 66 69 72 6e |=1........:.firn| 0000a5c0 25 3c 73 65 63 6e 25 20 8c 20 66 69 72 73 74 5f |%<secn% . first_| 0000a5d0 6f 72 5f 73 65 63 6f 6e 64 25 3d 31 20 8b 20 66 |or_second%=1 . f| 0000a5e0 69 72 73 74 5f 6f 72 5f 73 65 63 6f 6e 64 25 3d |irst_or_second%=| 0000a5f0 32 0d 07 09 05 e1 0d 07 0a 1d dd f2 62 6f 78 32 |2...........box2| 0000a600 28 62 78 25 2c 62 79 25 2c 62 78 78 25 2c 62 79 |(bx%,by%,bxx%,by| 0000a610 79 25 29 0d 07 0b 1f 62 78 78 25 3d 62 78 25 2b |y%)....bxx%=bx%+| 0000a620 62 78 78 25 3a 62 79 79 25 3d 62 79 25 2b 62 79 |bxx%:byy%=by%+by| 0000a630 79 25 0d 07 0c 2d ef 32 34 2c 62 78 25 2d 34 3b |y%...-.24,bx%-4;| 0000a640 62 79 25 2d 34 3b 62 78 78 25 2b 34 3b 62 79 79 |by%-4;bxx%+4;byy| 0000a650 25 2b 34 3b 31 38 2c 30 2c 31 33 31 2c 31 36 0d |%+4;18,0,131,16.| 0000a660 07 0d 28 ef 32 34 2c 62 78 25 3b 62 79 25 3b 62 |..(.24,bx%;by%;b| 0000a670 78 78 25 3b 62 79 79 25 3b 31 38 2c 30 2c 31 32 |xx%;byy%;18,0,12| 0000a680 38 2c 31 36 2c 32 36 0d 07 0e 05 e1 0d 07 0f 25 |8,16,26........%| 0000a690 dd f2 70 6c 6f 74 5f 6e 75 6d 62 65 72 73 32 28 |..plot_numbers2(| 0000a6a0 78 25 2c 79 25 2c 64 69 67 69 74 73 25 2c 61 24 |x%,y%,digits%,a$| 0000a6b0 29 0d 07 10 12 e3 70 6e 25 3d 31 20 b8 20 a9 28 |).....pn%=1 . .(| 0000a6c0 61 24 29 0d 07 11 38 f2 70 6c 6f 74 5f 73 70 72 |a$)...8.plot_spr| 0000a6d0 69 74 65 28 28 78 25 2d 33 36 29 2b 28 70 6e 25 |ite((x%-36)+(pn%| 0000a6e0 2a 34 32 29 2c 79 25 2c 31 2c 31 2c 31 2c 31 2c |*42),y%,1,1,1,1,| 0000a6f0 c1 61 24 2c 70 6e 25 2c 31 29 29 0d 07 12 05 ed |.a$,pn%,1)).....| 0000a700 0d 07 13 05 e1 0d 07 14 10 dd f2 63 6c 65 61 72 |...........clear| 0000a710 5f 72 6e 64 31 0d 07 15 0c e3 66 25 3d 30 b8 31 |_rnd1.....f%=0.1| 0000a720 32 0d 07 16 16 72 6e 64 5f 70 69 63 6b 65 72 31 |2....rnd_picker1| 0000a730 25 28 66 25 29 3d 30 0d 07 17 05 ed 0d 07 18 05 |%(f%)=0.........| 0000a740 e1 0d 07 19 10 dd f2 63 6c 65 61 72 5f 72 6e 64 |.......clear_rnd| 0000a750 32 0d 07 1a 0c e3 66 25 3d 30 b8 31 32 0d 07 1b |2.....f%=0.12...| 0000a760 16 72 6e 64 5f 70 69 63 6b 65 72 32 25 28 66 25 |.rnd_picker2%(f%| 0000a770 29 3d 30 0d 07 1c 05 ed 0d 07 1d 05 e1 0d 07 1e |)=0.............| 0000a780 1a dd f2 64 65 66 69 6e 65 5f 62 75 74 74 6f 6e |...define_button| 0000a790 73 28 73 65 74 25 29 0d 07 1f 1e e7 73 65 74 25 |s(set%).....set%| 0000a7a0 3d 31 3a 74 6f 74 61 6c 5f 62 75 74 25 3d 31 3a |=1:total_but%=1:| 0000a7b0 f7 8d 54 66 47 0d 07 20 1e e7 73 65 74 25 3d 32 |..TfG.. ..set%=2| 0000a7c0 3a 74 6f 74 61 6c 5f 62 75 74 25 3d 32 3a f7 8d |:total_but%=2:..| 0000a7d0 54 67 47 0d 07 21 1e e7 73 65 74 25 3d 33 3a 74 |TgG..!..set%=3:t| 0000a7e0 6f 74 61 6c 5f 62 75 74 25 3d 32 3a f7 8d 54 68 |otal_but%=2:..Th| 0000a7f0 47 0d 07 22 1d e3 62 75 74 5f 6e 75 6d 62 65 72 |G.."..but_number| 0000a800 25 3d 31 b8 74 6f 74 61 6c 5f 62 75 74 25 0d 07 |%=1.total_but%..| 0000a810 23 7a f3 62 75 74 25 28 62 75 74 5f 6e 75 6d 62 |#z.but%(but_numb| 0000a820 65 72 25 2c 30 29 2c 62 75 74 25 28 62 75 74 5f |er%,0),but%(but_| 0000a830 6e 75 6d 62 65 72 25 2c 31 29 2c 62 75 74 25 28 |number%,1),but%(| 0000a840 62 75 74 5f 6e 75 6d 62 65 72 25 2c 32 29 2c 62 |but_number%,2),b| 0000a850 75 74 25 28 62 75 74 5f 6e 75 6d 62 65 72 25 2c |ut%(but_number%,| 0000a860 33 29 2c 62 75 74 25 28 62 75 74 5f 6e 75 6d 62 |3),but%(but_numb| 0000a870 65 72 25 2c 34 29 2c 62 75 74 24 28 62 75 74 5f |er%,4),but$(but_| 0000a880 6e 75 6d 62 65 72 25 29 0d 07 24 05 ed 0d 07 25 |number%)..$....%| 0000a890 05 e1 0d 07 26 1c dc 20 31 30 30 2c 31 30 30 2c |....&.. 100,100,| 0000a8a0 32 30 30 2c 34 30 2c 32 2c 47 6f 20 6f 6e 0d 07 |200,40,2,Go on..| 0000a8b0 27 5d dc 20 36 38 30 2c 32 30 2c 32 30 30 2c 36 |']. 680,20,200,6| 0000a8c0 30 2c 32 2c 59 65 73 2c 39 32 30 2c 32 30 2c 32 |0,2,Yes,920,20,2| 0000a8d0 30 30 2c 36 30 2c 32 2c 4e 6f 2c 31 30 36 30 2c |00,60,2,No,1060,| 0000a8e0 37 32 2c 32 30 30 2c 36 30 2c 32 2c 43 6f 72 72 |72,200,60,2,Corr| 0000a8f0 65 63 74 2c 32 30 2c 37 32 2c 32 30 30 2c 36 30 |ect,20,72,200,60| 0000a900 2c 32 2c 4e 65 78 74 20 62 6f 78 0d 07 28 33 dc |,2,Next box..(3.| 0000a910 20 38 32 30 2c 34 33 30 2c 31 39 30 2c 36 30 2c | 820,430,190,60,| 0000a920 32 2c 4c 65 66 74 2c 31 30 34 34 2c 34 33 30 2c |2,Left,1044,430,| 0000a930 31 39 30 2c 36 30 2c 32 2c 52 69 67 68 74 0d 07 |190,60,2,Right..| 0000a940 29 1c dd f2 62 75 74 5f 6f 66 66 28 62 78 25 2c |)...but_off(bx%,| 0000a950 62 79 25 2c 74 65 78 74 24 29 0d 07 2a 2b f2 70 |by%,text$)..*+.p| 0000a960 6c 6f 74 5f 73 70 72 69 74 65 28 62 78 25 2c 62 |lot_sprite(bx%,b| 0000a970 79 25 2c 31 2c 31 2c 31 2c 31 2c 22 62 75 74 74 |y%,1,1,1,1,"butt| 0000a980 6f 6e 31 22 29 0d 07 2b 26 6c 65 66 74 5f 6d 61 |on1")..+&left_ma| 0000a990 72 67 69 6e 25 3d 28 31 39 34 2d 28 a9 28 74 65 |rgin%=(194-(.(te| 0000a9a0 78 74 24 29 2a 31 36 29 29 2f 32 0d 07 2c 06 ef |xt$)*16))/2..,..| 0000a9b0 35 0d 07 2d 28 e6 30 2c 33 3a ec 62 78 25 2b 6c |5..-(.0,3:.bx%+l| 0000a9c0 65 66 74 5f 6d 61 72 67 69 6e 25 2c 62 79 25 2b |eft_margin%,by%+| 0000a9d0 34 32 3a f1 74 65 78 74 24 0d 07 2e 05 e1 0d 07 |42:.text$.......| 0000a9e0 2f 1b dd f2 62 75 74 5f 6f 6e 28 62 78 25 2c 62 |/...but_on(bx%,b| 0000a9f0 79 25 2c 74 65 78 74 24 29 0d 07 30 2b f2 70 6c |y%,text$)..0+.pl| 0000aa00 6f 74 5f 73 70 72 69 74 65 28 62 78 25 2c 62 79 |ot_sprite(bx%,by| 0000aa10 25 2c 31 2c 31 2c 31 2c 31 2c 22 62 75 74 74 6f |%,1,1,1,1,"butto| 0000aa20 6e 32 22 29 0d 07 31 26 6c 65 66 74 5f 6d 61 72 |n2")..1&left_mar| 0000aa30 67 69 6e 25 3d 28 31 39 34 2d 28 a9 28 74 65 78 |gin%=(194-(.(tex| 0000aa40 74 24 29 2a 31 36 29 29 2f 32 0d 07 32 06 ef 35 |t$)*16))/2..2..5| 0000aa50 0d 07 33 28 e6 30 2c 33 3a ec 62 78 25 2b 6c 65 |..3(.0,3:.bx%+le| 0000aa60 66 74 5f 6d 61 72 67 69 6e 25 2c 62 79 25 2b 34 |ft_margin%,by%+4| 0000aa70 32 3a f1 74 65 78 74 24 0d 07 34 05 e1 0d 07 35 |2:.text$..4....5| 0000aa80 1c dd f2 63 68 65 63 6b 5f 62 75 74 74 6f 6e 73 |...check_buttons| 0000aa90 28 61 6e 5f 6e 75 6d 25 29 0d 07 36 0f 73 65 6c |(an_num%)..6.sel| 0000aaa0 65 63 74 65 64 25 3d 30 0d 07 37 06 ef 35 0d 07 |ected%=0..7..5..| 0000aab0 38 14 f2 63 68 65 63 6b 5f 6d 6f 75 73 65 28 31 |8..check_mouse(1| 0000aac0 30 29 0d 07 39 1a e3 62 75 74 5f 6e 25 3d 31 20 |0)..9..but_n%=1 | 0000aad0 b8 20 74 6f 74 61 6c 5f 62 75 74 25 0d 07 3a 19 |. total_but%..:.| 0000aae0 e7 62 75 74 25 28 62 75 74 5f 6e 25 2c 34 29 3c |.but%(but_n%,4)<| 0000aaf0 32 3a ed 3a e1 0d 07 3b 79 e7 6d 78 25 3e 62 75 |2:.:...;y.mx%>bu| 0000ab00 74 25 28 62 75 74 5f 6e 25 2c 30 29 20 80 20 6d |t%(but_n%,0) . m| 0000ab10 78 25 3c 28 62 75 74 25 28 62 75 74 5f 6e 25 2c |x%<(but%(but_n%,| 0000ab20 30 29 2b 62 75 74 25 28 62 75 74 5f 6e 25 2c 32 |0)+but%(but_n%,2| 0000ab30 29 29 20 80 20 6d 79 25 3e 62 75 74 25 28 62 75 |)) . my%>but%(bu| 0000ab40 74 5f 6e 25 2c 31 29 20 80 20 6d 79 25 3c 28 62 |t_n%,1) . my%<(b| 0000ab50 75 74 25 28 62 75 74 5f 6e 25 2c 31 29 2b 62 75 |ut%(but_n%,1)+bu| 0000ab60 74 25 28 62 75 74 5f 6e 25 2c 33 29 29 8c 0d 07 |t%(but_n%,3))...| 0000ab70 3c 0c e7 6d 7a 25 3d 34 20 8c 0d 07 3d 14 73 65 |<..mz%=4 ...=.se| 0000ab80 6c 65 63 74 65 64 25 3d 62 75 74 5f 6e 25 0d 07 |lected%=but_n%..| 0000ab90 3e 37 f2 62 75 74 5f 6f 6e 28 62 75 74 25 28 62 |>7.but_on(but%(b| 0000aba0 75 74 5f 6e 25 2c 30 29 2c 62 75 74 25 28 62 75 |ut_n%,0),but%(bu| 0000abb0 74 5f 6e 25 2c 31 29 2c 62 75 74 24 28 62 75 74 |t_n%,1),but$(but| 0000abc0 5f 6e 25 29 29 0d 07 3f 0e f2 70 61 75 73 65 28 |_n%))..?..pause(| 0000abd0 33 30 29 0d 07 40 18 f5 3a c8 97 20 78 25 2c 79 |30)..@..:.. x%,y| 0000abe0 25 2c 7a 25 3a fd 20 7a 25 3d 30 0d 07 41 38 f2 |%,z%:. z%=0..A8.| 0000abf0 62 75 74 5f 6f 66 66 28 62 75 74 25 28 62 75 74 |but_off(but%(but| 0000ac00 5f 6e 25 2c 30 29 2c 62 75 74 25 28 62 75 74 5f |_n%,0),but%(but_| 0000ac10 6e 25 2c 31 29 2c 62 75 74 24 28 62 75 74 5f 6e |n%,1),but$(but_n| 0000ac20 25 29 29 0d 07 42 05 cd 0d 07 43 05 cd 0d 07 44 |%))..B....C....D| 0000ac30 20 e7 61 6e 5f 6e 75 6d 25 3e 30 3a f2 73 70 5f | .an_num%>0:.sp_| 0000ac40 61 6e 69 6d 28 61 6e 5f 6e 75 6d 25 29 0d 07 45 |anim(an_num%)..E| 0000ac50 05 ed 0d 07 46 05 e1 0d 07 47 17 dd f2 72 65 6e |....F....G...ren| 0000ac60 64 65 72 5f 64 65 73 5f 73 63 72 65 65 6e 0d 07 |der_des_screen..| 0000ac70 48 2a 6d 61 69 6e 5f 73 70 5f 61 64 64 25 3d a4 |H*main_sp_add%=.| 0000ac80 73 70 72 69 74 65 5f 64 61 74 61 28 64 65 73 5f |sprite_data(des_| 0000ac90 73 70 72 69 74 65 24 29 0d 07 49 0a 6f 66 66 25 |sprite$)..I.off%| 0000aca0 3d 30 0d 07 4a 15 72 65 6e 78 25 3d 30 3a 72 65 |=0..J.renx%=0:re| 0000acb0 6e 79 25 3d 38 39 36 0d 07 4b 1b e3 64 6f 77 6e |ny%=896..K..down| 0000acc0 25 3d 38 36 34 2b 34 38 20 b8 20 30 20 88 20 2d |%=864+48 . 0 . -| 0000acd0 34 38 0d 07 4c 1a e3 61 63 63 25 3d 30 20 b8 20 |48..L..acc%=0 . | 0000ace0 31 32 34 38 2b 34 38 20 88 20 34 38 0d 07 4d 20 |1248+48 . 48..M | 0000acf0 73 70 72 69 74 65 25 3d 3f 28 6d 61 69 6e 5f 73 |sprite%=?(main_s| 0000ad00 70 5f 61 64 64 25 2b 6f 66 66 25 29 0d 07 4e 2f |p_add%+off%)..N/| 0000ad10 f2 70 6c 6f 74 5f 73 70 72 69 74 65 28 61 63 63 |.plot_sprite(acc| 0000ad20 25 2c 64 6f 77 6e 25 2c 31 2c 31 2c 31 2c 31 2c |%,down%,1,1,1,1,| 0000ad30 c3 28 73 70 72 69 74 65 25 29 29 0d 07 4f 0f 6f |.(sprite%))..O.o| 0000ad40 66 66 25 3d 6f 66 66 25 2b 31 0d 07 50 05 ed 0d |ff%=off%+1..P...| 0000ad50 07 51 05 ed 0d 07 52 05 e1 0d 07 53 18 dd a4 73 |.Q....R....S...s| 0000ad60 70 72 69 74 65 5f 64 61 74 61 28 6e 61 6d 65 24 |prite_data(name$| 0000ad70 29 0d 07 54 3a c8 99 22 4f 53 5f 53 70 72 69 74 |)..T:.."OS_Sprit| 0000ad80 65 4f 70 22 2c 26 31 31 38 2c 73 70 72 69 74 65 |eOp",&118,sprite| 0000ad90 5f 61 72 65 61 31 25 2c 6e 61 6d 65 24 20 b8 20 |_area1%,name$ . | 0000ada0 72 30 25 2c 72 31 25 2c 72 32 25 0d 07 55 13 73 |r0%,r1%,r2%..U.s| 0000adb0 70 72 69 74 65 5f 6f 6e 65 25 3d 72 32 25 0d 07 |prite_one%=r2%..| 0000adc0 56 13 3d 73 70 72 69 74 65 5f 6f 6e 65 25 2b 34 |V.=sprite_one%+4| 0000add0 34 0d ff |4..| 0000add3