- Add XREF to ignore patch not available to
CDirectSoundBuffer_SetConeOutsideVolume for now. (might not need it.)
- Add API DirectSoundUseLightHRTF
- Add API IDirectSound_GetSpeakerConfig
- Add API IDirectSound_CommitDeferredSettings
- Add API IDirectSound_CommitEffectData
- Switch SetConeOrientation, SetMaxDistance, SetMinDistance,
SetPosition, and SetVelocity to be remain unpatch(? Not tested) from
IDirectSoundStream APIs.
Performing this should help other developers to understand the
difference of being patch and not patched. This has been discussed and
decided to proceed with this rename.
NOTE: It is taken effective for v2 database, v1 database is left intact.
- Moved CMcpxAPU_Set3dVelocity to 3911
- Moved CDirectSound_SetVelocity to 3911
- Moved IDirectSound_SetVelocity to 3911
- Moved CMcpxAPU_Set3dRolloffFactor to 3911
- Moved CDirectSound_SetRolloffFactor to 3911
- Moved IDirectSound_SetRolloffFactor to 3911
- Moved CMcpxAPU_SetI3DL2Listener to 3911
- Moved CDirectSound_SetI3DL2Listener to 3911
- Moved IDirectSound_SetI3DL2Listener to 3911
- Add CDirectSound_GetTime to 3911 (100% generic for all revisions)
- Add IDirectSound_GetTime to 3911 (100% generic for all revisions)
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 CMcpxAPU_SetMixBinHeadroom to 3911
- Moved CDirectSound_SetMixBinHeadroom to 3911
- Moved IDirectSound_SetMixBinHeadroom to 3911
- Moved CMcpxAPU_Set3dParameters to 3911
- Moved CDirectSound_SetAllParameters to 3911
- Moved IDirectSound_SetAllParameters to 3911
- Moved CMcpxAPU_Set3dDistanceFactor to 3911
- Moved CDirectSound_SetDistanceFactor to 3911
- Moved IDirectSound_SetDistanceFactor to 3911
- Moved CDirectSound_SetDopplerFactor to 3911
- Moved IDirectSound_SetDopplerFactor to 3911
- Add CMcpxAPU_Set3dDopplerFactor to 3911
- Removed CMcpxAPU_Set3dDopplerFactor from 3936
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 XInputGetState 4928 to 4831
Moved XInputSetState 4928 to 4831
Moved XID_fCloseDevice 4928 to 4831
Moved timeSetEvent 5849 to 5455
Verified with
NBA Live 2002 (3925)
Tony Hawk's Pro Skater 3 (4039)
ESPN Winter X Games Snowboarding 2002 (4134)
NFL Blitz 2002 (4242)
NCAA Football 03 (4432)
Crazy taxi 3 (4531)
Innocent Tears (4627)
Quantum Redshift (4721)
Galaxy Angel (4831)
Medal Of Honor Frontline (4928)
Shikigami no Shiro Evolution (5028)
MVP Baseball 2003 (5120)
C.A.T. Cyber Attack Team (5233)
Starsky And Hutch (5344)
NCAA Football 2004 (5455)
XIII (5558)
Dance Dance Revolution Ultramix (5659)
Steel Battalion - Line of Contact (5788)
Kingdom Under Fire (5849)
- Moved CDirectSound_GetCaps to 3911
- Moved IDirectSound_GetCaps to 3911
- Moved CDirectSound_EnableHeadphones to 3911
- Add CDirectSound_GetSpeakerConfig to 3911
- Add IDirectSound_GetSpeakerConfig to 3911
- Add CDirectSound_DownloadEffectsImage to 3911
- Add IDirectSound_DownloadEffectsImage to 3911
- Add IDirectSound_GetEffectData to 3911
- Add CDirectSound_GetEffectData to 3911
- Add IDirectSound_SetEffectData to 3911
- Add CDirectSound_SetEffectData to 3911
- Add IDirectSound_CommitEffectData to 3911
- Add CDirectSound_CommitEffectData to 3911
- Add IDirectSound_EnableHeadphones to 3911
- Add IDirectSound_CommitEffectData to 3911
- Add CDirectSound_CommitEffectData to 3911
- Add IDirectSound_EnableHeadphones to 3911
NOTE: Titles will regress for not finding required XREF OOVPA from
generic OOVPAs.
Plus discovered false detections, this commit fix the issue.
Which require to perform research again for 4039 revision titles and
later.
Verified with
- [3925] Cel Damage
- [3936] Simpsons - Road Rage
- [4039] revision and later need to perform rework for add/fix XREF
OOVPAs.
- Moved CMcpxVoiceClient_Set3dVelocity to 3911
- Moved CDirectSoundVoice_SetVelocity to 3911
- Moved CDirectSoundStream_SetVelocity to 3911
- Moved IDirectSoundStream_SetVelocity to 3911
- Moved CDirectSoundBuffer_SetVelocity to 3911
- Moved IDirectSoundBuffer_SetVelocity to 3911
- Moved CMcpxVoiceClient_SetI3DL2Source to 3911
- Moved CDirectSoundVoice_SetI3DL2Source to 3911
- Moved IDirectSoundBuffer_SetI3DL2Source to 3911
- Moved CDirectSoundStream_SetI3DL2Source to 3911
- Moved CDirectSoundBuffer_Lock to 3911
- Moved IDirectSoundBuffer_Lock to 3911
- Moved CMcpxBuffer_SetCurrentPosition to 3911
- Moved CDirectSoundBuffer_SetCurrentPosition to 3911
- Moved IDirectSoundBuffer_SetCurrentPosition to 3911
- Renamed CDirectSoundBuffer_SetPlayRegion to
CDirectSoundBuffer_SetLoopRegion
- Renamed IDirectSoundBuffer_SetPlayRegion to
IDirectSoundBuffer_SetLoopRegion
- Moved CDirectSoundBuffer_SetLoopRegion to 3911
- Moved IDirectSoundBuffer_SetLoopRegion to 3911
- Add CDirectSoundStream_SetOutputBuffer to 3911
- Add DS_CRefCount_AddRef to 3911
- Add CDirectSoundStream_AddRef to 3911
- Add DS_CRefCount_Release to 3911
- Add CDirectSoundStream_Release 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
- Moved CMcpxVoiceClient_Set3dMode to 3911
- Moved CDirectSoundVoice_SetMode to 3911
- Moved IDirectSoundBuffer_SetMode to 3911
- Moved CDirectSoundStream_SetMode to 3911
- Moved CMcpxVoiceClient_Set3dPosition to 3911
- Moved CDirectSoundVoice_SetPosition to 3911
- Moved CDirectSoundStream_SetPosition to 3911
- Moved IDirectSoundStream_SetPosition to 3911
- Moved CDirectSoundBuffer_SetPosition to 3911
- Moved IDirectSoundBuffer_SetPosition to 3911
- Moved CMcpxAPU_Set3dPosition to 3911
- Moved CDirectSound_SetPosition to 3911
- Moved IDirectSound_SetPosition to 3911
- Add IDirectSoundBuffer_SetMode to 4039
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 CMcpxVoiceClient_Commit3dSettings to 3911
- Moved CMcpxVoiceClient_Set3dParameters to 3911
- Moved CDirectSoundVoice_SetAllParameters to 3911
- Moved CDirectSoundStream_SetAllParameters to 3911
- Moved CDirectSoundVoice_SetConeAngles to 3911
- Moved CDirectSoundStream_SetConeAngles to 3911
- Moved IDirectSoundBuffer_SetConeAngles to 3911
- Moved CMcpxVoiceClient_Set3dConeOrientation to 3911
- Moved CDirectSoundVoice_SetConeOrientation to 3911
- Moved CDirectSoundStream_SetConeOrientation to 3911
- Moved IDirectSoundStream_SetConeOrientation to 3911
- Moved CDirectSoundBuffer_SetConeOrientation to 3911
- Moved IDirectSoundBuffer_SetConeOrientation to 3911
- Add IDirectSoundBuffer_SetAllParameters 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
- Moved CMcpxVoiceClient_Set3dMaxDistance to 3911
- Moved CDirectSoundVoice_SetMaxDistance to 3911
- Moved CDirectSoundBuffer_SetMaxDistance to 3911
- Moved IDirectSoundBuffer_SetMaxDistance to 3911
- Moved CDirectSoundStream_SetMaxDistance to 3911
- Moved IDirectSoundStream_SetMaxDistance to 3911
- Moved CMcpxVoiceClient_Set3dMinDistance to 3911
- Moved CDirectSoundVoice_SetMinDistance to 3911
- Moved CDirectSoundBuffer_SetMinDistance to 3911
- Moved IDirectSoundBuffer_SetMinDistance to 3911
- Moved CDirectSoundStream_SetMinDistance to 3911
- Moved IDirectSoundStream_SetMinDistance to 3911
- Moved CMcpxVoiceClient_Set3dConeOutsideVolume to 3911
- Moved CDirectSoundVoice_SetConeOutsideVolume to 3911
- Moved CDirectSoundStream_SetConeOutsideVolume to 3911
- Moved IDirectSoundBuffer_SetConeOutsideVolume 3936 to 4039
- Add CDirectSoundBuffer_SetConeOutsideVolume to 3911
- Add IDirectSoundBuffer_SetConeOutsideVolume to 3911
- Removed CDirectSoundBuffer_SetConeOutsideVolume from 3936
IDirectSoundBuffer_SetConeOutsideVolume 3936 is still using
CDirectSoundVoice_SetConeOutsideVolume caller
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
The following changes allow us to manage patch or disable within
individual library with group of OOVPA registrations in each function.
If we want to enable specific function, we can do so in two ways.
- HLE cache file, by remove "_DISABLED" at the end of the function's
name, or
- xxxxx.OOVPA.inl file, by change DISABLED declaration to PATCH.
It is only effective for PATCH and DISABLE declaration purposes. XREF
does not need any change.
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