![]() |
Routines |
| Prev: DA4D | Up: Map | Next: DAC8 |
|
Used by the routine at CC27.
|
||||
|
Game completion. Maroc has used Caliburn on Avelach in the High Temple of Chaos (event check at CC27).
|
||||
| DA88 | LD A,$FF | |||
| DA8A | LD ($EB56),A | (255 = max) length/frequency for white noise effect | ||
| DA8D | LD ($EAC7),A | (255 = max) counter duration for white noise effect | ||
| DA90 | LD ($EAA9),A | Also set as attribute value for screen | ||
|
Change (decrement) screen colour attributes and play sound effects
|
||||
| DA93 | CALL $E207 | Set screen colour | ||
| DA96 | CALL $E1D7 | Play sound effect | ||
| DA99 | LD A,($EAC7) | Get counter | ||
| DA9C | DEC A | Decrement counter (also the screen colour/attribute value) | ||
| DA9D | JR NZ,$DA8D | Repeat until counter at zero | ||
|
Print success message on scroll:
|
||||
| DA9F | CALL $EA72 | Reset attributes in top right corner of scroll (in case the spell icon is FLASHING) | ||
| DAA2 | CALL $DEF9 | Clear the scroll area | ||
| DAA5 | LD A,$23 | Message number 35 to print (72F9) | ||
| DAA7 | CALL $E5A5 | Identify the message text to print | ||
| DAAA | LD ($EAA1),HL | Re-store the address pointer for the end of the text string | ||
| DAAD | LD HL,$5087 | Screen display address to print the text | ||
| DAB0 | LD ($EAA4),HL | |||
| DAB3 | CALL $E2D0 | Set up message text on scroll to print | ||
|
Play one complete set of game (intro/main theme) music:
|
||||
| DAB6 | LD A,$01 | Tune number #1 | ||
| DAB8 | CALL $E5B6 | Play the tune | ||
|
Calculate and print the player's (final) rank on the scroll:
|
||||
| DABB | CALL $DEF9 | Clear the scroll area | ||
| DABE | CALL $E4E7 | Calculate and print rank on scroll | ||
|
Play game (intro) tune on a loop:
|
||||
| DAC1 | LD A,$01 | Tune number #1 | ||
| DAC3 | CALL $E5B6 | Play the tune | ||
| DAC6 | JR $DAC1 | ...and repeat until the player resets their Spectrum... | ||
| Prev: DA4D | Up: Map | Next: DAC8 |