Detect duplicate registration vs usage
Removed all duplicate OOVPA + Patch registrations (duplicate patch usage is left untouched).
This commit is contained in:
parent
f012f2a9d8
commit
61a3cd60ec
|
@ -1096,8 +1096,6 @@ OOVPATable D3D8_1_0_4034[] = {
|
|||
OOVPA_TABLE_PATCH(IDirect3DDevice8_Clear_1_0_4034, XTL::EmuIDirect3DDevice8_Clear),
|
||||
// IDirect3DResource8::Register
|
||||
OOVPA_TABLE_PATCH(IDirect3DResource8_Register_1_0_3925, XTL::EmuIDirect3DResource8_Register),
|
||||
// IDirect3DDevice8::CreatePalette
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_CreatePalette_1_0_3925, XTL::EmuIDirect3DDevice8_CreatePalette),
|
||||
// ********************** BEG WARNING UNTESTED!!! *******************
|
||||
|
||||
#if 0
|
||||
|
@ -1316,8 +1314,6 @@ OOVPATable D3D8_1_0_4034[] = {
|
|||
OOVPA_TABLE_PATCH(Direct3D_SetPushBufferSize_1_0_4034, XTL::EmuIDirect3D8_SetPushBufferSize),
|
||||
// Get2DSurfacDesc
|
||||
OOVPA_TABLE_PATCH(Get2DSurfaceDesc_1_0_4034, XTL::EmuGet2DSurfaceDesc),
|
||||
// IDirect3DTexture8::GetSurfaceLevel (* unchanged since 3925 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DTexture8_GetSurfaceLevel_1_0_3925, XTL::EmuIDirect3DTexture8_GetSurfaceLevel),
|
||||
// D3DDevice_SetRenderState_ZEnable
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_ZEnable_1_0_4034, XTL::EmuIDirect3DDevice8_SetRenderState_ZEnable),
|
||||
// D3DDevice_LightEnable
|
||||
|
@ -1328,8 +1324,6 @@ OOVPATable D3D8_1_0_4034[] = {
|
|||
OOVPA_TABLE_PATCH(Direct3D_GetAdapterIdentifier_1_0_3925, XTL::EmuIDirect3D8_GetAdapterIdentifier),
|
||||
// IDirect3DSurface8::GetDesc (* unchanged since 3925 *)
|
||||
OOVPA_TABLE_PATCH(D3DSurface_GetDesc_1_0_3925, XTL::EmuIDirect3DSurface8_GetDesc),
|
||||
// Get2DSurfacDesc
|
||||
OOVPA_TABLE_PATCH(Get2DSurfaceDesc_1_0_4034, XTL::EmuGet2DSurfaceDesc),
|
||||
// IDirect3DDevice8::SetLight
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetLight_1_0_4034, XTL::EmuIDirect3DDevice8_SetLight),
|
||||
// IDirect3DVertexBuffer8::Lock
|
||||
|
|
|
@ -2035,8 +2035,6 @@ OOVPATable D3D8_1_0_4134[] = {
|
|||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_FrontFace_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_FrontFace),
|
||||
// IDirect3DDevice8::SetRenderState_LogicOp
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_LogicOp_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_LogicOp),
|
||||
// IDirect3DDevice8::SetRenderState_StencilFail
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_StencilFail_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_StencilFail),
|
||||
// IDirect3DDevice8::SetRenderState_OcclusionCullEnable
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_OcclusionCullEnable_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_OcclusionCullEnable),
|
||||
// IDirect3DDevice8::SetRenderState_StencilCullEnable
|
||||
|
|
|
@ -748,8 +748,6 @@ OOVPATable D3D8_1_0_4432[] {
|
|||
OOVPA_TABLE_PATCH(IDirect3DDevice8_GetCreationParameters_1_0_4034, XTL::EmuIDirect3DDevice8_GetCreationParameters),
|
||||
// IDirect3DDevice8::GetVisibilityTestResult (* unchanged since 3925 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_GetVisibilityTestResult_1_0_3925, XTL::EmuIDirect3DDevice8_GetVisibilityTestResult),
|
||||
// IDirect3DDevice8::SetTextureState_BumpEnv (* unchanged since 4361 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetTextureState_BumpEnv_1_0_4361, XTL::EmuIDirect3DDevice8_SetTextureState_BumpEnv),
|
||||
// IDirect3DDevice8::SetRenderState_EdgeAntiAlias (* unchanged since 4361 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_EdgeAntiAlias_1_0_4361, XTL::EmuIDirect3DDevice8_SetRenderState_EdgeAntiAlias),
|
||||
// IDirect3DDevice8::SetRenderState_FillMode (* unchanged since 4361 *)
|
||||
|
|
|
@ -3479,8 +3479,6 @@ OOVPATable D3D8_1_0_4627[] = {
|
|||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_RopZRead_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_RopZRead),
|
||||
// IDirect3DDevice8::SetRenderState_DoNotCullUncompressed (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_DoNotCullUncompressed_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_DoNotCullUncompressed),
|
||||
// IDirect3DDevice8::DeletePixelShader (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_DeletePixelShader_1_0_4134, XTL::EmuIDirect3DDevice8_DeletePixelShader),
|
||||
// D3DDevice_PersistDisplay
|
||||
OOVPA_TABLE_PATCH(D3DDevice_PersistDisplay_1_0_4627, XTL::EmuIDirect3DDevice8_PersistDisplay),
|
||||
// D3DDevice_PersistDisplay
|
||||
|
|
|
@ -1478,8 +1478,6 @@ OOVPATable D3D8_1_0_5849[] = {
|
|||
OOVPA_TABLE_PATCH(D3DDevice_SetRenderState_StencilFail_1_0_5849, XTL::EmuIDirect3DDevice8_SetRenderState_StencilFail),
|
||||
// D3DDevice_SetRenderState_VertexBlend
|
||||
OOVPA_TABLE_PATCH(D3DDevice_SetRenderState_VertexBlend_1_0_5849, XTL::EmuIDirect3DDevice8_SetRenderState_VertexBlend),
|
||||
// D3DDevice_SetRenderState_VertexBlend
|
||||
OOVPA_TABLE_PATCH(D3DDevice_SetRenderState_VertexBlend_1_0_5849, XTL::EmuIDirect3DDevice8_SetRenderState_VertexBlend),
|
||||
// IDirect3DDevice8::Reset (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_Reset_1_0_4134, XTL::EmuIDirect3DDevice8_Reset),
|
||||
// IDirect3DDevice::Release
|
||||
|
@ -1580,14 +1578,8 @@ OOVPATable D3D8_1_0_5849[] = {
|
|||
OOVPA_TABLE_PATCH(D3DDevice_DeleteStateBlock_1_0_5849, XTL::EmuIDirect3DDevice8_DeleteStateBlock),
|
||||
// IDirect3DDevice8::SetRenderState_StencilCullEnable (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_StencilCullEnable_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_StencilCullEnable),
|
||||
// IDirect3DDevice8::SetRenderState_OcclusionCullEnable (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_OcclusionCullEnable_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_OcclusionCullEnable),
|
||||
// IDirect3DDevice8::SetRenderState_RopZCmpAlwaysRead
|
||||
OOVPA_TABLE_PATCH(D3DDevice_SetRenderState_RopZCmpAlwaysRead_1_0_5849, XTL::EmuIDirect3DDevice8_SetRenderState_RopZCmpAlwaysRead),
|
||||
// IDirect3DDevice8::SetRenderState_RopZRead (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_RopZRead_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_RopZRead),
|
||||
// IDirect3DDevice8::SetRenderState_DoNotCullUncompressed (* unchanged since 4134 *)
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetRenderState_DoNotCullUncompressed_1_0_4134, XTL::EmuIDirect3DDevice8_SetRenderState_DoNotCullUncompressed),
|
||||
// D3DDevice_GetTexture2
|
||||
OOVPA_TABLE_PATCH(D3DDevice_GetTexture2_1_0_5849, XTL::EmuIDirect3DDevice8_GetTexture2),
|
||||
// IDirect3DDevice8::SetRenderTargetFast (* unchanged since 5344 *)
|
||||
|
|
|
@ -1033,10 +1033,6 @@ OOVPATable D3D8LTCG_1_0_5849[] = {
|
|||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetTextureState_ColorKeyColor_1_0_5849_LTCG, XTL::EmuIDirect3DDevice8_SetTextureState_ColorKeyColor),
|
||||
// IDirect3DDevice8::Clear
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_Clear_1_0_5849_LTCG, XTL::EmuIDirect3DDevice8_Clear),
|
||||
// IDirect3DVertexBuffer8::Lock2
|
||||
OOVPA_TABLE_PATCH(IDirect3DVertexBuffer8_Lock2_1_0_5849_LTCG, XTL::EmuIDirect3DVertexBuffer8_Lock2),
|
||||
// IDirect3DDevice8::SetVertexShader
|
||||
OOVPA_TABLE_PATCH(IDirect3DDevice8_SetVertexShader_1_0_5849_LTCG, XTL::EmuIDirect3DDevice8_SetVertexShader),
|
||||
};
|
||||
|
||||
uint32 D3D8LTCG_1_0_5849_SIZE = sizeof(D3D8LTCG_1_0_5849);
|
|
@ -937,8 +937,6 @@ OOVPATable DSound_1_0_5233[] = {
|
|||
OOVPA_TABLE_XREF(CDirectSoundStream_FlushEx_1_0_5233),
|
||||
// IDirectSoundBuffer8::StopEx
|
||||
OOVPA_TABLE_PATCH(IDirectSoundBuffer8_StopEx_1_0_5233, XTL::EmuIDirectSoundBuffer8_StopEx),
|
||||
// IDirectSound8::Release (* unchanged since 3936 *)
|
||||
OOVPA_TABLE_PATCH(IDirectSound8_Release_1_0_3936, XTL::EmuIDirectSound8_Release),
|
||||
// DirectSound::CDirectSound::EnableHeadphones (XRef)
|
||||
OOVPA_TABLE_XREF(CDirectSound_EnableHeadphones_1_0_5233),
|
||||
// IDirectSound8::EnableHeadphones
|
||||
|
|
|
@ -1017,8 +1017,6 @@ OOVPATable XAPI_1_0_3911[] = {
|
|||
OOVPA_TABLE_PATCH(SetThreadPriorityBoost_1_0_3911, XTL::EmuSetThreadPriorityBoost),
|
||||
// GetThreadPriority
|
||||
OOVPA_TABLE_PATCH(GetThreadPriority_1_0_3911, XTL::EmuGetThreadPriority),
|
||||
// XGetDevices
|
||||
OOVPA_TABLE_PATCH(XGetDevices_1_0_3911, XTL::EmuXGetDevices),
|
||||
// CreateFiber
|
||||
OOVPA_TABLE_PATCH(CreateFiber_1_0_3911, XTL::EmuCreateFiber),
|
||||
// DeleteFiber
|
||||
|
@ -1027,8 +1025,6 @@ OOVPATable XAPI_1_0_3911[] = {
|
|||
OOVPA_TABLE_PATCH(SwitchToFiber_1_0_3911, XTL::EmuSwitchToFiber),
|
||||
// ConvertThreadToFiber
|
||||
OOVPA_TABLE_PATCH(ConvertThreadToFiber_1_0_3911, XTL::EmuConvertThreadToFiber),
|
||||
// XInputGetCapabilities
|
||||
OOVPA_TABLE_PATCH(XInputGetCapabilities_1_0_3911, XTL::EmuXInputGetCapabilities),
|
||||
// SignalObjectAndWait
|
||||
OOVPA_TABLE_PATCH(SignalObjectAndWait_1_0_3911, XTL::EmuSignalObjectAndWait),
|
||||
// QueueUserAPC
|
||||
|
|
|
@ -282,8 +282,6 @@ OOVPATable XAPI_1_0_5558[] = {
|
|||
OOVPA_TABLE_PATCH(GetThreadPriority_1_0_4627, XTL::EmuGetThreadPriority),
|
||||
// GetTimeZoneInformation (* unchanged since 3911 *)
|
||||
OOVPA_TABLE_PATCH(GetTimeZoneInformation_1_0_3911, XTL::EmuGetTimeZoneInformation),
|
||||
// SetThreadPriority (* unchanged since 3911 *)
|
||||
OOVPA_TABLE_PATCH(SetThreadPriority_1_0_3911, XTL::EmuSetThreadPriority),
|
||||
// XMountMUA
|
||||
OOVPA_TABLE_PATCH(XMountMUA_1_0_5558, XTL::EmuXMountMUA),
|
||||
// CreateFiber
|
||||
|
|
|
@ -915,9 +915,13 @@ void VerifyHLEDataEntry(HLEVerifyContext *context, const OOVPATable *table, uint
|
|||
// check no patch occurs twice in this table
|
||||
for (uint32 t = index + 1; t < count; t++) {
|
||||
if (entry_redirect == table[t].lpRedirect) {
|
||||
HLEError(context, "Patch (0x%x) also occurs at index %d",
|
||||
table[index].lpRedirect,
|
||||
t);
|
||||
if (table[index].Oovpa == table[t].Oovpa) {
|
||||
HLEError(context, "Patch registered again (with same OOVPA) at index %d",
|
||||
t);
|
||||
} else {
|
||||
HLEError(context, "Patch also used for another OOVPA at index %d",
|
||||
t);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue