Prev: 6EF0 Up: Map Next: 6F63
6F47: Crash Sound/ Border Flash
Used by the routines at 6C77, 6F63, 72CA, 7533 and 78B0.
Input
C Duration counter
Sounds_Crash 6F47 LD HL,$6A1C Point to 6A1C.
6F4A XOR A A=00.
Sounds_Crash_Loop 6F4B LD B,(HL) B=Fetch the sound data byte.
6F4C INC HL Move onto the next sound data byte.
6F4D DJNZ $6F4D Decrease counter by one and loop back to 6F4D until counter is zero.
6F4F SET 4,A Turn the speaker on (set bit 4) and set the border colour.
6F51 OUT ($FE),A
6F53 LD B,(HL) B=Fetch the sound data byte.
6F54 INC HL Move onto the next sound data byte.
6F55 DJNZ $6F55 Decrease counter by one and loop back to 6F55 until counter is zero.
6F57 RES 4,A Turn the speaker off (reset bit 4) and set the border colour.
6F59 OUT ($FE),A
6F5B INC A Increment A by one.
6F5C DEC C Decrease C by one.
6F5D JR NZ,Sounds_Crash_Loop Jump back to Sounds_Crash_Loop until C is zero.
6F5F XOR A A=00.
6F60 OUT ($FE),A Border colour.
6F62 RET Return.
Prev: 6EF0 Up: Map Next: 6F63