![]() |
Routines |
| Prev: B6C0 | Up: Map | Next: B702 |
|
Used by the routine at HANDLE_FORWARD.
For the legs (HANDLE_FORWARD), on every other frame of the walk: those with bit 0 of the graphic clear. FOOTSTEP_NOW skips that test (TURNING_LEGS). The pitch alternates by bit 1 of the turn counter between a fixed half-wave count of 96 and one from the height, the tick-tock of two feet; the number of waves is (U/2 + (256-V)/2)/16, which comes out longer towards plus U and shorter towards plus V. Knight Lore's sound_footstep.
BEEP, its end, is the common tail of the sound effects: C waves at a half-wave count of B. A C of 0 would mean 256 waves.
|
||||||||
| FOOTSTEP | B6CE | LD A,(IX+$00) | only on even walking frames | |||||
| B6D1 | AND $01 | |||||||
| B6D3 | RET NZ | |||||||
|
This entry point is used by the routine at TURNING_LEGS.
|
||||||||
| FOOTSTEP_NOW | B6D4 | LD B,$60 | a pitch of 96, and the turn counter | |||||
| B6D6 | LD A,(TURNS) | |||||||
|
This entry point is used by the routine at LOWER_HALF_STEP.
|
||||||||
| FOOTSTEP_PITCH | B6D9 | BIT 1,A | on alternate pairs of turns, a pitch from the height instead | |||||
| B6DB | JR Z,FOOTSTEP_0 | |||||||
| B6DD | LD A,(IX+$03) | |||||||
| B6E0 | ADD A,$40 | |||||||
| B6E2 | CPL | |||||||
| B6E3 | SRL A | |||||||
| B6E5 | LD B,A | |||||||
| FOOTSTEP_0 | B6E6 | LD A,(IX+$01) | C = the number of waves, from U and V | |||||
| B6E9 | SRL A | |||||||
| B6EB | LD C,A | |||||||
| B6EC | LD A,(IX+$02) | |||||||
| B6EF | NEG | |||||||
| B6F1 | SRL A | |||||||
| B6F3 | ADD A,C | |||||||
| B6F4 | RRCA | |||||||
| B6F5 | RRCA | |||||||
| B6F6 | RRCA | |||||||
| B6F7 | RRCA | |||||||
| B6F8 | AND $0F | |||||||
| B6FA | LD C,A | |||||||
|
This entry point is used by the routines at SPARKLE_SOUND, THUD_SOUND, BEEP_BY_Z, CRASH_SOUND, PLAIN_BEEP, PAUSE_BEEP and HIGH_BEEP.
|
||||||||
| BEEP | B6FB | CALL CLICK | C waves of half-wave count B | |||||
| B6FE | DEC C | |||||||
| B6FF | JR NZ,BEEP | |||||||
| B701 | RET | |||||||
| Prev: B6C0 | Up: Map | Next: B702 |