![]() |
Routines |
| Prev: D562 | Up: Map | Next: D587 |
|
No code or table holds this address, and no session ran it. The 27 bytes decode cleanly up to BLIP_PITCHES: BC = the address of BLIP_PITCHES; BIT 1,(IX+$07); RES 1,(IX+$07); RET Z; A = TURNS AND 15; B = the byte at BC plus that; C = 12; JP BEEP. So: if bit 1 of the object's flags was set, clear it and play twelve waves at one of sixteen pitches, picked by the turn counter.
It looks like Knight Lore's blip for the movable block, which plays four waves at one of eight pitches picked by the frame counter every frame; here it is gated on a flag bit and left unused. Bit 1 of the flags is the one the collision code sets on the record it is moving (ADJ_FOR_OUT_OF_BOUNDS) and on a puff (START_PUFF).
|
||||||||
| BLIP_BY_TURN | D56C | LD BC,BLIP_PITCHES | ||||||
| D56F | BIT 1,(IX+$07) | |||||||
| D573 | RES 1,(IX+$07) | |||||||
| D577 | RET Z | |||||||
| D578 | LD A,(TURNS) | |||||||
| D57B | AND $0F | |||||||
| D57D | LD L,A | |||||||
| D57E | LD H,$00 | |||||||
| D580 | ADD HL,BC | |||||||
| D581 | LD B,(HL) | |||||||
| D582 | LD C,$0C | |||||||
| D584 | JP BEEP | |||||||
| Prev: D562 | Up: Map | Next: D587 |