Added a few 5849 symbols derived from EA Sports Rugby.

No longer crashes due to stack corruption,
Cxbx now panics with "Unknown D3DBLENDOP (0xFFFFFFFF)"
This commit is contained in:
Luke Usher 2017-02-10 09:20:17 +00:00
parent f42dc949f7
commit a2349aeab3
2 changed files with 52 additions and 0 deletions

View File

@ -591,6 +591,25 @@ OOVPA_NO_XREF(D3DDevice_BlockUntilVerticalBlank, 5849, 7)
{ 0x23, 0xC3 },
OOVPA_END;
// ******************************************************************
// * D3DDevice_SetScreenSpaceOffset
// ******************************************************************
OOVPA_NO_XREF(D3DDevice_SetScreenSpaceOffset, 5849, 8)
// D3DDevice_SetScreenSpaceOffset+0x13 : fstp [esi+0x0EF8]
{ 0x13, 0xD9 }, // (Offset,Value)-Pair #1
{ 0x14, 0x9E }, // (Offset,Value)-Pair #2
{ 0x15, 0xF8 }, // (Offset,Value)-Pair #3
{ 0x16, 0x0E }, // (Offset,Value)-Pair #4
// D3DDevice_SetScreenSpaceOffset+0x33 : jb +0x05
{ 0x33, 0x72 }, // (Offset,Value)-Pair #5
{ 0x34, 0x05 }, // (Offset,Value)-Pair #6
// D3DDevice_SetScreenSpaceOffset+0x46 : retn 0x08
{ 0x46, 0xC2 }, // (Offset,Value)-Pair #7
{ 0x47, 0x08 }, // (Offset,Value)-Pair #8
OOVPA_END;
// ******************************************************************
// * D3DDevice_SetBackMaterial
// ******************************************************************
@ -1357,6 +1376,7 @@ OOVPATable D3D8_5849[] = {
REGISTER_OOVPA(D3DDevice_SetShaderConstantMode, 5233, PATCH),
REGISTER_OOVPA(D3DDevice_SetViewport, 5849, PATCH),
REGISTER_OOVPA(D3DDevice_BlockUntilVerticalBlank, 5849, PATCH),
REGISTER_OOVPA(D3DDevice_SetScreenSpaceOffset, 5849, PATCH),
REGISTER_OOVPA(D3DDevice_SetRenderState_FrontFace, 4134, PATCH),
REGISTER_OOVPA(D3DDevice_SetBackMaterial, 5849, PATCH),
REGISTER_OOVPA(D3DDevice_SetRenderState_TwoSidedLighting, 5849, PATCH),

View File

@ -101,6 +101,36 @@ OOVPA_NO_XREF(XGetSectionSize, 5849, 5)
{ 0x08, 0x04 },
OOVPA_END;
//Xbe Explorer generated pattern, derived from address $0027927D in "EA SPORTS™ RUGBY 2005" :
//558BEC83EC14536880153200FF15........8B0D........33DB3BCB7548538D 1F 4046 0124 _timeSetEvent@20 ^ 000ED __imp__RtlEnterCriticalSection@4 ^ 0014D _XapiMmTimerThreadState ^ 003FR _CreateThread@24 ^ 0047D _timeSetEvent@20+0112 ^ 004DR _CloseHandle@4 ^ 005CD __imp__KeWaitForSingleObject@20 ^ 0062D _XapiMmTimerThreadState ^0082D _timeSetEvent@20+010F ^0090D _XapiMmTimerSerialNumber ^0097D _XapiMmTimerSerialNumber ^ 00C0R __allmul ^ 00CCD __imp__KeQueryInterruptTime@0 ^00E7D __imp__KeSetTimerEx@20 ^ 00ECD _XapiMmTimerThreadState ^ 00FBD __imp__KeSetEvent@12 ^0119D __imp__RtlLeaveCriticalSection@4
OOVPA_NO_XREF(timeSetEvent, 5849, 9)
{0x00, 0x55},
{0x01, 0x8B},
{0x02, 0xEC},
{0x04, 0xEC},
{0x08, 0x80},
{0x0D, 0x15},
{0x12, 0x8B},
{0x13, 0x0D},
{0x18, 0x33}
OOVPA_END;
//; Xbe Explorer generated pattern, derived from address $002793A1 in "EA SPORTS™ RUGBY 2005" :
//5657BF8015320057FF15........8B54240C8B0D........0FB7C24885C9743E 1D AD12 006F _timeKillEvent@4 ^ 000AD __imp__RtlEnterCriticalSection@4 ^ 0014D _XapiMmTimerThreadState ^ 003DD __imp__KeCancelTimer@4 ^ 0046D _XapiMmTimerThreadState ^ 0056D __imp__KeSetEvent@12 ^ 0064D __imp__RtlLeaveCriticalSection@4
OOVPA_NO_XREF(timeKillEvent, 5849, 10)
{ 0x00, 0x56 },
{ 0x01, 0x57 },
{ 0x02, 0xBF },
{ 0x09, 0x15 },
{ 0x0E, 0x8B },
{ 0x0F, 0x54 },
{ 0x10, 0x24 },
{ 0x13, 0x0D },
{ 0x18, 0x0F },
{ 0x1F, 0x3E }
OOVPA_END;
// ******************************************************************
// * RaiseException
// ******************************************************************
@ -160,6 +190,8 @@ OOVPATable XAPI_5849[] = {
REGISTER_OOVPA(GetThreadPriority, 5849, PATCH),
REGISTER_OOVPA(SetThreadPriorityBoost, 5849, PATCH),
// REGISTER_OOVPA(GetThreadPriorityBoost, 5849, PATCH),
REGISTER_OOVPA(timeSetEvent, 5849, PATCH),
REGISTER_OOVPA(timeKillEvent, 5849, PATCH),
REGISTER_OOVPA(RaiseException, 5849, PATCH),
REGISTER_OOVPA(XLaunchNewImage, 5558, ALIAS, XLaunchNewImageA),
REGISTER_OOVPA(XInputSetState, 5233, PATCH),