diff options
Diffstat (limited to '')
-rw-r--r-- | src/audio/SampleManager.cpp | 85 |
1 files changed, 84 insertions, 1 deletions
diff --git a/src/audio/SampleManager.cpp b/src/audio/SampleManager.cpp index 2319baec..7af3446b 100644 --- a/src/audio/SampleManager.cpp +++ b/src/audio/SampleManager.cpp @@ -1,9 +1,92 @@ #include "common.h" +#include "patcher.h" #include "SampleManager.h" CSampleManager &cSampleManager = *(CSampleManager *)0x7341E0; -uint32 &CSampleManager::nNumOfMp3Files = *(uint32*)0x95CC00; + +uint32 &nNumOfMp3Files = *(uint32 *)0x95CC00; +uint8 &num3DProvidersAvailable = *(uint8 *)0x734237; +uint32 *asName3DProviders = (uint32 *)0x734238; bool CSampleManager::IsMP3RadioChannelAvailable() { return nNumOfMp3Files != 0; } + +WRAPPER void +CSampleManager::ReleaseDigitalHandle() +{ + EAXJMP(0x5664B0); +} + +WRAPPER +void +CSampleManager::RequireDigitalHandle() +{ + EAXJMP(0x5664F0); +} + +WRAPPER +char +CSampleManager::AutoDetect3DProviders() +{ + EAXJMP(0x565990); +} + +WRAPPER +uint8 +CSampleManager::GetCDAudioDriveLetter() +{ + EAXJMP(0x566F20); +} + +WRAPPER +void +CSampleManager::SetEffectsMasterVolume(uint8 volume) +{ + EAXJMP(0x567010); +} + +WRAPPER +void +CSampleManager::SetMusicMasterVolume(uint8 volume) +{ + EAXJMP(0x567020); +} + +WRAPPER +void +CSampleManager::SetEffectsFadeVol(uint8 volume) +{ + EAXJMP(0x567030); +} + +WRAPPER +void +CSampleManager::SetMusicFadeVol(uint8 volume) +{ + EAXJMP(0x567040); +} + +WRAPPER +void +CSampleManager::SetSpeakerConfig(uint32 config) +{ + EAXJMP(0x565900); +} + +WRAPPER +bool +CSampleManager::GetChannelUsedFlag(int32 id) +{ + EAXJMP(0x567B00); +} + +WRAPPER +void +CSampleManager::StopChannel(int32 id) +{ + EAXJMP(0x567BE0); +} +STARTPATCHES +InjectHook(0x566490, CSampleManager::IsMP3RadioChannelAvailable, PATCH_JUMP); +ENDPATCHES
\ No newline at end of file |