Add placeholder "ready go" sfx.

This commit is contained in:
Randy Thiemann 2023-10-21 19:42:33 +02:00
parent 63db6081ff
commit 621767aeb9
3 changed files with 287 additions and 8 deletions

View File

@ -146,6 +146,7 @@ DEF SFX_MOVE EQU 11
DEF SFX_RANK_UP EQU 12
DEF SFX_LEVEL_UP EQU 13
DEF SFX_IHS EQU 14
DEF SFX_READY_GO EQU 15
DEF STACK_SIZE EQU 64
DEF GAME_OVER_R10 EQU 133
DEF GAME_OVER_R12 EQU 153

View File

@ -180,6 +180,7 @@ sfx_names = [
"sSFXRankUp",
"sSFXLevelUp",
"sSFXIHS",
"sSFXReadyGo",
]
def chunks(lst, n):
@ -211,6 +212,10 @@ class DB:
self.l.append(register_names[args[0]])
self.l.append(f"${args[1]:02X}")
def trim(self):
while self.l[-1] == "$FF":
self.l.pop()
for c, v in enumerate(register_names):
if v != "REG_UNK":
print(f"DEF {v} EQU ${c:02X}")
@ -228,8 +233,9 @@ with open("sfx.vgm", "rb") as f:
while len(data) > 0:
if data.startswith(b'\x67\x66'):
if len(db) > 0:
db.trim()
db.add(0xFE)
print(db)
print(db, end="")
print(f"{sfx_names[ctr-1]}End::")
db = DB()
print(f"{sfx_names[ctr]}::")
@ -251,8 +257,9 @@ with open("sfx.vgm", "rb") as f:
data = data[1:]
elif data.startswith(b'\x66'):
if len(db) > 0:
db.trim()
db.add(0xFE)
print(db)
print(db, end="")
print(f"{sfx_names[ctr-1]}End::")
break
else:

View File

@ -63,6 +63,9 @@ DEF REG_WAVE_PATTERN_F EQU $3F
SECTION "SFX Data", ROM0
sSFXPieceI::
db REG_NR12_CH1_VOLEV, $00, REG_NR14_CH1_FRQHI, $80, REG_NR22_CH2_VOLEV, $00, REG_NR24_CH2_FRQHI, $80
db REG_NR32_CH3_VOLUM, $00, REG_NR34_CH3_FRQHI, $80, REG_NR42_CH4_VOLEV, $00, REG_NR44_CH4_CNTRL, $80
db REG_NR10_CH1_SWEEP, $00, REG_NR52_MASTERCTL, $8F, REG_NR51_MASTERPAN, $FF, REG_NR50_MVOLVINPN, $77
db REG_NR12_CH1_VOLEV, $F0, REG_NR22_CH2_VOLEV, $F0, REG_NR11_CH1_LENDT, $BF, REG_NR11_CH1_LENDT, $BF
db REG_NR12_CH1_VOLEV, $F0, REG_NR13_CH1_FRQLO, $AC, REG_NR14_CH1_FRQHI, $85, REG_NR21_CH2_LENDT, $7F
db REG_NR21_CH2_LENDT, $7F, REG_NR22_CH2_VOLEV, $80, REG_NR23_CH2_FRQLO, $14, REG_NR24_CH2_FRQHI, $87
@ -715,7 +718,7 @@ sSFXBell::
db REG_NR22_CH2_VOLEV, $08, REG_NR23_CH2_FRQLO, $97, REG_NR24_CH2_FRQHI, $87, $FE
sSFXBellEnd::
sSFXMove::
db REG_NR42_CH4_VOLEV, $F1, REG_NR41_CH4_LENGT, $3F, REG_NR42_CH4_VOLEV, $F1, REG_NR43_CH4_FQRND, $00
db REG_NR42_CH4_VOLEV, $21, REG_NR41_CH4_LENGT, $3F, REG_NR42_CH4_VOLEV, $C1, REG_NR43_CH4_FQRND, $00
db REG_NR44_CH4_CNTRL, $80, $FE
sSFXMoveEnd::
sSFXRankUp::
@ -723,10 +726,10 @@ sSFXRankUp::
db REG_NR11_CH1_LENDT, $7F, REG_NR12_CH1_VOLEV, $F2, REG_NR13_CH1_FRQLO, $AC, REG_NR14_CH1_FRQHI, $85
db REG_NR21_CH2_LENDT, $7F, REG_NR21_CH2_LENDT, $7F, REG_NR22_CH2_VOLEV, $F2, REG_NR23_CH2_FRQLO, $72
db REG_NR24_CH2_FRQHI, $86, REG_NR30_CH3_DACEN, $00, REG_WAVE_PATTERN_0, $00, REG_WAVE_PATTERN_1, $00
db REG_WAVE_PATTERN_2, $00, REG_WAVE_PATTERN_3, $00, REG_WAVE_PATTERN_4, $00, REG_WAVE_PATTERN_5, $00
db REG_WAVE_PATTERN_6, $0F, REG_WAVE_PATTERN_7, $FF, REG_WAVE_PATTERN_8, $FF, REG_WAVE_PATTERN_9, $FF
db REG_WAVE_PATTERN_A, $FF, REG_WAVE_PATTERN_B, $FF, REG_WAVE_PATTERN_C, $FF, REG_WAVE_PATTERN_D, $FF
db REG_WAVE_PATTERN_E, $F0, REG_WAVE_PATTERN_F, $00, REG_NR30_CH3_DACEN, $00, REG_NR30_CH3_DACEN, $80
db REG_WAVE_PATTERN_2, $00, REG_WAVE_PATTERN_3, $0F, REG_WAVE_PATTERN_4, $FF, REG_WAVE_PATTERN_5, $FF
db REG_WAVE_PATTERN_6, $FF, REG_WAVE_PATTERN_7, $FF, REG_WAVE_PATTERN_8, $FF, REG_WAVE_PATTERN_9, $FF
db REG_WAVE_PATTERN_A, $FF, REG_WAVE_PATTERN_B, $F0, REG_WAVE_PATTERN_C, $00, REG_WAVE_PATTERN_D, $00
db REG_WAVE_PATTERN_E, $00, REG_WAVE_PATTERN_F, $00, REG_NR30_CH3_DACEN, $00, REG_NR30_CH3_DACEN, $80
db REG_NR32_CH3_VOLUM, $40, REG_NR33_CH3_FRQLO, $21, REG_NR34_CH3_FRQHI, $87, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF
@ -1023,6 +1026,263 @@ sSFXIHS::
db REG_NR12_CH1_VOLEV, $08, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FE
sSFXIHSEnd::
sSFXReadyGo::
db REG_NR11_CH1_LENDT, $BF, REG_NR11_CH1_LENDT, $BF, REG_NR12_CH1_VOLEV, $F8, REG_NR13_CH1_FRQLO, $16
db REG_NR14_CH1_FRQHI, $84, REG_NR21_CH2_LENDT, $BF, REG_NR21_CH2_LENDT, $BF, REG_NR22_CH2_VOLEV, $68
db REG_NR23_CH2_FRQLO, $E5, REG_NR24_CH2_FRQHI, $84, $FF, $FF, $FF
db REG_NR12_CH1_VOLEV, $E8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $58
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $D8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $C8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $48
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $B8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $A8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $98, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $38
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $88, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $78, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $28
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $68, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $58, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $48, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $18
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $38, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $28, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $08
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $18, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $08, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF
db REG_NR11_CH1_LENDT, $BF, REG_NR11_CH1_LENDT, $BF, REG_NR12_CH1_VOLEV, $F8, REG_NR13_CH1_FRQLO, $16
db REG_NR14_CH1_FRQHI, $84, REG_NR21_CH2_LENDT, $BF, REG_NR21_CH2_LENDT, $BF, REG_NR22_CH2_VOLEV, $68
db REG_NR23_CH2_FRQLO, $E5, REG_NR24_CH2_FRQHI, $84, $FF, $FF, $FF
db REG_NR12_CH1_VOLEV, $E8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $58
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $D8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $C8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $48
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $B8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $A8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $98, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $38
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $88, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $78, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $28
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $68, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $58, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $48, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $18
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $38, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $28, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $08
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $18, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $08, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF
db REG_NR11_CH1_LENDT, $BF, REG_NR11_CH1_LENDT, $BF, REG_NR12_CH1_VOLEV, $F8, REG_NR13_CH1_FRQLO, $16
db REG_NR14_CH1_FRQHI, $84, REG_NR21_CH2_LENDT, $BF, REG_NR21_CH2_LENDT, $BF, REG_NR22_CH2_VOLEV, $68
db REG_NR23_CH2_FRQLO, $E5, REG_NR24_CH2_FRQHI, $84, $FF, $FF, $FF
db REG_NR12_CH1_VOLEV, $E8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $58
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $D8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $C8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $48
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $B8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $A8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $98, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $38
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $88, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $78, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $28
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $68, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $58, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $48, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $18
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $38, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $28, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $08
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $18, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $08, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF
db $FF
db REG_NR11_CH1_LENDT, $BF, REG_NR11_CH1_LENDT, $BF, REG_NR12_CH1_VOLEV, $F8, REG_NR13_CH1_FRQLO, $39
db REG_NR14_CH1_FRQHI, $87, REG_NR21_CH2_LENDT, $BF, REG_NR21_CH2_LENDT, $BF, REG_NR22_CH2_VOLEV, $68
db REG_NR23_CH2_FRQLO, $6B, REG_NR24_CH2_FRQHI, $87, $FF, $FF, $FF
db REG_NR12_CH1_VOLEV, $E8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $58
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $D8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $C8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $48
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $B8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $A8, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $98, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $38
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $88, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $78, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $28
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $68, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $58, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $48, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $18
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $38, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF, $FF
db REG_NR12_CH1_VOLEV, $28, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, REG_NR22_CH2_VOLEV, $08
db REG_NR22_CH2_VOLEV, $09, REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, REG_NR22_CH2_VOLEV, $09
db REG_NR22_CH2_VOLEV, $11, REG_NR22_CH2_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $18, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FF
db REG_NR12_CH1_VOLEV, $08, REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08
db REG_NR12_CH1_VOLEV, $09, REG_NR12_CH1_VOLEV, $11, REG_NR12_CH1_VOLEV, $08, $FE
sSFXReadyGoEnd::
SECTION "SFX Variables", HRAM
@ -1248,8 +1508,10 @@ SFXEnqueue::
call SFXPlay
ret
: cp a, SFX_IHS
ret nz
jr nz, :+
ld a, LOW(sSFXIHS)
ldh [hPlayhead], a
ld a, HIGH(sSFXIHS)
@ -1257,6 +1519,15 @@ SFXEnqueue::
call SFXPlay
ret
: cp a, SFX_READY_GO
ret nz
ld a, LOW(sSFXReadyGo)
ldh [hPlayhead], a
ld a, HIGH(sSFXReadyGo)
ldh [hPlayhead+1], a
call SFXPlay
ret
SFXKill::
; Kill all sound without pops.