Source:
Azurik - Rise of Perathia (3911)
NightCaster (4039)
Double-S.T.E.A.L (4134)
Flight Academy (4361)
Turok - Evolution (4627)
Quantum Redshift (4721)
NBA 2K3 (4831)
Shikigami no Shiro Evolution (5028)
Cyber Attack Team (5233)
Starsky And Hutch 5344 (5344)
XIII (5558)
Steel Battalion - Line of Contact (5788)
Forza Motorsport (5849)
- Moved CDirectSoundVoice_SetHeadroom to 3911
- Moved IDirectSoundBuffer_SetHeadroom to 3911
- Moved CDirectSoundStream_Pause to 3911
- Add CDirectSoundStream_GetStatus to 3911
- Add CDirectSoundStream_Process to 3911
- Add CMcpxStream_Flush to 3911
- Add CDirectSoundStream_Flush to 3911
- Add CMcpxStream_Discontinuity to 3911
- Add CDirectSoundStream_Discontinuity to 3911
- Add CDirectSoundStream_GetInfo to 3911
Verified with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- Moved DirectSoundCreate to 3911
- Moved CMcpxAPU_ServiceDeferredCommandsLow to 3911
- Moved CDirectSound_DoWork to 3911
- Moved DirectSoundDoWork to 3911
- Moved CDirectSoundVoice_SetFrequency to 3911
- Moved IDirectSoundBuffer_SetFrequency to 3911
- Moved CMcpxVoiceClient_SetMixBins to 3911
- Moved CDirectSoundVoice_SetMixBins to 3911
- Moved IDirectSoundBuffer_SetMixBins to 3911
- Moved CDirectSoundBuffer_SetBufferData to 3911
- Moved IDirectSoundBuffer_SetBufferData to 3911
- Moved CDirectSoundBuffer_SetNotificationPositions to 3911
- Moved IDirectSoundBuffer_SetNotificationPositions to 3911
- Add DirectSoundCreateBuffer to 3911
- Add DirectSoundCreateStream to 3911
- Add CDirectSoundVoice_SetOutputBuffer to 3911
- Add CDirectSoundBuffer_SetOutputBuffer to 3911
Verified with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage (DSound portion)
Instead of looking for XREF flag. Check if there is a saved index then
perform the task. This make the job so much easier to do for knowing
which is XREF, PATCH, or both.
- Moved CMcpxVoiceClient_SetPitch to 3911
- Moved CDirectSoundVoice_SetPitch to 3911
- Moved IDirectSoundBuffer_SetPitch to 3911
- Add IDirectSoundBuffer_SetPitch to 4039, XREF is different
- Make XREF more readable for _SetPitch functions.
Verified with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- [4039] Nightcaster
- [4134] Jet Set Radio Future
- [4242] Gauntlet Dark Legacy
- [4361] Burnout
- [4637] Turok Evolution
- [5233] Futurama
- [5558] Dino Crisis 3
- [5849] Lego Star Wars
- Moved CSensaura3d_GetFullHRTFFilterPair to 3911
- Moved DirectSoundUseFullHRTF to 3911
- Moved DirectSoundGetSampleTime to 3911
- Moved XAudioCalculatePitch to 3911
- Moved CDirectSound_CreateSoundBuffer to 3911
- Moved CDirectSound_CreateSoundStream to 3911
- Moved IDirectSound_CreateSoundStream to 3911
- Add CSensaura3d_GetLiteHRTFFilterPair to 3911
- Add DirectSoundUseLightHRTF to 3911
- Add TODO of known DSound OOVPA issue list for record purposes.
- Remove duplicates _SetPitch from 5233 database.
Tested with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- Moved IDirectSound_Release to 3911
- Moved IDirectSound_AddRef to 3911
- Moved IDirectSound_SetOrientation to 3911
- Moved CDirectSound_SetOrientation to 3911
- Moved IDirectSound_CommitDeferredSettings to 3911
- Moved CDirectSound_CommitDeferredSettings to 3911
- Moved CMcpxAPU_Commit3dSettings to 3911
Verified with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- [4039] Nightcaster
- [4134] Jet Set Radio Future
- [4242] Gauntlet Dark Legacy
- [4361] Burnout
- [4637] Turok Evolution
- [5233] Futurama
- [5558] Dino Crisis 3
- [5849] Lego Star Wars
Source:
Lord of the Rings - The Two Towers (4928)
Super Bubble Pop (5120)
Cyber Attack Team (5233)
Syberia (5344)
Top Spin (5558)
Steel Battalion - Line of Contact (5788)
Souece: Forza Motorsport (5849)
- Renamed CDirectSoundStream_SetMixBinVolumes(2)
- Renamed IDirectSoundBuffer_SetMixBinVolumes(2)
- Moved CMcpxVoiceClient_SetVolume to 3911
- Moved CDirectSoundVoice_SetMixBinVolumes to 3911
- Moved CDirectSoundStream_SetMixBinVolumes_12 to 3911
- Moved IDirectSoundBuffer_SetMixBinVolumes_12 to 3911
- Add XREF entry to CDirectSoundVoice_SetVolume 3911
- Add XREF entry to CDirectSoundVoice_SetMixBinVolumes 4039
Verified with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- [4039] 007: Agent Under Fire
- [4134] Jet Set Radio Future
- [4637] Turok Evolution
- [5558] Dino Crisis 3
- [5849] Lego Star Wars
- Moved DirectSoundEnterCriticalSection to 3911
- Moved IDirectSoundBuffer_AddRef to 3911
- Moved IDirectSoundBuffer_Release to 3911
- Moved IDirectSoundBuffer_Unlock to 3911
- Moved IDirectSound_SetCooperativeLevel to 3911
- Moved IDirectSoundBuffer_StopEx to 3911
- Moved IDirectSoundBuffer_PlayEx to 3911
- Add CMcpxBuffer_Stop to 3911
- Add CDirectSoundBuffer_StopEx to 3911
- Add CDirectSoundBuffer_PlayEx to 3911
Generic OOVPA functions are...
- DirectSoundEnterCriticalSection
- IDirectSoundBuffer_AddRef
- IDirectSoundBuffer_Release
- IDirectSoundBuffer_Unlock
- IDirectSound_SetCooperativeLevel
Tested with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- [4039] 007: Agent Under Fire
- [4134] Jet Set Radio Future
- [5558] Dino Crisis 3
- Moved CMcpxBuffer_GetCurrentPosition to 3911
- Moved CDirectSoundBuffer_GetCurrentPosition to 3911
- Moved IDirectSoundBuffer_GetCurrentPosition to 3911
- Moved CMcpxBuffer_GetStatus to 3911
- Moved CDirectSoundBuffer_GetStatus to 3911
- Moved IDirectSoundBuffer_GetStatus to 3911
- Add CMcpxBuffer_GetCurrentPosition to 4039
- Add CDirectSoundBuffer_GetCurrentPosition to 4039
- Add CMcpxBuffer_GetStatus to 4039
- Add CDirectSoundBuffer_GetStatus to 4039
- Removed duplicate CMcpxBuffer_GetCurrentPosition OOVPAs.
IDirectSoundBuffer_GetCurrentPosition and IDirectSoundBuffer_GetStatus
are generic functions.
Tested with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- [4039] 007: Agent Under Fire
- [4134] Jet Set Radio Future
- [5558] Dino Crisis 3
Now it has multi sections array support up to 2 (can be change by
increasing LINKSCANSEC_MAX
In fact, we can finally support other than DSound in v2 database now!
🎉
- CMcpxBuffer_Stop has not changed as of 4242 and newer.
- CDirectSoundBuffer_Stop has not changed as of 4134 and newer.
- IDirectSoundBuffer_Stop has not changed since 3911.
- IDirectSoundBuffer_SetLoopRegion does match against 3911.
TODO: Need to re-locate versions in correct version file.
Verified with:
- [3936] Simpsons - Road Rage
- [4039] 007: Agent Under Fire
- [4134] Jet Set Radio Future
- [4242] Smashing Drive & Gauntlet Dark Legacy
- [4361] Burnout
- [4627] Turok Evolution
- [5233] Futurama
- [5558] Dino Crisis 3
- [5849] Lego Star Wars
The following functions support 4134 to 5849
- CDirectSoundVoice_SetPitch
- CDirectSoundBuffer_SetPitch
- IDirectSoundBuffer_SetPitch
- CDirectSoundStream_SetPitch
The workaround will fix DSound 4039 build. It will also fix any other
missing DSound library section as well. In HLEDB v2, the scan method
will check for DSOUND header section. If it doesn't have it, then DSound
DB will be skip.
Verified Unlock does exist in xbe file and is in used. Even though xbox
doesn't handle it directly. It will allow fix audio issue especially
Turok Evolution's XADPCM backgrounc music. Yet is not fully fixed...
On side note... Xbox dashboard is calling Unlock function?!?!