Prev: A9D4 Up: Map Next: AA33
A9EF: Print The "You're Fired" Screen
Used by the routine at Handler_TimeOut.
Print_YoureFired A9EF CALL BlankMiddleScreenBuffer Call BlankMiddleScreenBuffer.
A9F2 CALL BlankMiddleAttributeBuffer Call BlankMiddleAttributeBuffer.
Print "Trashman ".
A9F5 LD HL,$ACFA HL=Messaging_Trashman.
A9F8 LD DE,$4840 DE=4840 (screen buffer location).
A9FB CALL PrintString Call PrintString.
Who is in play, is it 1UP or 2UP?
A9FE LD HL,$AB8A Test bit 4 of Game_Flags.
AA01 BIT 4,(HL)
Default to using the 1UP name.
AA03 LD HL,$ACA6 HL=Name_1UP.
AA06 JR Z,Print_YoureFired_Write Jump to Print_YoureFired_Write if this is player one.
Else, use the name for 2UP.
AA08 LD HL,$ACC7 HL=Name_2UP.
Print_YoureFired_Write AA0B CALL PrintString Call PrintString.
Overwrite the ")" from the players name string.
AA0E DEC DE Decrease DE by one.
Print ", you're slow." messaging.
AA0F LD HL,$AE33 HL=Messaging_Fired_1.
AA12 CALL PrintString Call PrintString.
Print the road name.
AA15 LD HL,$C280 HL=Messaging_RoadName.
AA18 CALL PrintString Call PrintString.
AA1B LD HL,($AB7E) HL=*ActivePlayer.
This assumes the default number of lives is being used, and displays a string for the number of times Trashman has been fired.
As this only tests bit 0, any poke like Infinite Lives will make this behave oddly.
AA1E BIT 0,(HL) Test bit 0 of *HL.
AA20 LD HL,$B009 HL=Messaging_Once.
AA23 JR NZ,Print_YoureFired_WriteTimes Jump to Print_YoureFired_WriteTimes if this isn't the last life.
AA25 LD HL,$B013 HL=Messaging_Twice.
Print_YoureFired_WriteTimes AA28 CALL PrintString Call PrintString.
Print " more and you're fired.".
AA2B LD HL,$AE71 HL=Messaging_Fired_2.
AA2E CALL PrintString Call PrintString.
AA31 RET Return.
AA32 RET Return.
Prev: A9D4 Up: Map Next: AA33