Routines |
Prev: AADC | Up: Map | Next: AC3D |
Used by the routine at Messaging_YouWin.
|
||||
Messaging_DartNumber | AB2E | LD HL,$DD00 | Copy 1B00 bytes of data from *PubScene to Loading. | |
AB31 | LD DE,$4000 | |||
AB34 | LD BC,$1B00 | |||
AB37 | LDIR | |||
AB39 | LD BC,($9AAE) | BC=*9AAE. | ||
AB3D | LD D,$06 | D=06. | ||
AB3F | LD E,$16 | E=16. | ||
AB41 | CALL $B761 | Call B761. | ||
Self-modifying code.
|
||||
AB44 | LD A,$ED | Writes an extra LDI to B8EA. |
||
AB46 | LD ($B8EA),A | |||
AB49 | LD A,$A0 | |||
AB4B | LD ($B8EB),A | |||
AB4E | LD E,$0A | E=0A. | ||
AB50 | CALL $A875 | Call A875. | ||
AB53 | AND A | Jump to Messaging_DartNumber_0 if A is not equal to 0A. | ||
AB54 | JR NZ,Messaging_DartNumber_0 | |||
AB56 | LD HL,$48B0 | HL=48B0 (screen buffer location). | ||
AB59 | LD DE,$C8BC | DE=Graphics_Dog_02. | ||
AB5C | CALL Print_Dog_Frame_0 | Call Print_Dog_Frame_0. | ||
AB5F | LD A,$01 | Write 01 to *9AAA. | ||
AB61 | LD ($9AAA),A | |||
Messaging_DartNumber_0 | AB64 | LD HL,$ACF6 | Copy 0003 bytes of data from *Current_Total to *9B2F. | |
AB67 | LD DE,$9B2F | |||
AB6A | LD BC,$0003 | |||
AB6D | LDIR | |||
AB6F | CALL Messaging_CurrentTotal | Call Messaging_CurrentTotal. | ||
AB72 | CALL LongPause | Call LongPause. | ||
AB75 | CALL $AC52 | Call AC52. | ||
AB78 | CALL PrintString_Loop | Call PrintString_Loop. | ||
AB7B | DEFB $10,$07 | INK: WHITE. | ||
AB7D | DEFB $11,$00 | PAPER: BLACK. | ||
AB7F | DEFB $12,$01 | FLASH: ON. | ||
AB81 | DEFB $16,$16,$00 | PRINT AT: 16, 00. | ||
AB84 | DEFM "1ST DART" | "1ST DART". | ||
AB8C | DEFB $FF | Terminator. | ||
AB8D | CALL Messaging_AimingAt | Call Messaging_AimingAt. | ||
AB90 | CALL $AFB5 | Call AFB5. | ||
AB93 | CALL $ACFB | Call ACFB. | ||
AB96 | CALL Animation_ThrowingDart | Call Animation_ThrowingDart. | ||
AB99 | CALL $AD5C | Call AD5C. | ||
AB9C | CALL LongPause | Call LongPause. | ||
AB9F | LD A,($B412) | Jump to B16B if *B412 is not equal to zero. | ||
ABA2 | AND A | |||
ABA3 | JP NZ,$B16B | |||
ABA6 | LD A,($B417) | Jump to Messaging_Bust if *B417 is not equal to zero. | ||
ABA9 | AND A | |||
ABAA | JP NZ,Messaging_Bust | |||
ABAD | CALL $AC52 | Call AC52. | ||
ABB0 | CALL $AFB5 | Call AFB5. | ||
ABB3 | CALL PrintString_Loop | Call PrintString_Loop. | ||
ABB6 | DEFB $10,$07 | INK: WHITE. | ||
ABB8 | DEFB $11,$00 | PAPER: BLACK. | ||
ABBA | DEFB $12,$01 | FLASH: ON. | ||
ABBC | DEFB $16,$16,$00 | PRINT AT: 16, 00. | ||
ABBF | DEFM "2ND DART" | "2ND DART". | ||
ABC7 | DEFB $FF | Terminator. | ||
ABC8 | CALL Messaging_AimingAt | Call Messaging_AimingAt. | ||
ABCB | CALL $ACFB | Call ACFB. | ||
ABCE | CALL Animation_ThrowingDart | Call Animation_ThrowingDart. | ||
ABD1 | CALL $AD5C | Call AD5C. | ||
ABD4 | CALL LongPause | Call LongPause. | ||
ABD7 | LD A,($B412) | Jump to B16B if *B412 is not equal to 00. | ||
ABDA | AND A | |||
ABDB | JP NZ,$B16B | |||
ABDE | LD A,($B417) | Jump to Messaging_Bust if *B417 is not equal to 00. | ||
ABE1 | AND A | |||
ABE2 | JP NZ,Messaging_Bust | |||
ABE5 | CALL $AC52 | Call AC52. | ||
ABE8 | CALL $AFB5 | Call AFB5. | ||
ABEB | CALL PrintString_Loop | Call PrintString_Loop. | ||
ABEE | DEFB $10,$07 | INK: WHITE. | ||
ABF0 | DEFB $11,$00 | PAPER: BLACK. | ||
ABF2 | DEFB $12,$01 | FLASH: ON. | ||
ABF4 | DEFB $16,$16,$00 | PRINT AT: 16, 00. | ||
ABF7 | DEFM "3RD DART" | "3RD DART". | ||
ABFF | DEFB $FF | Terminator. | ||
AC00 | CALL Messaging_AimingAt | Call Messaging_AimingAt. | ||
AC03 | CALL $ACFB | Call ACFB. | ||
AC06 | CALL Animation_ThrowingDart | Call Animation_ThrowingDart. | ||
AC09 | CALL $AD5C | Call AD5C. | ||
AC0C | CALL LongPause | Call LongPause. | ||
AC0F | LD A,($B412) | Jump to B16B if *B412 is not equal to 00. | ||
AC12 | AND A | |||
AC13 | JP NZ,$B16B | |||
AC16 | LD A,($B417) | Jump to Messaging_Bust if *B417 is not equal to 00. | ||
AC19 | AND A | |||
AC1A | JP NZ,Messaging_Bust | |||
This entry point is used by the routine at Messaging_Bust.
|
||||
Messaging_DartNumber_1 | AC1D | LD A,($9AAA) | Call Animation_Dog if *9AAA is not equal to 00. | |
AC20 | AND A | |||
AC21 | CALL NZ,Animation_Dog | |||
AC24 | LD HL,$ACF6 | Copy 0003 bytes of data from *Current_Total to *FinalTotal. | ||
AC27 | LD DE,$ACD4 | |||
AC2A | LD BC,$0003 | |||
AC2D | LDIR | |||
AC2F | CALL $AC52 | Call AC52. | ||
AC32 | CALL Messaging_FinalTotal | Call Messaging_FinalTotal. | ||
AC35 | CALL LongPause | Call LongPause. | ||
AC38 | XOR A | Write 00 to *9AAA. | ||
AC39 | LD ($9AAA),A | |||
AC3C | RET | Return. |
Prev: AADC | Up: Map | Next: AC3D |