Routines |
Prev: 47315 | Up: Map | Next: 47355 |
Used by the routine at 47315.
|
||||||||||||||||||
47323 | LD A,5 | Load A with a random number, 0-4... | ||||||||||||||||
47325 | CALL 54222 | ... | ||||||||||||||||
47328 | ADD A,29 | Add 29 (as 29 is the index of the first of five eye direction graphics) in C... | ||||||||||||||||
47330 | LD C,A | ... | ||||||||||||||||
47331 | LD A,7 | Set attribute for timer indicator figures' eyes to white INK, black PAPER | ||||||||||||||||
This entry point is used by the routines at 47241, 47302 and 47315.
|
||||||||||||||||||
47333 | LD B,4 | Set graphic set index to 4 | ||||||||||||||||
47335 | PUSH AF | Store AF (A = attribute) | ||||||||||||||||
47336 | PUSH BC | Store BC (B = graphic set index, C = graphic index) | ||||||||||||||||
47337 | CALL 54144 | Draw a graphic character block to display | ||||||||||||||||
47340 | POP BC | Restore BC (B = graphic set index, C = graphic index) | ||||||||||||||||
47341 | LD A,C | Load graphic index into A | ||||||||||||||||
47342 | CP 32 | If graphic index is less than 32 (i.e. we're not dealing with #32 - eyes looking right or #33 - eyes looking left and don't need to cancel inversion at 47350) then skip ahead to 47348 | ||||||||||||||||
47344 | JR C,47348 | |||||||||||||||||
47346 | XOR 1 | Add or subtract 1 if graphic index is 32 or 33 respectively (timer figures' eyes looking right or left respectively) to cancel out inversion at 47350 | ||||||||||||||||
47348 | LD C,A | Load graphic index into C | ||||||||||||||||
47349 | POP AF | Restore AF (A = attribute) | ||||||||||||||||
47350 | XOR 128 | Flip mirror flag to prepare to draw mirror image of just-drawn character block | ||||||||||||||||
47352 | INC IX | Advance IX to next byte in attribute file | ||||||||||||||||
47354 | RET | Return |
Prev: 47315 | Up: Map | Next: 47355 |