d3d8: unpatch D3DDevice_SetFlickerFilter and D3DDevice_SetSoftDisplayFilter
This commit is contained in:
parent
1e624e8a2b
commit
1b155413e3
|
@ -8520,53 +8520,6 @@ xbox::void_xt WINAPI xbox::EMUPATCH(D3DDevice_SetPalette)
|
|||
CxbxImpl_SetPalette(Stage, pPalette);
|
||||
}
|
||||
|
||||
// LTCG specific D3DDevice_SetFlickerFilter function...
|
||||
// This uses a custom calling convention where parameter is passed in ESI
|
||||
// Test-case: Metal Wolf Chaos
|
||||
__declspec(naked) xbox::void_xt WINAPI xbox::EMUPATCH(D3DDevice_SetFlickerFilter_0__LTCG_esi1)
|
||||
(
|
||||
)
|
||||
{
|
||||
dword_xt Filter;
|
||||
__asm {
|
||||
LTCG_PROLOGUE
|
||||
mov Filter, esi
|
||||
}
|
||||
|
||||
EMUPATCH(D3DDevice_SetFlickerFilter)(Filter);
|
||||
|
||||
__asm {
|
||||
LTCG_EPILOGUE
|
||||
ret
|
||||
}
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * patch: D3DDevice_SetFlickerFilter
|
||||
// ******************************************************************
|
||||
void WINAPI xbox::EMUPATCH(D3DDevice_SetFlickerFilter)
|
||||
(
|
||||
dword_xt Filter
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG(Filter);
|
||||
|
||||
LOG_IGNORED();
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * patch: D3DDevice_SetSoftDisplayFilter
|
||||
// ******************************************************************
|
||||
void WINAPI xbox::EMUPATCH(D3DDevice_SetSoftDisplayFilter)
|
||||
(
|
||||
bool_xt Enable
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG(Enable);
|
||||
|
||||
LOG_IGNORED();
|
||||
}
|
||||
|
||||
// Overload for logging
|
||||
static void D3DDevice_DeleteVertexShader_0__LTCG_eax1
|
||||
(
|
||||
|
|
|
@ -4280,3 +4280,50 @@ xbox::void_xt WINAPI xbox::EMUPATCH(D3DDevice_SetVerticalBlankCallback)
|
|||
|
||||
g_pXbox_VerticalBlankCallback = pCallback;
|
||||
}
|
||||
|
||||
// LTCG specific D3DDevice_SetFlickerFilter function...
|
||||
// This uses a custom calling convention where parameter is passed in ESI
|
||||
// Test-case: Metal Wolf Chaos
|
||||
__declspec(naked) xbox::void_xt WINAPI xbox::EMUPATCH(D3DDevice_SetFlickerFilter_0__LTCG_esi1)
|
||||
(
|
||||
)
|
||||
{
|
||||
dword_xt Filter;
|
||||
__asm {
|
||||
LTCG_PROLOGUE
|
||||
mov Filter, esi
|
||||
}
|
||||
|
||||
EMUPATCH(D3DDevice_SetFlickerFilter)(Filter);
|
||||
|
||||
__asm {
|
||||
LTCG_EPILOGUE
|
||||
ret
|
||||
}
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * patch: D3DDevice_SetFlickerFilter
|
||||
// ******************************************************************
|
||||
void WINAPI xbox::EMUPATCH(D3DDevice_SetFlickerFilter)
|
||||
(
|
||||
dword_xt Filter
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG(Filter);
|
||||
|
||||
LOG_IGNORED();
|
||||
}
|
||||
|
||||
// ******************************************************************
|
||||
// * patch: D3DDevice_SetSoftDisplayFilter
|
||||
// ******************************************************************
|
||||
void WINAPI xbox::EMUPATCH(D3DDevice_SetSoftDisplayFilter)
|
||||
(
|
||||
bool_xt Enable
|
||||
)
|
||||
{
|
||||
LOG_FUNC_ONE_ARG(Enable);
|
||||
|
||||
LOG_IGNORED();
|
||||
}
|
||||
|
|
|
@ -135,8 +135,8 @@ std::map<const std::string, const xbox_patch_t> g_PatchTable = {
|
|||
PATCH_ENTRY("D3DDevice_SelectVertexShader_4__LTCG_eax1", xbox::EMUPATCH(D3DDevice_SelectVertexShader_4__LTCG_eax1), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetBackBufferScale", xbox::EMUPATCH(D3DDevice_SetBackBufferScale), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetDepthClipPlanes", xbox::EMUPATCH(D3DDevice_SetDepthClipPlanes), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetFlickerFilter", xbox::EMUPATCH(D3DDevice_SetFlickerFilter), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetFlickerFilter_0__LTCG_esi1", xbox::EMUPATCH(D3DDevice_SetFlickerFilter_0__LTCG_esi1), PATCH_HLE_D3D),
|
||||
//PATCH_ENTRY("D3DDevice_SetFlickerFilter", xbox::EMUPATCH(D3DDevice_SetFlickerFilter), PATCH_HLE_D3D),
|
||||
//PATCH_ENTRY("D3DDevice_SetFlickerFilter_0__LTCG_esi1", xbox::EMUPATCH(D3DDevice_SetFlickerFilter_0__LTCG_esi1), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetGammaRamp", xbox::EMUPATCH(D3DDevice_SetGammaRamp), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetIndices", xbox::EMUPATCH(D3DDevice_SetIndices), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetIndices_4__LTCG_ebx1", xbox::EMUPATCH(D3DDevice_SetIndices_4__LTCG_ebx1), PATCH_HLE_D3D),
|
||||
|
@ -156,7 +156,7 @@ std::map<const std::string, const xbox_patch_t> g_PatchTable = {
|
|||
PATCH_ENTRY("D3DDevice_SetScreenSpaceOffset", xbox::EMUPATCH(D3DDevice_SetScreenSpaceOffset), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetShaderConstantMode", xbox::EMUPATCH(D3DDevice_SetShaderConstantMode), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetShaderConstantMode_0__LTCG_eax1", xbox::EMUPATCH(D3DDevice_SetShaderConstantMode_0__LTCG_eax1), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetSoftDisplayFilter", xbox::EMUPATCH(D3DDevice_SetSoftDisplayFilter), PATCH_HLE_D3D),
|
||||
//PATCH_ENTRY("D3DDevice_SetSoftDisplayFilter", xbox::EMUPATCH(D3DDevice_SetSoftDisplayFilter), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetStipple", xbox::EMUPATCH(D3DDevice_SetStipple), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetStreamSource", xbox::EMUPATCH(D3DDevice_SetStreamSource), PATCH_HLE_D3D),
|
||||
PATCH_ENTRY("D3DDevice_SetStreamSource_0__LTCG_eax1_edi2_ebx3", xbox::EMUPATCH(D3DDevice_SetStreamSource_0__LTCG_eax1_edi2_ebx3), PATCH_HLE_D3D),
|
||||
|
|
|
@ -211,6 +211,7 @@ XBSYSAPI EXPORTNUM(2) xbox::void_xt NTAPI xbox::AvSendTVEncoderOption
|
|||
LOG_UNIMPLEMENTED();
|
||||
break;
|
||||
case AV_OPTION_FLICKER_FILTER:
|
||||
// Test case: Is called from AvSetDisplayMode (kernel) and D3DDevice_SetFlickerFilter (D3D8) functions.
|
||||
LOG_UNIMPLEMENTED();
|
||||
break;
|
||||
case AV_OPTION_ZERO_MODE:
|
||||
|
@ -220,6 +221,7 @@ XBSYSAPI EXPORTNUM(2) xbox::void_xt NTAPI xbox::AvSendTVEncoderOption
|
|||
LOG_UNIMPLEMENTED();
|
||||
break;
|
||||
case AV_OPTION_ENABLE_LUMA_FILTER:
|
||||
// Test case: Is called from AvSetDisplayMode (kernel) and D3DDevice_SetSoftDisplayFilter (D3D8) functions.
|
||||
LOG_UNIMPLEMENTED();
|
||||
break;
|
||||
case AV_OPTION_GUESS_FIELD:
|
||||
|
|
Loading…
Reference in New Issue