Sonic 2 Clone Driver v2 v2.3 | and other SMPS-related ramblings
#77
Posted 09 July 2015 - 07:09 AM
Here's an update that's been collecting dust since April.
v2.3
Anyhow, this is a major update because of the massive RAM improvement (and it's about time the v2.2.X line died off).
Now, where's my feedback saying that I'm a god that should be worshipped?
v2.3
- Made FadeOutSFX use d6 instead of d7, so that it doesn't conflict with Sound_PlayBGM
- Optimised PSG envelopes with more efficient use of flags
- Made previous version's bugs toggleable with Fix_DriverBugs
- Added Valley Bell's Sega chant pan fix
- Added Valley Bell's 0 FM track fix
- Added Valley Bell's cfFadeInToPrevious PSG noise type fix
- Added a (commented out) call to FadeOutSpecSFX in Sound_PlayBGM
- Un-commented-out the calls under Sound_PlayBGM
- S2-ified FadeOutSFX
- Corrected StopSoundAndMusic comment
- Improved cfFadeInToPrevious FM6 fix
- Reduced RAM usage by employing a trick from S&K's driver: the SFX/special SFX share RAM with the 1up music backup
- Switched to using 'STRUCT' to define track RAM
- Defined driver RAM with phase/ds.b combo
- Split v_1up_ram_copy into v_1up_ram_copy and v_1up_variables (variables now go after tracks)
- As part of the SFX/track backup share, the playback control bytes of all tracks are separately backed-up
- Made Sound_PlayBGM's extra life code clear the special SFX tracks' 'is playing' bit
- Special SFX code above FMDACInitBytes now uses tst.b instead of tst.w
- Moved v_special_voice_ptr back next to v_voice_ptr (RAM is dynamic now, so it can go here without wasting any RAM if unused)
- Made continuous SFX RAM toggleable
- Reduced zTrack size to $2E by changing LoopCounters from 4 bytes to 2 bytes, as S&K's driver has it
- Reduced zTrack size to $2C with some track-specific RAM usage
- FinishTrackUpdate no longer clears VolFlutter on non-PSG tracks
- Removed now-useless label (loc_721B6)
Anyhow, this is a major update because of the massive RAM improvement (and it's about time the v2.2.X line died off).
This post has been edited by Clownacy: 12 July 2015 - 12:04 PM


03