![]() |
Routines |
Prev: 44339 | Up: Map | Next: 45476 |
44342 | LD HL,(24698) | HL=24698. | ||
This entry point is used by the routine at 44089.
|
||||
44345 | LD C,(IX+2) | |||
44348 | LD B,(IX+3) | |||
44351 | AND A | |||
44352 | SBC HL,BC | |||
44354 | LD A,H | |||
44355 | AND A | |||
44356 | JP M,44366 | |||
44359 | LD BC,4096 | |||
44362 | AND A | |||
44363 | SBC HL,BC | |||
44365 | RET | |||
44366 | CALL 35143 | |||
44369 | LD BC,4096 | |||
44372 | AND A | |||
44373 | SBC HL,BC | |||
44375 | CCF | |||
44376 | RET | |||
44377 | LD E,20 | |||
44379 | CALL 45732 | |||
44382 | CALL C,45783 | |||
44385 | LD A,(24698) | |||
44388 | SUB (IX+2) | |||
44391 | NEG | |||
44393 | AND 7 | |||
44395 | ADD A,104 | |||
44397 | LD (IX+0),A | |||
44400 | CALL 34695 | |||
44403 | LD A,(24152) | |||
44406 | SUB 8 | |||
44408 | LD (24152),A | |||
44411 | CALL 34611 | |||
44414 | LD A,(24172) | |||
44417 | AND A | |||
44418 | JR NZ,44425 | |||
44420 | LD A,(IX+21) | |||
44423 | AND A | |||
44424 | RET Z | |||
44425 | CALL 34383 | |||
44428 | LD A,192 | |||
44430 | LD (24936),A | |||
44433 | LD (24960),A | |||
44436 | LD HL,(24962) | |||
44439 | LD BC,65528 | |||
44442 | CALL 40962 | |||
44445 | LD (24962),HL | |||
44448 | LD HL,24968 | |||
44451 | LD B,8 | |||
44453 | LD (HL),0 | |||
44455 | INC HL | |||
44456 | DJNZ 44453 | |||
44458 | RET | |||
44459 | CALL 45730 | |||
44462 | JR C,44510 | |||
44464 | BIT 0,(IX+16) | |||
44468 | JR NZ,44513 | |||
44470 | LD L,(IX+2) | |||
44473 | LD H,(IX+3) | |||
44476 | LD B,0 | |||
44478 | LD A,(IX+5) | |||
44481 | LD C,A | |||
44482 | AND A | |||
44483 | JP P,44487 | |||
44486 | DEC B | |||
44487 | ADD HL,BC | |||
44488 | LD (IX+2),L | |||
44491 | LD (IX+3),H | |||
44494 | LD A,(IX+4) | |||
44497 | ADD A,(IX+6) | |||
44500 | LD (IX+4),A | |||
44503 | CP 60 | |||
44505 | JR C,44519 | |||
44507 | JP 43956 | |||
44510 | CALL 45783 | Call 45783. | ||
Destroying the missile adds 1280 points. TBC is this the decoy missile?
|
||||
44513 | LD BC,1280 | BC=1280. | ||
44516 | CALL AddPointsToScore | Call AddPointsToScore. | ||
44519 | JP 42859 | Jump to 42859. | ||
44522 | LD A,(24888) | |||
44525 | CP 128 | |||
44527 | JR NZ,44591 | |||
44529 | LD HL,(24890) | |||
44532 | LD BC,20 | |||
44535 | ADD HL,BC | |||
44536 | LD A,H | |||
44537 | AND 31 | |||
44539 | LD H,A | |||
44540 | LD (IX+2),L | |||
44543 | LD (IX+3),H | |||
44546 | LD A,(24892) | |||
44549 | ADD A,16 | |||
44551 | LD (IX+4),A | |||
44554 | LD A,(IX+0) | |||
44557 | XOR 1 | |||
44559 | LD (IX+0),A | |||
44562 | LD A,(IX+7) | |||
44565 | XOR 4 | |||
44567 | LD (IX+7),A | |||
44570 | JP 43956 | |||
44573 | LD A,(24888) | |||
44576 | CP 132 | |||
44578 | JR NZ,44591 | |||
44580 | LD HL,(24890) | |||
44583 | LD BC,16 | |||
44586 | AND A | |||
44587 | SBC HL,BC | |||
44589 | JR 44536 | |||
44591 | CALL 34368 | |||
44594 | LD (IX+0),0 | |||
44598 | RET | |||
44599 | JP 43956 | |||
44602 | LD E,24 | |||
44604 | CALL 45732 | |||
44607 | CALL C,45783 | |||
44610 | CALL 43956 | |||
44613 | LD A,(24130) | |||
44616 | AND 7 | |||
44618 | RET NZ | |||
44619 | INC (IX+0) | |||
44622 | LD A,(IX+0) | |||
44625 | AND 3 | |||
44627 | CP 3 | |||
44629 | CALL Z,44664 | |||
44632 | RET | |||
44633 | LD E,24 | |||
44635 | CALL 45732 | |||
44638 | CALL C,45783 | |||
44641 | CALL 43956 | |||
44644 | LD A,(24130) | |||
44647 | AND 3 | |||
44649 | RET NZ | |||
44650 | INC (IX+0) | |||
44653 | LD A,(IX+0) | |||
44656 | AND 3 | |||
44658 | CP 3 | |||
44660 | CALL Z,44727 | |||
44663 | RET | |||
44664 | LD HL,44732 | |||
44667 | LD DE,24840 | |||
44670 | LD BC,48 | |||
44673 | LDIR | |||
44675 | LD L,(IX+2) | |||
44678 | LD H,(IX+3) | |||
44681 | LD (24842),HL | |||
44684 | LD A,(IX+4) | |||
44687 | SUB 12 | |||
44689 | LD (24844),A | |||
44692 | LD A,(24224) | |||
44695 | ADD A,8 | |||
44697 | CP 99 | |||
44699 | JR C,44703 | |||
44701 | LD A,99 | |||
44703 | LD (24862),A | |||
44706 | LD A,(24946) | |||
44709 | AND A | |||
44710 | RET NZ | |||
44711 | LD A,(24225) | |||
44714 | AND A | |||
44715 | JP NZ,46382 | |||
44718 | LD A,(24696) | |||
44721 | CP 42 | |||
44723 | RET NC | |||
44724 | JP 46382 | |||
44727 | LD HL,44780 | |||
44730 | JR 44667 | |||
44732 | DEFB 160,0,0,0,0,253,0,70 | |||
44740 | DEFB 0,0,0,0,0,0,0,0 | |||
44748 | DEFB 0,0,0,0,0,0,0,0 | |||
44756 | DEFB 162,0,0,0,0,0,0,66 | |||
44764 | DEFB 0,0,0,0,0,0,0,0 | |||
44772 | DEFB 0,0,0,0,0,0,0,0 | |||
44780 | DEFB 164,0,0,0,0,3,0,70 | |||
44788 | DEFB 0,0,0,0,0,0,0,0 | |||
44796 | DEFB 0,0,0,0,0,0,0,0 | |||
44804 | DEFB 166,0,0,0,0,0,0,66 | |||
44812 | DEFB 0,0,0,0,0,0,0,0 | |||
44820 | DEFB 0,0,0,0,0,0,0,0 | |||
44828 | CALL 45730 | |||
44831 | JP C,44974 | |||
44834 | CALL 44342 | |||
44837 | JR NC,44853 | |||
44839 | CALL 44311 | |||
44842 | LD HL,22651 | |||
44845 | CALL Handler_Colour2x2 | |||
44848 | LD HL,22653 | |||
44851 | JR 44865 | |||
44853 | CALL 44311 | |||
44856 | LD HL,22653 | |||
44859 | CALL Handler_Colour2x2 | |||
44862 | LD HL,22651 | |||
44865 | LD A,66 | |||
44867 | CALL Handler_Colour2x2 | |||
44870 | LD A,(24130) | |||
44873 | AND 1 | |||
44875 | JR NZ,44897 | |||
44877 | LD A,(IX+7) | |||
44880 | CP 70 | |||
44882 | JR Z,44897 | |||
44884 | LD A,(24128) | |||
44887 | AND 7 | |||
44889 | JR NZ,44892 | |||
44891 | INC A | |||
44892 | OR 64 | |||
44894 | LD (IX+7),A | |||
44897 | BIT 0,(IX+16) | |||
44901 | JR Z,44925 | |||
Take one hit off the missile hit count total.
|
||||
44903 | DEC (IX+22) | Decrease IX+22 by one. | ||
44906 | JR Z,44977 | Jump to 44977 if the missile has been destroyed. | ||
44908 | CALL SoundsLaserMissileHit | Call SoundsLaserMissileHit. | ||
Each missile hit adds 256 points.
|
||||
44911 | LD BC,256 | BC=256. | ||
44914 | CALL AddPointsToScore | Call AddPointsToScore. | ||
44917 | LD (IX+7),66 | |||
44921 | LD (IX+16),0 | |||
44925 | LD L,(IX+2) | |||
44928 | LD H,(IX+3) | |||
44931 | LD C,(IX+5) | |||
44934 | LD B,0 | |||
44936 | LD A,C | |||
44937 | AND A | |||
44938 | JP P,44942 | |||
44941 | DEC B | |||
44942 | ADD HL,BC | |||
44943 | LD A,H | |||
44944 | AND 31 | |||
44946 | LD H,A | |||
44947 | LD (IX+2),L | |||
44950 | LD (IX+3),H | |||
44953 | CALL 45265 | |||
44956 | JR C,45033 | |||
44958 | LD A,H | |||
44959 | CP 2 | |||
44961 | JR C,45021 | |||
44963 | CP 16 | |||
44965 | JR C,45014 | |||
44967 | CP 32 | |||
44969 | JR C,44997 | |||
44971 | JP 43956 | |||
44974 | CALL 45783 | Call 45783. | ||
44977 | LD A,1 | Write 1 to 24981. | ||
44979 | LD (24981),A | |||
Destroying the missile adds 1280 points. TBC is this the decoy missile?
|
||||
44982 | LD BC,1280 | BC=1280. | ||
44985 | CALL AddPointsToScore | Call AddPointsToScore. | ||
44988 | LD DE,47784 | |||
44991 | CALL 47548 | |||
44994 | JP 42859 | |||
44997 | LD A,(IX+4) | |||
45000 | CP 80 | |||
45002 | JR Z,44971 | |||
45004 | JR NC,45008 | |||
45006 | INC A | |||
45007 | INC A | |||
45008 | DEC A | |||
45009 | LD (IX+4),A | |||
45012 | JR 44971 | |||
45014 | LD A,(IX+4) | |||
45017 | CP 128 | |||
45019 | JR 45002 | |||
45021 | LD A,(IX+4) | |||
45024 | CP 167 | |||
45026 | JR Z,44971 | |||
45028 | INC A | |||
45029 | CP 167 | |||
45031 | JR 45002 | |||
45033 | LD A,1 | |||
45035 | LD (24172),A | |||
45038 | LD A,192 | |||
45040 | LD (24792),A | |||
45043 | LD (24744),A | |||
45046 | LD (24768),A | |||
45049 | LD A,(24816) | |||
45052 | AND A | |||
45053 | JR Z,45060 | |||
45055 | LD A,92 | |||
45057 | LD (24816),A | |||
45060 | LD A,(24984) | |||
45063 | AND A | |||
45064 | JR Z,45071 | |||
45066 | LD A,192 | |||
45068 | LD (24984),A | |||
45071 | LD HL,25008 | |||
45074 | LD DE,24 | |||
45077 | LD B,6 | |||
45079 | LD A,(HL) | |||
45080 | AND A | |||
45081 | JR Z,45105 | |||
45083 | AND 254 | |||
45085 | CP 90 | |||
45087 | JR Z,45111 | |||
45089 | CP 182 | |||
45091 | JR Z,45111 | |||
45093 | AND 252 | |||
45095 | CP 100 | |||
45097 | JR Z,45105 | |||
45099 | CP 200 | |||
45101 | JR Z,45111 | |||
45103 | LD (HL),92 | |||
45105 | ADD HL,DE | |||
45106 | DJNZ 45079 | |||
45108 | JP 42859 | |||
45111 | LD (HL),100 | |||
45113 | JR 45105 | |||
This entry point is used by the routine at 40668.
|
||||
45115 | LD A,(24696) | |||
45118 | SUB 18 | |||
45120 | CP 8 | |||
45122 | LD BC,57348 | |||
45125 | JR C,45142 | |||
45127 | LD A,B | |||
45128 | LD (24720),A | |||
45131 | LD A,C | |||
45132 | LD (24728),A | |||
45135 | LD DE,24722 | |||
45138 | CALL 46274 | |||
45141 | RET | |||
45142 | LD A,B | |||
45143 | LD (24696),A | |||
45146 | LD A,C | |||
45147 | LD (24704),A | |||
45150 | LD DE,24698 | |||
45153 | CALL 46274 | |||
45156 | RET | |||
45157 | LD A,(24840) | |||
45160 | CP 164 | |||
45162 | JR NZ,45257 | |||
45164 | LD A,(IX+0) | |||
45167 | XOR 1 | |||
45169 | LD (IX+0),A | |||
45172 | LD A,(IX+7) | |||
45175 | XOR 4 | |||
45177 | LD (IX+7),A | |||
45180 | LD A,(24844) | |||
45183 | LD (IX+4),A | |||
45186 | LD HL,(24842) | |||
45189 | LD BC,24 | |||
45192 | AND A | |||
45193 | SBC HL,BC | |||
45195 | LD A,H | |||
45196 | AND 31 | |||
45198 | LD H,A | |||
45199 | LD (IX+2),L | |||
45202 | LD (IX+3),H | |||
45205 | JP 43956 | |||
45208 | LD A,(24840) | |||
45211 | CP 160 | |||
45213 | JR NZ,45257 | |||
45215 | LD A,(IX+0) | |||
45218 | XOR 1 | |||
45220 | LD (IX+0),A | |||
45223 | LD A,(IX+7) | |||
45226 | XOR 4 | |||
45228 | LD (IX+7),A | |||
45231 | LD A,(24844) | |||
45234 | LD (IX+4),A | |||
45237 | LD HL,(24842) | |||
45240 | LD BC,20 | |||
45243 | ADD HL,BC | |||
45244 | LD A,H | |||
45245 | AND 31 | |||
45247 | LD H,A | |||
45248 | LD (IX+2),L | |||
45251 | LD (IX+3),H | |||
45254 | JP 43956 | |||
45257 | CALL 34368 | |||
45260 | LD (IX+0),0 | |||
45264 | RET | |||
45265 | LD A,(24696) | |||
45268 | SUB 18 | |||
45270 | CP 8 | |||
45272 | JR C,45330 | |||
45274 | LD A,(24720) | |||
45277 | SUB 26 | |||
45279 | CP 16 | |||
45281 | JR NC,45339 | |||
45283 | LD HL,(24722) | |||
45286 | LD A,(24724) | |||
45289 | LD C,A | |||
45290 | ADD HL,HL | |||
45291 | ADD HL,HL | |||
45292 | ADD HL,HL | |||
45293 | LD E,(IX+2) | |||
45296 | LD D,(IX+3) | |||
45299 | EX DE,HL | |||
45300 | ADD HL,HL | |||
45301 | ADD HL,HL | |||
45302 | ADD HL,HL | |||
45303 | AND A | |||
45304 | SBC HL,DE | |||
45306 | LD A,H | |||
45307 | AND A | |||
45308 | JP P,45314 | |||
45311 | CALL 35143 | |||
45314 | LD DE,192 | |||
45317 | AND A | |||
45318 | SBC HL,DE | |||
45320 | RET NC | |||
45321 | LD A,(IX+4) | |||
45324 | SUB C | |||
45325 | NEG | |||
45327 | CP 32 | |||
45329 | RET | |||
45330 | LD HL,(24698) | |||
45333 | LD A,(24700) | |||
45336 | LD C,A | |||
45337 | JR 45290 | |||
45339 | AND A | |||
45340 | RET | |||
45341 | LD A,92 | |||
45343 | LD (24840),A | |||
45346 | LD (24888),A | |||
45349 | JP 45033 | |||
45352 | CALL 45265 | |||
45355 | JP C,45341 | |||
45358 | CALL 45730 | |||
45361 | CALL C,45783 | |||
45364 | CALL 42298 | |||
45367 | LD A,(IX+0) | |||
45370 | INC A | |||
45371 | AND 7 | |||
45373 | ADD A,144 | |||
45375 | LD (IX+0),A | |||
45378 | CALL 34561 | |||
45381 | LD L,(IX+1) | |||
45384 | LD H,(IX+4) | |||
45387 | CALL AttributeAddress | |||
45390 | LD D,(IX+7) | |||
45393 | LD C,2 | |||
45395 | LD A,(24151) | |||
45398 | AND A | |||
45399 | RET Z | |||
45400 | LD B,A | |||
45401 | CALL 34640 | |||
45404 | LD A,(24130) | |||
45407 | RRCA | |||
45408 | RRCA | |||
45409 | RRCA | |||
45410 | AND 7 | |||
45412 | JR NZ,45415 | |||
45414 | INC A | |||
45415 | OR 64 | |||
45417 | LD D,A | |||
45418 | LD C,1 | |||
45420 | JP 34640 | |||
45423 | LD A,(24840) | |||
45426 | AND A | |||
45427 | JR Z,45434 | |||
45429 | LD A,192 | |||
45431 | LD (24840),A | |||
45434 | LD A,(24888) | |||
45437 | AND A | |||
45438 | JR Z,45445 | |||
45440 | LD A,192 | |||
45442 | LD (24888),A | |||
45445 | LD A,(24864) | |||
45448 | SUB 200 | |||
45450 | CP 4 | |||
45452 | JR NC,45459 | |||
45454 | LD A,100 | |||
45456 | LD (24864),A | |||
45459 | LD A,(24912) | |||
45462 | SUB 200 | |||
45464 | CP 4 | |||
45466 | JR NC,45473 | |||
45468 | LD A,100 | |||
45470 | LD (24912),A | |||
45473 | JP 47456 |
Prev: 44339 | Up: Map | Next: 45476 |