![]() |
Routines |
| Prev: 62903 | Up: Map | Next: 62930 |
|
Used by the routine at Extra_Life_Flash.
Advances the extra life colour flash display by one step. Scans all 768 attribute cells and replaces each colour with its successor in the cycle table at Flash_Colour_Cycle_Table, rotating the screen through blue, green, cyan, white, yellow, magenta, and red on successive calls.
|
||||
| Advance_Flash_Colour_Cycle | 62907 | LD DE,22528 | Point to the start of the attribute area. | |
| Advance_Flash_Colour_Cycle_Scan | 62910 | LD A,(DE) | Read the current attribute cell colour. | |
| 62911 | LD HL,62930 | Point to the colour cycle table. | ||
| 62914 | LD BC,7 | Set the cycle table scan length. | ||
| 62917 | CPIR | Scan the table for a matching colour entry. | ||
| 62919 | JR NZ,Advance_Flash_Colour_Cycle_Next | Jump to Advance_Flash_Colour_Cycle_Next if no matching entry was found. | ||
| 62921 | LD A,(HL) | Replace the attribute cell with the next colour in the cycle. | ||
| 62922 | LD (DE),A | |||
| Advance_Flash_Colour_Cycle_Next | 62923 | INC DE | Advance to the next attribute cell. | |
| 62924 | LD A,D | Loop back until the entire attribute area has been processed. | ||
| 62925 | CP 91 | |||
| 62927 | JR NZ,Advance_Flash_Colour_Cycle_Scan | |||
| 62929 | RET | Return. | ||
| Prev: 62903 | Up: Map | Next: 62930 |