Routines |
Prev: C064 | Up: Map | Next: C0AB |
Used by the routine at StartGame.
|
||||
Sounds_PlayQueue | C077 | LD IY,($B793) | IY=*B793. | |
C07B | LD A,($5C78) | A=*FRAMES. | ||
C07E | LD ($B7E7),A | Write A to *B7E7. | ||
C081 | EI | Enable interrupts. | ||
C082 | IM 1 | Interrupt mode 1. | ||
C084 | LD A,($5CDD) | Call 974A if *5CDD is not zero. | ||
C087 | AND A | |||
C088 | CALL NZ,$974A | |||
C08B | LD IX,$C0B8 | IX=Sounds_Queue. | ||
C08F | LD B,$05 | B=05 (counter). | ||
Sounds_PlayQueue_Loop | C091 | PUSH BC | Stash BC on the stack. | |
C092 | LD A,(IX+$00) | Call Sounds_PlaySound if *IX+00 is not zero. | ||
C095 | AND A | |||
C096 | CALL NZ,Sounds_PlaySound | |||
C099 | LD BC,$0007 | BC=0007. | ||
C09C | ADD IX,BC | IX+=BC. | ||
C09E | POP BC | Restore BC from the stack. | ||
C09F | DJNZ Sounds_PlayQueue_Loop | Decrease counter by one and loop back to Sounds_PlayQueue_Loop until counter is zero. | ||
C0A1 | LD A,($5C78) | B=*FRAMES. | ||
C0A4 | LD B,A | |||
C0A5 | LD A,($B7E7) | A=*B7E7. | ||
C0A8 | CP B | Compare A with B. | ||
C0A9 | DI | Disable interrupts. | ||
C0AA | RET | Return. |
Prev: C064 | Up: Map | Next: C0AB |