Prev: B2EF Up: Map Next: B34B
B2F1: Print Wages
Used by the routines at B3BE and GameOver.
PrintWages B2F1 CALL Clear_Screen Call Clear_Screen.
B2F4 LD DE,$010A DE=010A.
B2F7 LD HL,$7C1B HL=Messaging_Wages.
B2FA CALL PrintString Call PrintString.
B2FD PUSH IY Stash IY on the stack.
B2FF LD DE,$0513 DE=0513.
There are 05 characters (B counter) and the attribute is 45 (C INK: CYAN, PAPER: BLACK (BRIGHT) ).
B302 LD BC,$0545 BC=0545.
B305 LD HL,$B2ED HL=B2ED.
B308 LD IY,$BC67 IY=FrameId_Wally.
B30C LD IX,$B2ED IX=B2ED.
B310 LD (IX+$02),$00 Write 00 to *IX+00.
B314 LD (IX+$03),$00 Write 00 to *IX+01.
PrintWages_Loop B318 LD A,(IY-$0A) A=*IY-0A.
B31B LD (IX+$01),A Write A to *IX+01.
B31E ADD A,(IX+$03)
B321 DAA
B322 LD (IX+$03),A
B325 LD A,(IY-$1E)
B328 LD (IX+$00),A
B32B ADC A,(IX+$02)
B32E DAA
B32F LD (IX+$02),A
B332 CALL PrintEarnings Call PrintEarnings.
B335 INC D Increment D by three.
B336 INC D
B337 INC D
B338 INC IY Increment IY by one.
B33A DJNZ PrintWages_Loop Decrease counter by one and loop back to PrintWages_Loop until counter is zero.
B33C POP IY Restore IY from the stack.
B33E LD D,$15 D=15.
B340 LD HL,$B2EF HL=B2EF.
B343 LD E,$11 E=11.
B345 CALL PrintEarnings Call PrintEarnings.
B348 JP PressAnyKey Jump to PressAnyKey.
Prev: B2EF Up: Map Next: B34B