![]() |
Routines |
| Prev: 55818 | Up: Map | Next: 55944 |
|
|
||||
|
When Maroc's energy runs out, an animation runs where Maroc spins to the top of the screen:
|
||||
| 55885 | CALL 58476 | Maroc out of energy - run 'death' animation routine | ||
|
Set up screen to display Maroc's current rank
|
||||
| 55888 | CALL 57947 | Clear the playing area (pixels) | ||
| 55891 | LD A,66 | Set the screen attribute colours to INK 2, BRIGHT 1, PAPER 0 | ||
| 55893 | LD (60073),A | |||
| 55896 | LD (60071),A | Also set Maroc's attribute colours to these attributes for this screen, to avoid a white stripe down the middle of the demon... | ||
| 55899 | CALL 57863 | Draw the attribute colours on screen | ||
|
Draw the demon graphic:
|
||||
| 55902 | LD A,1 | Demon frame number = 1 | ||
| 55904 | LD (60240),A | |||
| 55907 | LD A,88 | Offset for graphic address table at 38851. Will point to address at 39025, for demon graphics stored at 42703. | ||
| 55909 | CALL 57538 | Set up graphic to draw | ||
| 55912 | LD A,112 | Horizontal screen position, in pixels | ||
| 55914 | LD (60115),A | |||
| 55917 | LD A,64 | Vertical position, in pixels, from top of playing area | ||
| 55919 | LD (60114),A | |||
| 55922 | LD A,1 | Set draw/erase flag to 1 (DRAW) | ||
| 55924 | LD (60111),A | |||
| 55927 | LD A,0 | High byte for horizontal graphic position, 0 indicates that the graphic is on-screen (within the viewport) as opposed to off to the right or left | ||
| 55929 | LD (60116),A | |||
| 55932 | LD HL,(60241) | Retrieve address pointer for graphics | ||
| 55935 | LD (60109),HL | ...and copy into graphics buffer | ||
| 55938 | CALL 56216 | Draw the demon graphic on screen | ||
| 55941 | JP 49315 | Print Maroc's rank on the scroll and play music | ||
| Prev: 55818 | Up: Map | Next: 55944 |