![]() |
Routines |
| Prev: 51812 | Up: Map | Next: 51875 |
|
Used by the routine at Handler_Bust.
|
||||
|
Plays 1-bit PCM speech for the "ONE HUNDRED AND EIGHTY!" announcement.
|
||||
| Sound_180Speech | 51836 | LD HL,54528 | Set a pointer to the speech data in HL to Data_Speech. | |
| 51839 | LD DE,2048 | Set the data length counter in DE to 2048 bytes. | ||
| SpeechProcessByte | 51842 | LD B,8 | Set a counter in B for 8 bits per byte. | |
| SpeechProcessBit | 51844 | RLC (HL) | Rotate *HL left one position to set the next bit to the carry flag. | |
|
Set the speaker bit ON or OFF based on if the currently processed bit is set or not.
|
||||
| 51846 | LD A,%00010000 | Set the speaker bit to ON. | ||
| 51848 | JR C,SpeechOutputSample | Jump to SpeechOutputSample if the carry bit is set. | ||
| 51850 | XOR A | Set the speaker bit to OFF. | ||
|
Output the sample.
|
||||
| SpeechOutputSample | 51851 | OUT (254),A | Send A to the speaker. | |
|
Introduce a tiny delay.
|
||||
| 51853 | LD C,18 | Set a delay counter in C. | ||
| SpeechDelay_Loop | 51855 | DEC C | Decrease the delay counter by one. | |
| 51856 | JR NZ,SpeechDelay_Loop | Jump back to SpeechDelay_Loop until the delay counter is zero. | ||
| 51858 | DJNZ SpeechWasteCycles | Decrease the bit counter by one and jump to SpeechWasteCycles until all bits in the current byte have been processed. | ||
|
Finished with this byte, move onto the next.
|
||||
| 51860 | INC HL | Move to the next byte of speech data. | ||
| 51861 | DEC DE | Decrease the data length counter by one. | ||
| 51862 | LD A,D | Jump back to SpeechProcessByte until all the bytes have been processed. | ||
| 51863 | OR E | |||
| 51864 | JR NZ,SpeechProcessByte | |||
|
All done, re-enable the interrupts and return.
|
||||
| 51866 | EI | Enable interrupts. | ||
| 51867 | RET | Return. | ||
|
Minor timing tweaks (probably).
|
||||
| SpeechWasteCycles | 51868 | NOP | No operation. | |
| 51869 | NOP | |||
| 51870 | NOP | |||
| 51871 | NOP | |||
| 51872 | NOP | |||
| 51873 | JR SpeechProcessBit | Jump to SpeechProcessBit. | ||
| Prev: 51812 | Up: Map | Next: 51875 |