Prev: B654 Up: Map Next: B676
B65F: Unused: Knight Lore's werewolf sound
Code nothing reaches: no instruction or table holds its address, and no session ran it. sna2ctl left it as data; it decodes cleanly to its RET. It is Knight Lore's sound_transform byte for byte (found by searching Knight Lore's snapshot for these bytes): a warble of 16 to 40 single waves, the number set by the low two bits of the graphic -- the four frames of Sabreman changing into the werewolf and back -- each at a half-wave count of the step XOR $55, plus the step. Alien 8 kept the routine and dropped its only caller.
Input
IX the object
TRANSFORM_SOUND B65F LD A,(IX+$00) C = 16, 24, 32 or 40 by the graphic's bits 0-1; one wave at (C XOR $55) + C for each C down to 1
B662 RLCA
B663 RLCA
B664 RLCA
B665 AND $18
B667 ADD A,$10
B669 LD C,A
TRANSFORM_SOUND_0 B66A LD A,C
B66B XOR $55
B66D ADD A,C
B66E LD B,A
B66F CALL CLICK
B672 DEC C
B673 JR NZ,TRANSFORM_SOUND_0
B675 RET
Prev: B654 Up: Map Next: B676