Difference between revisions of "Expand the music index from $94 to $9F"
From Sonic Retro
m (Um...) |
Scarred Sun (talk | contribs) m (Text replacement - "</asm>" to "</syntaxhighlight>") |
||
Line 6: | Line 6: | ||
bcs.s LevSel_PlaySnd; if yes, branch | bcs.s LevSel_PlaySnd; if yes, branch | ||
cmpi.w #$A0,d0 ; is sound $95-$A0 being played? | cmpi.w #$A0,d0 ; is sound $95-$A0 being played? | ||
− | bcs.s LevelSelect; if yes, branch</ | + | bcs.s LevelSelect; if yes, branch</syntaxhighlight> |
Change the line: | Change the line: | ||
− | <asm> cmpi.w #$94,d0 ; is sound $80-$94 being played?</ | + | <asm> cmpi.w #$94,d0 ; is sound $80-$94 being played?</syntaxhighlight> |
So it reads: | So it reads: | ||
− | <asm> cmpi.w #$A0,d0 ; is sound $80-$9F being played?</ | + | <asm> cmpi.w #$A0,d0 ; is sound $80-$9F being played?</syntaxhighlight> |
Then rebuild the ROM. | Then rebuild the ROM. | ||
Revision as of 21:30, 20 December 2015
(Original guide by SoullessSentinel)
To add more music slots to the sound test, search for this code in the level select routine: <asm>LevSel_NoCheat:
cmpi.w #$94,d0 ; is sound $80-$94 being played? bcs.s LevSel_PlaySnd; if yes, branch cmpi.w #$A0,d0 ; is sound $95-$A0 being played? bcs.s LevelSelect; if yes, branch</syntaxhighlight>
Change the line: <asm> cmpi.w #$94,d0 ; is sound $80-$94 being played?</syntaxhighlight> So it reads: <asm> cmpi.w #$A0,d0 ; is sound $80-$9F being played?</syntaxhighlight> Then rebuild the ROM.
And now the sound test will have the music slots going up to $9F, instead of $94, however attempts to play empty music slots will crash the sound driver, and possibly lock up the emulator. So, make sure you include a song in every slot.
Note: The disassembly's comments are incorrect. The correct ID ranges are $80-$93 and $94-$9F.