So much changes. Need to re-review (twice)
- Add CDirectSound_CommitDeferredSettings to 5455 (Generic OOVPA) - Add CDirectSoundBuffer_SetBufferData to 4134 (Generic OOVPA, replaced original 4134) - Add DS_CRefCount_Release to 5455 - Add CMcpxStream_Flush to 5344 and 5455 - Add CDirectSound_EnableHeadphones to 5455 - Add CMcpxStream_Discontinuity to 5344 and 5455 - Add CMcpxStream_GetStatus to 5344 - Add CMcpxVoiceClient_SetMixBins to 5344 - Add CDirectSound_SetI3DL2Listener to 5455 - Add CHRTFSource_SetFullHRTF5Channel to 5344 - Add CHRTFSource_SetLightHRTF5Channel to 5344 - Add CHRTFSource_SetFullHRTF4Channel to 5344 - Add CHRTFSource_SetLightHRTF4Channel to 5344 - Add DirectSoundUseLightHRTF to 5344 - Add DirectSoundUseFullHRTF4Channel to 5344 - Add DirectSoundUseLightHRTF4Channel to 5344 - Update CDirectSound_SetMixBinHeadroom 4134 (To enable support generic OOVPA for 5455 and newer) - Replaced CDirectSoundVoice_SetI3DL2Source in 5344 - Replaced CDirectSound_SetRolloffFactor in 5344 - Replaced CDirectSound_SetDopplerFactor in 5344 - Replaced CDirectSound_SetDistanceFactor in 5344 - Replaced CDirectSound_SetI3DL2Listener in 5344 - Fixed CDirectSound_SetPosition 5344 - Fixd CDirectSound_SetVelocity 5344 - Removed CDirectSoundBuffer_SetBufferData from 5558 (false detection) and 5788 (alias) - Removed IDirectSoundBuffer_SetBufferData from 5558 and 5788 (duplicates) - Removed CDirectSound_CommitDeferredSettings from 5558 and 5788
This commit is contained in:
parent
df8b18ef23
commit
07ba1803ae
|
@ -227,6 +227,9 @@ enum XRefDataBaseOffset
|
|||
XREF_CDirectSoundStream_SetFormat,
|
||||
XREF_CFullHRTFSource_GetCenterVolume,
|
||||
XREF_CHRTFSource_SetFullHRTF5Channel,
|
||||
XREF_CHRTFSource_SetLightHRTF5Channel,
|
||||
XREF_CHRTFSource_SetFullHRTF4Channel,
|
||||
XREF_CHRTFSource_SetLightHRTF4Channel,
|
||||
XREF_CMcpxVoiceClient_SetLFO,
|
||||
XREF_CDirectSoundVoice_SetLFO,
|
||||
XREF_CDirectSoundBuffer_SetLFO,
|
||||
|
|
|
@ -1757,7 +1757,7 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * CMcpxVoiceClient::SetMixBins
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CMcpxVoiceClient_SetMixBins, 3911, 15,
|
||||
OOVPA_XREF(CMcpxVoiceClient_SetMixBins, 3911, 16,
|
||||
|
||||
XREF_CMcpxVoiceClient_SetMixBins,
|
||||
XRefZero)
|
||||
|
@ -1781,6 +1781,7 @@ OOVPA_XREF(CMcpxVoiceClient_SetMixBins, 3911, 15,
|
|||
{ 0x5B, 0xF8 },
|
||||
{ 0x5C, 0x02 },
|
||||
{ 0x5D, 0x82 },
|
||||
{ 0x5E, 0xFE },
|
||||
|
||||
// CMcpxVoiceClient_SetMixBins+0xBF : jb +0x8C
|
||||
{ 0xBF, 0x72 },
|
||||
|
|
|
@ -1199,6 +1199,7 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetMixBins
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 4039 and newer
|
||||
OOVPA_XREF(CDirectSoundVoice_SetMixBins, 4039, 1+16,
|
||||
|
||||
XREF_CDirectSoundVoice_SetMixBins,
|
||||
|
@ -3152,7 +3153,6 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * DS_CRefCount_Release
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 4039 and newer
|
||||
OOVPA_XREF(DS_CRefCount_Release, 4039, 10,
|
||||
|
||||
XREF_DS_CRefCount_Release,
|
||||
|
|
|
@ -702,6 +702,7 @@ OOVPA_XREF(CMcpxBuffer_SetBufferData, 4134, 9,
|
|||
{ 0x8A, 0x08 },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Replaced with generic OOVPA 4134
|
||||
// ******************************************************************
|
||||
// * CDirectSoundBuffer_SetBufferData
|
||||
// ******************************************************************
|
||||
|
@ -728,10 +729,55 @@ OOVPA_XREF(CDirectSoundBuffer_SetBufferData, 4134, 1+9,
|
|||
{ 0xAB, 0xC2 },
|
||||
{ 0xAC, 0x0C },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundBuffer::SetBufferData
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 4134 and newer
|
||||
OOVPA_XREF(CDirectSoundBuffer_SetBufferData, 4134, 19,
|
||||
|
||||
XREF_CDirectSoundBuffer_SetBufferData,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x0F : cmp dword ptr [ebp+10h],edi
|
||||
{ 0x0F, 0x39 },
|
||||
{ 0x10, 0x7D },
|
||||
{ 0x11, 0x10 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x12 : mov dword ptr [ebp+0Ch],edi
|
||||
{ 0x12, 0x89 },
|
||||
{ 0x13, 0x7D },
|
||||
{ 0x14, 0x0C },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x4B : mov eax,dword ptr [esi+1Ch]
|
||||
{ 0x4B, 0x8B },
|
||||
{ 0x4C, 0x46 },
|
||||
{ 0x4D, 0x1C },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x64 : mov ecx,dword ptr [esi+20h]
|
||||
{ 0x64, 0x8B },
|
||||
{ 0x65, 0x4E },
|
||||
{ 0x66, 0x20 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x8A : mov ecx,dword ptr [esi+20h]
|
||||
{ 0x8A, 0x8B },
|
||||
{ 0x8B, 0x4E },
|
||||
{ 0x8C, 0x20 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0xAB : retn 0x0C
|
||||
{ 0xAB, 0xC2 },
|
||||
{ 0xAC, 0x0C },
|
||||
{ 0xAD, 0x00 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * IDirectSoundBuffer_SetBufferData
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 4134 and newer
|
||||
OOVPA_XREF(IDirectSoundBuffer_SetBufferData, 4134, 1+7,
|
||||
|
||||
XRefNoSaveIndex,
|
||||
|
@ -2055,7 +2101,7 @@ OOVPA_XREF(CDirectSoundVoice_SetI3DL2Source, 4134, 10,
|
|||
{ 0x15, 0x72 },
|
||||
{ 0x16, 0x4C },
|
||||
|
||||
// CDirectSoundVoice_SetI3DL2Source+0x44 : fld dword ptr [ecx+10h]
|
||||
// CDirectSoundVoice_SetI3DL2Source+0x44 : fld dword ptr [ecx+10h] (not advise to use)
|
||||
{ 0x44, 0xD9 },
|
||||
{ 0x45, 0x41 },
|
||||
{ 0x46, 0x10 },
|
||||
|
@ -3486,6 +3532,7 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * CDirectSoundStream_Discontinuity
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 4134 and newer
|
||||
OOVPA_XREF(CDirectSoundStream_Discontinuity, 4134, 1+8,
|
||||
XRefNoSaveIndex,
|
||||
XRefOne)
|
||||
|
@ -3621,7 +3668,8 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * CDirectSound::SetMixBinHeadroom
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetMixBinHeadroom, 4134, 16,
|
||||
// Generic OOVPA as of 4134? and newer
|
||||
OOVPA_XREF(CDirectSound_SetMixBinHeadroom, 4134, 18,
|
||||
|
||||
XREF_CDirectSound_SetMixBinHeadroom,
|
||||
XRefZero)
|
||||
|
@ -3642,11 +3690,16 @@ OOVPA_XREF(CDirectSound_SetMixBinHeadroom, 4134, 16,
|
|||
{ 0x36, 0x24 },
|
||||
{ 0x37, 0x14 },
|
||||
|
||||
// CDirectSound_SetMixBinHeadroom+0x39 : mov [edx+ecx+0x14], bl
|
||||
// CDirectSound_SetMixBinHeadroom+0x39 : mov [edx+ecx+0x__], bl
|
||||
{ 0x39, 0x88 },
|
||||
{ 0x3A, 0x5C },
|
||||
{ 0x3B, 0x0A },
|
||||
{ 0x3C, 0x14 },
|
||||
//{ 0x3C, 0x14 }, was changed to 0x10 for 5455 and later
|
||||
|
||||
// CDirectSound_SetMixBinHeadroom+0x3E : mov ecx, dword ptr [eax+0x0C]
|
||||
{ 0x3E, 0x8B },
|
||||
{ 0x3F, 0x48 },
|
||||
{ 0x40, 0x0C },
|
||||
|
||||
// CDirectSound_SetMixBinHeadroom+0x5C : retn 0x0C
|
||||
{ 0x5C, 0xC2 },
|
||||
|
@ -3757,7 +3810,7 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundStream_SetHeadroom, 4134, 1+8,
|
||||
|
||||
XRefNoSaveIndex,
|
||||
XREF_CDirectSoundStream_SetHeadroom,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x36, XREF_CDirectSoundVoice_SetHeadroom ),
|
||||
|
|
|
@ -495,12 +495,15 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::EnableHeadphones (incorrect?)
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_EnableHeadphones, 4627, 15,
|
||||
OOVPA_XREF(CDirectSound_EnableHeadphones, 4627, 16,
|
||||
|
||||
XREF_CDirectSound_EnableHeadphones,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x12 : movzx eax, al
|
||||
// CDirectSound_EnableHeadphones+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x12 : movzx eax, al
|
||||
{ 0x12, 0x0F },
|
||||
{ 0x13, 0xB6 },
|
||||
{ 0x14, 0xC0 },
|
||||
|
@ -510,19 +513,19 @@ OOVPA_XREF(CDirectSound_EnableHeadphones, 4627, 15,
|
|||
{ 0x2A, 0x05 },
|
||||
{ 0x2B, 0x40 },
|
||||
{ 0x2C, 0x00 },
|
||||
{ 0x2D, 0x80 },
|
||||
{ 0x2D, 0x80 },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x59 : and eax, 0x7FFFFFFF
|
||||
{ 0x59, 0x25 },
|
||||
{ 0x5A, 0xFF },
|
||||
{ 0x5B, 0xFF },
|
||||
{ 0x5C, 0xFF },
|
||||
{ 0x5D, 0x7F },
|
||||
{ 0x5C, 0xFF },
|
||||
{ 0x5D, 0x7F },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x97 : leave
|
||||
//{ 0x97, 0xC9 },
|
||||
{ 0x98, 0xC2 },
|
||||
{ 0x99, 0x08 },
|
||||
{ 0x98, 0xC2 },
|
||||
{ 0x99, 0x08 },
|
||||
OOVPA_END;
|
||||
#if 0 // Replaced with generic OOVPA 3911
|
||||
// ******************************************************************
|
||||
|
@ -710,24 +713,6 @@ OOVPA_XREF(IDirectSoundBuffer_Pause, 4928, 1+7,
|
|||
{ 0x1A, 0x08 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundBuffer::GetStatus
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundBuffer_GetStatus, 4721, 1+7,
|
||||
|
||||
XREF_CDirectSoundBuffer_GetStatus,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x35, XREF_CMcpxBuffer_GetStatus ),
|
||||
|
||||
{ 0x0C, 0x00 },
|
||||
{ 0x14, 0x74 },
|
||||
{ 0x21, 0xB8 },
|
||||
{ 0x2A, 0x24 },
|
||||
{ 0x39, 0x85 },
|
||||
{ 0x44, 0xFF },
|
||||
{ 0x4B, 0xC7 },
|
||||
OOVPA_END;
|
||||
#if 0 // Used 4134
|
||||
// ******************************************************************
|
||||
// * IDirectSoundBuffer_GetStatus
|
||||
|
|
|
@ -35,11 +35,12 @@
|
|||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::EnableHeadphones
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_EnableHeadphones, 5233, 8,
|
||||
// TODO: Need to re-evaluate. Possible false detection.
|
||||
OOVPA_XREF(CDirectSound_EnableHeadphones, 5233, 9,
|
||||
|
||||
XREF_CDirectSound_EnableHeadphones,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0x55 },
|
||||
{ 0x16, 0x45 },
|
||||
{ 0x1D, 0x0B },
|
||||
{ 0x2A, 0x05 },
|
||||
|
@ -257,43 +258,6 @@ OOVPA_XREF(IDirectSoundBuffer_SetMode, 5233, 1+7,
|
|||
{ 0x1E, 0x0C },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetVolume
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundVoice_SetVolume, 5233, 1+7,
|
||||
|
||||
XREF_CDirectSoundVoice_SetVolume,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x15, XREF_CMcpxVoiceClient_SetVolume ),
|
||||
|
||||
{ 0x02, 0x24 },
|
||||
{ 0x06, 0x10 },
|
||||
{ 0x0A, 0x08 },
|
||||
{ 0x0E, 0x89 },
|
||||
{ 0x12, 0x49 },
|
||||
{ 0x19, 0xC2 },
|
||||
{ 0x1A, 0x08 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSoundBuffer::SetVolume
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundBuffer_SetVolume, 5233, 1+7,
|
||||
|
||||
XREF_CDirectSoundBuffer_SetVolume,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x32, XREF_CDirectSoundVoice_SetVolume ),
|
||||
|
||||
{ 0x0C, 0x00 },
|
||||
{ 0x12, 0x85 },
|
||||
{ 0x1C, 0x15 },
|
||||
{ 0x26, 0xEB },
|
||||
{ 0x30, 0x10 },
|
||||
{ 0x3A, 0x74 },
|
||||
{ 0x47, 0x8B },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Replaced with generic OOVPA 4134
|
||||
// ******************************************************************
|
||||
|
@ -335,3 +299,34 @@ OOVPA_XREF(CDirectSoundVoice_SetRolloffCurve, 5233, 8,
|
|||
{ 0x3E, 0x33 },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxStream_Flush
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5233 and newer
|
||||
OOVPA_XREF(CMcpxStream_GetStatus, 5233, 14,
|
||||
XREF_CMcpxStream_GetStatus,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0x0F },
|
||||
{ 0x04, 0x8D },
|
||||
|
||||
{ 0x24, 0x03 },
|
||||
{ 0x27, 0x03 },
|
||||
|
||||
// Just a note, this asm code is unique
|
||||
{ 0x31, 0x80 },
|
||||
{ 0x32, 0x48 },
|
||||
{ 0x33, 0x02 },
|
||||
{ 0x34, 0x02 },
|
||||
|
||||
{ 0x3C, 0x81 },
|
||||
{ 0x3D, 0xC9 },
|
||||
{ 0x3E, 0x00 },
|
||||
{ 0x3F, 0x00 },
|
||||
{ 0x40, 0x04 },
|
||||
{ 0x41, 0x00 },
|
||||
|
||||
//{ 0x57, 0xC2 },
|
||||
//{ 0x58, 0x04 },
|
||||
OOVPA_END;
|
||||
|
|
|
@ -97,24 +97,6 @@ OOVPA_XREF(CDirectSoundStream_SetMinDistance, 5344, 1+7,
|
|||
{ 0x53, 0x8B },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetI3DL2Listener
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetI3DL2Listener, 5344, 8,
|
||||
|
||||
XREF_CDirectSound_SetI3DL2Listener,
|
||||
XRefZero)
|
||||
|
||||
{ 0x1E, 0x15 },
|
||||
{ 0x3E, 0x88 },
|
||||
{ 0x5E, 0x41 },
|
||||
{ 0x7E, 0x00 },
|
||||
{ 0x9E, 0x08 },
|
||||
{ 0xBE, 0x41 },
|
||||
{ 0xDE, 0x00 },
|
||||
{ 0xFE, 0x8B },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetDistanceFactor
|
||||
// ******************************************************************
|
||||
|
@ -172,37 +154,6 @@ OOVPA_XREF(IDirectSoundBuffer_SetDistanceFactor, 5344, 1+7,
|
|||
{ 0x21, 0xC2 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetDistanceFactor
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetDistanceFactor, 5344, 17,
|
||||
|
||||
XREF_CDirectSound_SetDistanceFactor,
|
||||
XRefZero)
|
||||
|
||||
{ 0x0C, 0x00 },
|
||||
{ 0x16, 0x68 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x2E, 0x08 },
|
||||
|
||||
{ 0x33, 0x89 },
|
||||
{ 0x34, 0x50 },
|
||||
{ 0x35, 0x6C },
|
||||
|
||||
{ 0x36, 0x8B },
|
||||
{ 0x37, 0x41 },
|
||||
{ 0x38, 0x08 },
|
||||
|
||||
{ 0x39, 0x83 },
|
||||
{ 0x3A, 0x48 },
|
||||
{ 0x3B, 0x34 },
|
||||
{ 0x3C, 0x08 },
|
||||
|
||||
{ 0x4A, 0x85 },
|
||||
{ 0x53, 0xFF },
|
||||
{ 0x5E, 0x00 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundVoice::SetDopplerFactor
|
||||
// ******************************************************************
|
||||
|
@ -231,26 +182,6 @@ OOVPA_XREF(CDirectSoundVoice_SetDopplerFactor, 5344, 12,
|
|||
{ 0x32, 0x00 }
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetDopplerFactor
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetDopplerFactor, 5344, 9,
|
||||
|
||||
XREF_CDirectSound_SetDopplerFactor,
|
||||
XRefZero)
|
||||
|
||||
{ 0x0C, 0x00 },
|
||||
{ 0x16, 0x68 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x2E, 0x08 },
|
||||
{ 0x35, 0x74 },
|
||||
{ 0x3A, 0x48 },
|
||||
{ 0x4A, 0x85 },
|
||||
{ 0x53, 0xFF },
|
||||
{ 0x5E, 0x00 },
|
||||
OOVPA_END;
|
||||
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundVoice::SetMaxDistance
|
||||
// ******************************************************************
|
||||
|
@ -325,40 +256,6 @@ OOVPA_XREF(IDirectSoundBuffer_SetMaxDistance, 5344, 1+10,
|
|||
{ 0x23, 0x00 }
|
||||
OOVPA_END;
|
||||
#endif
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetRolloffFactor
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetRolloffFactor, 5344, 17,
|
||||
|
||||
XREF_CDirectSound_SetRolloffFactor,
|
||||
XRefZero)
|
||||
// CDirectSound_SetRolloffFactor+0x21 : mov eax, 0x80004005
|
||||
{ 0x21, 0xB8 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x23, 0x40 },
|
||||
{ 0x24, 0x00 },
|
||||
{ 0x25, 0x80 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x33 : mov [eax+70h], edx
|
||||
{ 0x33, 0x89 },
|
||||
{ 0x34, 0x50 },
|
||||
{ 0x35, 0x70 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x36 : mov eax, [ecx+8]
|
||||
{ 0x36, 0x8B },
|
||||
{ 0x37, 0x41 },
|
||||
{ 0x38, 0x08 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x39 : or dword ptr [eax+34h], 10h
|
||||
{ 0x39, 0x83 },
|
||||
{ 0x3A, 0x48 },
|
||||
{ 0x3B, 0x34 },
|
||||
{ 0x3C, 0x10 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x4C : jz +0x0B
|
||||
{ 0x4C, 0x74 },
|
||||
{ 0x4D, 0x0B },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Used 4134
|
||||
// ******************************************************************
|
||||
|
@ -405,26 +302,38 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * CDirectSound_SetPosition
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetPosition, 5344, 10,
|
||||
OOVPA_XREF(CDirectSound_SetPosition, 5344, 14,
|
||||
|
||||
XREF_CDirectSound_SetPosition,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetPosition+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSound_SetPosition+0x2B : mov ecx, [ebp+0x08]
|
||||
{ 0x2B, 0x8B },
|
||||
{ 0x2C, 0x4D },
|
||||
{ 0x2D, 0x08 },
|
||||
|
||||
// CDirectSound_SetPosition+0x37 : mov [edx+0x3C], edi
|
||||
// CDirectSound_SetPosition+0x2E : lea eax, [ecx+0x08]
|
||||
{ 0x2E, 0x8D },
|
||||
{ 0x2F, 0x41 },
|
||||
{ 0x30, 0x08 },
|
||||
|
||||
// CDirectSound_SetPosition+0x37 : mov [edx+0x__], edi
|
||||
{ 0x37, 0x89 },
|
||||
{ 0x38, 0x7A },
|
||||
{ 0x39, 0x3C },
|
||||
//{ 0x39, 0x3C }, vs 5455 0x38
|
||||
|
||||
// CDirectSound_SetPosition+0x4C : or dword ptr [eax+34h], 1
|
||||
{ 0x4C, 0x83 },
|
||||
{ 0x4D, 0x48 },
|
||||
{ 0x4E, 0x34 },
|
||||
//{ 0x4E, 0x34 }, vs 5455 0x30
|
||||
{ 0x4F, 0x01 },
|
||||
|
||||
// CDirectSound_SetPosition+0x70 : retn 0x14
|
||||
{ 0x70, 0xC2 },
|
||||
{ 0x71, 0x14 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
|
@ -435,22 +344,28 @@ OOVPA_XREF(CDirectSound_SetVelocity, 5344, 14,
|
|||
XREF_CDirectSound_SetVelocity,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetVelocity+0x24 : mov eax, 0x80004005
|
||||
{ 0x24, 0xB8 },
|
||||
{ 0x25, 0x05 },
|
||||
{ 0x26, 0x40 },
|
||||
{ 0x27, 0x00 },
|
||||
{ 0x28, 0x80 },
|
||||
// CDirectSound_SetVelocity+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSound_SetVelocity+0x37 : mov [edx+0x48], edi
|
||||
// CDirectSound_SetVelocity+0x2B : mov ecx, [ebp+0x08]
|
||||
{ 0x2B, 0x8B },
|
||||
{ 0x2C, 0x4D },
|
||||
{ 0x2D, 0x08 },
|
||||
|
||||
// CDirectSound_SetVelocity+0x2E : lea eax, [ecx+0x08]
|
||||
{ 0x2E, 0x8D },
|
||||
{ 0x2F, 0x41 },
|
||||
{ 0x30, 0x08 },
|
||||
|
||||
// CDirectSound_SetVelocity+0x37 : mov [edx+0x__], edi
|
||||
{ 0x37, 0x89 },
|
||||
{ 0x38, 0x7A },
|
||||
{ 0x39, 0x48 },
|
||||
//{ 0x39, 0x48 }, vs 5455 0x44
|
||||
|
||||
// CDirectSound_SetVelocity+0x4C : or dword ptr [eax+34h], 2
|
||||
// CDirectSound_SetVelocity+0x4C : or dword ptr [eax+0x__], 2
|
||||
{ 0x4C, 0x83 },
|
||||
{ 0x4D, 0x48 },
|
||||
{ 0x4E, 0x34 },
|
||||
//{ 0x4E, 0x34 }, vs 5455 0x30
|
||||
{ 0x4F, 0x02 },
|
||||
|
||||
// CDirectSound_SetVelocity+0x70 : retn 0x14
|
||||
|
@ -539,6 +454,7 @@ OOVPA_XREF(CDirectSound_SynchPlayback, 5344, 8,
|
|||
{ 0x3B, 0x68 },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Replaced with generic OOVPA 5344(or possible lowered?)
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetI3DL2Source
|
||||
// ******************************************************************
|
||||
|
@ -556,6 +472,7 @@ OOVPA_XREF(CDirectSoundVoice_SetI3DL2Source, 5344, 10,
|
|||
{ 0x15, 0xB2 },
|
||||
{ 0x16, 0x80 },
|
||||
|
||||
// This asm line has change over time. Not best place to make generic
|
||||
// CDirectSoundVoice_SetI3DL2Source+0x50 : fld dword ptr [ecx+10h]
|
||||
{ 0x50, 0xD9 },
|
||||
{ 0x51, 0x41 },
|
||||
|
@ -565,6 +482,7 @@ OOVPA_XREF(CDirectSoundVoice_SetI3DL2Source, 5344, 10,
|
|||
{ 0xC7, 0xC2 },
|
||||
{ 0xC8, 0x0C }
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound::CommitDeferredSettings
|
||||
|
@ -876,3 +794,513 @@ OOVPA_XREF(CDirectSoundVoice_SetConeOrientation, 5344, 8,
|
|||
{ 0x50, 0x14 },
|
||||
{ 0x51, 0x00 }
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxStream_Flush
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CMcpxStream_Flush, 5344, 11,
|
||||
XREF_CMcpxStream_Flush,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0x55 },
|
||||
{ 0x01, 0x8B },
|
||||
|
||||
{ 0x12, 0x33 },
|
||||
|
||||
{ 0x3D, 0x83 },
|
||||
{ 0x3E, 0xFE },
|
||||
{ 0x3F, 0x06 },
|
||||
|
||||
{ 0x4E, 0xE8 },
|
||||
|
||||
{ 0x66, 0xE8 },
|
||||
|
||||
{ 0xDD, 0xC9 },
|
||||
{ 0xDE, 0xC2 },
|
||||
{ 0xDF, 0x04 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSoundStream_Flush
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSoundStream_Flush, 5344, 1+8,
|
||||
XRefNoSaveIndex,
|
||||
XRefOne)
|
||||
|
||||
//CDirectSoundStream_Flush+0x31 : call [CMcpxStream_Flush]
|
||||
XREF_ENTRY( 0x32, XREF_CMcpxStream_Flush ),
|
||||
|
||||
{ 0x00, 0x56 },
|
||||
|
||||
{ 0x28, 0x8B },
|
||||
{ 0x2B, 0x08 },
|
||||
|
||||
{ 0x2C, 0x8B },
|
||||
{ 0x2E, 0x24 },
|
||||
|
||||
{ 0x31, 0xE8 },
|
||||
|
||||
//CDirectSoundStream_Flush+0x48 : ret 4
|
||||
{ 0x48, 0xC2 },
|
||||
{ 0x49, 0x04 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxStream_Discontinuity
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CMcpxStream_Discontinuity, 5344, 9,
|
||||
XREF_CMcpxStream_Discontinuity,
|
||||
XRefZero)
|
||||
|
||||
// CMcpxStream_Discontinuity+0x00 : push esi; push edi
|
||||
{ 0x00, 0x56 },
|
||||
{ 0x01, 0x57 },
|
||||
|
||||
// CMcpxStream_Discontinuity+0x12 : mov dx,0x800
|
||||
{ 0x12, 0x66 },
|
||||
{ 0x13, 0xBA },
|
||||
{ 0x14, 0x00 },
|
||||
{ 0x15, 0x08 },
|
||||
|
||||
// CMcpxStream_Discontinuity+0x23 : call Stop@CMcpxStream@DirectSound@@QAEJ_JK@Z
|
||||
{ 0x23, 0xE8 },
|
||||
|
||||
// CMcpxStream_Discontinuity+0x2D : pop esi; ret
|
||||
{ 0x2D, 0x5E },
|
||||
{ 0x2E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxVoiceClient::SetMixBins
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CMcpxVoiceClient_SetMixBins, 5344, 14,
|
||||
|
||||
XREF_CMcpxVoiceClient_SetMixBins,
|
||||
XRefZero)
|
||||
|
||||
// CMcpxVoiceClient_SetMixBins+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CMcpxVoiceClient_SetMixBins+0x24 : lea eax, [ebp-4]
|
||||
{ 0x24, 0x8D },
|
||||
{ 0x25, 0x45 },
|
||||
{ 0x26, 0xFC },
|
||||
|
||||
// CMcpxVoiceClient_SetMixBins+0x2F : lea eax, [esi-0x30]
|
||||
{ 0x2F, 0x8D },
|
||||
{ 0x30, 0x45 },
|
||||
{ 0x31, 0xD0 },
|
||||
|
||||
// CMcpxVoiceClient_SetMixBins+0x5A : mov ds:[0xFE8202F8], eax
|
||||
{ 0x5E, 0xA3 },
|
||||
{ 0x5F, 0xF8 },
|
||||
{ 0x60, 0x02 },
|
||||
{ 0x61, 0x82 },
|
||||
{ 0x62, 0xFE },
|
||||
|
||||
// CMcpxVoiceClient_SetMixBins+0xBF : leave; retn
|
||||
{ 0xBF, 0xC9 },
|
||||
{ 0xC0, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetMixBins
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSoundVoice_SetMixBins, 5344, 1+7,
|
||||
|
||||
XREF_CDirectSoundVoice_SetMixBins,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x15, XREF_CMcpxVoiceClient_SetMixBins ),
|
||||
|
||||
{ 0x02, 0x74 },
|
||||
{ 0x06, 0x74 },
|
||||
{ 0x0A, 0x4E },
|
||||
{ 0x11, 0x8B },
|
||||
{ 0x12, 0x4E },
|
||||
{ 0x19, 0x5E },
|
||||
{ 0x1A, 0xC2 },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetI3DL2Source
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSoundVoice_SetI3DL2Source, 5344, 15,
|
||||
|
||||
XREF_CDirectSoundVoice_SetI3DL2Source,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSoundVoice_SetI3DL2Source+0x12 : mov esi, [ecx]
|
||||
{ 0x12, 0x8B },
|
||||
{ 0x13, 0x31 },
|
||||
|
||||
// CDirectSoundVoice_SetI3DL2Source+0x14 : mov [edx+80h], esi
|
||||
{ 0x14, 0x89 },
|
||||
{ 0x15, 0xB2 },
|
||||
{ 0x16, 0x80 },
|
||||
|
||||
// CDirectSoundVoice_SetI3DL2Source+0xB3 : or byte ptr [ecx+7Eh],7Fh
|
||||
{ 0xB3, 0x80 },
|
||||
{ 0xB4, 0x49 },
|
||||
//{ 0xB5, 0x7E }, //0x7E is known for 5344 and later, not sure about earlier.
|
||||
{ 0xB6, 0x7F },
|
||||
|
||||
// CDirectSoundVoice_SetI3DL2Source+0x50 : test byte ptr [esp+10h],1
|
||||
{ 0xB7, 0xF6 },
|
||||
{ 0xB8, 0x44 },
|
||||
{ 0xB9, 0x24 },
|
||||
{ 0xBA, 0x10 },
|
||||
{ 0xBB, 0x01 },
|
||||
|
||||
// CDirectSoundVoice_SetI3DL2Source+0xC7 : retn 0Ch
|
||||
{ 0xC7, 0xC2 },
|
||||
{ 0xC8, 0x0C }
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound::SetDistanceFactor
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSound_SetDistanceFactor, 5344, 14,
|
||||
|
||||
XREF_CDirectSound_SetDistanceFactor,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetDistanceFactor+0x00 : push esi
|
||||
{ 0x00, 0x56 },
|
||||
|
||||
// CDirectSound_SetDistanceFactor+0x21 : mov eax, 0x80004005
|
||||
{ 0x21, 0xB8 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x23, 0x40 },
|
||||
{ 0x24, 0x00 },
|
||||
{ 0x25, 0x80 },
|
||||
|
||||
// CDirectSound_SetDistanceFactor+0x33 : mov [eax+0x__], edx
|
||||
{ 0x33, 0x89 },
|
||||
{ 0x34, 0x50 },
|
||||
//{ 0x35, 0x74 }, vs 5455 0x70
|
||||
|
||||
// CDirectSound_SetDistanceFactor+0x39 : or dword ptr[eax+0x__], 0x08
|
||||
{ 0x39, 0x83 },
|
||||
{ 0x3A, 0x48 },
|
||||
//{ 0x3B, 0x34 }, vs 5455 0x30
|
||||
{ 0x3C, 0x08 },
|
||||
|
||||
{ 0x3F, 0x24 },
|
||||
|
||||
// CDirectSound_SetDistanceFactor+0x4C : jz +0x0B
|
||||
{ 0x4C, 0x74 },
|
||||
{ 0x4D, 0x0B },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound::SetDopplerFactor
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSound_SetDopplerFactor, 5344, 14,
|
||||
|
||||
XREF_CDirectSound_SetDopplerFactor,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetDopplerFactor+0x00 : push esi
|
||||
{ 0x00, 0x56 },
|
||||
|
||||
// CDirectSound_SetDopplerFactor+0x21 : mov eax, 0x80004005
|
||||
{ 0x21, 0xB8 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x23, 0x40 },
|
||||
{ 0x24, 0x00 },
|
||||
{ 0x25, 0x80 },
|
||||
|
||||
// CDirectSound_SetDopplerFactor+0x33 : mov [eax+0x__], edx
|
||||
{ 0x33, 0x89 },
|
||||
{ 0x34, 0x50 },
|
||||
//{ 0x35, 0x74 }, vs 5455 0x70
|
||||
|
||||
// CDirectSound_SetDopplerFactor+0x39 : or dword ptr[eax+0x__], 0x20
|
||||
{ 0x39, 0x83 },
|
||||
{ 0x3A, 0x48 },
|
||||
//{ 0x3B, 0x34 }, vs 5455 0x30
|
||||
{ 0x3C, 0x20 },
|
||||
|
||||
{ 0x3F, 0x24 },
|
||||
|
||||
// CDirectSound_SetDopplerFactor+0x4C : jz +0x0B
|
||||
{ 0x4C, 0x74 },
|
||||
{ 0x4D, 0x0B },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound::SetRolloffFactor
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSound_SetRolloffFactor, 5344, 14,
|
||||
|
||||
XREF_CDirectSound_SetRolloffFactor,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x00 : push esi
|
||||
{ 0x00, 0x56 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x21 : mov eax, 0x80004005
|
||||
{ 0x21, 0xB8 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x23, 0x40 },
|
||||
{ 0x24, 0x00 },
|
||||
{ 0x25, 0x80 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x33 : mov [eax+0x__], edx
|
||||
{ 0x33, 0x89 },
|
||||
{ 0x34, 0x50 },
|
||||
//{ 0x35, 0x74 }, vs 5455 0x70
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x39 : or dword ptr[eax+0x__], 0x10
|
||||
{ 0x39, 0x83 },
|
||||
{ 0x3A, 0x48 },
|
||||
//{ 0x3B, 0x34 }, vs 5455 0x30
|
||||
{ 0x3C, 0x10 },
|
||||
|
||||
{ 0x3F, 0x24 },
|
||||
|
||||
// CDirectSound_SetRolloffFactor+0x4C : jz +0x0B
|
||||
{ 0x4C, 0x74 },
|
||||
{ 0x4D, 0x0B },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetI3DL2Listener
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of ____? and newer
|
||||
OOVPA_XREF(CDirectSound_SetI3DL2Listener, 5344, 20,
|
||||
|
||||
XREF_CDirectSound_SetI3DL2Listener,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x00 : push esi
|
||||
{ 0x00, 0x56 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x3A : mov edi,88780032h (unchanged since 3911)
|
||||
{ 0x3A, 0xBF },
|
||||
//{ 0x3B, 0x32 },
|
||||
//{ 0x3C, 0x00 },
|
||||
//{ 0x3D, 0x78 },
|
||||
{ 0x3E, 0x88 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x51 : mov ebx,dword ptr [ecx+4]
|
||||
{ 0x51, 0x8B },
|
||||
{ 0x52, 0x59 },
|
||||
{ 0x53, 0x04 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x54 : mov edx,dword ptr [eax+8]
|
||||
{ 0x54, 0x8B },
|
||||
{ 0x55, 0x50 },
|
||||
{ 0x56, 0x08 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x99 : mov ebx,dword ptr [ecx+1Ch]
|
||||
{ 0x99, 0x8B },
|
||||
{ 0x9A, 0x59 },
|
||||
{ 0x9B, 0x1C },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0xD8 : or word ptr [ecx+__h],0FFFh
|
||||
{ 0xD8, 0x66 },
|
||||
{ 0xD9, 0x81 },
|
||||
{ 0xDA, 0x89 },
|
||||
//{ 0xDB, 0x84 }, vs 5455 0x80
|
||||
{ 0xDC, 0x00 },
|
||||
//{ 0xDD, 0x00 },
|
||||
//{ 0xDE, 0x00 },
|
||||
{ 0xDF, 0xFF },
|
||||
{ 0xE0, 0x0F },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x102 : retn 0x0C
|
||||
{ 0x102, 0xC2 },
|
||||
{ 0x103, 0x0C },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CHRTFSource::SetFullHRTF5Channel
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(CHRTFSource_SetFullHRTF5Channel, 5344, 16,
|
||||
|
||||
XREF_CHRTFSource_SetFullHRTF5Channel,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0xC7 },
|
||||
{ 0x0A, 0xC7 },
|
||||
{ 0x14, 0xC7 },
|
||||
{ 0x1E, 0xC7 },
|
||||
{ 0x28, 0xC7 },
|
||||
{ 0x32, 0xC7 },
|
||||
{ 0x3C, 0xC7 },
|
||||
{ 0x46, 0xC7 },
|
||||
{ 0x50, 0xC7 },
|
||||
{ 0x5A, 0xC7 },
|
||||
{ 0x64, 0xC7 },
|
||||
|
||||
{ 0x6A, 0x03 },
|
||||
{ 0x6B, 0x00 },
|
||||
{ 0x6C, 0x00 },
|
||||
{ 0x6D, 0x00 },
|
||||
|
||||
{ 0x6E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CHRTFSource::SetLightHRTF5Channel
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(CHRTFSource_SetLightHRTF5Channel, 5344, 16,
|
||||
|
||||
XREF_CHRTFSource_SetLightHRTF5Channel,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0xC7 },
|
||||
{ 0x0A, 0xC7 },
|
||||
{ 0x14, 0xC7 },
|
||||
{ 0x1E, 0xC7 },
|
||||
{ 0x28, 0xC7 },
|
||||
{ 0x32, 0xC7 },
|
||||
{ 0x3C, 0xC7 },
|
||||
{ 0x46, 0xC7 },
|
||||
{ 0x50, 0xC7 },
|
||||
{ 0x5A, 0xC7 },
|
||||
{ 0x64, 0xC7 },
|
||||
|
||||
{ 0x6A, 0x04 },
|
||||
{ 0x6B, 0x00 },
|
||||
{ 0x6C, 0x00 },
|
||||
{ 0x6D, 0x00 },
|
||||
|
||||
{ 0x6E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CHRTFSource::SetFullHRTF4Channel
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(CHRTFSource_SetFullHRTF4Channel, 5344, 16,
|
||||
|
||||
XREF_CHRTFSource_SetFullHRTF4Channel,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0xC7 },
|
||||
{ 0x0A, 0xC7 },
|
||||
{ 0x14, 0xC7 },
|
||||
{ 0x1E, 0xC7 },
|
||||
{ 0x28, 0xC7 },
|
||||
{ 0x32, 0xC7 },
|
||||
{ 0x3C, 0xC7 },
|
||||
{ 0x46, 0xC7 },
|
||||
{ 0x50, 0xC7 },
|
||||
{ 0x5A, 0xC7 },
|
||||
{ 0x64, 0xC7 },
|
||||
|
||||
{ 0x6A, 0x01 },
|
||||
{ 0x6B, 0x00 },
|
||||
{ 0x6C, 0x00 },
|
||||
{ 0x6D, 0x00 },
|
||||
|
||||
{ 0x6E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CHRTFSource::SetLightHRTF4Channel
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(CHRTFSource_SetLightHRTF4Channel, 5344, 16,
|
||||
|
||||
XREF_CHRTFSource_SetLightHRTF4Channel,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0xC7 },
|
||||
{ 0x0A, 0xC7 },
|
||||
{ 0x14, 0xC7 },
|
||||
{ 0x1E, 0xC7 },
|
||||
{ 0x28, 0xC7 },
|
||||
{ 0x32, 0xC7 },
|
||||
{ 0x3C, 0xC7 },
|
||||
{ 0x46, 0xC7 },
|
||||
{ 0x50, 0xC7 },
|
||||
{ 0x5A, 0xC7 },
|
||||
{ 0x64, 0xC7 },
|
||||
|
||||
{ 0x6A, 0x02 },
|
||||
{ 0x6B, 0x00 },
|
||||
{ 0x6C, 0x00 },
|
||||
{ 0x6D, 0x00 },
|
||||
|
||||
{ 0x6E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSoundUseLightHRTF
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(DirectSoundUseLightHRTF, 5344, 1+7,
|
||||
|
||||
XRefNoSaveIndex,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x0A, XREF_CHRTFSource_SetLightHRTF5Channel ),
|
||||
|
||||
{ 0x06, 0x0F },
|
||||
{ 0x07, 0xB6 },
|
||||
{ 0x0E, 0x85 },
|
||||
{ 0x0F, 0xF6 },
|
||||
{ 0x12, 0x0B },
|
||||
{ 0x18, 0xFF },
|
||||
{ 0x1E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSoundUseFullHRTF4Channel
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(DirectSoundUseFullHRTF4Channel, 5344, 1+7,
|
||||
|
||||
XRefNoSaveIndex,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x0A, XREF_CHRTFSource_SetFullHRTF4Channel ),
|
||||
|
||||
{ 0x06, 0x0F },
|
||||
{ 0x07, 0xB6 },
|
||||
{ 0x0E, 0x85 },
|
||||
{ 0x0F, 0xF6 },
|
||||
{ 0x12, 0x0B },
|
||||
{ 0x18, 0xFF },
|
||||
{ 0x1E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSoundUseLightHRTF4Channel
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5344 and newer.
|
||||
OOVPA_XREF(DirectSoundUseLightHRTF4Channel, 5344, 1+7,
|
||||
|
||||
XRefNoSaveIndex,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x0A, XREF_CHRTFSource_SetLightHRTF4Channel ),
|
||||
|
||||
{ 0x06, 0x0F },
|
||||
{ 0x07, 0xB6 },
|
||||
{ 0x0E, 0x85 },
|
||||
{ 0x0F, 0xF6 },
|
||||
{ 0x12, 0x0B },
|
||||
{ 0x18, 0xFF },
|
||||
{ 0x1E, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
|
||||
// ******************************************************************
|
||||
// * Rollback support signature(s)
|
||||
// ******************************************************************
|
||||
#define DirectSoundUseFullHRTF_5344 DirectSoundUseFullHRTF_4134 // In theory... TBD.
|
||||
|
|
|
@ -32,3 +32,258 @@
|
|||
// *
|
||||
// ******************************************************************
|
||||
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound::CommitDeferredSettings
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5455 and newer
|
||||
OOVPA_XREF(CDirectSound_CommitDeferredSettings, 5455, 18,
|
||||
|
||||
XREF_CDirectSound_CommitDeferredSettings,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x10 : movzx eax, al
|
||||
{ 0x10, 0x0F },
|
||||
{ 0x11, 0xB6 },
|
||||
{ 0x12, 0xC0 },
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x27 : mov eax, 0x80004005
|
||||
{ 0x27, 0xB8 },
|
||||
{ 0x28, 0x05 },
|
||||
{ 0x29, 0x40 },
|
||||
{ 0x2B, 0x80 },
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x3C : mov eax, dword ptr [esi+8]
|
||||
{ 0x3C, 0x8B },
|
||||
{ 0x3D, 0x46 },
|
||||
{ 0x3E, 0x08 },
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x52 : lea ebx, [esi+10h]
|
||||
{ 0x52, 0x8D },
|
||||
{ 0x53, 0x5E },
|
||||
{ 0x54, 0x10 },
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x68 : lea ebx, [esi+10h]
|
||||
{ 0x68, 0x8B },
|
||||
{ 0x69, 0x46 },
|
||||
{ 0x6A, 0x08 },
|
||||
|
||||
// CDirectSound_CommitDeferredSettings+0x96 : leave
|
||||
{ 0x96, 0xC9 },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Moved to 4134
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundBuffer::SetBufferData
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundBuffer_SetBufferData, 5455, 19,
|
||||
|
||||
XREF_CDirectSoundBuffer_SetBufferData,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x0F : cmp dword ptr [ebp+10h],edi
|
||||
{ 0x0F, 0x39 },
|
||||
{ 0x10, 0x7D },
|
||||
{ 0x11, 0x10 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x12 : mov dword ptr [ebp+0Ch],edi
|
||||
{ 0x12, 0x89 },
|
||||
{ 0x13, 0x7D },
|
||||
{ 0x14, 0x10 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x4B : mov eax,dword ptr [esi+1Ch]
|
||||
{ 0x4B, 0x8B },
|
||||
{ 0x4C, 0x46 },
|
||||
{ 0x4D, 0x1C },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x64 : mov ecx,dword ptr [esi+20h]
|
||||
{ 0x64, 0x8B },
|
||||
{ 0x65, 0x4E },
|
||||
{ 0x66, 0x20 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0x8A : mov ecx,dword ptr [esi+20h]
|
||||
{ 0x8A, 0x8B },
|
||||
{ 0x8B, 0x4E },
|
||||
{ 0x8C, 0x20 },
|
||||
|
||||
// CDirectSoundBuffer_SetBufferData+0xAB : retn 0x0C
|
||||
{ 0xAB, 0xC2 },
|
||||
{ 0xAC, 0x0C },
|
||||
{ 0xAD, 0x00 },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::EnableHeadphones
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5455 and newer
|
||||
OOVPA_XREF(CDirectSound_EnableHeadphones, 5455, 17,
|
||||
|
||||
XREF_CDirectSound_EnableHeadphones,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x00 : push ebp
|
||||
{ 0x00, 0x55 },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x16 : movzx eax, al
|
||||
{ 0x16, 0x0F },
|
||||
{ 0x17, 0xB6 },
|
||||
{ 0x18, 0xC0 },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x3E : shr e__, 0x1F
|
||||
{ 0x3E, 0xC1 },
|
||||
//{ 0x3F, 0xE8 }, // 5344 0xEA vs 5455 0xE8
|
||||
{ 0x40, 0x1F },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x53 : mov edi, 0x80000000
|
||||
{ 0x53, 0xBF },
|
||||
{ 0x54, 0x00 },
|
||||
{ 0x55, 0x00 },
|
||||
{ 0x56, 0x00 },
|
||||
{ 0x57, 0x80 },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0xC4 : cmp dword ptr [ebp+0x0C],0
|
||||
{ 0xC4, 0x83 },
|
||||
{ 0xC5, 0x7D },
|
||||
{ 0xC6, 0x0C },
|
||||
{ 0xC7, 0x00 },
|
||||
|
||||
// CDirectSound_EnableHeadphones+0x117 : leave
|
||||
//{ 0x117, 0xC9 },
|
||||
{ 0x118, 0xC2 },
|
||||
{ 0x119, 0x08 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DS_CRefCount_Release
|
||||
// ******************************************************************
|
||||
// Generic OOVPA as of 5455 and newer
|
||||
OOVPA_XREF(DS_CRefCount_Release, 5455, 10,
|
||||
|
||||
XREF_DS_CRefCount_Release,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0x8B },
|
||||
|
||||
// DS_CRefCount_Release+0x0B : dec eax
|
||||
{ 0x0B, 0x48 },
|
||||
|
||||
// DS_CRefCount_Release+0x0E : mov dword ptr [ecx+4], eax
|
||||
{ 0x0C, 0x89 },
|
||||
{ 0x0D, 0x41 },
|
||||
{ 0x0E, 0x04 },
|
||||
|
||||
// DS_CRefCount_Release+0x1D : mov, dword ptr [ecx+4]
|
||||
{ 0x1B, 0x8B },
|
||||
{ 0x1C, 0x41 },
|
||||
{ 0x1D, 0x04 },
|
||||
|
||||
// DS_CRefCount_Release+0x20 : retn 0x04
|
||||
{ 0x1E, 0xC2 },
|
||||
{ 0x1F, 0x04 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxStream_Flush
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CMcpxStream_Flush, 5455, 11,
|
||||
XREF_CMcpxStream_Flush,
|
||||
XRefZero)
|
||||
|
||||
{ 0x00, 0x55 },
|
||||
{ 0x01, 0x8B },
|
||||
|
||||
{ 0x12, 0x33 },
|
||||
|
||||
{ 0x38, 0x83 },
|
||||
{ 0x39, 0xFF },
|
||||
{ 0x3A, 0x06 },
|
||||
|
||||
{ 0x4B, 0xE8 },
|
||||
|
||||
{ 0x62, 0xE8 },
|
||||
|
||||
{ 0xD1, 0xC9 },
|
||||
{ 0xD2, 0xC2 },
|
||||
{ 0xD3, 0x04 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxStream_Discontinuity
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CMcpxStream_Discontinuity, 5455, 9,
|
||||
XREF_CMcpxStream_Discontinuity,
|
||||
XRefZero)
|
||||
|
||||
// CMcpxStream_Discontinuity+0x00 : push esi; push edi
|
||||
{ 0x00, 0x56 },
|
||||
{ 0x01, 0x57 },
|
||||
|
||||
// CMcpxStream_Discontinuity+0x12 : mov dx,0x800
|
||||
{ 0x12, 0x66 },
|
||||
{ 0x13, 0xBA },
|
||||
{ 0x14, 0x00 },
|
||||
{ 0x15, 0x08 },
|
||||
|
||||
// CMcpxStream_Discontinuity+0x23 : call Stop@CMcpxStream@DirectSound@@QAEJK@Z
|
||||
{ 0x21, 0xE8 },
|
||||
|
||||
// CMcpxStream_Discontinuity+0x2D : pop esi; ret
|
||||
{ 0x2B, 0x5E },
|
||||
{ 0x2C, 0xC3 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetI3DL2Listener
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetI3DL2Listener, 5455, 20,
|
||||
|
||||
XREF_CDirectSound_SetI3DL2Listener,
|
||||
XRefZero)
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x00 : push esi
|
||||
{ 0x00, 0x56 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x3A : mov edi,88780032h (unchanged since 3911)
|
||||
{ 0x3A, 0xBF },
|
||||
//{ 0x3B, 0x32 },
|
||||
//{ 0x3C, 0x00 },
|
||||
//{ 0x3D, 0x78 },
|
||||
{ 0x3E, 0x88 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x54 : mov ebx,dword ptr [ecx+4]
|
||||
{ 0x54, 0x8B },
|
||||
{ 0x55, 0x59 },
|
||||
{ 0x56, 0x04 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x57 : mov edx,dword ptr [eax+8]
|
||||
{ 0x57, 0x8B },
|
||||
{ 0x58, 0x50 },
|
||||
{ 0x59, 0x08 },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x9C : mov ebx,dword ptr [ecx+1Ch]
|
||||
{ 0x9C, 0x8B },
|
||||
{ 0x9D, 0x59 },
|
||||
{ 0x9E, 0x1C },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0xDB : or word ptr [ecx+__h],0FFFh
|
||||
{ 0xDB, 0x66 },
|
||||
{ 0xDC, 0x81 },
|
||||
{ 0xDD, 0x89 },
|
||||
//{ 0xDE, 0x80 }, vs 5344 0x84
|
||||
{ 0xDF, 0x00 },
|
||||
//{ 0xE0, 0x00 },
|
||||
//{ 0xE1, 0x00 },
|
||||
{ 0xE2, 0xFF },
|
||||
{ 0xE3, 0x0F },
|
||||
|
||||
// CDirectSound_SetI3DL2Listener+0x105 : retn 0x0C
|
||||
{ 0x105, 0xC2 },
|
||||
{ 0x106, 0x0C },
|
||||
OOVPA_END;
|
||||
|
|
|
@ -48,6 +48,7 @@ OOVPA_XREF(CDirectSound_SynchPlayback, 5558, 7,
|
|||
{ 0x46, 0x8B },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Replaced with generic OOVPA 5455
|
||||
// ******************************************************************
|
||||
// * CDirectSound::CommitDeferredSettings
|
||||
// ******************************************************************
|
||||
|
@ -75,6 +76,7 @@ OOVPA_XREF(CDirectSound_CommitDeferredSettings, 5558, 11,
|
|||
// CDirectSound_CommitDeferredSettings+0x96 : leave
|
||||
{ 0x96, 0xC9 },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound::SetDistanceFactorA
|
||||
|
@ -199,24 +201,6 @@ OOVPA_XREF(IDirectSound_SetMixBinHeadroom, 5558, 1+8,
|
|||
{ 0x1E, 0x0C },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSound_SetI3DL2Listener
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetI3DL2Listener, 5558, 8,
|
||||
|
||||
XREF_CDirectSound_SetI3DL2Listener,
|
||||
XRefZero)
|
||||
|
||||
{ 0x1D, 0xFF },
|
||||
{ 0x3C, 0x00 },
|
||||
{ 0x5B, 0x9A },
|
||||
{ 0x7A, 0x10 },
|
||||
{ 0x99, 0x00 },
|
||||
{ 0xB8, 0x50 },
|
||||
{ 0xD7, 0x00 },
|
||||
{ 0xF6, 0x68 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CFullHRTFSource::GetCenterVolume
|
||||
// ******************************************************************
|
||||
|
@ -291,6 +275,7 @@ OOVPA_NO_XREF(DirectSoundDoWork, 5558, 7)
|
|||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
#if 0 // Replaced with better and stronger OOVPA 4134
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundBuffer::SetBufferData
|
||||
// ******************************************************************
|
||||
|
@ -307,26 +292,7 @@ OOVPA_XREF(CDirectSoundBuffer_SetBufferData, 5558, 7,
|
|||
{ 0x82, 0x7C },
|
||||
{ 0x98, 0x5E },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * IDirectSoundBuffer_SetBufferData
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(IDirectSoundBuffer_SetBufferData, 5558, 1+8,
|
||||
|
||||
XRefNoSaveIndex,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x19, XREF_CDirectSoundBuffer_SetBufferData),
|
||||
|
||||
{ 0x02, 0x24 },
|
||||
{ 0x06, 0x24 },
|
||||
{ 0x0A, 0xFF },
|
||||
{ 0x0E, 0x83 },
|
||||
{ 0x12, 0xD9 },
|
||||
{ 0x16, 0xC8 },
|
||||
{ 0x1D, 0xC2 },
|
||||
{ 0x1E, 0x0C },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * CMcpxBuffer::SetCurrentPosition
|
||||
|
@ -402,25 +368,6 @@ OOVPA_XREF(CDirectSoundVoiceSettings_SetMixBins, 5558, 7,
|
|||
{ 0xB4, 0x00 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetMixBins
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundVoice_SetMixBins, 5558, 1+7,
|
||||
|
||||
XREF_CDirectSoundVoice_SetMixBins,
|
||||
XRefOne)
|
||||
|
||||
XREF_ENTRY( 0x0D, XREF_CDirectSoundVoiceSettings_SetMixBins ),
|
||||
|
||||
{ 0x02, 0x74 },
|
||||
{ 0x06, 0x74 },
|
||||
{ 0x0A, 0x4E },
|
||||
{ 0x11, 0x8B },
|
||||
{ 0x12, 0x4E },
|
||||
{ 0x19, 0x5E },
|
||||
{ 0x1A, 0xC2 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSoundBuffer::SetMixBins
|
||||
// ******************************************************************
|
||||
|
@ -560,6 +507,7 @@ OOVPA_XREF(IDirectSoundBuffer_Play, 5558, 1+7,
|
|||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
#if 0 // Replaced with OOVPA 4831
|
||||
// ******************************************************************
|
||||
// * CMcpxBuffer_GetStatus
|
||||
// ******************************************************************
|
||||
|
@ -587,6 +535,7 @@ OOVPA_XREF(CMcpxBuffer_GetStatus, 5558, 11,
|
|||
{ 0x2B, 0x80 },
|
||||
{ 0x2C, 0x00 },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * CDirectSoundVoice::SetFormat
|
||||
|
@ -1076,23 +1025,6 @@ OOVPA_NO_XREF(IDirectSoundBuffer_Lock, 5558, 8)
|
|||
{ 0x2E, 0x20 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundVoice::SetI3DL2Source
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSoundVoice_SetI3DL2Source, 5558, 7,
|
||||
|
||||
XREF_CDirectSoundVoice_SetI3DL2Source,
|
||||
XRefZero)
|
||||
|
||||
{ 0x18, 0x00 },
|
||||
{ 0x32, 0x8B },
|
||||
{ 0x4C, 0x8C },
|
||||
{ 0x66, 0x50 },
|
||||
{ 0x80, 0x89 },
|
||||
{ 0x9A, 0x10 },
|
||||
{ 0xB4, 0x49 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundBuffer::SetI3DL2Source
|
||||
// ******************************************************************
|
||||
|
@ -1269,41 +1201,6 @@ OOVPA_XREF(CDirectSoundStream_SetMixBins, 5558, 1+8,
|
|||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::SetMixBinHeadroom
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_SetMixBinHeadroom, 5558, 8,
|
||||
|
||||
XREF_CDirectSound_SetMixBinHeadroom,
|
||||
XRefZero)
|
||||
|
||||
{ 0x0C, 0x00 },
|
||||
{ 0x16, 0x68 },
|
||||
{ 0x22, 0x05 },
|
||||
{ 0x2E, 0x24 },
|
||||
{ 0x3A, 0x5C },
|
||||
{ 0x46, 0x85 },
|
||||
{ 0x52, 0x15 },
|
||||
{ 0x5E, 0x00 },
|
||||
OOVPA_END;
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::EnableHeadphones
|
||||
// ******************************************************************
|
||||
OOVPA_XREF(CDirectSound_EnableHeadphones, 5558, 8,
|
||||
|
||||
XREF_CDirectSound_EnableHeadphones,
|
||||
XRefZero)
|
||||
|
||||
{ 0x1E, 0x3B },
|
||||
{ 0x3E, 0xC1 },
|
||||
{ 0x60, 0xEB },
|
||||
{ 0x7E, 0x00 },
|
||||
{ 0x9E, 0x75 },
|
||||
{ 0xBE, 0x00 },
|
||||
{ 0xDE, 0x59 },
|
||||
{ 0xFE, 0x75 },
|
||||
OOVPA_END;
|
||||
#if 0 // Replaced with generic OOVPA 3911
|
||||
// ******************************************************************
|
||||
// * IDirectSound_EnableHeadphones
|
||||
|
|
|
@ -94,6 +94,7 @@ OOVPA_XREF(CDirectSoundBuffer_Play, 5788, 9,
|
|||
{ 0x4B, 0xC7 },
|
||||
OOVPA_END;
|
||||
|
||||
#if 0 // Replaced with generic OOVPA 5455
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSound::CommitDeferredSettings
|
||||
// ******************************************************************
|
||||
|
@ -110,6 +111,7 @@ OOVPA_XREF(CDirectSound_CommitDeferredSettings, 5788, 7,
|
|||
{ 0x76, 0x89 },
|
||||
{ 0x8E, 0xFF },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CMcpxBuffer::SetCurrentPosition
|
||||
|
@ -475,6 +477,8 @@ OOVPA_XREF(CDirectSoundStream_SetMixBinVolumes_8, 5788, 1+8,
|
|||
{ 0x4B, 0x8B },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
#if 0 // Replaced with OOVPA 4831
|
||||
// ******************************************************************
|
||||
// * DirectSound::CMcpxStream::Pause
|
||||
// ******************************************************************
|
||||
|
@ -491,6 +495,7 @@ OOVPA_XREF(CMcpxStream_Pause, 5788, 7,
|
|||
{ 0x6A, 0xBB },
|
||||
{ 0x7C, 0x00 },
|
||||
OOVPA_END;
|
||||
#endif
|
||||
|
||||
// ******************************************************************
|
||||
// * DirectSound::CDirectSoundStream::FlushEx
|
||||
|
@ -545,6 +550,4 @@ OOVPA_END;
|
|||
// ******************************************************************
|
||||
// * Rollback support signature(s)
|
||||
// ******************************************************************
|
||||
#define CDirectSoundBuffer_SetBufferData_5788 CDirectSoundBuffer_SetBufferData_4134
|
||||
#define IDirectSoundBuffer_SetBufferData_5788 IDirectSoundBuffer_SetBufferData_4134
|
||||
#define XAudioDownloadEffectsImage_5788 XAudioDownloadEffectsImage_4627
|
||||
|
|
|
@ -42,6 +42,8 @@
|
|||
// * [4134] RaceX (Demo) | -% | Only has a few library.
|
||||
// * [4134] Blood Omen 2 | 80% | Does not have full library.
|
||||
// * [4134] JSRF | 1% | Does not have Stream class. DS and Buffer might be full.
|
||||
// * [....]
|
||||
// * [5455] GR: Island Thunder | 100% | Only has 50%-ish of the library compiled with xbe build.
|
||||
|
||||
// TODO: Known DSound OOVPA issue list
|
||||
// * 3911 to 5933: Cannot make OOVPAs
|
||||
|
@ -150,6 +152,28 @@
|
|||
// * 4039 CDirectSoundVoice_SetPitch need to be strengthen by using XREF to CMcpxVoiceClient_SetPitch function.
|
||||
// * CMcpxStream_Flush 4134, 4242, and 4361 has only one value changed at offset 0x3F (except 4134 is off by -1 offset for the leave/return op code)
|
||||
// * It is possible to re-make this into generic support for 4134 to 5849.
|
||||
// * List of OOVPAs may could be lower to include support older titles.
|
||||
// * CDirectSoundStream_Flush (5344)
|
||||
// * CMcpxStream_Flush (5344)
|
||||
// * CMcpxStream_Discontinuity (5344)
|
||||
// * CMcpxStream_GetStatus (4928 is not detected)
|
||||
// * CMcpxVoiceClient_SetMixBins (5344)
|
||||
// * CDirectSoundVoice_SetI3DL2Source (5344)
|
||||
// * CDirectSound_SetDopplerFactor (5344)
|
||||
// * CDirectSound_SetRolloffFactor (5344)
|
||||
// * CDirectSound_SetDistanceFactor (5344)
|
||||
// * CDirectSound_SetI3DL2Listener (5344)
|
||||
// * CDirectSoundVoice_SetMixBins need to use XREF_CMcpxVoiceClient_SetMixBins instead of XREF_CDirectSoundVoiceSettings_SetMixBins.
|
||||
// * This way we can use less OOVPA revisions.
|
||||
// * CDirectSound_EnableHeadphones (5233) need evaluate, most likely false detection.
|
||||
// * Missing OOVPAs
|
||||
// * CHRTFSource_SetFullHRTF5Channel (4928 - 5233) Maybe even lower too.
|
||||
// * CHRTFSource_SetLightHRTF5Channel (4928 - 5233) Maybe even lower too.
|
||||
// * CHRTFSource_SetFullHRTF4Channel (4928 - 5233) Maybe even lower too.
|
||||
// * CHRTFSource_SetLightHRTF4Channel (4928 - 5233) Maybe even lower too.
|
||||
// * DirectSoundUseLightHRTF (4928 - 5233) Maybe even lower too.
|
||||
// * DirectSoundUseFullHRTF4Channel (4928 - 5233) Maybe even lower too.
|
||||
// * DirectSoundUseLightHRTF4Channel (4928 - 5233) Maybe even lower too.
|
||||
|
||||
|
||||
#ifndef DSOUND_OOVPA_INL
|
||||
|
@ -193,7 +217,7 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CMcpxAPU_SetMixBinHeadroom, XREF, 3911),
|
||||
REGISTER_OOVPAS(CMcpxAPU_SynchPlayback, XREF, 5233),
|
||||
REGISTER_OOVPAS(CMcpxBuffer_GetCurrentPosition, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CMcpxBuffer_GetStatus, XREF, 3911, 4039, 4134, 4721, 4831, 5558),
|
||||
REGISTER_OOVPAS(CMcpxBuffer_GetStatus, XREF, 3911, 4039, 4134, 4721, 4831),
|
||||
REGISTER_OOVPAS(CMcpxBuffer_Pause, XREF, 4831),
|
||||
REGISTER_OOVPAS(CMcpxBuffer_Play, XREF, 3911, 4134, 4721, 4831), // NOTE: ?Play@CMcpxBuffer@DirectSound@@QAEJK@Z
|
||||
REGISTER_OOVPAS(CMcpxBuffer_Play2, XREF, 4361, 5558), // NOTE: ?Play@CMcpxBuffer@DirectSound@@QAEJ_JK@Z
|
||||
|
@ -201,10 +225,10 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CMcpxBuffer_SetCurrentPosition, XREF, 3911, 4039, 4134, 5558, 5788),
|
||||
REGISTER_OOVPAS(CMcpxBuffer_Stop, XREF, 3911, 4134, 4242), // NOTE: ?Stop@CMcpxBuffer@DirectSound@@QAEJK@Z
|
||||
REGISTER_OOVPAS(CMcpxBuffer_Stop2, XREF, 4361), // NOTE: ?Stop@CMcpxBuffer@DirectSound@@QAEJ_JK@Z
|
||||
REGISTER_OOVPAS(CMcpxStream_Discontinuity, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CMcpxStream_Flush, XREF, 3911, 3936, 4039, 4134, 4242, 4361),
|
||||
REGISTER_OOVPAS(CMcpxStream_GetStatus, XREF, 4134),
|
||||
REGISTER_OOVPAS(CMcpxStream_Pause, XREF, 3911, 4039, 4134, /*4361,*/ 4831, 5788),
|
||||
REGISTER_OOVPAS(CMcpxStream_Discontinuity, XREF, 3911, 4039, 4134, 5344, 5455),
|
||||
REGISTER_OOVPAS(CMcpxStream_Flush, XREF, 3911, 3936, 4039, 4134, 4242, 4361, 5344, 5455),
|
||||
REGISTER_OOVPAS(CMcpxStream_GetStatus, XREF, 4134, 5233),
|
||||
REGISTER_OOVPAS(CMcpxStream_Pause, XREF, 3911, 4039, 4134, /*4361,*/ 4831),
|
||||
REGISTER_OOVPAS(CSensaura3d_GetFullHRTFFilterPair, XREF, 3911, 3936),
|
||||
REGISTER_OOVPAS(CSensaura3d_GetLiteHRTFFilterPair, XREF, 3911, 3936),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_Commit3dSettings, XREF, 3911),
|
||||
|
@ -220,11 +244,11 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CMcpxVoiceClient_SetFilter, XREF, 3911, 4039, 4134 /*, 5344, 5558*/),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_SetI3DL2Source, XREF, 3911),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_SetLFO, XREF, 3911, 4039, 4242),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_SetMixBins, XREF, 3911),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_SetMixBins, XREF, 3911, 5344),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_SetPitch, XREF, 3911),
|
||||
REGISTER_OOVPAS(CMcpxVoiceClient_SetVolume, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(DS_CRefCount_AddRef, XREF, 3911, 4039),
|
||||
REGISTER_OOVPAS(DS_CRefCount_Release, XREF, 3911, 4039),
|
||||
REGISTER_OOVPAS(DS_CRefCount_Release, XREF, 3911, 4039, 5455),
|
||||
REGISTER_OOVPAS(CDirectSoundVoiceSettings_SetMixBins, XREF, 4039, 4134, 5344, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundVoiceSettings_SetMixBinVolumes, XREF, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_CommitDeferredSettings, XREF, 5558),
|
||||
|
@ -239,11 +263,11 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CDirectSoundVoice_SetFormat, XREF, 4242, 4721, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetFrequency, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetHeadroom, XREF, 3911, 4039, 4134, 4627, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetI3DL2Source, XREF, 3911, 4039, 4134, 5344, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetI3DL2Source, XREF, 3911, 4039, 4134, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetLFO, XREF, 3911, 4039),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetMaxDistance, XREF, 3911, 4039, 4134, 4361, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetMinDistance, XREF, 3911, 4039, 4134, 4361, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetMixBins, XREF, 3911, 4039, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetMixBins, XREF, 3911, 4039),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetMixBinVolumes, XREF, 3911, 4039),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetMode, XREF, 3911, 4039, 4134, 5233, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetOutputBuffer, XREF, 3911, 4039),
|
||||
|
@ -252,16 +276,16 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CDirectSoundVoice_SetRolloffCurve, XREF, 4627, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetRolloffFactor, XREF, 4134, 4361, 5344, 5788), // s+ (from 4134's comment)
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetVelocity, XREF, 3911, 4039, 4134, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetVolume, XREF, 3911, 4039, 4134, 5233),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_SetVolume, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundVoice_Use3DVoiceData, XREF, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_GetCurrentPosition, XREF, 3911, 4039, 4134, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_GetStatus, XREF, 3911, 4039, 4134, 4721),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_GetStatus, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_Lock, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_Pause, XREF, 4928),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_Play, XREF, 3911, 4039, 4134, 5558, 5788),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_PlayEx, XREF, 3911, 4361, 5788),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetAllParameters, XREF, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetBufferData, XREF, 3911, 4039, 4134, 5558, 5788),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetBufferData, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetConeAngles, XREF, 4039, 4134, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetConeOrientation, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetConeOutsideVolume, XREF, 3911, 4039, 4134),
|
||||
|
@ -289,13 +313,13 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CDirectSoundBuffer_SetRolloffCurve, XREF, 4627),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetRolloffFactor, XREF, 4134, 5788),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetVelocity, XREF, 3911, 4039, 4134, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetVolume, XREF, 4039, 4134, 5233),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_SetVolume, XREF, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_Stop, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_StopEx, XREF, 3911, 4039, 4361),
|
||||
REGISTER_OOVPAS(CDirectSoundBuffer_Use3DVoiceData, XREF, 5558),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_AddRef, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_Discontinuity, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_Flush, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_Flush, PATCH, 3911, 4039, 4134, 5344),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_FlushEx, XREF, 4627, 5233, 5788),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_GetInfo, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_GetStatus, PATCH, 3911, 4039, 4134),
|
||||
|
@ -327,13 +351,13 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CDirectSoundStream_SetVelocity, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_SetVolume, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSoundStream_Use3DVoiceData, XREF, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_CommitDeferredSettings, XREF, 3911, 4039, 4134, 5344, 5558, 5788),
|
||||
REGISTER_OOVPAS(CDirectSound_CommitDeferredSettings, XREF, 3911, 4039, 4134, 5344, 5455),
|
||||
REGISTER_OOVPAS(CDirectSound_CommitEffectData, XREF, 3911),
|
||||
REGISTER_OOVPAS(CDirectSound_CreateSoundBuffer, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSound_CreateSoundStream, XREF, 3911, 4039, 4134, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_DownloadEffectsImage, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSound_DoWork, XREF, 3911, 4039),
|
||||
REGISTER_OOVPAS(CDirectSound_EnableHeadphones, XREF, 3911, 4039, 4627, 5233, 5344, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_EnableHeadphones, XREF, 3911, 4039, 4627, 5233, 5344, 5455),
|
||||
REGISTER_OOVPAS(CDirectSound_GetCaps, XREF, 3911, 4039, 4134, 4361),
|
||||
REGISTER_OOVPAS(CDirectSound_GetEffectData, XREF, 3911),
|
||||
REGISTER_OOVPAS(CDirectSound_GetOutputLevels, XREF, 4627, 5558),
|
||||
|
@ -344,8 +368,8 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(CDirectSound_SetDistanceFactor, XREF, 3911, 4039, 4134, 4627, 5344, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_SetDopplerFactor, XREF, 3911, 4039, 4134, 4627, 5344, 5558, 5788),
|
||||
REGISTER_OOVPAS(CDirectSound_SetEffectData, XREF, 3911, 4134),
|
||||
REGISTER_OOVPAS(CDirectSound_SetI3DL2Listener, XREF, 3911, 4039, 4134, 5344, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_SetMixBinHeadroom, XREF, 3911, 4134, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_SetI3DL2Listener, XREF, 3911, 4039, 4134, 5344, 5455),
|
||||
REGISTER_OOVPAS(CDirectSound_SetMixBinHeadroom, XREF, 3911, 4134),
|
||||
REGISTER_OOVPAS(CDirectSound_SetOrientation, XREF, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(CDirectSound_SetPosition, XREF, 3911, 4039, 4134, 4627, 5344, 5558),
|
||||
REGISTER_OOVPAS(CDirectSound_SetRolloffFactor, XREF, 3911, 4039, 4134, 5344, 5558, 5788, 5849),
|
||||
|
@ -360,7 +384,7 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(IDirectSoundBuffer_PlayEx, PATCH, 3911),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_Release, PATCH, 3911),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_SetAllParameters, PATCH, 3911, 4039),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_SetBufferData, PATCH, 3911, 4134, 5558, 5788),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_SetBufferData, PATCH, 3911, 4134),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_SetConeAngles, PATCH, 3911, 4039, 5558),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_SetConeOrientation, PATCH, 3911),
|
||||
REGISTER_OOVPAS(IDirectSoundBuffer_SetConeOutsideVolume, PATCH, 3911, 4039),
|
||||
|
@ -444,15 +468,20 @@ OOVPATable DSound_OOVPAV2[] = {
|
|||
REGISTER_OOVPAS(IDirectSound_SynchPlayback, PATCH, 5233),
|
||||
|
||||
REGISTER_OOVPAS(CFullHRTFSource_GetCenterVolume, XREF, 4039, 4134, 5558),
|
||||
REGISTER_OOVPAS(CHRTFSource_SetFullHRTF5Channel, XREF, 4039, 5558),
|
||||
REGISTER_OOVPAS(CHRTFSource_SetFullHRTF5Channel, XREF, 4039, 5344 /*5558*/), // 5558 is currently not in used since OOVPA 5344 is generic.
|
||||
REGISTER_OOVPAS(CHRTFSource_SetLightHRTF5Channel, XREF, 5344),
|
||||
REGISTER_OOVPAS(CHRTFSource_SetFullHRTF4Channel, XREF, 5344),
|
||||
REGISTER_OOVPAS(CHRTFSource_SetLightHRTF4Channel, XREF, 5344),
|
||||
|
||||
REGISTER_OOVPAS(DirectSoundCreate, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(DirectSoundCreateBuffer, PATCH, 3911, 4039, 4242),
|
||||
REGISTER_OOVPAS(DirectSoundCreateStream, PATCH, 3911, 4039, 4134, 5788),
|
||||
REGISTER_OOVPAS(DirectSoundDoWork, PATCH, 3911, 4134),
|
||||
REGISTER_OOVPAS(DirectSoundGetSampleTime, PATCH, 3911, 4361),
|
||||
REGISTER_OOVPAS(DirectSoundUseFullHRTF, PATCH, 3911, 4039, 4134),
|
||||
REGISTER_OOVPAS(DirectSoundUseLightHRTF, PATCH, 3911),
|
||||
REGISTER_OOVPAS(DirectSoundUseFullHRTF, PATCH, 3911, 4039, 4134, 5344),
|
||||
REGISTER_OOVPAS(DirectSoundUseLightHRTF, PATCH, 3911, 5344),
|
||||
REGISTER_OOVPAS(DirectSoundUseFullHRTF4Channel, PATCH, 5344),
|
||||
REGISTER_OOVPAS(DirectSoundUseLightHRTF4Channel, PATCH, 5344),
|
||||
|
||||
REGISTER_OOVPAS(WaveFormat_CreateXboxAdpcmFormat, XREF, 5344),
|
||||
REGISTER_OOVPAS(XAudioDownloadEffectsImage, PATCH, 4627, 5558, 5788),
|
||||
|
|
Loading…
Reference in New Issue