Skip to content

Commit 81602d6

Browse files
committed
upgrade d3d8 symbol group to include support for stack and params
1 parent 19728de commit 81602d6

File tree

15 files changed

+415
-331
lines changed

15 files changed

+415
-331
lines changed

include/xref/d3d8.def

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,15 @@ XREF_SYMBOL(D3DTSS_TEXCOORDINDEX)
6060

6161

6262
// Offsets :
63-
XREF_SYMBOL(OFFSET_D3DDevice__m_PixelShader) // initially set to XREF_ADDR_DERIVE
64-
XREF_SYMBOL(OFFSET_D3DDevice__m_Textures) // initially set to XREF_ADDR_DERIVE
65-
XREF_SYMBOL(OFFSET_D3DDevice__m_Palettes) // initially set to XREF_ADDR_DERIVE
66-
XREF_SYMBOL(OFFSET_D3DDevice__m_RenderTarget) // initially set to XREF_ADDR_DERIVE
67-
XREF_SYMBOL(OFFSET_D3DDevice__m_DepthStencil) // initially set to XREF_ADDR_DERIVE
68-
XREF_SYMBOL(OFFSET_D3DDevice__m_VerticalBlankEvent) // initially set to XREF_ADDR_DERIVE
69-
XREF_SYMBOL(OFFSET_D3DDevice__m_SwapCallback) // initially set to XREF_ADDR_DERIVE
70-
XREF_SYMBOL(OFFSET_D3DDevice__m_VBlankCallback) // initially set to XREF_ADDR_DERIVE
71-
XREF_SYMBOL(OFFSET_D3DDevice__m_VertexShader) // initially set to XREF_ADDR_DERIVE
63+
XREF_SYMBOL(D3DDevice__m_PixelShader_OFFSET) // initially set to XREF_ADDR_DERIVE
64+
XREF_SYMBOL(D3DDevice__m_Textures_OFFSET) // initially set to XREF_ADDR_DERIVE
65+
XREF_SYMBOL(D3DDevice__m_Palettes_OFFSET) // initially set to XREF_ADDR_DERIVE
66+
XREF_SYMBOL(D3DDevice__m_RenderTarget_OFFSET) // initially set to XREF_ADDR_DERIVE
67+
XREF_SYMBOL(D3DDevice__m_DepthStencil_OFFSET) // initially set to XREF_ADDR_DERIVE
68+
XREF_SYMBOL(D3DDevice__m_VerticalBlankEvent_OFFSET) // initially set to XREF_ADDR_DERIVE
69+
XREF_SYMBOL(D3DDevice__m_SwapCallback_OFFSET) // initially set to XREF_ADDR_DERIVE
70+
XREF_SYMBOL(D3DDevice__m_VBlankCallback_OFFSET) // initially set to XREF_ADDR_DERIVE
71+
XREF_SYMBOL(D3DDevice__m_VertexShader_OFFSET) // initially set to XREF_ADDR_DERIVE
7272

7373
// Functions
7474
// include D3D8 prefix

src/OOVPADatabase/D3D8/3911.inl

Lines changed: 52 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ OOVPA_SIG_MATCH(
4242
XREF_ENTRY(0x01, XREF_D3D_g_pDevice),
4343

4444
// add eax, OFFSET_D3DDevice__m_VerticalBlankEvent
45-
XREF_ENTRY(0x18, XREF_OFFSET_D3DDevice__m_VerticalBlankEvent), // <-- Deriving this XRef is the purpose of this OOVPA
45+
XREF_ENTRY(0x18, XREF_D3DDevice__m_VerticalBlankEvent_OFFSET), // <-- Deriving this XRef is the purpose of this OOVPA
4646

4747
// mov eax,[D3D_g_pDevice]
4848
OV_MATCH(0x00, 0xA1),
@@ -110,6 +110,54 @@ OOVPA_SIG_MATCH(
110110
//
111111
);
112112

113+
// ******************************************************************
114+
// * D3D_g_pDevice
115+
// ******************************************************************
116+
// dummy signature
117+
OOVPA_SIG_HEADER_NO_XREF(D3D_g_pDevice,
118+
0)
119+
OOVPA_SIG_MATCH_DUMMY();
120+
121+
// ******************************************************************
122+
// * D3DDevice__m_PixelShader OFFSET
123+
// ******************************************************************
124+
// dummy signature
125+
OOVPA_SIG_HEADER_NO_XREF(D3DDevice__m_PixelShader_OFFSET,
126+
0)
127+
OOVPA_SIG_MATCH_DUMMY();
128+
129+
// ******************************************************************
130+
// * D3DDevice__m_VerticalBlankEvent OFFSET
131+
// ******************************************************************
132+
// dummy signature
133+
OOVPA_SIG_HEADER_NO_XREF(D3DDevice__m_VerticalBlankEvent_OFFSET,
134+
0)
135+
OOVPA_SIG_MATCH_DUMMY();
136+
137+
// ******************************************************************
138+
// * D3DDevice__m_SwapCallback OFFSET
139+
// ******************************************************************
140+
// dummy signature
141+
OOVPA_SIG_HEADER_NO_XREF(D3DDevice__m_SwapCallback_OFFSET,
142+
0)
143+
OOVPA_SIG_MATCH_DUMMY();
144+
145+
// ******************************************************************
146+
// * D3DDevice__m_VBlankCallback OFFSET
147+
// ******************************************************************
148+
// dummy signature
149+
OOVPA_SIG_HEADER_NO_XREF(D3DDevice__m_VBlankCallback_OFFSET,
150+
0)
151+
OOVPA_SIG_MATCH_DUMMY();
152+
153+
// ******************************************************************
154+
// * D3DDevice__m_VertexShader OFFSET
155+
// ******************************************************************
156+
// dummy signature
157+
OOVPA_SIG_HEADER_NO_XREF(D3DDevice__m_VertexShader_OFFSET,
158+
0)
159+
OOVPA_SIG_MATCH_DUMMY();
160+
113161
// ******************************************************************
114162
// * Direct3D_CreateDevice
115163
// ******************************************************************
@@ -1557,7 +1605,7 @@ OOVPA_SIG_MATCH(
15571605
XREF_ENTRY(0x01, XREF_D3D_g_pDevice),
15581606

15591607
// D3DDevice_BlockUntilVerticalBlank+0x17 : add eax, OFFSET_D3DDevice__m_VerticalBlankEvent
1560-
XREF_ENTRY(0x18, XREF_OFFSET_D3DDevice__m_VerticalBlankEvent),
1608+
XREF_ENTRY(0x18, XREF_D3DDevice__m_VerticalBlankEvent_OFFSET),
15611609

15621610
// D3DDevice_BlockUntilVerticalBlank+0x00 : mov eax,[D3D_g_pDevice]
15631611
OV_MATCH(0x00, 0xA1),
@@ -1596,7 +1644,7 @@ OOVPA_SIG_MATCH(
15961644
XREF_ENTRY(0x06, XREF_D3D_g_pDevice),
15971645

15981646
// D3DDevice_SetVerticalBlankCallback+0x0A : mov [ecx+OFFSET_D3DDevice__m_VBlankCallback],eax
1599-
XREF_ENTRY(0x0C, XREF_OFFSET_D3DDevice__m_VBlankCallback),
1647+
XREF_ENTRY(0x0C, XREF_D3DDevice__m_VBlankCallback_OFFSET),
16001648

16011649
// D3DDevice_SetVerticalBlankCallback+0x00 : mov eax,[esp+0x04]
16021650
OV_MATCH(0x00, 0x8B, 0x44, 0x24, 0x04),
@@ -1753,7 +1801,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
17531801
XRefOne)
17541802
OOVPA_SIG_MATCH(
17551803

1756-
XREF_ENTRY(0x12, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived
1804+
XREF_ENTRY(0x12, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived
17571805

17581806
// D3DDevice_SetVertexShader+0x00 : push ebx
17591807
{ 0x00, 0x53 },

src/OOVPADatabase/D3D8/4034.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1027,7 +1027,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
10271027
XRefOne)
10281028
OOVPA_SIG_MATCH(
10291029

1030-
XREF_ENTRY(0x13, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived
1030+
XREF_ENTRY(0x13, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived
10311031

10321032
// D3DDevice_SetVertexShader+0x06 : test bl, 1
10331033
{ 0x06, 0xF6 },

src/OOVPADatabase/D3D8/4039.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ OOVPA_SIG_MATCH(
157157
XREF_ENTRY(0x06, XREF_D3D_g_pDevice),
158158

159159
// D3DDevice_SetSwapCallback+0x0A : mov [ecx+OFFSET_D3DDevice__m_SwapCallback],eax
160-
XREF_ENTRY(0x0C, XREF_OFFSET_D3DDevice__m_SwapCallback),
160+
XREF_ENTRY(0x0C, XREF_D3DDevice__m_SwapCallback_OFFSET),
161161

162162
// D3DDevice_SetSwapCallback+0x00 : mov eax,[esp+0x04]
163163
OV_MATCH(0x00, 0x8B, 0x44, 0x24, 0x04),

src/OOVPADatabase/D3D8/4134.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
9090
XRefOne)
9191
OOVPA_SIG_MATCH(
9292

93-
XREF_ENTRY(0x13, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived
93+
XREF_ENTRY(0x13, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived
9494

9595
// D3DDevice_SetVertexShader+0x06 : test bl, 1
9696
{ 0x06, 0xF6 },

src/OOVPADatabase/D3D8/5028.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
8181
XRefOne)
8282
OOVPA_SIG_MATCH(
8383

84-
XREF_ENTRY(0x13, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived
84+
XREF_ENTRY(0x13, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived
8585

8686
// D3DDevice_SetVertexShader+0x06 : test bl, 1
8787
{ 0x06, 0xF6 },

src/OOVPADatabase/D3D8/5455.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
116116
XRefOne)
117117
OOVPA_SIG_MATCH(
118118

119-
XREF_ENTRY(0x13, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived (confirmed)
119+
XREF_ENTRY(0x13, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived (confirmed)
120120

121121
{ 0x1E, 0x89 },
122122
{ 0x3E, 0x5F },

src/OOVPADatabase/D3D8LTCG/3911.inl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -868,7 +868,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader_0__LTCG_ebx1,
868868
XRefOne)
869869
OOVPA_SIG_MATCH(
870870

871-
XREF_ENTRY(0x0D, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived (confirmed)
871+
XREF_ENTRY(0x0D, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived (confirmed)
872872

873873
{ 0x00, 0xF6 },
874874
{ 0x01, 0xC3 },
@@ -1249,7 +1249,7 @@ OOVPA_SIG_MATCH(
12491249
XREF_ENTRY(0x01, XREF_D3D_g_pDevice),
12501250

12511251
// D3DDevice_BlockUntilVerticalBlank+0x17 : add eax, OFFSET_D3DDevice__m_VerticalBlankEvent
1252-
XREF_ENTRY(0x18, XREF_OFFSET_D3DDevice__m_VerticalBlankEvent),
1252+
XREF_ENTRY(0x18, XREF_D3DDevice__m_VerticalBlankEvent_OFFSET),
12531253

12541254
// D3DDevice_BlockUntilVerticalBlank+0x00 : mov eax,[D3D_g_pDevice]
12551255
OV_MATCH(0x00, 0xA1),

src/OOVPADatabase/D3D8LTCG/4039.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
447447
XRefOne)
448448
OOVPA_SIG_MATCH(
449449

450-
XREF_ENTRY(0x12, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived (unverified, yet should be align base on existing 4 bytes in signatures)
450+
XREF_ENTRY(0x12, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived (unverified, yet should be align base on existing 4 bytes in signatures)
451451

452452
{ 0x00, 0x53 },
453453
{ 0x01, 0x8B },

src/OOVPADatabase/D3D8LTCG/4432.inl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -531,7 +531,7 @@ OOVPA_SIG_HEADER_XREF(D3DDevice_SetVertexShader,
531531
XRefOne)
532532
OOVPA_SIG_MATCH(
533533

534-
XREF_ENTRY(0x13, XREF_OFFSET_D3DDevice__m_VertexShader), // Derived (OK, yet unverified)
534+
XREF_ENTRY(0x13, XREF_D3DDevice__m_VertexShader_OFFSET), // Derived (OK, yet unverified)
535535

536536
{ 0x00, 0x51 },
537537
{ 0x01, 0x53 },

0 commit comments

Comments
 (0)