feat(gx): refresh CGxDevice studies

This commit is contained in:
phaneron 2025-04-29 16:26:36 -04:00
parent abcd88b4c1
commit 6a6d154b0a
63 changed files with 2685 additions and 549 deletions

View file

@ -181,6 +181,15 @@ static import_data_types() {
apply_type(0x00683650, "uint32_t* __thiscall func(CGxDevice* this)"); apply_type(0x00683650, "uint32_t* __thiscall func(CGxDevice* this)");
apply_type(0x00683660, "void __thiscall func(CGxDevice* this, float depth)"); apply_type(0x00683660, "void __thiscall func(CGxDevice* this, float depth)");
apply_type(0x00683670, "void __stdcall func()"); apply_type(0x00683670, "void __stdcall func()");
apply_type(0x00683D60, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683DB0, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683E00, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683E50, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683EA0, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683ED0, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683F00, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683F30, "void __stdcall func(CiRect* windowRect)");
apply_type(0x00683FB0, "CGxLight* __thiscall func(CGxLight* this)");
apply_type(0x006840F0, "int32_t __thiscall func(CGxDevice* this, CGxFormat* format)"); apply_type(0x006840F0, "int32_t __thiscall func(CGxDevice* this, CGxFormat* format)");
apply_type(0x00684170, "void __thiscall func(CGxDevice* this, float gamma)"); apply_type(0x00684170, "void __thiscall func(CGxDevice* this, float gamma)");
apply_type(0x00684190, "int32_t __thiscall func(CGxDevice* this, CGxGammaRamp* ramp)"); apply_type(0x00684190, "int32_t __thiscall func(CGxDevice* this, CGxGammaRamp* ramp)");
@ -287,6 +296,7 @@ static import_data_types() {
apply_type(0x00690680, "int32_t __thiscall func(CGxDeviceD3d* this)"); apply_type(0x00690680, "int32_t __thiscall func(CGxDeviceD3d* this)");
apply_type(0x00690750, "void __thiscall func(CGxDeviceD3d* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)"); apply_type(0x00690750, "void __thiscall func(CGxDeviceD3d* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)");
apply_type(0x00690830, "void __thiscall func(CGxDeviceD3d* this, uintptr_t hwnd, CGxFormat* format)"); apply_type(0x00690830, "void __thiscall func(CGxDeviceD3d* this, uintptr_t hwnd, CGxFormat* format)");
apply_type(0x0069FAA0, "int32_t __thiscall func(CGxDeviceD3d* this, D3DFORMAT format)");
apply_type(0x0069FB00, "LPDIRECT3DVERTEXBUFFER9 __thiscall func(EGxPoolUsage usage, uint32_t size)"); apply_type(0x0069FB00, "LPDIRECT3DVERTEXBUFFER9 __thiscall func(EGxPoolUsage usage, uint32_t size)");
apply_type(0x0069FB70, "int32_t __thiscall func(CGxDeviceD3d* this, CGxPool* pool)"); apply_type(0x0069FB70, "int32_t __thiscall func(CGxDeviceD3d* this, CGxPool* pool)");
apply_type(0x0069FE10, "void __thiscall func(CGxDeviceD3d* this, int32_t a1)"); apply_type(0x0069FE10, "void __thiscall func(CGxDeviceD3d* this, int32_t a1)");
@ -313,17 +323,22 @@ static import_data_types() {
apply_type(0x006A3420, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A3420, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A3450, "void __thiscall func(CGxDeviceD3d* this, uint32_t mask)"); apply_type(0x006A3450, "void __thiscall func(CGxDeviceD3d* this, uint32_t mask)");
apply_type(0x006A3620, "void __thiscall func(CGxDeviceD3d* this, CGxBatch* batch)"); apply_type(0x006A3620, "void __thiscall func(CGxDeviceD3d* this, CGxBatch* batch)");
apply_type(0x006A3720, "bool __thiscall func(CGxDeviceD3d__GxVertexDecl* this, D3DVERTEXELEMENT9* elements, uint32_t count)");
apply_type(0x006A3810, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A3810, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A3870, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A38D0, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A39E0, "void __thiscall func(CGxDeviceD3d* this, uint32_t stream, LPDIRECT3DVERTEXBUFFER9 buffer, uint32_t offset, uint32_t stride)"); apply_type(0x006A39E0, "void __thiscall func(CGxDeviceD3d* this, uint32_t stream, LPDIRECT3DVERTEXBUFFER9 buffer, uint32_t offset, uint32_t stride)");
apply_type(0x006A3A60, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A3A60, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A3C40, "void __thiscall func(CGxDeviceD3d* this, CGxDeviceD3d__EDeviceState state, uint32_t val)"); apply_type(0x006A3C40, "void __thiscall func(CGxDeviceD3d* this, CGxDeviceD3d__EDeviceState state, uint32_t val)");
apply_type(0x006A4190, "void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)"); apply_type(0x006A4190, "void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)");
apply_type(0x006A41F0, "void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)"); apply_type(0x006A41F0, "void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)");
apply_type(0x006A43D0, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A4700, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A4700, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A4850, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A4850, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A4900, "void __thiscall func(CGxDeviceD3d* this, uint32_t tmu, CGxTex* texId)"); apply_type(0x006A4900, "void __thiscall func(CGxDeviceD3d* this, uint32_t tmu, CGxTex* texId)");
apply_type(0x006A4C30, "void __thiscall func(CGxDeviceD3d* this, EGxRenderState rs)"); apply_type(0x006A4C30, "void __thiscall func(CGxDeviceD3d* this, EGxRenderState rs)");
apply_type(0x006A5540, "LPDIRECT3DVERTEXDECLARATION9 __thiscall func(CGxDeviceD3d* this, D3DVERTEXELEMENT9* elements, uint32_t count)"); apply_type(0x006A5540, "LPDIRECT3DVERTEXDECLARATION9 __thiscall func(CGxDeviceD3d* this, D3DVERTEXELEMENT9* elements, uint32_t count)");
apply_type(0x006A5680, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A5700, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A5700, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A5940, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A5940, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A5A00, "void __thiscall func(CGxDeviceD3d* this, CRect* dst)"); apply_type(0x006A5A00, "void __thiscall func(CGxDeviceD3d* this, CRect* dst)");
@ -333,7 +348,9 @@ static import_data_types() {
apply_type(0x006A5E10, "void __thiscall func(CGxDeviceD3d* this, CGxShader* shader)"); apply_type(0x006A5E10, "void __thiscall func(CGxDeviceD3d* this, CGxShader* shader)");
apply_type(0x006A5EF0, "void __thiscall func(CGxDevice* this, CGxTex* texId, uint32_t* width, uint32_t* height, uint32_t* baseMip, uint32_t* mipCount)"); apply_type(0x006A5EF0, "void __thiscall func(CGxDevice* this, CGxTex* texId, uint32_t* width, uint32_t* height, uint32_t* baseMip, uint32_t* mipCount)");
apply_type(0x006A74B0, "void __thiscall func(CGxDeviceD3d* this, uint32_t mask, CImVector color)"); apply_type(0x006A74B0, "void __thiscall func(CGxDeviceD3d* this, uint32_t mask, CImVector color)");
apply_type(0x006A7940, "void __thiscall func(CGxDeviceD3d* this, uint32_t width, uint32_t height)");
apply_type(0x006A9920, "void __thiscall func(CGxDeviceD3d* this, CRect* dst)"); apply_type(0x006A9920, "void __thiscall func(CGxDeviceD3d* this, CRect* dst)");
apply_type(0x006A99E0, "void __thiscall func(CGxDeviceD3d* this)");
apply_type(0x006A9B40, "void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)"); apply_type(0x006A9B40, "void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)");
apply_type(0x006A9E00, "void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)"); apply_type(0x006A9E00, "void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)");
apply_type(0x006A9FE0, "void __thiscall func(CGxDeviceD3d* this)"); apply_type(0x006A9FE0, "void __thiscall func(CGxDeviceD3d* this)");
@ -524,6 +541,15 @@ static import_data_types() {
apply_type(0x0086BBA0, "uint64_t __stdcall func()"); apply_type(0x0086BBA0, "uint64_t __stdcall func()");
apply_type(0x0086C6E0, "int32_t __stdcall func(void* parentWindow, int32_t style, const char* message, const char* title)"); apply_type(0x0086C6E0, "int32_t __stdcall func(void* parentWindow, int32_t style, const char* message, const char* title)");
apply_type(0x0086D430, "void __stdcall func(TimingMethod timingMethod)"); apply_type(0x0086D430, "void __stdcall func(TimingMethod timingMethod)");
apply_type(0x008A0A54, "NvAPI_Status __stdcall func(int32_t nr, char* szDesc)");
apply_type(0x008A0F88, "NvAPI_Status __stdcall func(NV_StereoRegistryProfileType registryProfileType)");
apply_type(0x008A0FA0, "NvAPI_Status __stdcall func()");
apply_type(0x008A0FA6, "NvAPI_Status __stdcall func()");
apply_type(0x008A0FAC, "NvAPI_Status __stdcall func(uint8_t* pIsStereoEnabled)");
apply_type(0x008A0FB2, "NvAPI_Status __stdcall func(IUnknown* pDevice, StereoHandle* pStereoHandle)");
apply_type(0x008A0FB8, "NvAPI_Status __stdcall func(StereoHandle stereoHandle)");
apply_type(0x008A0FD6, "NvAPI_Status __stdcall func(StereoHandle stereoHandle, float newSeparationPercentage)");
apply_type(0x008A0FEE, "NvAPI_Status __stdcall func(StereoHandle stereoHandle, float newConvergence)");
apply_type(0x008C8DE0, "int32_t __stdcall func()"); apply_type(0x008C8DE0, "int32_t __stdcall func()");
apply_type(0x0095BFB0, "int32_t __stdcall func()"); apply_type(0x0095BFB0, "int32_t __stdcall func()");
apply_type(0x0095F3A0, "void __thiscall func(CSimpleModel* this)"); apply_type(0x0095F3A0, "void __thiscall func(CSimpleModel* this)");
@ -579,7 +605,22 @@ static import_data_types() {
apply_type(0x009E5630, "Blizzard__File__FileInfo"); apply_type(0x009E5630, "Blizzard__File__FileInfo");
apply_type(0x009E9EC8, "uint32_t[7]"); apply_type(0x009E9EC8, "uint32_t[7]");
apply_type(0x009EA04C, "TInstanceId_EvtContext__v_table"); apply_type(0x009EA04C, "TInstanceId_EvtContext__v_table");
apply_type(0x00A2DDC0, "CGxDevice__vtable"); apply_type(0x00A2DDC0, "CGxDevice__v_table");
apply_type(0x00A2E198, "CGxDevice__v_table");
apply_type(0x00A2E4A8, "D3DFORMAT[8]");
apply_type(0x00A2E4C8, "uint32_t[7]");
apply_type(0x00A2E718, "CGxDevice__v_table");
apply_type(0x00A2F7E8, "EGxTexFormat[13]");
apply_type(0x00A2F81C, "D3DFORMAT[13]");
apply_type(0x00A2F850, "D3DCUBEMAP_FACES[6]");
apply_type(0x00A2F8D4, "D3DPRIMITIVETYPE[6]");
apply_type(0x00A2F8EC, "D3DDECLUSAGE[14]");
apply_type(0x00A2F924, "uint32_t[14]");
apply_type(0x00A2F964, "D3DBLEND[12]");
apply_type(0x00A2F994, "D3DBLEND[12]");
apply_type(0x00A2F9C4, "D3DTEXTUREADDRESS[2]");
apply_type(0x00A2FA14, "D3DCMPFUNC[4]");
apply_type(0x00A2FA24, "D3DCULL[3]");
apply_type(0x00AB6350, "WowClientDB_Startup_StringsRec"); apply_type(0x00AB6350, "WowClientDB_Startup_StringsRec");
apply_type(0x00AB90AC, "Blizzard__File__Filesystem*"); apply_type(0x00AB90AC, "Blizzard__File__Filesystem*");
apply_type(0x00AB91C0, "Blizzard__File__Filesystem"); apply_type(0x00AB91C0, "Blizzard__File__Filesystem");
@ -822,6 +863,10 @@ static import_data_types() {
apply_type(0x00AD5120, "WowClientDB_SoundFilterElemRec"); apply_type(0x00AD5120, "WowClientDB_SoundFilterElemRec");
apply_type(0x00AD87C4, "char*[8]"); apply_type(0x00AD87C4, "char*[8]");
apply_type(0x00AD87E4, "char*[6]"); apply_type(0x00AD87E4, "char*[6]");
apply_type(0x00AD8BC0, "C2iVector");
apply_type(0x00AD8EF0, "EGxTexFormat[13]");
apply_type(0x00AD8F24, "D3DDECLTYPE[7]");
apply_type(0x00AD8F40, "D3DTEXTUREFILTERTYPE[6][3]");
apply_type(0x00AD90B0, "uint8_t[16]"); apply_type(0x00AD90B0, "uint8_t[16]");
apply_type(0x00AD90C0, "uint8_t[2]"); apply_type(0x00AD90C0, "uint8_t[2]");
apply_type(0x00ADBAB4, "RECTF"); apply_type(0x00ADBAB4, "RECTF");
@ -847,6 +892,8 @@ static import_data_types() {
apply_type(0x00AF4A04, "WowClientDB_LightParamsRec"); apply_type(0x00AF4A04, "WowClientDB_LightParamsRec");
apply_type(0x00AF4A28, "WowClientDB_LightRec"); apply_type(0x00AF4A28, "WowClientDB_LightRec");
apply_type(0x00B1D2AC, "int32_t"); apply_type(0x00B1D2AC, "int32_t");
apply_type(0x00B23770, "int32_t");
apply_type(0x00B23778, "NvApi__InterfaceTable[253]");
apply_type(0x00B2F994, "HEVENTCONTEXT"); apply_type(0x00B2F994, "HEVENTCONTEXT");
apply_type(0x00B38180, "bool"); apply_type(0x00B38180, "bool");
apply_type(0x00B38181, "bool"); apply_type(0x00B38181, "bool");
@ -878,9 +925,11 @@ static import_data_types() {
apply_type(0x00C5DF74, "uint32_t"); apply_type(0x00C5DF74, "uint32_t");
apply_type(0x00C5DF7C, "uint32_t"); apply_type(0x00C5DF7C, "uint32_t");
apply_type(0x00C5DF88, "CGxDevice*"); apply_type(0x00C5DF88, "CGxDevice*");
apply_type(0x00C5FFF0, "float");
apply_type(0x00C5FFF4, "uint32_t"); apply_type(0x00C5FFF4, "uint32_t");
apply_type(0x00C5FFF8, "HSLOG"); apply_type(0x00C5FFF8, "HSLOG");
apply_type(0x00C60300, "C2iVector"); apply_type(0x00C60300, "C2iVector");
apply_type(0x00C606F8, "D3DLIGHT9");
apply_type(0x00CA1690, "float"); apply_type(0x00CA1690, "float");
apply_type(0x00CA1694, "int32_t"); apply_type(0x00CA1694, "int32_t");
apply_type(0x00CA1718, "float"); apply_type(0x00CA1718, "float");

View file

@ -2677,6 +2677,8 @@ static import_symbols() {
set_name(0x00681290, "GxDevCreate"); set_name(0x00681290, "GxDevCreate");
set_name(0x006813B0, "GxSceneClear"); set_name(0x006813B0, "GxSceneClear");
set_name(0x006813D0, "GxTexUpdate"); set_name(0x006813D0, "GxTexUpdate");
set_name(0x00681470, "GxTexDestroy");
set_name(0x006814D0, "GxTexCopy");
set_name(0x00681630, "GxQueryCreate"); set_name(0x00681630, "GxQueryCreate");
set_name(0x00681770, "GxSetMaxFPS"); set_name(0x00681770, "GxSetMaxFPS");
set_name(0x00681780, "GxGetMaxFPS"); set_name(0x00681780, "GxGetMaxFPS");
@ -2691,6 +2693,7 @@ static import_symbols() {
set_name(0x00681B00, "GxPrimVertexPtr"); set_name(0x00681B00, "GxPrimVertexPtr");
set_name(0x00681BE0, "CGxTexFlags__CGxTexFlags"); set_name(0x00681BE0, "CGxTexFlags__CGxTexFlags");
set_name(0x00681CB0, "GxTexCreate"); set_name(0x00681CB0, "GxTexCreate");
set_name(0x00681F20, "GxTexUpdate@2");
set_name(0x00681F60, "GxXformSetViewport"); set_name(0x00681F60, "GxXformSetViewport");
set_name(0x00682340, "GxDrawLockedElements@2"); set_name(0x00682340, "GxDrawLockedElements@2");
set_name(0x006823A0, "GxPrimLockIndexPtr"); set_name(0x006823A0, "GxPrimLockIndexPtr");
@ -2698,6 +2701,7 @@ static import_symbols() {
set_name(0x006828C0, "GxPrimLockVertexPtrs"); set_name(0x006828C0, "GxPrimLockVertexPtrs");
set_name(0x00682A00, "GxScenePresent"); set_name(0x00682A00, "GxScenePresent");
set_name(0x00682B80, "GxDevDestroy"); set_name(0x00682B80, "GxDevDestroy");
set_name(0x00682C40, "EmergencyMem__Unlock");
set_name(0x00682CB0, "CGxDevice__DeviceCreate"); set_name(0x00682CB0, "CGxDevice__DeviceCreate");
set_name(0x00682CD0, "CGxDevice__DeviceCreate@2"); set_name(0x00682CD0, "CGxDevice__DeviceCreate@2");
set_name(0x00682CF0, "CGxDevice__DeviceDestroy"); set_name(0x00682CF0, "CGxDevice__DeviceDestroy");
@ -2730,6 +2734,15 @@ static import_symbols() {
set_name(0x00683660, "CGxDevice__CursorSetDepth"); set_name(0x00683660, "CGxDevice__CursorSetDepth");
set_name(0x00683670, "CGxDevice__LogOpen"); set_name(0x00683670, "CGxDevice__LogOpen");
set_name(0x006836B0, "CGxDevice__LogClose"); set_name(0x006836B0, "CGxDevice__LogClose");
set_name(0x00683D60, "CGxDevice__WindowConstrainTopByAspect");
set_name(0x00683DB0, "CGxDevice__WindowConstrainBottomByAspect");
set_name(0x00683E00, "CGxDevice__WindowConstrainLeftByAspect");
set_name(0x00683E50, "CGxDevice__WindowConstrainRightByAspect");
set_name(0x00683EA0, "CGxDevice__WindowConstrainLeft");
set_name(0x00683ED0, "CGxDevice__WindowConstrainRight");
set_name(0x00683F00, "CGxDevice__WindowConstrainTop");
set_name(0x00683F30, "CGxDevice__WindowConstrainBottom");
set_name(0x00683FB0, "CGxLight__CGxLight");
set_name(0x006840F0, "CGxDevice__DeviceSetFormat"); set_name(0x006840F0, "CGxDevice__DeviceSetFormat");
set_name(0x00684170, "CGxDevice__DeviceSetGamma"); set_name(0x00684170, "CGxDevice__DeviceSetGamma");
set_name(0x00684190, "CGxDevice__DeviceSetGamma@2"); set_name(0x00684190, "CGxDevice__DeviceSetGamma@2");
@ -2776,6 +2789,7 @@ static import_symbols() {
set_name(0x006876D0, "CGxDevice__PoolCreate"); set_name(0x006876D0, "CGxDevice__PoolCreate");
set_name(0x006877C0, "CGxDevice__QueryCreate"); set_name(0x006877C0, "CGxDevice__QueryCreate");
set_name(0x00687820, "CGxDevice__ShaderDestroy"); set_name(0x00687820, "CGxDevice__ShaderDestroy");
set_name(0x00687900, "CGxDevice__DeviceCreateStreamBufs");
set_name(0x00687940, "CGxDevice__DeviceCreatePools"); set_name(0x00687940, "CGxDevice__DeviceCreatePools");
set_name(0x00687980, "CGxDevice__TexDestroy"); set_name(0x00687980, "CGxDevice__TexDestroy");
set_name(0x006879F0, "CGxDevice__QueryDestroy"); set_name(0x006879F0, "CGxDevice__QueryDestroy");
@ -2835,11 +2849,13 @@ static import_symbols() {
set_name(0x0068FED0, "CGxDeviceD3d__DeviceReadPixels"); set_name(0x0068FED0, "CGxDeviceD3d__DeviceReadPixels");
set_name(0x00690150, "CGxDeviceD3d__IReleaseD3dResources"); set_name(0x00690150, "CGxDeviceD3d__IReleaseD3dResources");
set_name(0x00690230, "CGxDeviceD3d__DeviceWM"); set_name(0x00690230, "CGxDeviceD3d__DeviceWM");
set_name(0x006903B0, "CGxDeviceD3d__IDestroyD3d");
set_name(0x006904D0, "CGxDeviceD3d__DeviceSetFormat"); set_name(0x006904D0, "CGxDeviceD3d__DeviceSetFormat");
set_name(0x006905F0, "CGxDeviceD3d__DeviceDestroy"); set_name(0x006905F0, "CGxDeviceD3d__DeviceDestroy");
set_name(0x00690680, "CGxDeviceD3d__ICreateD3d"); set_name(0x00690680, "CGxDeviceD3d__ICreateD3d");
set_name(0x00690750, "CGxDeviceD3d__DeviceCreate"); set_name(0x00690750, "CGxDeviceD3d__DeviceCreate");
set_name(0x00690830, "CGxDeviceD3d__DeviceCreate@2"); set_name(0x00690830, "CGxDeviceD3d__DeviceCreate@2");
set_name(0x0069FAA0, "CGxDeviceD3d__Sub69FAA0");
set_name(0x0069FB00, "CGxDeviceD3d__ICreateD3dVB"); set_name(0x0069FB00, "CGxDeviceD3d__ICreateD3dVB");
set_name(0x0069FB70, "CGxDeviceD3d__CreatePoolAPI"); set_name(0x0069FB70, "CGxDeviceD3d__CreatePoolAPI");
set_name(0x0069FE10, "CGxDeviceD3d__ICursorClip"); set_name(0x0069FE10, "CGxDeviceD3d__ICursorClip");
@ -2857,6 +2873,7 @@ static import_symbols() {
set_name(0x006A0360, "CGxDeviceD3d__WindowProcD3d"); set_name(0x006A0360, "CGxDeviceD3d__WindowProcD3d");
set_name(0x006A1950, "CGxDeviceD3d__DeviceReadDepths"); set_name(0x006A1950, "CGxDeviceD3d__DeviceReadDepths");
set_name(0x006A1A90, "CGxDeviceD3d9Ex__CGxDeviceD3d9Ex"); set_name(0x006A1A90, "CGxDeviceD3d9Ex__CGxDeviceD3d9Ex");
set_name(0x006A2AA0, "CGxDeviceD3d__ITexForceRecreation");
set_name(0x006A2BB0, "CGxDeviceD3d__TexDestroy"); set_name(0x006A2BB0, "CGxDeviceD3d__TexDestroy");
set_name(0x006A2C00, "CGxDeviceD3d__ITexCreate"); set_name(0x006A2C00, "CGxDeviceD3d__ITexCreate");
set_name(0x006A2D80, "CGxDeviceD3d__ITexUpload"); set_name(0x006A2D80, "CGxDeviceD3d__ITexUpload");
@ -2867,17 +2884,22 @@ static import_symbols() {
set_name(0x006A3420, "CGxDeviceD3d__ISceneEnd"); set_name(0x006A3420, "CGxDeviceD3d__ISceneEnd");
set_name(0x006A3450, "CGxDeviceD3d__ScenePresent"); set_name(0x006A3450, "CGxDeviceD3d__ScenePresent");
set_name(0x006A3620, "CGxDeviceD3d__Draw"); set_name(0x006A3620, "CGxDeviceD3d__Draw");
set_name(0x006A3720, "CGxDeviceD3d__GxVertexDecl__Compare");
set_name(0x006A3810, "CGxDeviceD3d__IStateSyncEnables"); set_name(0x006A3810, "CGxDeviceD3d__IStateSyncEnables");
set_name(0x006A3870, "CGxDeviceD3d__IStateSyncClipPlanes");
set_name(0x006A38D0, "CGxDeviceD3d__IStateSyncScissorRect");
set_name(0x006A39E0, "CGxDeviceD3d__ISetVertexBuffer"); set_name(0x006A39E0, "CGxDeviceD3d__ISetVertexBuffer");
set_name(0x006A3A60, "CGxDeviceD3d__IStateSetD3DDefaults"); set_name(0x006A3A60, "CGxDeviceD3d__IStateSetD3DDefaults");
set_name(0x006A3C40, "CGxDeviceD3d__DsSet"); set_name(0x006A3C40, "CGxDeviceD3d__DsSet");
set_name(0x006A4190, "CGxDeviceD3d__ISetColorOp"); set_name(0x006A4190, "CGxDeviceD3d__ISetColorOp");
set_name(0x006A41F0, "CGxDeviceD3d__ISetAlphaOp"); set_name(0x006A41F0, "CGxDeviceD3d__ISetAlphaOp");
set_name(0x006A43D0, "CGxDeviceD3d__IStateSyncLights");
set_name(0x006A4700, "CGxDeviceD3d__IStateSyncMaterial"); set_name(0x006A4700, "CGxDeviceD3d__IStateSyncMaterial");
set_name(0x006A4850, "CGxDeviceD3d__IStateSyncXforms"); set_name(0x006A4850, "CGxDeviceD3d__IStateSyncXforms");
set_name(0x006A4900, "CGxDeviceD3d__ISetTexture"); set_name(0x006A4900, "CGxDeviceD3d__ISetTexture");
set_name(0x006A4C30, "CGxDeviceD3d__IRsSendToHw"); set_name(0x006A4C30, "CGxDeviceD3d__IRsSendToHw");
set_name(0x006A5540, "CGxDeviceD3d__ICreateD3dVertexDecl"); set_name(0x006A5540, "CGxDeviceD3d__ICreateD3dVertexDecl");
set_name(0x006A5680, "CGxDeviceD3d__IReleaseD3dVertexDecl");
set_name(0x006A5700, "CGxDeviceD3d__IStateSyncVertexPtrs"); set_name(0x006A5700, "CGxDeviceD3d__IStateSyncVertexPtrs");
set_name(0x006A5940, "CGxDeviceD3d__IStateSync"); set_name(0x006A5940, "CGxDeviceD3d__IStateSync");
set_name(0x006A5A00, "CGxDeviceD3d__CapsWindowSize"); set_name(0x006A5A00, "CGxDeviceD3d__CapsWindowSize");
@ -2887,7 +2909,9 @@ static import_symbols() {
set_name(0x006A5E10, "CGxDeviceD3d__IShaderCreate"); set_name(0x006A5E10, "CGxDeviceD3d__IShaderCreate");
set_name(0x006A5EF0, "CGxDevice__ITexWHDStartEnd"); set_name(0x006A5EF0, "CGxDevice__ITexWHDStartEnd");
set_name(0x006A74B0, "CGxDeviceD3d__SceneClear"); set_name(0x006A74B0, "CGxDeviceD3d__SceneClear");
set_name(0x006A7940, "CGxDeviceD3d__Sub6A7940");
set_name(0x006A9920, "CGxDeviceD3d__CapsWindowSizeInScreenCoords"); set_name(0x006A9920, "CGxDeviceD3d__CapsWindowSizeInScreenCoords");
set_name(0x006A99E0, "CGxDeviceD3d__IXformSetViewport");
set_name(0x006A9B40, "CGxDeviceD3d__XformSetProjection"); set_name(0x006A9B40, "CGxDeviceD3d__XformSetProjection");
set_name(0x006A9E00, "CGxDeviceD3d__XformSetView"); set_name(0x006A9E00, "CGxDeviceD3d__XformSetView");
set_name(0x006A9FE0, "CGxDeviceD3d__IShaderConstantsFlush"); set_name(0x006A9FE0, "CGxDeviceD3d__IShaderConstantsFlush");
@ -3691,6 +3715,16 @@ static import_symbols() {
set_name(0x00877E10, "SI2__Log_Write"); set_name(0x00877E10, "SI2__Log_Write");
set_name(0x00878010, "SI2__Log_Write@2"); set_name(0x00878010, "SI2__Log_Write@2");
set_name(0x0087E020, "SI2__InitCapture"); set_name(0x0087E020, "SI2__InitCapture");
set_name(0x008A09BA, "NvAPI_Initialize");
set_name(0x008A0A54, "NvAPI_GetErrorMessage");
set_name(0x008A0F88, "NvAPI_Stereo_CreateConfigurationProfileRegistryKey");
set_name(0x008A0FA0, "NvAPI_Stereo_Enable");
set_name(0x008A0FA6, "NvAPI_Stereo_Disable");
set_name(0x008A0FAC, "NvAPI_Stereo_IsEnabled");
set_name(0x008A0FB2, "NvAPI_Stereo_CreateHandleFromIUnknown");
set_name(0x008A0FB8, "NvAPI_Stereo_DestroyHandle");
set_name(0x008A0FD6, "NvAPI_Stereo_SetSeparation");
set_name(0x008A0FEE, "NvAPI_Stereo_SetConvergence");
set_name(0x008A1420, "stub_return_one_byte"); set_name(0x008A1420, "stub_return_one_byte");
set_name(0x008C0360, "FFX__Destroy"); set_name(0x008C0360, "FFX__Destroy");
set_name(0x008C8DE0, "stub_return_int32_one"); set_name(0x008C8DE0, "stub_return_int32_one");
@ -4079,10 +4113,23 @@ static import_symbols() {
set_name(0x009E9EC8, "firstByteMark@2"); set_name(0x009E9EC8, "firstByteMark@2");
set_name(0x009EA04C, "TInstanceId_EvtContext__v_table"); set_name(0x009EA04C, "TInstanceId_EvtContext__v_table");
set_name(0x009F1074, "s_pixelFormatToMipBitsCache"); set_name(0x009F1074, "s_pixelFormatToMipBitsCache");
set_name(0x00A2DDC0, "CGxDevice__vtable"); set_name(0x00A2DDC0, "CGxDevice__v_table");
set_name(0x00A2E198, "CGxDeviceOpenGl__vtable"); set_name(0x00A2E198, "CGxDeviceOpenGl__v_table");
set_name(0x00A2E718, "CGxDeviceD3d__vtable"); set_name(0x00A2E4A8, "CGxDeviceD3d__s_GxFormatToD3dFormat");
set_name(0x00A2E4C8, "CGxDeviceD3d__s_gxAttribToD3dAttribSize");
set_name(0x00A2E718, "CGxDeviceD3d__v_table");
set_name(0x00A2F500, "CGxDeviceD3d9Ex__vtable"); set_name(0x00A2F500, "CGxDeviceD3d9Ex__vtable");
set_name(0x00A2F7E8, "CGxDeviceD3d__s_tolerableTexFmtMapping");
set_name(0x00A2F81C, "CGxDeviceD3d__s_GxTexFmtToD3dFmt");
set_name(0x00A2F850, "CGxDeviceD3d__s_faceTypes");
set_name(0x00A2F8D4, "CGxDeviceD3d__s_primitiveConversion");
set_name(0x00A2F8EC, "CGxDeviceD3d__s_gxAttribToD3dAttribUsage");
set_name(0x00A2F924, "CGxDeviceD3d__s_gxAttribToD3dAttribUsageIndex");
set_name(0x00A2F964, "CGxDeviceD3d__s_srcBlend");
set_name(0x00A2F994, "CGxDeviceD3d__s_dstBlend");
set_name(0x00A2F9C4, "CGxDeviceD3d__s_wrapModes");
set_name(0x00A2FA14, "CGxDeviceD3d__s_cmpFunc");
set_name(0x00A2FA24, "CGxDeviceD3d__s_cullMode");
set_name(0x00AB6350, "g_startup_StringsDB"); set_name(0x00AB6350, "g_startup_StringsDB");
set_name(0x00AB90AC, "System_File__Stacked__s_manager"); set_name(0x00AB90AC, "System_File__Stacked__s_manager");
set_name(0x00AB912C, "System_File__read_func"); set_name(0x00AB912C, "System_File__read_func");
@ -4329,6 +4376,10 @@ static import_symbols() {
set_name(0x00AD5120, "g_soundFilterElemDB"); set_name(0x00AD5120, "g_soundFilterElemDB");
set_name(0x00AD87C4, "formatToInt"); set_name(0x00AD87C4, "formatToInt");
set_name(0x00AD87E4, "g_gxApiNames"); set_name(0x00AD87E4, "g_gxApiNames");
set_name(0x00AD8BC0, "CGxDevice__kWinMinSize");
set_name(0x00AD8EF0, "CGxDeviceD3d__s_GxTexFormatToUse");
set_name(0x00AD8F24, "CGxDeviceD3d__s_gxAttribToD3dAttribType");
set_name(0x00AD8F40, "CGxDeviceD3d__s_filterModes");
set_name(0x00AD90B0, "CBLPFile__s_eightBitAlphaLookup"); set_name(0x00AD90B0, "CBLPFile__s_eightBitAlphaLookup");
set_name(0x00AD90C0, "CBLPFile__s_oneBitAlphaLookup"); set_name(0x00AD90C0, "CBLPFile__s_oneBitAlphaLookup");
set_name(0x00ADBAB4, "s_rect"); set_name(0x00ADBAB4, "s_rect");
@ -4354,6 +4405,9 @@ static import_symbols() {
set_name(0x00AF4A04, "g_lightParamsDB"); set_name(0x00AF4A04, "g_lightParamsDB");
set_name(0x00AF4A28, "g_lightDB"); set_name(0x00AF4A28, "g_lightDB");
set_name(0x00B1D2AC, "s_sleepInBackground"); set_name(0x00B1D2AC, "s_sleepInBackground");
set_name(0x00B2376C, "NvApi__s_initialized");
set_name(0x00B23770, "result");
set_name(0x00B23778, "NvApi__s_interface_table");
set_name(0x00B2F050, "s_streamingdiag"); set_name(0x00B2F050, "s_streamingdiag");
set_name(0x00B2F994, "g_clientEventContext"); set_name(0x00B2F994, "g_clientEventContext");
set_name(0x00B38180, "Blizzard__Streaming__s_streamingReady"); set_name(0x00B38180, "Blizzard__Streaming__s_streamingReady");
@ -4456,12 +4510,14 @@ static import_symbols() {
set_name(0x00C5DF74, "s_maxFPSBk"); set_name(0x00C5DF74, "s_maxFPSBk");
set_name(0x00C5DF7C, "s_maxFPS"); set_name(0x00C5DF7C, "s_maxFPS");
set_name(0x00C5DF88, "g_theGxDevicePtr"); set_name(0x00C5DF88, "g_theGxDevicePtr");
set_name(0x00C5DFDC, "CGxDevice__s_uiVertexShader"); set_name(0x00C5DFD8, "CGxDevice__s_uiVertexShader");
set_name(0x00C5DFE0, "CGxDevice__s_shadowConstants"); set_name(0x00C5DFE0, "CGxDevice__s_shadowConstants");
set_name(0x00C5FFF0, "CGxDevice__kWinAspect");
set_name(0x00C5FFF4, "CGxDevice__m_logBytes"); set_name(0x00C5FFF4, "CGxDevice__m_logBytes");
set_name(0x00C5FFF8, "CGxDevice__m_log"); set_name(0x00C5FFF8, "CGxDevice__m_log");
set_name(0x00C5FFFC, "CGxDevice__s_uiPixelShader"); set_name(0x00C5FFFC, "CGxDevice__s_uiPixelShader");
set_name(0x00C60300, "CGxDevice__s_clientAdjust"); set_name(0x00C60300, "CGxDevice__s_clientAdjust");
set_name(0x00C606F8, "d3dLight");
set_name(0x00C60760, "isIdent"); set_name(0x00C60760, "isIdent");
set_name(0x00C79CE4, "ClientServices__m_instance"); set_name(0x00C79CE4, "ClientServices__m_instance");
set_name(0x00C79CE9, "ClientServices__m_selectRealmInfoValid"); set_name(0x00C79CE9, "ClientServices__m_selectRealmInfoValid");

View file

@ -12,13 +12,4 @@ struct CSimpleSortedArray_##T { \
uint32_t m_iterator; \ uint32_t m_iterator; \
}; };
#define COMMON_SIMPLE_SORTED_ARRAY_POINTER_TO(T) STORM_TS_GROWABLE_ARRAY_POINTER_TO(T); \
typedef struct CSimpleSortedArray_pointer_to_##T CSimpleSortedArray_pointer_to_##T; \
struct CSimpleSortedArray_pointer_to_##T { \
TSGrowableArray_pointer_to_##T m_array; \
uint32_t m_count; \
uint32_t m_maxcount; \
uint32_t m_iterator; \
};
#endif #endif

View file

@ -14,8 +14,9 @@ DECLARE_ENUM(CBaseManaged__ManagedFlags);
#include "tempest/vector.h" #include "tempest/vector.h"
typedef HOBJECT HDATAMGR; typedef HOBJECT HDATAMGR;
typedef CBaseManaged* pointer_to_CBaseManaged;
STORM_TS_FIXED_ARRAY_POINTER_TO(CBaseManaged); STORM_TS_FIXED_ARRAY(pointer_to_CBaseManaged);
STORM_TS_LIST(CBaseManaged); STORM_TS_LIST(CBaseManaged);
enum CBaseManaged__ManagedTypeIds { enum CBaseManaged__ManagedTypeIds {

View file

@ -20,9 +20,10 @@ struct EvtTimer {
uint64_t guidParam; uint64_t guidParam;
void* guidParam2; void* guidParam2;
}; };
typedef EvtTimer* pointer_to_EvtTimer;
STORM_TS_PRIORITY_QUEUE(EvtTimer); STORM_TS_PRIORITY_QUEUE(EvtTimer);
STORM_TS_GROWABLE_ARRAY_POINTER_TO(EvtTimer); STORM_TS_GROWABLE_ARRAY(pointer_to_EvtTimer);
// class EvtTimerQueue : public TSPriorityQueue<EvtTimer> // class EvtTimerQueue : public TSPriorityQueue<EvtTimer>
struct EvtTimerQueue { struct EvtTimerQueue {

View file

@ -2,20 +2,11 @@
#define D3D9_CAPS_H #define D3D9_CAPS_H
#include "system/types.h" #include "system/types.h"
#include "external/d3d9/devtype.h"
typedef enum D3DDEVTYPE D3DDEVTYPE; DECLARE_STRUCT(D3DVSHADERCAPS2_0);
typedef struct D3DVSHADERCAPS2_0 D3DVSHADERCAPS2_0; DECLARE_STRUCT(D3DPSHADERCAPS2_0);
typedef struct D3DPSHADERCAPS2_0 D3DPSHADERCAPS2_0; DECLARE_STRUCT(D3DCAPS9);
typedef struct D3DCAPS9 D3DCAPS9;
enum D3DDEVTYPE {
D3DDEVTYPE_HAL = 1,
D3DDEVTYPE_REF = 2,
D3DDEVTYPE_SW = 3,
D3DDEVTYPE_NULLREF = 4,
D3DDEVTYPE_FORCE_uint32_t = 0xffffffff
};
struct D3DVSHADERCAPS2_0 { struct D3DVSHADERCAPS2_0 {
uint32_t Caps; uint32_t Caps;

View file

@ -0,0 +1,13 @@
#ifndef D3D9_COLORVALUE_H
#define D3D9_COLORVALUE_H
DECLARE_STRUCT(D3DCOLORVALUE);
struct D3DCOLORVALUE {
float r;
float g;
float b;
float a;
};
#endif

View file

@ -0,0 +1,17 @@
#ifndef D3D9_CUBEMAPFACES_H
#define D3D9_CUBEMAPFACES_H
DECLARE_ENUM(D3DCUBEMAP_FACES);
enum D3DCUBEMAP_FACES {
D3DCUBEMAP_FACE_POSITIVE_X = 0,
D3DCUBEMAP_FACE_NEGATIVE_X = 1,
D3DCUBEMAP_FACE_POSITIVE_Y = 2,
D3DCUBEMAP_FACE_NEGATIVE_Y = 3,
D3DCUBEMAP_FACE_POSITIVE_Z = 4,
D3DCUBEMAP_FACE_NEGATIVE_Z = 5,
D3DCUBEMAP_FACE_FORCE_DWORD = 0xffffffff
};
#endif

View file

@ -0,0 +1,42 @@
#ifndef D3D9_CUBETEXTURE_H
#define D3D9_CUBETEXTURE_H
DECLARE_STRUCT(IDirect3DCubeTexture9__v_table);
DECLARE_STRUCT(IDirect3DCubeTexture9);
struct IDirect3DCubeTexture9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DResource9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_SetPrivateData;
void* v_fn_5_GetPrivateData;
void* v_fn_6_FreePrivateData;
void* v_fn_7_SetPriority;
void* v_fn_8_GetPriority;
void* v_fn_9_PreLoad;
void* v_fn_10_GetType;
/*** IDirect3DBaseTexture9 methods ***/
void* v_fn_11_SetLOD;
void* v_fn_12_GetLOD;
void* v_fn_13_GetLevelCount;
void* v_fn_14_SetAutoGenFilterType;
void* v_fn_15_GetAutoGenFilterType;
void* v_fn_16_GenerateMipSubLevels;
/*** IDirect3DCubeTexture9 methods ***/
void* v_fn_17_GetLevelDesc;
void* v_fn_18_GetCubeMapSurface;
void* v_fn_19_LockRect;
void* v_fn_20_UnlockRect;
void* v_fn_21_AddDirtyRect;
};
struct IDirect3DCubeTexture9 {
IDirect3DCubeTexture9__v_table* v_table;
};
typedef IDirect3DCubeTexture9* LPDIRECT3DCUBETEXTURE9;
#endif

View file

@ -0,0 +1,30 @@
#include "external/d3d9/caps.h"
#include "external/d3d9/colorvalue.h"
#include "external/d3d9/cubemapfaces.h"
#include "external/d3d9/cubetexture.h"
#include "external/d3d9/declusage.h"
#include "external/d3d9/device.h"
#include "external/d3d9/devtype.h"
#include "external/d3d9/direct3d.h"
#include "external/d3d9/displaymode.h"
#include "external/d3d9/format.h"
#include "external/d3d9/indexbuffer.h"
#include "external/d3d9/light.h"
#include "external/d3d9/lighttype.h"
#include "external/d3d9/lockedrect.h"
#include "external/d3d9/pixelshader.h"
#include "external/d3d9/pool.h"
#include "external/d3d9/presentparameters.h"
#include "external/d3d9/primitivetype.h"
#include "external/d3d9/query.h"
#include "external/d3d9/renderstatetype.h"
#include "external/d3d9/resourcetype.h"
#include "external/d3d9/surface.h"
#include "external/d3d9/surfacedesc.h"
#include "external/d3d9/swapeffect.h"
#include "external/d3d9/texture.h"
#include "external/d3d9/vector.h"
#include "external/d3d9/vertexbuffer.h"
#include "external/d3d9/vertexdeclaration.h"
#include "external/d3d9/vertexelement.h"
#include "external/d3d9/vertexshader.h"

View file

@ -0,0 +1,23 @@
#ifndef D3D9_DECLUSAGE_H
#define D3D9_DECLUSAGE_H
DECLARE_ENUM(D3DDECLUSAGE);
enum D3DDECLUSAGE {
D3DDECLUSAGE_POSITION = 0,
D3DDECLUSAGE_BLENDWEIGHT = 1,
D3DDECLUSAGE_BLENDINDICES = 2,
D3DDECLUSAGE_NORMAL = 3,
D3DDECLUSAGE_PSIZE = 4,
D3DDECLUSAGE_TEXCOORD = 5,
D3DDECLUSAGE_TANGENT = 6,
D3DDECLUSAGE_BINORMAL = 7,
D3DDECLUSAGE_TESSFACTOR = 8,
D3DDECLUSAGE_POSITIONT = 9,
D3DDECLUSAGE_COLOR = 10,
D3DDECLUSAGE_FOG = 11,
D3DDECLUSAGE_DEPTH = 12,
D3DDECLUSAGE_SAMPLE = 13
};
#endif

View file

@ -3,60 +3,11 @@
#include "system/types.h" #include "system/types.h"
#include "external/d3d9/caps.h" DECLARE_STRUCT(IDirect3DDevice9__v_table);
typedef int32_t D3DFORMAT;
DECLARE_STRUCT(D3DDISPLAYMODE);
DECLARE_STRUCT(IDirect3D9_v_table);
DECLARE_STRUCT(IDirect3D9);
DECLARE_STRUCT(IDirect3DDevice9); DECLARE_STRUCT(IDirect3DDevice9);
DECLARE_STRUCT(IDirect3DDevice9_v_table);
DECLARE_STRUCT(IDirect3DVertexDeclaration9);
DECLARE_STRUCT(IDirect3DSurface9__v_table);
DECLARE_STRUCT(IDirect3DSurface9);
DECLARE_STRUCT(IDirect3DIndexBuffer9);
DECLARE_STRUCT(IDirect3DVertexBuffer9);
DECLARE_STRUCT(IDirect3DTexture9);
DECLARE_STRUCT(IDirect3DVertexShader9__v_table);
DECLARE_STRUCT(IDirect3DVertexShader9);
DECLARE_STRUCT(IDirect3DPixelShader9__v_table);
DECLARE_STRUCT(IDirect3DPixelShader9);
DECLARE_STRUCT(D3DLOCKED_RECT); struct IDirect3DDevice9__v_table {
/*** IUnknown methods ***/
struct D3DDISPLAYMODE {
uint32_t Width;
uint32_t Height;
uint32_t RefreshRate;
D3DFORMAT Format;
};
struct IDirect3D9_v_table {
void* v_fn_1_QueryInterface;
void* v_fn_2_AddRef;
void* v_fn_3_Release;
void* v_fn_4_RegisterSoftwareDevice;
void* v_fn_5_GetAdapterCount;
void* v_fn_6_GetAdapterIdentifier;
void* v_fn_7_GetAdapterModeCount;
void* v_fn_8_EnumAdapterModes;
void* v_fn_9_GetAdapterDisplayMode;
void* v_fn_10_CheckDeviceType;
void* v_fn_11_CheckDeviceFormat;
void* v_fn_12_CheckDeviceMultiSampleType;
void* v_fn_13_CheckDepthStencilMatch;
void* v_fn_14_CheckDeviceFormatConversion;
void* v_fn_15_GetDeviceCaps;
void* v_fn_16_GetAdapterMonitor;
void* v_fn_17_CreateDevice;
};
struct IDirect3D9 {
IDirect3D9_v_table* v_table;
};
struct IDirect3DDevice9_v_table {
void* v_fn_0_QueryInterface; void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef; void* v_fn_1_AddRef;
void* v_fn_2_Release; void* v_fn_2_Release;
@ -180,79 +131,9 @@ struct IDirect3DDevice9_v_table {
}; };
struct IDirect3DDevice9 { struct IDirect3DDevice9 {
IDirect3DDevice9_v_table* v_table; IDirect3DDevice9__v_table* v_table;
}; };
struct IDirect3DVertexDeclaration9 { typedef IDirect3DDevice9* LPDIRECT3DDEVICE9;
void** v_table;
};
struct IDirect3DSurface9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DResource9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_SetPrivateData;
void* v_fn_5_GetPrivateData;
void* v_fn_6_FreePrivateData;
void* v_fn_7_SetPriority;
void* v_fn_8_GetPriority;
void* v_fn_9_PreLoad;
void* v_fn_10_GetType;
/*** IDirect3DSurface9 methods ***/
void* v_fn_11_GetContainer;
void* v_fn_12_GetDesc;
void* v_fn_13_LockRect;
void* v_fn_14_UnlockRect;
void* v_fn_15_GetDC;
void* v_fn_16_ReleaseDC;
};
struct IDirect3DSurface9 {
IDirect3DSurface9__v_table* v_table;
};
struct IDirect3DIndexBuffer9 {
void** v_table;
};
struct IDirect3DVertexBuffer9 {
void** v_table;
};
struct IDirect3DTexture9 {
void** v_table;
};
struct D3DLOCKED_RECT {
int32_t Pitch;
void* pBits;
};
struct IDirect3DVertexShader9__v_table {
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
void* v_fn_3_GetDevice;
void* v_fn_4_GetFunction;
};
struct IDirect3DVertexShader9 {
IDirect3DVertexShader9__v_table* v_table;
};
struct IDirect3DPixelShader9__v_table {
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
void* v_fn_3_GetDevice;
void* v_fn_4_GetFunction;
};
struct IDirect3DPixelShader9 {
IDirect3DPixelShader9__v_table* v_v_table;
};
#endif #endif

View file

@ -0,0 +1,14 @@
#ifndef D3D9_DEVTYPE_H
#define D3D9_DEVTYPE_H
DECLARE_ENUM(D3DDEVTYPE);
enum D3DDEVTYPE {
D3DDEVTYPE_HAL = 1,
D3DDEVTYPE_REF = 2,
D3DDEVTYPE_SW = 3,
D3DDEVTYPE_FORCE_DWORD = 0xffffffff
};
#endif

View file

@ -0,0 +1,35 @@
#ifndef D3D9_DIRECT3D_H
#define D3D9_DIRECT3D_H
DECLARE_STRUCT(IDirect3D9__v_table);
DECLARE_STRUCT(IDirect3D9);
struct IDirect3D9__v_table {
/*** IUnknown methods ***/
void* v_fn_1_QueryInterface;
void* v_fn_2_AddRef;
void* v_fn_3_Release;
/*** IDirect3D9 methods ***/
void* v_fn_4_RegisterSoftwareDevice;
void* v_fn_5_GetAdapterCount;
void* v_fn_6_GetAdapterIdentifier;
void* v_fn_7_GetAdapterModeCount;
void* v_fn_8_EnumAdapterModes;
void* v_fn_9_GetAdapterDisplayMode;
void* v_fn_10_CheckDeviceType;
void* v_fn_11_CheckDeviceFormat;
void* v_fn_12_CheckDeviceMultiSampleType;
void* v_fn_13_CheckDepthStencilMatch;
void* v_fn_14_CheckDeviceFormatConversion;
void* v_fn_15_GetDeviceCaps;
void* v_fn_16_GetAdapterMonitor;
void* v_fn_17_CreateDevice;
};
struct IDirect3D9 {
IDirect3D9__v_table* v_table;
};
typedef IDirect3D9* LPDIRECT3D9;
#endif

View file

@ -0,0 +1,15 @@
#ifndef D3D9_DISPLAYMODE_H
#define D3D9_DISPLAYMODE_H
DECLARE_STRUCT(D3DDISPLAYMODE);
#include "external/d3d9/format.h"
struct D3DDISPLAYMODE {
uint32_t Width;
uint32_t Height;
uint32_t RefreshRate;
D3DFORMAT Format;
};
#endif

View file

@ -0,0 +1,94 @@
#ifndef D3D9_FORMAT_H
#define D3D9_FORMAT_H
DECLARE_ENUM(D3DFORMAT);
#ifndef MAKEFOURCC
#define MAKEFOURCC(ch0, ch1, ch2, ch3) \
((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))
#endif
enum D3DFORMAT {
D3DFMT_UNKNOWN = 0,
D3DFMT_R8G8B8 = 20,
D3DFMT_A8R8G8B8 = 21,
D3DFMT_X8R8G8B8 = 22,
D3DFMT_R5G6B5 = 23,
D3DFMT_X1R5G5B5 = 24,
D3DFMT_A1R5G5B5 = 25,
D3DFMT_A4R4G4B4 = 26,
D3DFMT_R3G3B2 = 27,
D3DFMT_A8 = 28,
D3DFMT_A8R3G3B2 = 29,
D3DFMT_X4R4G4B4 = 30,
D3DFMT_A2B10G10R10 = 31,
D3DFMT_A8B8G8R8 = 32,
D3DFMT_X8B8G8R8 = 33,
D3DFMT_G16R16 = 34,
D3DFMT_A2R10G10B10 = 35,
D3DFMT_A16B16G16R16 = 36,
D3DFMT_A8P8 = 40,
D3DFMT_P8 = 41,
D3DFMT_L8 = 50,
D3DFMT_A8L8 = 51,
D3DFMT_A4L4 = 52,
D3DFMT_V8U8 = 60,
D3DFMT_L6V5U5 = 61,
D3DFMT_X8L8V8U8 = 62,
D3DFMT_Q8W8V8U8 = 63,
D3DFMT_V16U16 = 64,
D3DFMT_A2W10V10U10 = 67,
// D3DFMT_UYVY = MAKEFOURCC('U', 'Y', 'V', 'Y'),
// D3DFMT_YUY2 = MAKEFOURCC('Y', 'U', 'Y', '2'),
// D3DFMT_DXT1 = MAKEFOURCC('D', 'X', 'T', '1'),
// D3DFMT_DXT2 = MAKEFOURCC('D', 'X', 'T', '2'),
// D3DFMT_DXT3 = MAKEFOURCC('D', 'X', 'T', '3'),
// D3DFMT_DXT4 = MAKEFOURCC('D', 'X', 'T', '4'),
// D3DFMT_DXT5 = MAKEFOURCC('D', 'X', 'T', '5'),
// D3DFMT_MULTI2_ARGB8 = MAKEFOURCC('M', 'E', 'T', '1'),
// D3DFMT_G8R8_G8B8 = MAKEFOURCC('G', 'R', 'G', 'B'),
// D3DFMT_R8G8_B8G8 = MAKEFOURCC('R', 'G', 'B', 'G'),
D3DFMT_D16_LOCKABLE = 70,
D3DFMT_D32 = 71,
D3DFMT_D15S1 = 73,
D3DFMT_D24S8 = 75,
D3DFMT_D24X8 = 77,
D3DFMT_D24X4S4 = 79,
D3DFMT_D16 = 80,
D3DFMT_L16 = 81,
D3DFMT_D32F_LOCKABLE = 82,
D3DFMT_D24FS8 = 83,
D3DFMT_D32_LOCKABLE = 84,
D3DFMT_S8_LOCKABLE = 85,
D3DFMT_VERTEXDATA = 100,
D3DFMT_INDEX16 = 101,
D3DFMT_INDEX32 = 102,
D3DFMT_Q16W16V16U16 = 110,
/* Floating point formats */
D3DFMT_R16F = 111,
D3DFMT_G16R16F = 112,
D3DFMT_A16B16G16R16F = 113,
/* IEEE formats */
D3DFMT_R32F = 114,
D3DFMT_G32R32F = 115,
D3DFMT_A32B32G32R32F = 116,
D3DFMT_CxV8U8 = 117,
D3DFMT_A1 = 118,
D3DFMT_A2B10G10R10_XR_BIAS = 119,
D3DFMT_BINARYBUFFER = 199,
D3DFMT_FORCE_DWORD = 0xFFFFFFFF
};
#endif

View file

@ -0,0 +1,33 @@
#ifndef D3D9_INDEX_BUFFER_H
#define D3D9_INDEX_BUFFER_H
DECLARE_STRUCT(IDirect3DIndexBuffer9__v_table);
DECLARE_STRUCT(IDirect3DIndexBuffer9);
struct IDirect3DIndexBuffer9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DResource9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_SetPrivateData;
void* v_fn_5_GetPrivateData;
void* v_fn_6_FreePrivateData;
void* v_fn_7_SetPriority;
void* v_fn_8_GetPriority;
void* v_fn_9_PreLoad;
void* v_fn_10_GetType;
/*** IDirect3DIndexBuffer9 methods ***/
void* v_fn_11_Lock;
void* v_fn_12_Unlock;
void* v_fn_13_GetDesc;
};
struct IDirect3DIndexBuffer9 {
IDirect3DIndexBuffer9__v_table* v_table;
};
typedef IDirect3DIndexBuffer9* LPDIRECT3DINDEXBUFFER9;
#endif

View file

@ -0,0 +1,26 @@
#ifndef D3D9_LIGHT_H
#define D3D9_LIGHT_H
DECLARE_STRUCT(D3DLIGHT9);
#include "external/d3d9/lighttype.h"
#include "external/d3d9/colorvalue.h"
#include "external/d3d9/vector.h"
struct D3DLIGHT9 {
D3DLIGHTTYPE Type;
D3DCOLORVALUE Diffuse;
D3DCOLORVALUE Specular;
D3DCOLORVALUE Ambient;
D3DVECTOR Position;
D3DVECTOR Direction;
float Range;
float Falloff;
float Attenuation0;
float Attenuation1;
float Attenuation2;
float Theta;
float Phi;
};
#endif

View file

@ -0,0 +1,14 @@
#ifndef D3D9_LIGHTTYPE_H
#define D3D9_LIGHTTYPE_H
DECLARE_ENUM(D3DLIGHTTYPE);
enum D3DLIGHTTYPE {
D3DLIGHT_POINT = 1,
D3DLIGHT_SPOT = 2,
D3DLIGHT_DIRECTIONAL = 3,
D3DLIGHT_FORCE_DWORD = 0x7fffffff
};
#endif

View file

@ -0,0 +1,11 @@
#ifndef D3D9_LOCKEDRECT_H
#define D3D9_LOCKEDRECT_H
DECLARE_STRUCT(D3DLOCKED_RECT);
struct D3DLOCKED_RECT {
int32_t Pitch;
void* pBits;
};
#endif

View file

@ -0,0 +1,28 @@
#ifndef D3D9_MULTISAMPLETYPE_H
#define D3D9_MULTISAMPLETYPE_H
DECLARE_ENUM(D3DMULTISAMPLE_TYPE);
enum D3DMULTISAMPLE_TYPE {
D3DMULTISAMPLE_NONE = 0,
D3DMULTISAMPLE_NONMASKABLE = 1,
D3DMULTISAMPLE_2_SAMPLES = 2,
D3DMULTISAMPLE_3_SAMPLES = 3,
D3DMULTISAMPLE_4_SAMPLES = 4,
D3DMULTISAMPLE_5_SAMPLES = 5,
D3DMULTISAMPLE_6_SAMPLES = 6,
D3DMULTISAMPLE_7_SAMPLES = 7,
D3DMULTISAMPLE_8_SAMPLES = 8,
D3DMULTISAMPLE_9_SAMPLES = 9,
D3DMULTISAMPLE_10_SAMPLES = 10,
D3DMULTISAMPLE_11_SAMPLES = 11,
D3DMULTISAMPLE_12_SAMPLES = 12,
D3DMULTISAMPLE_13_SAMPLES = 13,
D3DMULTISAMPLE_14_SAMPLES = 14,
D3DMULTISAMPLE_15_SAMPLES = 15,
D3DMULTISAMPLE_16_SAMPLES = 16,
D3DMULTISAMPLE_FORCE_DWORD = 0x7fffffff
};
#endif

View file

@ -0,0 +1,19 @@
#ifndef D3D9_PIXELSHADER_H
#define D3D9_PIXELSHADER_H
DECLARE_STRUCT(IDirect3DPixelShader9__v_table);
DECLARE_STRUCT(IDirect3DPixelShader9);
struct IDirect3DPixelShader9__v_table {
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
void* v_fn_3_GetDevice;
void* v_fn_4_GetFunction;
};
struct IDirect3DPixelShader9 {
IDirect3DPixelShader9__v_table* v_v_table;
};
#endif

View file

@ -0,0 +1,15 @@
#ifndef D3D9_POOL_H
#define D3D9_POOL_H
DECLARE_ENUM(D3DPOOL);
enum D3DPOOL {
D3DPOOL_DEFAULT = 0,
D3DPOOL_MANAGED = 1,
D3DPOOL_SYSTEMMEM = 2,
D3DPOOL_SCRATCH = 3,
D3DPOOL_FORCE_DWORD = 0x7fffffff
};
#endif

View file

@ -0,0 +1,30 @@
#ifndef D3D9_PRESENTPARAMETERS_H
#define D3D9_PRESENTPARAMETERS_H
DECLARE_STRUCT(D3DPRESENT_PARAMETERS);
#include "external/d3d9/format.h"
#include "external/d3d9/multisampletype.h"
#include "external/d3d9/swapeffect.h"
struct D3DPRESENT_PARAMETERS {
uint32_t BackBufferWidth;
uint32_t BackBufferHeight;
D3DFORMAT BackBufferFormat;
uint32_t BackBufferCount;
D3DMULTISAMPLE_TYPE MultiSampleType;
uint32_t MultiSampleQuality;
D3DSWAPEFFECT SwapEffect;
void* hDeviceWindow;
int32_t Windowed;
int32_t EnableAutoDepthStencil;
D3DFORMAT AutoDepthStencilFormat;
uint32_t Flags;
uint32_t FullScreen_RefreshRateInHz;
uint32_t PresentationInterval;
};
#endif

View file

@ -0,0 +1,17 @@
#ifndef D3D9_PRIMITIVETYPE_H
#define D3D9_PRIMITIVETYPE_H
DECLARE_ENUM(D3DPRIMITIVETYPE);
enum D3DPRIMITIVETYPE {
D3DPT_POINTLIST = 1,
D3DPT_LINELIST = 2,
D3DPT_LINESTRIP = 3,
D3DPT_TRIANGLELIST = 4,
D3DPT_TRIANGLESTRIP = 5,
D3DPT_TRIANGLEFAN = 6,
D3DPT_FORCE_DWORD = 0x7fffffff
};
#endif

View file

@ -0,0 +1,24 @@
#ifndef D3D9_QUERY_H
#define D3D9_QUERY_H
DECLARE_STRUCT(IDirect3DQuery9__v_table);
DECLARE_STRUCT(IDirect3DQuery9);
struct IDirect3DQuery9__v_table {
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
void* v_fn_3_GetDevice;
void* v_fn_4_GetType;
void* v_fn_5_GetDataSize;
void* v_fn_6_Issue;
void* v_fn_7_GetData;
};
struct IDirect3DQuery9 {
IDirect3DQuery9__v_table* v_table;
};
typedef IDirect3DQuery9* LPDIRECT3DQUERY9;
#endif

View file

@ -0,0 +1,114 @@
#ifndef D3D9_RENDERSTATETYPE_H
#define D3D9_RENDERSTATETYPE_H
DECLARE_ENUM(D3DRENDERSTATETYPE);
enum D3DRENDERSTATETYPE {
D3DRS_ZENABLE = 7,
D3DRS_FILLMODE = 8,
D3DRS_SHADEMODE = 9,
D3DRS_ZWRITEENABLE = 14,
D3DRS_ALPHATESTENABLE = 15,
D3DRS_LASTPIXEL = 16,
D3DRS_SRCBLEND = 19,
D3DRS_DESTBLEND = 20,
D3DRS_CULLMODE = 22,
D3DRS_ZFUNC = 23,
D3DRS_ALPHAREF = 24,
D3DRS_ALPHAFUNC = 25,
D3DRS_DITHERENABLE = 26,
D3DRS_ALPHABLENDENABLE = 27,
D3DRS_FOGENABLE = 28,
D3DRS_SPECULARENABLE = 29,
D3DRS_FOGCOLOR = 34,
D3DRS_FOGTABLEMODE = 35,
D3DRS_FOGSTART = 36,
D3DRS_FOGEND = 37,
D3DRS_FOGDENSITY = 38,
D3DRS_RANGEFOGENABLE = 48,
D3DRS_STENCILENABLE = 52,
D3DRS_STENCILFAIL = 53,
D3DRS_STENCILZFAIL = 54,
D3DRS_STENCILPASS = 55,
D3DRS_STENCILFUNC = 56,
D3DRS_STENCILREF = 57,
D3DRS_STENCILMASK = 58,
D3DRS_STENCILWRITEMASK = 59,
D3DRS_TEXTUREFACTOR = 60,
D3DRS_WRAP0 = 128,
D3DRS_WRAP1 = 129,
D3DRS_WRAP2 = 130,
D3DRS_WRAP3 = 131,
D3DRS_WRAP4 = 132,
D3DRS_WRAP5 = 133,
D3DRS_WRAP6 = 134,
D3DRS_WRAP7 = 135,
D3DRS_CLIPPING = 136,
D3DRS_LIGHTING = 137,
D3DRS_AMBIENT = 139,
D3DRS_FOGVERTEXMODE = 140,
D3DRS_COLORVERTEX = 141,
D3DRS_LOCALVIEWER = 142,
D3DRS_NORMALIZENORMALS = 143,
D3DRS_DIFFUSEMATERIALSOURCE = 145,
D3DRS_SPECULARMATERIALSOURCE = 146,
D3DRS_AMBIENTMATERIALSOURCE = 147,
D3DRS_EMISSIVEMATERIALSOURCE = 148,
D3DRS_VERTEXBLEND = 151,
D3DRS_CLIPPLANEENABLE = 152,
D3DRS_POINTSIZE = 154,
D3DRS_POINTSIZE_MIN = 155,
D3DRS_POINTSPRITEENABLE = 156,
D3DRS_POINTSCALEENABLE = 157,
D3DRS_POINTSCALE_A = 158,
D3DRS_POINTSCALE_B = 159,
D3DRS_POINTSCALE_C = 160,
D3DRS_MULTISAMPLEANTIALIAS = 161,
D3DRS_MULTISAMPLEMASK = 162,
D3DRS_PATCHEDGESTYLE = 163,
D3DRS_DEBUGMONITORTOKEN = 165,
D3DRS_POINTSIZE_MAX = 166,
D3DRS_INDEXEDVERTEXBLENDENABLE = 167,
D3DRS_COLORWRITEENABLE = 168,
D3DRS_TWEENFACTOR = 170,
D3DRS_BLENDOP = 171,
D3DRS_POSITIONDEGREE = 172,
D3DRS_NORMALDEGREE = 173,
D3DRS_SCISSORTESTENABLE = 174,
D3DRS_SLOPESCALEDEPTHBIAS = 175,
D3DRS_ANTIALIASEDLINEENABLE = 176,
D3DRS_MINTESSELLATIONLEVEL = 178,
D3DRS_MAXTESSELLATIONLEVEL = 179,
D3DRS_ADAPTIVETESS_X = 180,
D3DRS_ADAPTIVETESS_Y = 181,
D3DRS_ADAPTIVETESS_Z = 182,
D3DRS_ADAPTIVETESS_W = 183,
D3DRS_ENABLEADAPTIVETESSELLATION= 184,
D3DRS_TWOSIDEDSTENCILMODE = 185,
D3DRS_CCW_STENCILFAIL = 186,
D3DRS_CCW_STENCILZFAIL = 187,
D3DRS_CCW_STENCILPASS = 188,
D3DRS_CCW_STENCILFUNC = 189,
D3DRS_COLORWRITEENABLE1 = 190,
D3DRS_COLORWRITEENABLE2 = 191,
D3DRS_COLORWRITEENABLE3 = 192,
D3DRS_BLENDFACTOR = 193,
D3DRS_SRGBWRITEENABLE = 194,
D3DRS_DEPTHBIAS = 195,
D3DRS_WRAP8 = 198,
D3DRS_WRAP9 = 199,
D3DRS_WRAP10 = 200,
D3DRS_WRAP11 = 201,
D3DRS_WRAP12 = 202,
D3DRS_WRAP13 = 203,
D3DRS_WRAP14 = 204,
D3DRS_WRAP15 = 205,
D3DRS_SEPARATEALPHABLENDENABLE = 206,
D3DRS_SRCBLENDALPHA = 207,
D3DRS_DESTBLENDALPHA = 208,
D3DRS_BLENDOPALPHA = 209,
D3DRS_FORCE_DWORD = 0x7fffffff
};
#endif

View file

@ -0,0 +1,18 @@
#ifndef D3D9_RESOURCETYPE_H
#define D3D9_RESOURCETYPE_H
DECLARE_ENUM(D3DRESOURCETYPE);
enum D3DRESOURCETYPE {
D3DRTYPE_SURFACE = 1,
D3DRTYPE_VOLUME = 2,
D3DRTYPE_TEXTURE = 3,
D3DRTYPE_VOLUMETEXTURE = 4,
D3DRTYPE_CUBETEXTURE = 5,
D3DRTYPE_VERTEXBUFFER = 6,
D3DRTYPE_INDEXBUFFER = 7,
D3DRTYPE_FORCE_DWORD = 0x7fffffff
};
#endif

View file

@ -0,0 +1,36 @@
#ifndef D3D9_SURFACE_H
#define D3D9_SURFACE_H
DECLARE_STRUCT(IDirect3DSurface9__v_table);
DECLARE_STRUCT(IDirect3DSurface9);
struct IDirect3DSurface9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DResource9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_SetPrivateData;
void* v_fn_5_GetPrivateData;
void* v_fn_6_FreePrivateData;
void* v_fn_7_SetPriority;
void* v_fn_8_GetPriority;
void* v_fn_9_PreLoad;
void* v_fn_10_GetType;
/*** IDirect3DSurface9 methods ***/
void* v_fn_11_GetContainer;
void* v_fn_12_GetDesc;
void* v_fn_13_LockRect;
void* v_fn_14_UnlockRect;
void* v_fn_15_GetDC;
void* v_fn_16_ReleaseDC;
};
struct IDirect3DSurface9 {
IDirect3DSurface9__v_table* v_table;
};
typedef IDirect3DSurface9* LPDIRECT3DSURFACE9;
#endif

View file

@ -0,0 +1,22 @@
#ifndef D3D9_SURFACEDESC_H
#define D3D9_SURFACEDESC_H
DECLARE_STRUCT(D3DSURFACE_DESC);
#include "external/d3d9/format.h"
#include "external/d3d9/resourcetype.h"
#include "external/d3d9/pool.h"
#include "external/d3d9/multisampletype.h"
struct D3DSURFACE_DESC {
D3DFORMAT Format;
D3DRESOURCETYPE Type;
uint32_t Usage;
D3DPOOL Pool;
D3DMULTISAMPLE_TYPE MultiSampleType;
uint32_t MultiSampleQuality;
uint32_t Width;
uint32_t Height;
};
#endif

View file

@ -0,0 +1,15 @@
#ifndef D3D9_SWAPEFFECT_H
#define D3D9_SWAPEFFECT_H
DECLARE_ENUM(D3DSWAPEFFECT);
enum D3DSWAPEFFECT {
D3DSWAPEFFECT_DISCARD = 1,
D3DSWAPEFFECT_FLIP = 2,
D3DSWAPEFFECT_COPY = 3,
D3DSWAPEFFECT_OVERLAY = 4,
D3DSWAPEFFECT_FLIPEX = 5,
D3DSWAPEFFECT_FORCE_DWORD = 0xFFFFFFFF
};
#endif

View file

@ -0,0 +1,42 @@
#ifndef D3D9_TEXTURE_H
#define D3D9_TEXTURE_H
DECLARE_STRUCT(IDirect3DTexture9__v_table);
DECLARE_STRUCT(IDirect3DTexture9);
struct IDirect3DTexture9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DResource9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_SetPrivateData;
void* v_fn_5_GetPrivateData;
void* v_fn_6_FreePrivateData;
void* v_fn_7_SetPriority;
void* v_fn_8_GetPriority;
void* v_fn_9_PreLoad;
void* v_fn_10_GetType;
/*** IDirect3DBaseTexture9 methods ***/
void* v_fn_11_SetLOD;
void* v_fn_12_GetLOD;
void* v_fn_13_GetLevelCount;
void* v_fn_14_SetAutoGenFilterType;
void* v_fn_15_GetAutoGenFilterType;
void* v_fn_16_GenerateMipSubLevels;
/*** IDirect3DTexture9 methods ***/
void* v_fn_17_GetLevelDesc;
void* v_fn_18_GetSurfaceLevel;
void* v_fn_19_LockRect;
void* v_fn_20_UnlockRect;
void* v_fn_21_AddDirtyRect;
};
struct IDirect3DTexture9 {
IDirect3DTexture9__v_table* v_table;
};
typedef IDirect3DTexture9* LPDIRECT3DTEXTURE9;
#endif

View file

@ -0,0 +1,12 @@
#ifndef D3D9_VECTOR_H
#define D3D9_VECTOR_H
DECLARE_STRUCT(D3DVECTOR);
struct D3DVECTOR {
float x;
float y;
float z;
};
#endif

View file

@ -0,0 +1,32 @@
#ifndef D3D9_VERTEXBUFFER_H
DECLARE_STRUCT(IDirect3DVertexBuffer9__v_table);
DECLARE_STRUCT(IDirect3DVertexBuffer9);
struct IDirect3DVertexBuffer9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DResource9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_SetPrivateData;
void* v_fn_5_GetPrivateData;
void* v_fn_6_FreePrivateData;
void* v_fn_7_SetPriority;
void* v_fn_8_GetPriority;
void* v_fn_9_PreLoad;
void* v_fn_10_GetType;
/*** IDirect3DVertexBuffer9 methods ***/
void* v_fn_11_Lock;
void* v_fn_12_Unlock;
void* v_fn_13_GetDesc;
};
struct IDirect3DVertexBuffer9 {
IDirect3DVertexBuffer9__v_table* v_table;
};
typedef IDirect3DVertexBuffer9* LPDIRECT3DVERTEXBUFFER9;
#endif

View file

@ -0,0 +1,23 @@
#ifndef D3D9_VERTEXDECLARATION_H
#define D3D9_VERTEXDECLARATION_H
DECLARE_STRUCT(IDirect3DVertexDeclaration9__v_table);
DECLARE_STRUCT(IDirect3DVertexDeclaration9);
struct IDirect3DVertexDeclaration9__v_table {
/*** IUnknown methods ***/
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
/*** IDirect3DVertexDeclaration9 methods ***/
void* v_fn_3_GetDevice;
void* v_fn_4_GetDeclaration;
};
struct IDirect3DVertexDeclaration9 {
IDirect3DVertexDeclaration9__v_table* v_table;
};
typedef IDirect3DVertexDeclaration9* LPDIRECT3DVERTEXDECLARATION9;
#endif

View file

@ -0,0 +1,15 @@
#ifndef D3D9_VERTEXELEMENT_H
#define D3D9_VERTEXELEMENT_H
DECLARE_STRUCT(D3DVERTEXELEMENT9);
struct D3DVERTEXELEMENT9 {
uint16_t Stream;
uint16_t Offset;
uint8_t Type;
uint8_t Method;
uint8_t Usage;
uint8_t UsageIndex;
};
#endif

View file

@ -0,0 +1,21 @@
#ifndef D3D9_VERTEXSHADER_H
#define D3D9_VERTEXSHADER_H
DECLARE_STRUCT(IDirect3DVertexShader9__v_table);
DECLARE_STRUCT(IDirect3DVertexShader9);
struct IDirect3DVertexShader9__v_table {
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
void* v_fn_3_GetDevice;
void* v_fn_4_GetFunction;
};
struct IDirect3DVertexShader9 {
IDirect3DVertexShader9__v_table* v_table;
};
typedef IDirect3DVertexShader9* LPDIRECT3DVERTEXSHADER9;
#endif

View file

@ -3,7 +3,7 @@
#include "gx/device.h" #include "gx/device.h"
#include "external/d3d9/device.h" #include "external/d3d9/d3d9.h"
#include "storm/array.h" #include "storm/array.h"
@ -199,7 +199,9 @@ enum CGxDeviceD3d__EDeviceState {
}; };
struct CGxDeviceD3d__GxVertexDecl { struct CGxDeviceD3d__GxVertexDecl {
uint32_t m_unk00; uint32_t count;
D3DVERTEXELEMENT9 elements[15];
IDirect3DVertexDeclaration9* d3dDecl;
}; };
STORM_TS_GROWABLE_ARRAY(CGxDeviceD3d__GxVertexDecl); STORM_TS_GROWABLE_ARRAY(CGxDeviceD3d__GxVertexDecl);
@ -210,36 +212,41 @@ struct CGxDeviceD3d {
uint16_t unk396E; uint16_t unk396E;
int32_t m_ownhwnd; int32_t m_ownhwnd;
void* m_d3dLib; void* m_d3dLib;
IDirect3D9* m_d3d; LPDIRECT3D9 m_d3d;
IDirect3DDevice9* m_d3dDevice; LPDIRECT3DDEVICE9 m_d3dDevice;
D3DCAPS9 m_d3dCaps; D3DCAPS9 m_d3dCaps;
int32_t m_d3dIsHwDevice; int32_t m_d3dIsHwDevice;
int32_t m_d3dNVAPI; int32_t m_d3dNVAPI;
uint32_t m_d3dStereoEnabled; // UC uint32_t m_d3dStereoEnabled; // UC
uint32_t unk3ABC; uint32_t m_d3dStereoRestore; // m_d3dStereoRestore
uint32_t m_d3dStereoHandle; // UC uint32_t m_d3dStereoHandle; // UC
float m_d3dStereoConvergence; // UC float m_d3dStereoConvergence; // UC
float m_d3dStereoSeparation; // UC float m_d3dStereoSeparation; // UC
int32_t unk3ACC; int32_t m_d3dStereoDirty; // 3ACC, UC
TSGrowableArray_CGxDeviceD3d__GxVertexDecl m_vertexDecl; TSGrowableArray_CGxDeviceD3d__GxVertexDecl m_gxVertexDecl;
IDirect3DVertexDeclaration9* m_d3dVertexDecl[14]; LPDIRECT3DVERTEXDECLARATION9 m_d3dVertexDecl[14];
D3DDISPLAYMODE m_desktopDisplayMode; D3DDISPLAYMODE m_desktopDisplayMode;
int32_t m_inScene; int32_t m_inScene;
uint32_t unk3B2C; // set to zero by CGxDeviceD3d::IStateSetD3DDefaults
// checked in IStateSyncLights
int32_t int3B2C;
D3DFORMAT m_devDepthFormat; D3DFORMAT m_devDepthFormat;
D3DFORMAT m_devAdapterFormat; D3DFORMAT m_devAdapterFormat;
uint32_t unk3B38; // used by CGxDeviceD3d::DeviceSetRenderTarget
IDirect3DSurface9* m_defColorSurface; // IDirect3DSurface9* surface3B38;
IDirect3DSurface9* m_defDepthSurface; LPDIRECT3DSURFACE9 m_defDepthStencilSurface;
uint32_t unk3B44; LPDIRECT3DSURFACE9 m_defColorSurface;
uint32_t unk3B48; LPDIRECT3DSURFACE9 m_defDepthSurface;
int32_t m_hwCursorNeedsUpdate; // used in DeviceReadPixels
IDirect3DTexture9* m_hwCursorTexture; LPDIRECT3DSURFACE9 surface3B44; // m_backBufferSurface?
IDirect3DSurface9* m_hwCursorBitmap; LPDIRECT3DQUERY9 m_eventQuery; // m_queryEvent? m_eventQuery?
uint32_t unk3B58; int32_t m_hwCursorDirty;
IDirect3DVertexDeclaration9* m_d3dCurrentVertexDecl; LPDIRECT3DTEXTURE9 m_hwCursorTexture;
IDirect3DIndexBuffer9* m_d3dCurrentIndexBuf; LPDIRECT3DSURFACE9 m_hwCursorBitmap;
IDirect3DVertexBuffer9* m_d3dVertexStreamBuf[8]; CGxTex* texture3B58;
LPDIRECT3DVERTEXDECLARATION9 m_d3dCurrentVertexDecl;
LPDIRECT3DINDEXBUFFER9 m_d3dCurrentIndexBuf;
LPDIRECT3DVERTEXBUFFER9 m_d3dVertexStreamBuf[8];
uint32_t m_d3dVertexStreamOfs[8]; uint32_t m_d3dVertexStreamOfs[8];
uint32_t m_d3dVertexStreamStride[8]; uint32_t m_d3dVertexStreamStride[8];
uint32_t m_deviceStates[182]; uint32_t m_deviceStates[182];

View file

@ -13,11 +13,13 @@
#include "tempest/box.h" #include "tempest/box.h"
#include "tempest/matrix.h" #include "tempest/matrix.h"
#include "tempest/rect.h" #include "tempest/rect.h"
#include "tempest/plane.h"
#include "tempest/vector.h" #include "tempest/vector.h"
#include "gx/types.h" #include "gx/types.h"
#include "gx/caps.h" #include "gx/caps.h"
#include "gx/format.h" #include "gx/format.h"
#include "gx/light.h"
#include "gx/state_bom.h" #include "gx/state_bom.h"
#include "gx/shader.h" #include "gx/shader.h"
#include "gx/matrix_stack.h" #include "gx/matrix_stack.h"
@ -31,7 +33,8 @@ DECLARE_STRUCT(CGxPushedRenderState);
DECLARE_STRUCT(ShaderConstants); DECLARE_STRUCT(ShaderConstants);
DECLARE_STRUCT(CGxDevice); DECLARE_STRUCT(CGxDevice);
DECLARE_STRUCT(CGxDevice__TextureTarget); DECLARE_STRUCT(CGxDevice__TextureTarget);
DECLARE_STRUCT(CGxDevice__vtable); DECLARE_STRUCT(CGxDevice__v_table);
DECLARE_STRUCT(CGxDevice__GxLight);
typedef void (*DEVICERESTOREDCALLBACK)(); typedef void (*DEVICERESTOREDCALLBACK)();
STORM_TS_GROWABLE_ARRAY(DEVICERESTOREDCALLBACK); STORM_TS_GROWABLE_ARRAY(DEVICERESTOREDCALLBACK);
@ -68,8 +71,15 @@ struct CGxDevice__TextureTarget {
void* m_apiSpecific; void* m_apiSpecific;
}; };
// GxLight?
struct CGxDevice__GxLight {
CGxLight light;
int32_t enable;
uint16_t flags;
};
// 84 functions // 84 functions
struct CGxDevice__vtable { struct CGxDevice__v_table {
// void ITexMarkAsUpdated(CGxTex* texId); // void ITexMarkAsUpdated(CGxTex* texId);
void* v_fn_0_ITexMarkAsUpdated; void* v_fn_0_ITexMarkAsUpdated;
// void IRsSendToHw(EGxRenderState rs); // void IRsSendToHw(EGxRenderState rs);
@ -146,7 +156,7 @@ struct CGxDevice__vtable {
// } // }
// void DeviceResolveDepthBuffer(CGxTex* texId); // void DeviceResolveDepthBuffer(CGxTex* texId);
void* v_fn_26_DeviceResolveDepthBuffer; void* v_fn_26_DeviceResolveDepthBuffer;
// void DeviceCopyTex(CGxTex* a1, int32_t a2, CGxTex* a3, int32_t a4); // void DeviceCopyTex(CGxTex* sourceTex, uint32_t sourcePlane, CGxTex* destTex, uint32_t destPlane);
void* v_fn_27_DeviceCopyTex; void* v_fn_27_DeviceCopyTex;
// void DeviceOverride(EGxOverride override, uint32_t value); // void DeviceOverride(EGxOverride override, uint32_t value);
void* v_fn_28_DeviceOverride; void* v_fn_28_DeviceOverride;
@ -164,11 +174,11 @@ struct CGxDevice__vtable {
void* v_fn_34_RemoveStereoChangedCallback; void* v_fn_34_RemoveStereoChangedCallback;
// void CapsWindowSize(CRect& dst); // void CapsWindowSize(CRect& dst);
void* v_fn_35_CapsWindowSize; void* v_fn_35_CapsWindowSize;
// void CapsWindowSize(CRect& dst); // void CapsWindowSizeInScreenCoords(CRect& dst);
void* v_fn_36_CapsWindowSizeInScreenCoords; void* v_fn_36_CapsWindowSizeInScreenCoords;
// void LogCrashInfo(char* buffer, uint32_t size); // void LogCrashInfo(char* buffer, uint32_t buffersize);
void* v_fn_37_LogCrashInfo; void* v_fn_37_LogCrashInfo;
// void ScenePresent(uint32_t mask); // void ScenePresent();
void* v_fn_38_ScenePresent; void* v_fn_38_ScenePresent;
// void SceneClear(uint32_t mask, CImVector color); // void SceneClear(uint32_t mask, CImVector color);
void* v_fn_39_SceneClear; void* v_fn_39_SceneClear;
@ -210,15 +220,15 @@ struct CGxDevice__vtable {
void* v_fn_57_TexCreate; void* v_fn_57_TexCreate;
// void TexDestroy(CGxTex* texId); // void TexDestroy(CGxTex* texId);
void* v_fn_58_TexDestroy; void* v_fn_58_TexDestroy;
// int32_t TexCopy(CGxTex* a1, CGxTex* a2, const C2iVector& a3, const C2iVector& a4, uint32_t a5, uint32_t a6); // int32_t TexCopy(CGxTex* sourceTex, CGxTex* destTex, const C2iVector& pos, const C2iVector& size, uint32_t level, uint32_t plane);
void* v_fn_59_TexCopy; void* v_fn_59_TexCopy;
// bool TexStretch(CGxTex* a1, CGxTex* a2, const CiRect* a3, const CiRect* a4, uint32_t a5, uint32_t a6); // bool TexStretch(CGxTex* sourceTex, CGxTex* destTex, const CiRect* destRect, const CiRect* sourceRect, uint32_t level, uint32_t plane);
void* v_fn_60_TexStretch; void* v_fn_60_TexStretch;
// void TexSetCacheSize(int32_t cacheSize); // void TexSetCacheSize(int32_t cacheSize);
void* v_fn_61_TexSetCacheSize; void* v_fn_61_TexSetCacheSize;
// void QueryCreate(CGxQuery*& query, EGxQueryType queryType); // void QueryCreate(CGxQuery*& query, EGxQueryType type);
void* v_fn_62_QueryCreate; void* v_fn_62_QueryCreate;
// bool QueryDestroy(CGxQuery*& query); // void QueryDestroy(CGxQuery*& query);
void* v_fn_63_QueryDestroy; void* v_fn_63_QueryDestroy;
// bool QueryBegin(CGxQuery* query); // bool QueryBegin(CGxQuery* query);
void* v_fn_64_QueryBegin; void* v_fn_64_QueryBegin;
@ -228,7 +238,7 @@ struct CGxDevice__vtable {
void* v_fn_66_QueryGetParam; void* v_fn_66_QueryGetParam;
// bool QueryGetData(CGxQuery* query, uint32_t* data); // bool QueryGetData(CGxQuery* query, uint32_t* data);
void* v_fn_67_QueryGetData; void* v_fn_67_QueryGetData;
// void ShaderCreate(CGxShader*[] shaders[], EGxShTarget target, const char* a3, const char* a4, int32_t permutations); // void ShaderCreate(CGxShader* shaders[], EGxShTarget target, const char* a3, const char* a4, int32_t permutations);
void* v_fn_68_ShaderCreate; void* v_fn_68_ShaderCreate;
// void ShaderDestroy(CGxShader*& shader); // void ShaderDestroy(CGxShader*& shader);
void* v_fn_69_ShaderDestroy; void* v_fn_69_ShaderDestroy;
@ -265,7 +275,7 @@ struct CGxDevice__vtable {
// this class is 14692 bytes in size // this class is 14692 bytes in size
struct CGxDevice { struct CGxDevice {
// pointer to struct CGxDevice__vtable // pointer to struct CGxDevice__vtable
CGxDevice__vtable* v_vtable; // 0x0 (size: 0x4) CGxDevice__v_table* v_table; // 0x0 (size: 0x4)
TSGrowableArray_CGxPushedRenderState m_pushedStates; // 0x4 (size: 0x14) TSGrowableArray_CGxPushedRenderState m_pushedStates; // 0x4 (size: 0x14)
TSGrowableArray_uint32_t m_stackOffsets; // 0x18 (size: 0x14) TSGrowableArray_uint32_t m_stackOffsets; // 0x18 (size: 0x14)
TSGrowableArray_EGxRenderState m_dirtyStates; // 0x2C (size: 0x14) TSGrowableArray_EGxRenderState m_dirtyStates; // 0x2C (size: 0x14)
@ -299,19 +309,37 @@ struct CGxDevice {
// TSHashTable_CGxShader_HASHKEY_STRI m_shaderList[6]; // TSHashTable_CGxShader_HASHKEY_STRI m_shaderList[6];
int32_t (*m_windowProc)(void* window, uint32_t message, uintptr_t wparam, intptr_t lparam); int32_t (*m_windowProc)(void* window, uint32_t message, uintptr_t wparam, intptr_t lparam);
int32_t m_context; int32_t m_context;
// Set to zero by CGxDevice::ScenePresent
// prevents Draw from working if != 0
int32_t intF5C; int32_t intF5C;
int32_t m_windowVisible; int32_t m_windowVisible;
// set to 1 by ICursorClip
int32_t intF64; int32_t intF64;
int32_t intF68; // Incremented by CGxDevice::ScenePresent
// Invented name, though seems to have the same place as CGxDeviceD3d::m_d3dNeedsReset (Alpha) int32_t m_frameCount; // m_perfCounter?
int32_t m_needsReset; // seems to have the same place as CGxDeviceD3d::m_d3dNeedsReset (Alpha)
int32_t m_viewportDirty; // m_viewportDirty
CBoundingBox m_viewport; CBoundingBox m_viewport;
C44Matrix m_projection; C44Matrix m_projection;
C44Matrix m_projNative; C44Matrix m_projNative;
// CGxMatrixStack m_xforms[GxXforms_Last]; // CGxMatrixStack m_xforms[GxXforms_Last];
CGxMatrixStack m_xforms[11]; CGxMatrixStack m_xforms[11];
CGxMatrixStack m_texGen[8]; CGxMatrixStack m_texGen[8];
uint32_t unk24D0[102]; // used by CGxDevice::ClipPlaneSet
// seems to be a bitmask to note which clip planes are set
uint32_t m_clipPlaneMask;
// used by:
// CGxDevice::ClipPlaneSet
C4Plane m_clipPlane[6]; // m_clipPlanes?
// used by
// CGxDeviceD3d::DeviceSetRenderTarget
// set to 1
// CGxDeviceD3d::IStateSyncScissorRect
int32_t m_scissorRectDirty; // m_scissorRectDirty?
CRect m_scissorRect;
// something to do with lighting?
// uint32_t unk2548[72];
CGxDevice__GxLight m_lights[4];
// uint32_t unk2536[60]; // uint32_t unk2536[60];
TSHashTable_CGxShader_HASHKEY_STRI m_shaderList[6]; TSHashTable_CGxShader_HASHKEY_STRI m_shaderList[6];
uint32_t m_appMasterEnables; uint32_t m_appMasterEnables;
@ -339,7 +367,9 @@ struct CGxDevice {
EmergencyMem m_emergencyMem[2]; // 0x28C4 EmergencyMem m_emergencyMem[2]; // 0x28C4
TSFixedArray_CGxAppRenderState m_appRenderStates; TSFixedArray_CGxAppRenderState m_appRenderStates;
TSFixedArray_CGxStateBom m_hwRenderStates; TSFixedArray_CGxStateBom m_hwRenderStates;
uint32_t unk2904[3]; // 0x2904 (size 0xC) // Accessed by ITexForceRecreation
// uint32_t unk2904[3]; // 0x2904 (size 0xC) // possibly: m_textures? TSList<CGxTex> ?
TSExplicitList_CGxTex m_textures;
CGxDevice__TextureTarget m_textureTarget[2]; CGxDevice__TextureTarget m_textureTarget[2];
TSExplicitList_CGxQuery m_queryList; // 0x2928 TSExplicitList_CGxQuery m_queryList; // 0x2928
int32_t m_scrShotClick; // 0x2934 int32_t m_scrShotClick; // 0x2934

View file

@ -1,14 +1,13 @@
#ifndef GX_EMERGENCY_MEM_H #ifndef GX_EMERGENCY_MEM_H
#define GX_EMERGENCY_MEM_H #define GX_EMERGENCY_MEM_H
#include "storm/array/uint8_t.h"
DECLARE_STRUCT(EmergencyMem); DECLARE_STRUCT(EmergencyMem);
struct EmergencyMem { struct EmergencyMem {
uint32_t unk00; TSGrowableArray_uint8_t m_data;
uint32_t unk04;
uint32_t unk08;
uint32_t unk0C;
uint32_t unk10;
}; };
#endif #endif

View file

@ -31,7 +31,7 @@ struct CGxFormat {
CGxFormat__Format depthFormat; CGxFormat__Format depthFormat;
C2iVector size; C2iVector size;
// set by CVGxTripleBufferCallback // set by CVGxTripleBufferCallback
uint32_t backbuffers; // buffering? buffer? framebufferCount? uint32_t backBufferCount; // buffering? buffer? framebufferCount?
uint32_t sampleCount; uint32_t sampleCount;
float multisampleQuality; // UC, write at 00769693 float multisampleQuality; // UC, write at 00769693
CGxFormat__Format colorFormat; CGxFormat__Format colorFormat;

View file

@ -8,7 +8,7 @@ DECLARE_STRUCT(CGxLight);
struct CGxLight { struct CGxLight {
// int32_t m_enabled : 1; // int32_t m_enabled : 1;
// int32_t m_isOmni : 1; // int32_t m_isOmni : 1;
int32_t m_flags; int32_t f_flags;
C3Vector m_dir; C3Vector m_dir;
C3Vector m_ambColor; C3Vector m_ambColor;
C3Vector m_dirColor; C3Vector m_dirColor;

View file

@ -23,6 +23,7 @@ struct CGxTexFlags {
uint32_t f_flags; uint32_t f_flags;
}; };
STORM_TS_LIST(CGxTex);
struct CGxTex { struct CGxTex {
CiRect m_updateRect; CiRect m_updateRect;
int16_t m_updatePlaneMin; int16_t m_updatePlaneMin;
@ -38,8 +39,7 @@ struct CGxTex {
void* m_userFunc; void* m_userFunc;
void* m_apiSpecificData; void* m_apiSpecificData;
void* m_apiSpecificData2; void* m_apiSpecificData2;
uint32_t unk40; TSLink_CGxTex m_link;
uint32_t unk44;
uint32_t unk48; uint32_t unk48;
uint32_t unk4C; uint32_t unk4C;
uint32_t unk50; uint32_t unk50;

View file

@ -5,9 +5,7 @@
// Types (include all files to expose them in the disassembler) // Types (include all files to expose them in the disassembler)
// external types (c-ified) // external types (c-ified)
#include "external/d3d9/caps.h" #include "external/d3d9/d3d9.h"
#include "external/d3d9/device.h"
#include "external/lua/lua.h" #include "external/lua/lua.h"
#include "async/object.h" #include "async/object.h"
@ -54,6 +52,7 @@
#include "gx/caps.h" #include "gx/caps.h"
#include "gx/device.h" #include "gx/device.h"
#include "gx/format.h" #include "gx/format.h"
#include "gx/light.h"
#include "gx/matrix_stack.h" #include "gx/matrix_stack.h"
#include "gx/monitor_mode.h" #include "gx/monitor_mode.h"
#include "gx/opengl.h" #include "gx/opengl.h"
@ -78,6 +77,8 @@
#include "m2/shared.h" #include "m2/shared.h"
#include "m2/types.h" #include "m2/types.h"
#include "nvapi/nvapi.h"
#include "os/processorfeatures.h" #include "os/processorfeatures.h"
#include "os/timemanager.h" #include "os/timemanager.h"

View file

@ -0,0 +1,184 @@
#ifndef NVAPI_NVAPI_H
#define NVAPI_NVAPI_H
DECLARE_STRUCT(NvAPI_InterfaceTable);
DECLARE_ENUM(NvAPI_Status);
DECLARE_ENUM(NV_StereoRegistryProfileType);
enum NvAPI_Status {
NVAPI_OK = 0, //!< Success. Request is completed.
NVAPI_ERROR = -1, //!< Generic error
NVAPI_LIBRARY_NOT_FOUND = -2, //!< NVAPI support library cannot be loaded.
NVAPI_NO_IMPLEMENTATION = -3, //!< not implemented in current driver installation
NVAPI_API_NOT_INITIALIZED = -4, //!< NvAPI_Initialize has not been called (successfully)
NVAPI_INVALID_ARGUMENT = -5, //!< The argument/parameter value is not valid or NULL.
NVAPI_NVIDIA_DEVICE_NOT_FOUND = -6, //!< No NVIDIA display driver, or NVIDIA GPU driving a display, was found.
NVAPI_END_ENUMERATION = -7, //!< No more items to enumerate
NVAPI_INVALID_HANDLE = -8, //!< Invalid handle
NVAPI_INCOMPATIBLE_STRUCT_VERSION = -9, //!< An argument's structure version is not supported
NVAPI_HANDLE_INVALIDATED = -10, //!< The handle is no longer valid (likely due to GPU or display re-configuration)
NVAPI_OPENGL_CONTEXT_NOT_CURRENT = -11, //!< No NVIDIA OpenGL context is current (but needs to be)
NVAPI_INVALID_POINTER = -14, //!< An invalid pointer, usually NULL, was passed as a parameter
NVAPI_NO_GL_EXPERT = -12, //!< OpenGL Expert is not supported by the current drivers
NVAPI_INSTRUMENTATION_DISABLED = -13, //!< OpenGL Expert is supported, but driver instrumentation is currently disabled
NVAPI_NO_GL_NSIGHT = -15, //!< OpenGL does not support Nsight
NVAPI_EXPECTED_LOGICAL_GPU_HANDLE = -100, //!< Expected a logical GPU handle for one or more parameters
NVAPI_EXPECTED_PHYSICAL_GPU_HANDLE = -101, //!< Expected a physical GPU handle for one or more parameters
NVAPI_EXPECTED_DISPLAY_HANDLE = -102, //!< Expected an NV display handle for one or more parameters
NVAPI_INVALID_COMBINATION = -103, //!< The combination of parameters is not valid.
NVAPI_NOT_SUPPORTED = -104, //!< Requested feature is not supported in the selected GPU
NVAPI_PORTID_NOT_FOUND = -105, //!< No port ID was found for the I2C transaction
NVAPI_EXPECTED_UNATTACHED_DISPLAY_HANDLE = -106, //!< Expected an unattached display handle as one of the input parameters.
NVAPI_INVALID_PERF_LEVEL = -107, //!< Invalid perf level
NVAPI_DEVICE_BUSY = -108, //!< Device is busy; request not fulfilled
NVAPI_NV_PERSIST_FILE_NOT_FOUND = -109, //!< NV persist file is not found
NVAPI_PERSIST_DATA_NOT_FOUND = -110, //!< NV persist data is not found
NVAPI_EXPECTED_TV_DISPLAY = -111, //!< Expected a TV output display
NVAPI_EXPECTED_TV_DISPLAY_ON_DCONNECTOR = -112, //!< Expected a TV output on the D Connector - HDTV_EIAJ4120.
NVAPI_NO_ACTIVE_SLI_TOPOLOGY = -113, //!< SLI is not active on this device.
NVAPI_SLI_RENDERING_MODE_NOTALLOWED = -114, //!< Setup of SLI rendering mode is not possible right now.
NVAPI_EXPECTED_DIGITAL_FLAT_PANEL = -115, //!< Expected a digital flat panel.
NVAPI_ARGUMENT_EXCEED_MAX_SIZE = -116, //!< Argument exceeds the expected size.
NVAPI_DEVICE_SWITCHING_NOT_ALLOWED = -117, //!< Inhibit is ON due to one of the flags in NV_GPU_DISPLAY_CHANGE_INHIBIT or SLI active.
NVAPI_TESTING_CLOCKS_NOT_SUPPORTED = -118, //!< Testing of clocks is not supported.
NVAPI_UNKNOWN_UNDERSCAN_CONFIG = -119, //!< The specified underscan config is from an unknown source (e.g. INF)
NVAPI_TIMEOUT_RECONFIGURING_GPU_TOPO = -120, //!< Timeout while reconfiguring GPUs
NVAPI_DATA_NOT_FOUND = -121, //!< Requested data was not found
NVAPI_EXPECTED_ANALOG_DISPLAY = -122, //!< Expected an analog display
NVAPI_NO_VIDLINK = -123, //!< No SLI video bridge is present
NVAPI_REQUIRES_REBOOT = -124, //!< NVAPI requires a reboot for the settings to take effect
NVAPI_INVALID_HYBRID_MODE = -125, //!< The function is not supported with the current Hybrid mode.
NVAPI_MIXED_TARGET_TYPES = -126, //!< The target types are not all the same
NVAPI_SYSWOW64_NOT_SUPPORTED = -127, //!< The function is not supported from 32-bit on a 64-bit system.
NVAPI_IMPLICIT_SET_GPU_TOPOLOGY_CHANGE_NOT_ALLOWED = -128, //!< There is no implicit GPU topology active. Use NVAPI_SetHybridMode to change topology.
NVAPI_REQUEST_USER_TO_CLOSE_NON_MIGRATABLE_APPS = -129, //!< Prompt the user to close all non-migratable applications.
NVAPI_OUT_OF_MEMORY = -130, //!< Could not allocate sufficient memory to complete the call.
NVAPI_WAS_STILL_DRAWING = -131, //!< The previous operation that is transferring information to or from this surface is incomplete.
NVAPI_FILE_NOT_FOUND = -132, //!< The file was not found.
NVAPI_TOO_MANY_UNIQUE_STATE_OBJECTS = -133, //!< There are too many unique instances of a particular type of state object.
NVAPI_INVALID_CALL = -134, //!< The method call is invalid. For example, a method's parameter may not be a valid pointer.
NVAPI_D3D10_1_LIBRARY_NOT_FOUND = -135, //!< d3d10_1.dll cannot be loaded.
NVAPI_FUNCTION_NOT_FOUND = -136, //!< Couldn't find the function in the loaded DLL.
NVAPI_INVALID_USER_PRIVILEGE = -137, //!< The application will require Administrator privileges to access this API.
//!< The application can be elevated to a higher permission level by selecting "Run as Administrator".
NVAPI_EXPECTED_NON_PRIMARY_DISPLAY_HANDLE = -138, //!< The handle corresponds to GDIPrimary.
NVAPI_EXPECTED_COMPUTE_GPU_HANDLE = -139, //!< Setting Physx GPU requires that the GPU is compute-capable.
NVAPI_STEREO_NOT_INITIALIZED = -140, //!< The Stereo part of NVAPI failed to initialize completely. Check if the stereo driver is installed.
NVAPI_STEREO_REGISTRY_ACCESS_FAILED = -141, //!< Access to stereo-related registry keys or values has failed.
NVAPI_STEREO_REGISTRY_PROFILE_TYPE_NOT_SUPPORTED = -142, //!< The given registry profile type is not supported.
NVAPI_STEREO_REGISTRY_VALUE_NOT_SUPPORTED = -143, //!< The given registry value is not supported.
NVAPI_STEREO_NOT_ENABLED = -144, //!< Stereo is not enabled and the function needed it to execute completely.
NVAPI_STEREO_NOT_TURNED_ON = -145, //!< Stereo is not turned on and the function needed it to execute completely.
NVAPI_STEREO_INVALID_DEVICE_INTERFACE = -146, //!< Invalid device interface.
NVAPI_STEREO_PARAMETER_OUT_OF_RANGE = -147, //!< Separation percentage or JPEG image capture quality is out of [0-100] range.
NVAPI_STEREO_FRUSTUM_ADJUST_MODE_NOT_SUPPORTED = -148, //!< The given frustum adjust mode is not supported.
NVAPI_TOPO_NOT_POSSIBLE = -149, //!< The mosaic topology is not possible given the current state of the hardware.
NVAPI_MODE_CHANGE_FAILED = -150, //!< An attempt to do a display resolution mode change has failed.
NVAPI_D3D11_LIBRARY_NOT_FOUND = -151, //!< d3d11.dll/d3d11_beta.dll cannot be loaded.
NVAPI_INVALID_ADDRESS = -152, //!< Address is outside of valid range.
NVAPI_STRING_TOO_SMALL = -153, //!< The pre-allocated string is too small to hold the result.
NVAPI_MATCHING_DEVICE_NOT_FOUND = -154, //!< The input does not match any of the available devices.
NVAPI_DRIVER_RUNNING = -155, //!< Driver is running.
NVAPI_DRIVER_NOTRUNNING = -156, //!< Driver is not running.
NVAPI_ERROR_DRIVER_RELOAD_REQUIRED = -157, //!< A driver reload is required to apply these settings.
NVAPI_SET_NOT_ALLOWED = -158, //!< Intended setting is not allowed.
NVAPI_ADVANCED_DISPLAY_TOPOLOGY_REQUIRED = -159, //!< Information can't be returned due to "advanced display topology".
NVAPI_SETTING_NOT_FOUND = -160, //!< Setting is not found.
NVAPI_SETTING_SIZE_TOO_LARGE = -161, //!< Setting size is too large.
NVAPI_TOO_MANY_SETTINGS_IN_PROFILE = -162, //!< There are too many settings for a profile.
NVAPI_PROFILE_NOT_FOUND = -163, //!< Profile is not found.
NVAPI_PROFILE_NAME_IN_USE = -164, //!< Profile name is duplicated.
NVAPI_PROFILE_NAME_EMPTY = -165, //!< Profile name is empty.
NVAPI_EXECUTABLE_NOT_FOUND = -166, //!< Application not found in the Profile.
NVAPI_EXECUTABLE_ALREADY_IN_USE = -167, //!< Application already exists in the other profile.
NVAPI_DATATYPE_MISMATCH = -168, //!< Data Type mismatch
NVAPI_PROFILE_REMOVED = -169, //!< The profile passed as parameter has been removed and is no longer valid.
NVAPI_UNREGISTERED_RESOURCE = -170, //!< An unregistered resource was passed as a parameter.
NVAPI_ID_OUT_OF_RANGE = -171, //!< The DisplayId corresponds to a display which is not within the normal outputId range.
NVAPI_DISPLAYCONFIG_VALIDATION_FAILED = -172, //!< Display topology is not valid so the driver cannot do a mode set on this configuration.
NVAPI_DPMST_CHANGED = -173, //!< Display Port Multi-Stream topology has been changed.
NVAPI_INSUFFICIENT_BUFFER = -174, //!< Input buffer is insufficient to hold the contents.
NVAPI_ACCESS_DENIED = -175, //!< No access to the caller.
NVAPI_MOSAIC_NOT_ACTIVE = -176, //!< The requested action cannot be performed without Mosaic being enabled.
NVAPI_SHARE_RESOURCE_RELOCATED = -177, //!< The surface is relocated away from video memory.
NVAPI_REQUEST_USER_TO_DISABLE_DWM = -178, //!< The user should disable DWM before calling NvAPI.
NVAPI_D3D_DEVICE_LOST = -179, //!< D3D device status is D3DERR_DEVICELOST or D3DERR_DEVICENOTRESET - the user has to reset the device.
NVAPI_INVALID_CONFIGURATION = -180, //!< The requested action cannot be performed in the current state.
NVAPI_STEREO_HANDSHAKE_NOT_DONE = -181, //!< Call failed as stereo handshake not completed.
NVAPI_EXECUTABLE_PATH_IS_AMBIGUOUS = -182, //!< The path provided was too short to determine the correct NVDRS_APPLICATION
NVAPI_DEFAULT_STEREO_PROFILE_IS_NOT_DEFINED = -183, //!< Default stereo profile is not currently defined
NVAPI_DEFAULT_STEREO_PROFILE_DOES_NOT_EXIST = -184, //!< Default stereo profile does not exist
NVAPI_CLUSTER_ALREADY_EXISTS = -185, //!< A cluster is already defined with the given configuration.
NVAPI_DPMST_DISPLAY_ID_EXPECTED = -186, //!< The input display id is not that of a multi stream enabled connector or a display device in a multi stream topology
NVAPI_INVALID_DISPLAY_ID = -187, //!< The input display id is not valid or the monitor associated to it does not support the current operation
NVAPI_STREAM_IS_OUT_OF_SYNC = -188, //!< While playing secure audio stream, stream goes out of sync
NVAPI_INCOMPATIBLE_AUDIO_DRIVER = -189, //!< Older audio driver version than required
NVAPI_VALUE_ALREADY_SET = -190, //!< Value already set, setting again not allowed.
NVAPI_TIMEOUT = -191, //!< Requested operation timed out
NVAPI_GPU_WORKSTATION_FEATURE_INCOMPLETE = -192, //!< The requested workstation feature set has incomplete driver internal allocation resources
NVAPI_STEREO_INIT_ACTIVATION_NOT_DONE = -193, //!< Call failed because InitActivation was not called.
NVAPI_SYNC_NOT_ACTIVE = -194, //!< The requested action cannot be performed without Sync being enabled.
NVAPI_SYNC_MASTER_NOT_FOUND = -195, //!< The requested action cannot be performed without Sync Master being enabled.
NVAPI_INVALID_SYNC_TOPOLOGY = -196, //!< Invalid displays passed in the NV_GSYNC_DISPLAY pointer.
NVAPI_ECID_SIGN_ALGO_UNSUPPORTED = -197, //!< The specified signing algorithm is not supported. Either an incorrect value was entered or the current installed driver/hardware does not support the input value.
NVAPI_ECID_KEY_VERIFICATION_FAILED = -198, //!< The encrypted public key verification has failed.
NVAPI_FIRMWARE_OUT_OF_DATE = -199, //!< The device's firmware is out of date.
NVAPI_FIRMWARE_REVISION_NOT_SUPPORTED = -200, //!< The device's firmware is not supported.
NVAPI_LICENSE_CALLER_AUTHENTICATION_FAILED = -201, //!< The caller is not authorized to modify the License.
NVAPI_D3D_DEVICE_NOT_REGISTERED = -202, //!< The user tried to use a deferred context without registering the device first
NVAPI_RESOURCE_NOT_ACQUIRED = -203, //!< Head or SourceId was not reserved for the VR Display before doing the Modeset or the dedicated display.
NVAPI_TIMING_NOT_SUPPORTED = -204, //!< Provided timing is not supported.
NVAPI_HDCP_ENCRYPTION_FAILED = -205, //!< HDCP Encryption Failed for the device. Would be applicable when the device is HDCP Capable.
NVAPI_PCLK_LIMITATION_FAILED = -206, //!< Provided mode is over sink device pclk limitation.
NVAPI_NO_CONNECTOR_FOUND = -207, //!< No connector on GPU found.
NVAPI_HDCP_DISABLED = -208, //!< When a non-HDCP capable HMD is connected, we would inform user by this code.
NVAPI_API_IN_USE = -209, //!< Atleast an API is still being called
NVAPI_NVIDIA_DISPLAY_NOT_FOUND = -210, //!< No display found on Nvidia GPU(s).
NVAPI_PRIV_SEC_VIOLATION = -211, //!< Priv security violation, improper access to a secured register.
NVAPI_INCORRECT_VENDOR = -212, //!< NVAPI cannot be called by this vendor
NVAPI_DISPLAY_IN_USE = -213, //!< DirectMode Display is already in use
NVAPI_UNSUPPORTED_CONFIG_NON_HDCP_HMD = -214, //!< The Config is having Non-NVidia GPU with Non-HDCP HMD connected
NVAPI_MAX_DISPLAY_LIMIT_REACHED = -215, //!< GPU's Max Display Limit has Reached
NVAPI_INVALID_DIRECT_MODE_DISPLAY = -216, //!< DirectMode not Enabled on the Display
NVAPI_GPU_IN_DEBUG_MODE = -217, //!< GPU is in debug mode, OC is NOT allowed.
NVAPI_D3D_CONTEXT_NOT_FOUND = -218, //!< No NvAPI context was found for this D3D object
NVAPI_STEREO_VERSION_MISMATCH = -219, //!< there is version mismatch between stereo driver and dx driver
NVAPI_GPU_NOT_POWERED = -220, //!< GPU is not powered and so the request cannot be completed.
NVAPI_ERROR_DRIVER_RELOAD_IN_PROGRESS = -221, //!< The display driver update in progress.
NVAPI_WAIT_FOR_HW_RESOURCE = -222, //!< Wait for HW resources allocation
NVAPI_REQUIRE_FURTHER_HDCP_ACTION = -223, //!< operation requires further HDCP action
NVAPI_DISPLAY_MUX_TRANSITION_FAILED = -224, //!< Dynamic Mux transition failure
NVAPI_INVALID_DSC_VERSION = -225, //!< Invalid DSC version
NVAPI_INVALID_DSC_SLICECOUNT = -226, //!< Invalid DSC slice count
NVAPI_INVALID_DSC_OUTPUT_BPP = -227, //!< Invalid DSC output BPP
NVAPI_FAILED_TO_LOAD_FROM_DRIVER_STORE = -228, //!< There was an error while loading nvapi.dll from the driver store.
NVAPI_NO_VULKAN = -229, //!< OpenGL does not export Vulkan fake extensions
NVAPI_REQUEST_PENDING = -230, //!< A request for NvTOPPs telemetry CData has already been made and is pending a response.
NVAPI_RESOURCE_IN_USE = -231, //!< Operation cannot be performed because the resource is in use.
NVAPI_INVALID_IMAGE = -232, //!< Device kernel image is invalid
NVAPI_INVALID_PTX = -233, //!< PTX JIT compilation failed
NVAPI_NVLINK_UNCORRECTABLE = -234, //!< Uncorrectable NVLink error was detected during the execution
NVAPI_JIT_COMPILER_NOT_FOUND = -235, //!< PTX JIT compiler library was not found.
NVAPI_INVALID_SOURCE = -236, //!< Device kernel source is invalid.
NVAPI_ILLEGAL_INSTRUCTION = -237, //!< While executing a kernel, the device encountered an illegal instruction.
NVAPI_INVALID_PC = -238, //!< While executing a kernel, the device program counter wrapped its address space
NVAPI_LAUNCH_FAILED = -239, //!< An exception occurred on the device while executing a kernel
NVAPI_NOT_PERMITTED = -240, //!< Attempted operation is not permitted.
NVAPI_CALLBACK_ALREADY_REGISTERED = -241, //!< The callback function has already been registered.
NVAPI_CALLBACK_NOT_FOUND = -242, //!< The callback function is not found or not registered.
NVAPI_INVALID_OUTPUT_WIRE_FORMAT = -243, //!< Invalid Wire Format for the VR HMD
};
enum NV_StereoRegistryProfileType {
NVAPI_STEREO_DEFAULT_REGISTRY_PROFILE, //!< Default registry configuration profile.
NVAPI_STEREO_DX9_REGISTRY_PROFILE, //!< Separate registry configuration profile for a DirectX 9 executable.
NVAPI_STEREO_DX10_REGISTRY_PROFILE //!< Separate registry configuration profile for a DirectX 10 executable.
};
struct NvAPI_InterfaceTable {
uintptr_t func;
uint32_t id;
};
#endif

View file

@ -25,28 +25,4 @@ struct TSGrowableArray_##T { \
uint32_t m_chunk; \ uint32_t m_chunk; \
}; };
// "pointer-to" types hack
#define STORM_TS_BASE_ARRAY_POINTER_TO(T) typedef struct TSBaseArray_pointer_to_##T TSBaseArray_pointer_to_##T; \
struct TSBaseArray_pointer_to_##T { \
uint32_t m_alloc; \
uint32_t m_count; \
T** m_data; \
};
#define STORM_TS_FIXED_ARRAY_POINTER_TO(T) typedef struct TSFixedArray_pointer_to_##T TSFixedArray_pointer_to_##T; \
struct TSFixedArray_pointer_to_##T { \
uint32_t m_alloc; \
uint32_t m_count; \
T** m_data; \
};
#define STORM_TS_GROWABLE_ARRAY_POINTER_TO(T) typedef struct TSGrowableArray_pointer_to_##T TSGrowableArray_pointer_to_##T; \
struct TSGrowableArray_pointer_to_##T { \
uint32_t m_alloc; \
uint32_t m_count; \
T** m_data; \
uint32_t m_chunk; \
};
#endif #endif

View file

@ -5,6 +5,8 @@
#include "storm/array.h" #include "storm/array.h"
STORM_TS_GROWABLE_ARRAY_POINTER_TO(void); typedef void* pointer_to_void;
STORM_TS_GROWABLE_ARRAY(pointer_to_void);
#endif #endif

View file

@ -18,7 +18,8 @@ struct CFrameStrataNode {
int32_t batchDirty; int32_t batchDirty;
TSExplicitList_CRenderBatch renderList; TSExplicitList_CRenderBatch renderList;
}; };
STORM_TS_FIXED_ARRAY_POINTER_TO(CFrameStrataNode); typedef CFrameStrataNode* pointer_to_CFrameStrataNode;
STORM_TS_FIXED_ARRAY(pointer_to_CFrameStrataNode);
struct CFrameStrata { struct CFrameStrata {
int32_t batchDirty; int32_t batchDirty;

View file

@ -38,7 +38,8 @@ struct FRAMEPRIORITY {
CSimpleFrame* frame; CSimpleFrame* frame;
uint32_t priority; uint32_t priority;
}; };
COMMON_SIMPLE_SORTED_ARRAY_POINTER_TO(FRAMEPRIORITY); typedef FRAMEPRIORITY* pointer_to_FRAMEPRIORITY;
COMMON_SIMPLE_SORTED_ARRAY(pointer_to_FRAMEPRIORITY);
struct CSimpleTop { struct CSimpleTop {
CLayoutFrame b_base; CLayoutFrame b_base;

View file

@ -1 +1,2 @@
EmergencyMem__Lock 00685E90 f end=00685EB0 type="void* __thiscall func(EmergencyMem* this, uint32_t a1)" EmergencyMem__Lock 00685E90 f end=00685EB0 type="void* __thiscall func(EmergencyMem* this, uint32_t a1)"
EmergencyMem__Unlock 00682C40 f end=00682C45

View file

@ -20,7 +20,6 @@ GxAdapterMonitorModes 00681210 f end=00681219 type="int32_t __stdcall func(TSGro
GxAdapterDesktopMode 00681220 f type="int32_t __stdcall func(CGxMonitorMode* mode)" GxAdapterDesktopMode 00681220 f type="int32_t __stdcall func(CGxMonitorMode* mode)"
GxDevCreate 00681290 f end=00681301 GxDevCreate 00681290 f end=00681301
GxSceneClear 006813B0 f end=006813CD GxSceneClear 006813B0 f end=006813CD
GxTexUpdate 006813D0 f end=006813EC
GxQueryCreate 00681630 f end=0068165B type="void __stdcall func(CGxQuery** query, EGxQueryType type)" GxQueryCreate 00681630 f end=0068165B type="void __stdcall func(CGxQuery** query, EGxQueryType type)"
GxSetMaxFPS 00681770 f end=0068177D type="void __stdcall func(uint32_t maxFPS)" GxSetMaxFPS 00681770 f end=0068177D type="void __stdcall func(uint32_t maxFPS)"
GxGetMaxFPS 00681780 f end=00681786 GxGetMaxFPS 00681780 f end=00681786
@ -29,8 +28,8 @@ GxGetMaxFPSBk 006817A0 f end=006817A6
GxLogOpen 006817C0 f end=006817C5 type="void __stdcall func()" GxLogOpen 006817C0 f end=006817C5 type="void __stdcall func()"
GxLogClose 006817D0 f end=006817D5 GxLogClose 006817D0 f end=006817D5
GxLog 006817E0 f end=006817F5 type="int __stdcall func(char* format, ...)" GxLog 006817E0 f end=006817F5 type="int __stdcall func(char* format, ...)"
GxTexCreate 00681CB0 f end=00681D87
GxXformSetViewport 00681F60 f end=00682124 type="void __stdcall func(float minX, float maxX, float minY, float maxY, float minZ, float maxZ)" GxXformSetViewport 00681F60 f end=00682124 type="void __stdcall func(float minX, float maxX, float minY, float maxY, float minZ, float maxZ)"
GxScenePresent 00682A00 f end=00682A33 GxScenePresent 00682A00 f end=00682A33
GxDevDestroy 00682B80 f end=00682C35 GxDevDestroy 00682B80 f end=00682C35
CGxMonitorModeSort 00689E80 f type="int32_t __stdcall func(void* a, void* b)" CGxMonitorModeSort 00689E80 f type="int32_t __stdcall func(void* a, void* b)"
GxTexCopy 006814D0 f end=00681524

View file

@ -33,6 +33,14 @@ CGxDevice__CursorLock 00683650 f end=00683657 type="uint32_t* __thiscall func(CG
CGxDevice__CursorSetDepth 00683660 f end=00683670 type="void __thiscall func(CGxDevice* this, float depth)" CGxDevice__CursorSetDepth 00683660 f end=00683670 type="void __thiscall func(CGxDevice* this, float depth)"
CGxDevice__LogOpen 00683670 f end=006836A4 type="void __stdcall func()" ; static void CGxDevice::LogOpen(void) CGxDevice__LogOpen 00683670 f end=006836A4 type="void __stdcall func()" ; static void CGxDevice::LogOpen(void)
CGxDevice__LogClose 006836B0 f end=006836CA CGxDevice__LogClose 006836B0 f end=006836CA
CGxDevice__WindowConstrainTopByAspect 00683D60 f end=00683DB0 type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainBottomByAspect 00683DB0 f end=00683DFE type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainLeftByAspect 00683E00 f end=00683E50 type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainRightByAspect 00683E50 f end=00683E9E type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainLeft 00683EA0 f end=00683ECD type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainRight 00683ED0 f end=00683EFD type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainTop 00683F00 f end=00683F2B type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainBottom 00683F30 f end=00683F5C type="void __stdcall func(CiRect* windowRect)"
CGxDevice__DeviceSetFormat 006840F0 f end=0068416C type="int32_t __thiscall func(CGxDevice* this, CGxFormat* format)" CGxDevice__DeviceSetFormat 006840F0 f end=0068416C type="int32_t __thiscall func(CGxDevice* this, CGxFormat* format)"
CGxDevice__DeviceSetGamma 00684170 f end=00684189 type="void __thiscall func(CGxDevice* this, float gamma)" CGxDevice__DeviceSetGamma 00684170 f end=00684189 type="void __thiscall func(CGxDevice* this, float gamma)"
CGxDevice__DeviceSetGamma 00684190 f end=006841AF type="int32_t __thiscall func(CGxDevice* this, CGxGammaRamp* ramp)" CGxDevice__DeviceSetGamma 00684190 f end=006841AF type="int32_t __thiscall func(CGxDevice* this, CGxGammaRamp* ramp)"
@ -99,3 +107,4 @@ CGxDevice__AdapterMonitorModes 0068A4C0 f end=0068A589 type="void __stdcall func
CGxDevice__NewOpenGl 0068BF20 f end=0068BF44 type="CGxDevice* __stdcall func()" CGxDevice__NewOpenGl 0068BF20 f end=0068BF44 type="CGxDevice* __stdcall func()"
CGxDevice__NewD3d9Ex 0068C220 f end=0068C244 type="CGxDevice* __stdcall func()" CGxDevice__NewD3d9Ex 0068C220 f end=0068C244 type="CGxDevice* __stdcall func()"
CGxDevice__ITexWHDStartEnd 006A5EF0 f end=006A5FDF type="void __thiscall func(CGxDevice* this, CGxTex* texId, uint32_t* width, uint32_t* height, uint32_t* baseMip, uint32_t* mipCount)" CGxDevice__ITexWHDStartEnd 006A5EF0 f end=006A5FDF type="void __thiscall func(CGxDevice* this, CGxTex* texId, uint32_t* width, uint32_t* height, uint32_t* baseMip, uint32_t* mipCount)"
CGxDevice__DeviceCreateStreamBufs 00687900 f end=00687937

View file

@ -1,8 +1,10 @@
CGxDevice__vtable 00A2DDC0 l type="CGxDevice__vtable" CGxDevice__v_table 00A2DDC0 l type="CGxDevice__v_table"
g_theGxDevicePtr 00C5DF88 l type="CGxDevice*" g_theGxDevicePtr 00C5DF88 l type="CGxDevice*"
CGxDevice__s_uiVertexShader 00C5DFDC l CGxDevice__s_uiVertexShader 00C5DFD8 l
CGxDevice__s_shadowConstants 00C5DFE0 l CGxDevice__s_shadowConstants 00C5DFE0 l
CGxDevice__m_logBytes 00C5FFF4 l type="uint32_t" CGxDevice__m_logBytes 00C5FFF4 l type="uint32_t"
CGxDevice__m_log 00C5FFF8 l type="HSLOG" CGxDevice__m_log 00C5FFF8 l type="HSLOG"
CGxDevice__s_uiPixelShader 00C5FFFC l CGxDevice__s_uiPixelShader 00C5FFFC l
CGxDevice__s_clientAdjust 00C60300 l type="C2iVector" CGxDevice__s_clientAdjust 00C60300 l type="C2iVector"
CGxDevice__kWinMinSize 00AD8BC0 l type="C2iVector"
CGxDevice__kWinAspect 00C5FFF0 l type="float"

View file

@ -32,11 +32,13 @@ CGxDeviceD3d__scalar_deleting_destructor 0068FE80 f end=0068FEC8 type="void __th
CGxDeviceD3d__DeviceReadPixels 0068FED0 f end=00690144 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_CImVector* pixels)" CGxDeviceD3d__DeviceReadPixels 0068FED0 f end=00690144 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_CImVector* pixels)"
CGxDeviceD3d__IReleaseD3dResources 00690150 f end=00690223 type="void __thiscall func(CGxDeviceD3d* this, int32_t a2)" CGxDeviceD3d__IReleaseD3dResources 00690150 f end=00690223 type="void __thiscall func(CGxDeviceD3d* this, int32_t a2)"
CGxDeviceD3d__DeviceWM 00690230 f end=0069038D type="void __thiscall func(CGxDeviceD3d* this, EGxWM wm, int32_t param1, int32_t param2)" CGxDeviceD3d__DeviceWM 00690230 f end=0069038D type="void __thiscall func(CGxDeviceD3d* this, EGxWM wm, int32_t param1, int32_t param2)"
CGxDeviceD3d__IDestroyD3d 006903B0 f end=006904C4
CGxDeviceD3d__DeviceSetFormat 006904D0 f end=006905E8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxFormat* format)" CGxDeviceD3d__DeviceSetFormat 006904D0 f end=006905E8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxFormat* format)"
CGxDeviceD3d__DeviceDestroy 006905F0 f end=00690679 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__DeviceDestroy 006905F0 f end=00690679 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ICreateD3d 00690680 f end=00690742 type="int32_t __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__ICreateD3d 00690680 f end=00690742 type="int32_t __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__DeviceCreate 00690750 f end=00690821 type="void __thiscall func(CGxDeviceD3d* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)" CGxDeviceD3d__DeviceCreate 00690750 f end=00690821 type="void __thiscall func(CGxDeviceD3d* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)"
CGxDeviceD3d__DeviceCreate 00690830 f end=00690897 type="void __thiscall func(CGxDeviceD3d* this, uintptr_t hwnd, CGxFormat* format)" CGxDeviceD3d__DeviceCreate 00690830 f end=00690897 type="void __thiscall func(CGxDeviceD3d* this, uintptr_t hwnd, CGxFormat* format)"
CGxDeviceD3d__Sub69FAA0 0069FAA0 f end=0069FAFE type="int32_t __thiscall func(CGxDeviceD3d* this, D3DFORMAT format)"
CGxDeviceD3d__ICreateD3dVB 0069FB00 f end=0069FB68 type="LPDIRECT3DVERTEXBUFFER9 __thiscall func(EGxPoolUsage usage, uint32_t size)" CGxDeviceD3d__ICreateD3dVB 0069FB00 f end=0069FB68 type="LPDIRECT3DVERTEXBUFFER9 __thiscall func(EGxPoolUsage usage, uint32_t size)"
CGxDeviceD3d__CreatePoolAPI 0069FB70 f end=0069FBB8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxPool* pool)" CGxDeviceD3d__CreatePoolAPI 0069FB70 f end=0069FBB8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxPool* pool)"
CGxDeviceD3d__ICursorClip 0069FE10 f end=0069FE57 type="void __thiscall func(CGxDeviceD3d* this, int32_t a1)" ; UC (invented name) CGxDeviceD3d__ICursorClip 0069FE10 f end=0069FE57 type="void __thiscall func(CGxDeviceD3d* this, int32_t a1)" ; UC (invented name)
@ -53,6 +55,7 @@ CGxDeviceD3d__QueryEnd 006A0240 f end=006A0272 type="bool __thiscall func(CGxDev
CGxDeviceD3d__QueryGetData 006A0310 f end=006A035F type="bool __thiscall func(CGxDeviceD3d* this, CGxQuery* query, uint32_t* data)" CGxDeviceD3d__QueryGetData 006A0310 f end=006A035F type="bool __thiscall func(CGxDeviceD3d* this, CGxQuery* query, uint32_t* data)"
CGxDeviceD3d__WindowProcD3d 006A0360 f end=006A0834 type="LRESULT __stdcall func(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)" CGxDeviceD3d__WindowProcD3d 006A0360 f end=006A0834 type="LRESULT __stdcall func(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)"
CGxDeviceD3d__DeviceReadDepths 006A1950 f end=006A19C4 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_float* depths)" CGxDeviceD3d__DeviceReadDepths 006A1950 f end=006A19C4 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_float* depths)"
CGxDeviceD3d__ITexForceRecreation 006A2AA0 f end=006A2BA3
CGxDeviceD3d__TexDestroy 006A2BB0 f end=006A2BF1 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)" CGxDeviceD3d__TexDestroy 006A2BB0 f end=006A2BF1 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)"
CGxDeviceD3d__ITexCreate 006A2C00 f end=006A2D7E type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)" CGxDeviceD3d__ITexCreate 006A2C00 f end=006A2D7E type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)"
CGxDeviceD3d__ITexUpload 006A2D80 f end=006A3062 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)" CGxDeviceD3d__ITexUpload 006A2D80 f end=006A3062 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)"
@ -63,17 +66,22 @@ CGxDeviceD3d__ISceneBegin 006A3350 f end=006A3417 type="void __thiscall func(CGx
CGxDeviceD3d__ISceneEnd 006A3420 f end=006A3449 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__ISceneEnd 006A3420 f end=006A3449 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ScenePresent 006A3450 f end=006A3611 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask)" CGxDeviceD3d__ScenePresent 006A3450 f end=006A3611 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask)"
CGxDeviceD3d__Draw 006A3620 f end=006A3716 type="void __thiscall func(CGxDeviceD3d* this, CGxBatch* batch)" CGxDeviceD3d__Draw 006A3620 f end=006A3716 type="void __thiscall func(CGxDeviceD3d* this, CGxBatch* batch)"
CGxDeviceD3d__GxVertexDecl__Compare 006A3720 f end=006A3807 type="bool __thiscall func(CGxDeviceD3d__GxVertexDecl* this, D3DVERTEXELEMENT9* elements, uint32_t count)"
CGxDeviceD3d__IStateSyncEnables 006A3810 f end=006A386E type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncEnables 006A3810 f end=006A386E type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncClipPlanes 006A3870 f end=006A38C3 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncScissorRect 006A38D0 f end=006A39D2 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ISetVertexBuffer 006A39E0 f end=006A3A59 type="void __thiscall func(CGxDeviceD3d* this, uint32_t stream, LPDIRECT3DVERTEXBUFFER9 buffer, uint32_t offset, uint32_t stride)" CGxDeviceD3d__ISetVertexBuffer 006A39E0 f end=006A3A59 type="void __thiscall func(CGxDeviceD3d* this, uint32_t stream, LPDIRECT3DVERTEXBUFFER9 buffer, uint32_t offset, uint32_t stride)"
CGxDeviceD3d__IStateSetD3DDefaults 006A3A60 f end=006A3C34 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSetD3DDefaults 006A3A60 f end=006A3C34 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__DsSet 006A3C40 f end=006A40F2 type="void __thiscall func(CGxDeviceD3d* this, CGxDeviceD3d__EDeviceState state, uint32_t val)" CGxDeviceD3d__DsSet 006A3C40 f end=006A40F2 type="void __thiscall func(CGxDeviceD3d* this, CGxDeviceD3d__EDeviceState state, uint32_t val)"
CGxDeviceD3d__ISetColorOp 006A4190 f end=006A41EC type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)" CGxDeviceD3d__ISetColorOp 006A4190 f end=006A41EC type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)"
CGxDeviceD3d__ISetAlphaOp 006A41F0 f end=006A424C type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)" CGxDeviceD3d__ISetAlphaOp 006A41F0 f end=006A424C type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)"
CGxDeviceD3d__IStateSyncLights 006A43D0 f end=006A46F9 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncMaterial 006A4700 f end=006A4846 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncMaterial 006A4700 f end=006A4846 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncXforms 006A4850 f end=006A48FE type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncXforms 006A4850 f end=006A48FE type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ISetTexture 006A4900 f end=006A4AB3 type="void __thiscall func(CGxDeviceD3d* this, uint32_t tmu, CGxTex* texId)" CGxDeviceD3d__ISetTexture 006A4900 f end=006A4AB3 type="void __thiscall func(CGxDeviceD3d* this, uint32_t tmu, CGxTex* texId)"
CGxDeviceD3d__IRsSendToHw 006A4C30 f end=006A5499 type="void __thiscall func(CGxDeviceD3d* this, EGxRenderState rs)" CGxDeviceD3d__IRsSendToHw 006A4C30 f end=006A5499 type="void __thiscall func(CGxDeviceD3d* this, EGxRenderState rs)"
CGxDeviceD3d__ICreateD3dVertexDecl 006A5540 f end=006A5677 type="LPDIRECT3DVERTEXDECLARATION9 __thiscall func(CGxDeviceD3d* this, D3DVERTEXELEMENT9* elements, uint32_t count)" CGxDeviceD3d__ICreateD3dVertexDecl 006A5540 f end=006A5677 type="LPDIRECT3DVERTEXDECLARATION9 __thiscall func(CGxDeviceD3d* this, D3DVERTEXELEMENT9* elements, uint32_t count)"
CGxDeviceD3d__IReleaseD3dVertexDecl 006A5680 f end=006A56F2 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncVertexPtrs 006A5700 f end=006A5934 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncVertexPtrs 006A5700 f end=006A5934 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSync 006A5940 f end=006A59f5 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSync 006A5940 f end=006A59f5 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__CapsWindowSize 006A5A00 f end=006A5A25 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)" CGxDeviceD3d__CapsWindowSize 006A5A00 f end=006A5A25 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)"
@ -82,7 +90,9 @@ CGxDeviceD3d__IBindPixelShader 006A5C70 f end=006A5D48 type="void __thiscall fun
CGxDeviceD3d__IShaderReload 006A5D50 f end=006A5E07 type="void __thiscall func(CGxDeviceD3d* this, CGxShader* shader, const char* a2, const char* a3)" CGxDeviceD3d__IShaderReload 006A5D50 f end=006A5E07 type="void __thiscall func(CGxDeviceD3d* this, CGxShader* shader, const char* a2, const char* a3)"
CGxDeviceD3d__IShaderCreate 006A5E10 f end=006A5E36 type="void __thiscall func(CGxDeviceD3d* this, CGxShader* shader)" CGxDeviceD3d__IShaderCreate 006A5E10 f end=006A5E36 type="void __thiscall func(CGxDeviceD3d* this, CGxShader* shader)"
CGxDeviceD3d__SceneClear 006A74B0 f end=006A7538 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask, CImVector color)" CGxDeviceD3d__SceneClear 006A74B0 f end=006A7538 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask, CImVector color)"
CGxDeviceD3d__Sub6A7940 006A7940 f end=006A79F1 type="void __thiscall func(CGxDeviceD3d* this, uint32_t width, uint32_t height)"
CGxDeviceD3d__CapsWindowSizeInScreenCoords 006A9920 f end=006A99D4 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)" CGxDeviceD3d__CapsWindowSizeInScreenCoords 006A9920 f end=006A99D4 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)"
CGxDeviceD3d__IXformSetViewport 006A99E0 f end=006A9B35 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__XformSetProjection 006A9B40 f end=006A9D88 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)" CGxDeviceD3d__XformSetProjection 006A9B40 f end=006A9D88 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)"
CGxDeviceD3d__XformSetView 006A9E00 f end=006A9E09 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)" CGxDeviceD3d__XformSetView 006A9E00 f end=006A9E09 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)"
CGxDeviceD3d__IShaderConstantsFlush 006A9FE0 f end=006AA06D type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IShaderConstantsFlush 006A9FE0 f end=006AA06D type="void __thiscall func(CGxDeviceD3d* this)"

View file

@ -1,2 +1,19 @@
CGxDeviceD3d__vtable 00A2E718 l CGxDeviceD3d__s_GxFormatToD3dFormat 00A2E4A8 l type="D3DFORMAT[8]"
CGxDeviceD3d__s_gxAttribToD3dAttribSize 00A2E4C8 l type="uint32_t[7]"
CGxDeviceD3d__v_table 00A2E718 l type="CGxDevice__v_table"
CGxDeviceD3d__s_tolerableTexFmtMapping 00A2F7E8 l type="EGxTexFormat[13]"
CGxDeviceD3d__s_GxTexFmtToD3dFmt 00A2F81C l type="D3DFORMAT[13]"
CGxDeviceD3d__s_faceTypes 00A2F850 l type="D3DCUBEMAP_FACES[6]"
CGxDeviceD3d__s_primitiveConversion 00A2F8D4 l type="D3DPRIMITIVETYPE[6]"
CGxDeviceD3d__s_gxAttribToD3dAttribUsage 00A2F8EC l type="D3DDECLUSAGE[14]"
CGxDeviceD3d__s_gxAttribToD3dAttribUsageIndex 00A2F924 l type="uint32_t[14]"
CGxDeviceD3d__s_srcBlend 00A2F964 l type="D3DBLEND[12]"
CGxDeviceD3d__s_dstBlend 00A2F994 l type="D3DBLEND[12]"
CGxDeviceD3d__s_wrapModes 00A2F9C4 l type="D3DTEXTUREADDRESS[2]"
CGxDeviceD3d__s_cmpFunc 00A2FA14 l type="D3DCMPFUNC[4]"
CGxDeviceD3d__s_cullMode 00A2FA24 l type="D3DCULL[3]"
CGxDeviceD3d__s_GxTexFormatToUse 00AD8EF0 l type="EGxTexFormat[13]"
CGxDeviceD3d__s_gxAttribToD3dAttribType 00AD8F24 l type="D3DDECLTYPE[7]"
CGxDeviceD3d__s_filterModes 00AD8F40 l type="D3DTEXTUREFILTERTYPE[6][3]"
isIdent 00C60760 l isIdent 00C60760 l
d3dLight 00C606F8 l type="D3DLIGHT9"

View file

@ -1 +1 @@
CGxDeviceOpenGl__vtable 00A2E198 l CGxDeviceOpenGl__v_table 00A2E198 l type="CGxDevice__v_table"

View file

@ -0,0 +1 @@
CGxLight__CGxLight 00683FB0 f end=0068406C type="CGxLight* __thiscall func(CGxLight* this)"

View file

@ -1 +1,5 @@
CGxTexFlags__CGxTexFlags 00681BE0 f end=00681CAB ; UC CGxTexFlags__CGxTexFlags 00681BE0 f end=00681CAB ; UC
GxTexDestroy 00681470 f
GxTexUpdate 00681F20 f end=00681F59
GxTexCreate 00681CB0 f end=00681D87
GxTexUpdate 006813D0 f end=006813EC

View file

@ -2673,6 +2673,8 @@ GxAdapterDesktopMode 00681220 f type="int32_t __stdcall func(CGxMonitorMode* mod
GxDevCreate 00681290 f end=00681301 GxDevCreate 00681290 f end=00681301
GxSceneClear 006813B0 f end=006813CD GxSceneClear 006813B0 f end=006813CD
GxTexUpdate 006813D0 f end=006813EC GxTexUpdate 006813D0 f end=006813EC
GxTexDestroy 00681470 f
GxTexCopy 006814D0 f end=00681524
GxQueryCreate 00681630 f end=0068165B type="void __stdcall func(CGxQuery** query, EGxQueryType type)" GxQueryCreate 00681630 f end=0068165B type="void __stdcall func(CGxQuery** query, EGxQueryType type)"
GxSetMaxFPS 00681770 f end=0068177D type="void __stdcall func(uint32_t maxFPS)" GxSetMaxFPS 00681770 f end=0068177D type="void __stdcall func(uint32_t maxFPS)"
GxGetMaxFPS 00681780 f end=00681786 GxGetMaxFPS 00681780 f end=00681786
@ -2687,6 +2689,7 @@ GxPrimIndexPtr 00681AB0 f end=00681AFB type="void __stdcall func(uint32_t indexC
GxPrimVertexPtr 00681B00 f end=00681B4B type="void __stdcall func(CGxBuf* buf, EGxVertexBufferFormat format)" GxPrimVertexPtr 00681B00 f end=00681B4B type="void __stdcall func(CGxBuf* buf, EGxVertexBufferFormat format)"
CGxTexFlags__CGxTexFlags 00681BE0 f end=00681CAB ; UC CGxTexFlags__CGxTexFlags 00681BE0 f end=00681CAB ; UC
GxTexCreate 00681CB0 f end=00681D87 GxTexCreate 00681CB0 f end=00681D87
GxTexUpdate 00681F20 f end=00681F59
GxXformSetViewport 00681F60 f end=00682124 type="void __stdcall func(float minX, float maxX, float minY, float maxY, float minZ, float maxZ)" GxXformSetViewport 00681F60 f end=00682124 type="void __stdcall func(float minX, float maxX, float minY, float maxY, float minZ, float maxZ)"
GxDrawLockedElements 00682340 f end=0068239E type="void __stdcall func(EGxPrim primType, uint32_t, uint16_t*)" GxDrawLockedElements 00682340 f end=0068239E type="void __stdcall func(EGxPrim primType, uint32_t, uint16_t*)"
GxPrimLockIndexPtr 006823A0 f end=006823F8 type="void __stdcall func(EGxPrim primType, uint32_t indexCount, uint16_t* indices)" GxPrimLockIndexPtr 006823A0 f end=006823F8 type="void __stdcall func(EGxPrim primType, uint32_t indexCount, uint16_t* indices)"
@ -2694,6 +2697,7 @@ GxPrimVertexPtr 00682400 f end=00682781 type="void __stdcall func(uint32_t verte
GxPrimLockVertexPtrs 006828C0 f end=006828FE type="void __stdcall func(uint32_t vertexCount, C3Vector* pos, uint32_t posStride, C3Vector* normal, uint32_t normalStride, CImVector* color, uint32_t colorStride, uint8_t* bone, uint32_t boneStride, C2Vector* tex0, uint32_t tex0Stride, C2Vector* tex1, uint32_t tex1Stride)" GxPrimLockVertexPtrs 006828C0 f end=006828FE type="void __stdcall func(uint32_t vertexCount, C3Vector* pos, uint32_t posStride, C3Vector* normal, uint32_t normalStride, CImVector* color, uint32_t colorStride, uint8_t* bone, uint32_t boneStride, C2Vector* tex0, uint32_t tex0Stride, C2Vector* tex1, uint32_t tex1Stride)"
GxScenePresent 00682A00 f end=00682A33 GxScenePresent 00682A00 f end=00682A33
GxDevDestroy 00682B80 f end=00682C35 GxDevDestroy 00682B80 f end=00682C35
EmergencyMem__Unlock 00682C40 f end=00682C45
CGxDevice__DeviceCreate 00682CB0 f end=00682CCB type="void __thiscall func(CGxDevice* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)" CGxDevice__DeviceCreate 00682CB0 f end=00682CCB type="void __thiscall func(CGxDevice* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)"
CGxDevice__DeviceCreate 00682CD0 f end=00682CF0 type="void __thiscall func(CGxDevice* this, uintptr_t hwnd, CGxFormat* format)" CGxDevice__DeviceCreate 00682CD0 f end=00682CF0 type="void __thiscall func(CGxDevice* this, uintptr_t hwnd, CGxFormat* format)"
CGxDevice__DeviceDestroy 00682CF0 f end=00682CFB type="void __thiscall func(CGxDevice* this)" CGxDevice__DeviceDestroy 00682CF0 f end=00682CFB type="void __thiscall func(CGxDevice* this)"
@ -2726,6 +2730,15 @@ CGxDevice__CursorLock 00683650 f end=00683657 type="uint32_t* __thiscall func(CG
CGxDevice__CursorSetDepth 00683660 f end=00683670 type="void __thiscall func(CGxDevice* this, float depth)" CGxDevice__CursorSetDepth 00683660 f end=00683670 type="void __thiscall func(CGxDevice* this, float depth)"
CGxDevice__LogOpen 00683670 f end=006836A4 type="void __stdcall func()" ; static void CGxDevice::LogOpen(void) CGxDevice__LogOpen 00683670 f end=006836A4 type="void __stdcall func()" ; static void CGxDevice::LogOpen(void)
CGxDevice__LogClose 006836B0 f end=006836CA CGxDevice__LogClose 006836B0 f end=006836CA
CGxDevice__WindowConstrainTopByAspect 00683D60 f end=00683DB0 type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainBottomByAspect 00683DB0 f end=00683DFE type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainLeftByAspect 00683E00 f end=00683E50 type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainRightByAspect 00683E50 f end=00683E9E type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainLeft 00683EA0 f end=00683ECD type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainRight 00683ED0 f end=00683EFD type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainTop 00683F00 f end=00683F2B type="void __stdcall func(CiRect* windowRect)"
CGxDevice__WindowConstrainBottom 00683F30 f end=00683F5C type="void __stdcall func(CiRect* windowRect)"
CGxLight__CGxLight 00683FB0 f end=0068406C type="CGxLight* __thiscall func(CGxLight* this)"
CGxDevice__DeviceSetFormat 006840F0 f end=0068416C type="int32_t __thiscall func(CGxDevice* this, CGxFormat* format)" CGxDevice__DeviceSetFormat 006840F0 f end=0068416C type="int32_t __thiscall func(CGxDevice* this, CGxFormat* format)"
CGxDevice__DeviceSetGamma 00684170 f end=00684189 type="void __thiscall func(CGxDevice* this, float gamma)" CGxDevice__DeviceSetGamma 00684170 f end=00684189 type="void __thiscall func(CGxDevice* this, float gamma)"
CGxDevice__DeviceSetGamma 00684190 f end=006841AF type="int32_t __thiscall func(CGxDevice* this, CGxGammaRamp* ramp)" CGxDevice__DeviceSetGamma 00684190 f end=006841AF type="int32_t __thiscall func(CGxDevice* this, CGxGammaRamp* ramp)"
@ -2772,6 +2785,7 @@ CGxDevice__BufCreate 00687660 f end=006876C9 type="CGxBuf* __thiscall func(CGxDe
CGxDevice__PoolCreate 006876D0 f end=0068773F type="CGxPool* __thiscall func(CGxDevice* this, EGxPoolTarget target, EGxPoolUsage usage, uint32_t size, EGxPoolHintBits hint, char* name)" CGxDevice__PoolCreate 006876D0 f end=0068773F type="CGxPool* __thiscall func(CGxDevice* this, EGxPoolTarget target, EGxPoolUsage usage, uint32_t size, EGxPoolHintBits hint, char* name)"
CGxDevice__QueryCreate 006877C0 f end=00687811 type="void __thiscall func(CGxDevice* this, CGxQuery** query, EGxQueryType queryType)" CGxDevice__QueryCreate 006877C0 f end=00687811 type="void __thiscall func(CGxDevice* this, CGxQuery** query, EGxQueryType queryType)"
CGxDevice__ShaderDestroy 00687820 f end=00687862 type="void __thiscall func(CGxDevice* this, CGxShader** shader)" CGxDevice__ShaderDestroy 00687820 f end=00687862 type="void __thiscall func(CGxDevice* this, CGxShader** shader)"
CGxDevice__DeviceCreateStreamBufs 00687900 f end=00687937
CGxDevice__DeviceCreatePools 00687940 f end=00687980 CGxDevice__DeviceCreatePools 00687940 f end=00687980
CGxDevice__TexDestroy 00687980 f end=006879E1 type="void __thiscall func(CGxDevice* this, CGxTex* texId)" CGxDevice__TexDestroy 00687980 f end=006879E1 type="void __thiscall func(CGxDevice* this, CGxTex* texId)"
CGxDevice__QueryDestroy 006879F0 f end=00687A8E type="void __thiscall func(CGxDevice* this, CGxQuery** query)" CGxDevice__QueryDestroy 006879F0 f end=00687A8E type="void __thiscall func(CGxDevice* this, CGxQuery** query)"
@ -2831,11 +2845,13 @@ CGxDeviceD3d__scalar_deleting_destructor 0068FE80 f end=0068FEC8 type="void __th
CGxDeviceD3d__DeviceReadPixels 0068FED0 f end=00690144 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_CImVector* pixels)" CGxDeviceD3d__DeviceReadPixels 0068FED0 f end=00690144 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_CImVector* pixels)"
CGxDeviceD3d__IReleaseD3dResources 00690150 f end=00690223 type="void __thiscall func(CGxDeviceD3d* this, int32_t a2)" CGxDeviceD3d__IReleaseD3dResources 00690150 f end=00690223 type="void __thiscall func(CGxDeviceD3d* this, int32_t a2)"
CGxDeviceD3d__DeviceWM 00690230 f end=0069038D type="void __thiscall func(CGxDeviceD3d* this, EGxWM wm, int32_t param1, int32_t param2)" CGxDeviceD3d__DeviceWM 00690230 f end=0069038D type="void __thiscall func(CGxDeviceD3d* this, EGxWM wm, int32_t param1, int32_t param2)"
CGxDeviceD3d__IDestroyD3d 006903B0 f end=006904C4
CGxDeviceD3d__DeviceSetFormat 006904D0 f end=006905E8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxFormat* format)" CGxDeviceD3d__DeviceSetFormat 006904D0 f end=006905E8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxFormat* format)"
CGxDeviceD3d__DeviceDestroy 006905F0 f end=00690679 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__DeviceDestroy 006905F0 f end=00690679 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ICreateD3d 00690680 f end=00690742 type="int32_t __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__ICreateD3d 00690680 f end=00690742 type="int32_t __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__DeviceCreate 00690750 f end=00690821 type="void __thiscall func(CGxDeviceD3d* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)" CGxDeviceD3d__DeviceCreate 00690750 f end=00690821 type="void __thiscall func(CGxDeviceD3d* this, int32_t (*windowProc)(void*, uint32_t, uintptr_t, intptr_t), CGxFormat* format)"
CGxDeviceD3d__DeviceCreate 00690830 f end=00690897 type="void __thiscall func(CGxDeviceD3d* this, uintptr_t hwnd, CGxFormat* format)" CGxDeviceD3d__DeviceCreate 00690830 f end=00690897 type="void __thiscall func(CGxDeviceD3d* this, uintptr_t hwnd, CGxFormat* format)"
CGxDeviceD3d__Sub69FAA0 0069FAA0 f end=0069FAFE type="int32_t __thiscall func(CGxDeviceD3d* this, D3DFORMAT format)"
CGxDeviceD3d__ICreateD3dVB 0069FB00 f end=0069FB68 type="LPDIRECT3DVERTEXBUFFER9 __thiscall func(EGxPoolUsage usage, uint32_t size)" CGxDeviceD3d__ICreateD3dVB 0069FB00 f end=0069FB68 type="LPDIRECT3DVERTEXBUFFER9 __thiscall func(EGxPoolUsage usage, uint32_t size)"
CGxDeviceD3d__CreatePoolAPI 0069FB70 f end=0069FBB8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxPool* pool)" CGxDeviceD3d__CreatePoolAPI 0069FB70 f end=0069FBB8 type="int32_t __thiscall func(CGxDeviceD3d* this, CGxPool* pool)"
CGxDeviceD3d__ICursorClip 0069FE10 f end=0069FE57 type="void __thiscall func(CGxDeviceD3d* this, int32_t a1)" ; UC (invented name) CGxDeviceD3d__ICursorClip 0069FE10 f end=0069FE57 type="void __thiscall func(CGxDeviceD3d* this, int32_t a1)" ; UC (invented name)
@ -2853,6 +2869,7 @@ CGxDeviceD3d__QueryGetData 006A0310 f end=006A035F type="bool __thiscall func(CG
CGxDeviceD3d__WindowProcD3d 006A0360 f end=006A0834 type="LRESULT __stdcall func(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)" CGxDeviceD3d__WindowProcD3d 006A0360 f end=006A0834 type="LRESULT __stdcall func(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)"
CGxDeviceD3d__DeviceReadDepths 006A1950 f end=006A19C4 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_float* depths)" CGxDeviceD3d__DeviceReadDepths 006A1950 f end=006A19C4 type="void __thiscall func(CGxDeviceD3d* this, CiRect* rect, TSGrowableArray_float* depths)"
CGxDeviceD3d9Ex__CGxDeviceD3d9Ex 006A1A90 f end=006A1C24 CGxDeviceD3d9Ex__CGxDeviceD3d9Ex 006A1A90 f end=006A1C24
CGxDeviceD3d__ITexForceRecreation 006A2AA0 f end=006A2BA3
CGxDeviceD3d__TexDestroy 006A2BB0 f end=006A2BF1 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)" CGxDeviceD3d__TexDestroy 006A2BB0 f end=006A2BF1 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)"
CGxDeviceD3d__ITexCreate 006A2C00 f end=006A2D7E type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)" CGxDeviceD3d__ITexCreate 006A2C00 f end=006A2D7E type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)"
CGxDeviceD3d__ITexUpload 006A2D80 f end=006A3062 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)" CGxDeviceD3d__ITexUpload 006A2D80 f end=006A3062 type="void __thiscall func(CGxDeviceD3d* this, CGxTex* texId)"
@ -2863,17 +2880,22 @@ CGxDeviceD3d__ISceneBegin 006A3350 f end=006A3417 type="void __thiscall func(CGx
CGxDeviceD3d__ISceneEnd 006A3420 f end=006A3449 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__ISceneEnd 006A3420 f end=006A3449 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ScenePresent 006A3450 f end=006A3611 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask)" CGxDeviceD3d__ScenePresent 006A3450 f end=006A3611 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask)"
CGxDeviceD3d__Draw 006A3620 f end=006A3716 type="void __thiscall func(CGxDeviceD3d* this, CGxBatch* batch)" CGxDeviceD3d__Draw 006A3620 f end=006A3716 type="void __thiscall func(CGxDeviceD3d* this, CGxBatch* batch)"
CGxDeviceD3d__GxVertexDecl__Compare 006A3720 f end=006A3807 type="bool __thiscall func(CGxDeviceD3d__GxVertexDecl* this, D3DVERTEXELEMENT9* elements, uint32_t count)"
CGxDeviceD3d__IStateSyncEnables 006A3810 f end=006A386E type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncEnables 006A3810 f end=006A386E type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncClipPlanes 006A3870 f end=006A38C3 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncScissorRect 006A38D0 f end=006A39D2 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ISetVertexBuffer 006A39E0 f end=006A3A59 type="void __thiscall func(CGxDeviceD3d* this, uint32_t stream, LPDIRECT3DVERTEXBUFFER9 buffer, uint32_t offset, uint32_t stride)" CGxDeviceD3d__ISetVertexBuffer 006A39E0 f end=006A3A59 type="void __thiscall func(CGxDeviceD3d* this, uint32_t stream, LPDIRECT3DVERTEXBUFFER9 buffer, uint32_t offset, uint32_t stride)"
CGxDeviceD3d__IStateSetD3DDefaults 006A3A60 f end=006A3C34 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSetD3DDefaults 006A3A60 f end=006A3C34 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__DsSet 006A3C40 f end=006A40F2 type="void __thiscall func(CGxDeviceD3d* this, CGxDeviceD3d__EDeviceState state, uint32_t val)" CGxDeviceD3d__DsSet 006A3C40 f end=006A40F2 type="void __thiscall func(CGxDeviceD3d* this, CGxDeviceD3d__EDeviceState state, uint32_t val)"
CGxDeviceD3d__ISetColorOp 006A4190 f end=006A41EC type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)" CGxDeviceD3d__ISetColorOp 006A4190 f end=006A41EC type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)"
CGxDeviceD3d__ISetAlphaOp 006A41F0 f end=006A424C type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)" CGxDeviceD3d__ISetAlphaOp 006A41F0 f end=006A424C type="void __thiscall func(CGxDeviceD3d* this, uint32_t a1, uint32_t val)"
CGxDeviceD3d__IStateSyncLights 006A43D0 f end=006A46F9 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncMaterial 006A4700 f end=006A4846 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncMaterial 006A4700 f end=006A4846 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncXforms 006A4850 f end=006A48FE type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncXforms 006A4850 f end=006A48FE type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__ISetTexture 006A4900 f end=006A4AB3 type="void __thiscall func(CGxDeviceD3d* this, uint32_t tmu, CGxTex* texId)" CGxDeviceD3d__ISetTexture 006A4900 f end=006A4AB3 type="void __thiscall func(CGxDeviceD3d* this, uint32_t tmu, CGxTex* texId)"
CGxDeviceD3d__IRsSendToHw 006A4C30 f end=006A5499 type="void __thiscall func(CGxDeviceD3d* this, EGxRenderState rs)" CGxDeviceD3d__IRsSendToHw 006A4C30 f end=006A5499 type="void __thiscall func(CGxDeviceD3d* this, EGxRenderState rs)"
CGxDeviceD3d__ICreateD3dVertexDecl 006A5540 f end=006A5677 type="LPDIRECT3DVERTEXDECLARATION9 __thiscall func(CGxDeviceD3d* this, D3DVERTEXELEMENT9* elements, uint32_t count)" CGxDeviceD3d__ICreateD3dVertexDecl 006A5540 f end=006A5677 type="LPDIRECT3DVERTEXDECLARATION9 __thiscall func(CGxDeviceD3d* this, D3DVERTEXELEMENT9* elements, uint32_t count)"
CGxDeviceD3d__IReleaseD3dVertexDecl 006A5680 f end=006A56F2 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSyncVertexPtrs 006A5700 f end=006A5934 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSyncVertexPtrs 006A5700 f end=006A5934 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__IStateSync 006A5940 f end=006A59f5 type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IStateSync 006A5940 f end=006A59f5 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__CapsWindowSize 006A5A00 f end=006A5A25 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)" CGxDeviceD3d__CapsWindowSize 006A5A00 f end=006A5A25 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)"
@ -2883,7 +2905,9 @@ CGxDeviceD3d__IShaderReload 006A5D50 f end=006A5E07 type="void __thiscall func(C
CGxDeviceD3d__IShaderCreate 006A5E10 f end=006A5E36 type="void __thiscall func(CGxDeviceD3d* this, CGxShader* shader)" CGxDeviceD3d__IShaderCreate 006A5E10 f end=006A5E36 type="void __thiscall func(CGxDeviceD3d* this, CGxShader* shader)"
CGxDevice__ITexWHDStartEnd 006A5EF0 f end=006A5FDF type="void __thiscall func(CGxDevice* this, CGxTex* texId, uint32_t* width, uint32_t* height, uint32_t* baseMip, uint32_t* mipCount)" CGxDevice__ITexWHDStartEnd 006A5EF0 f end=006A5FDF type="void __thiscall func(CGxDevice* this, CGxTex* texId, uint32_t* width, uint32_t* height, uint32_t* baseMip, uint32_t* mipCount)"
CGxDeviceD3d__SceneClear 006A74B0 f end=006A7538 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask, CImVector color)" CGxDeviceD3d__SceneClear 006A74B0 f end=006A7538 type="void __thiscall func(CGxDeviceD3d* this, uint32_t mask, CImVector color)"
CGxDeviceD3d__Sub6A7940 006A7940 f end=006A79F1 type="void __thiscall func(CGxDeviceD3d* this, uint32_t width, uint32_t height)"
CGxDeviceD3d__CapsWindowSizeInScreenCoords 006A9920 f end=006A99D4 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)" CGxDeviceD3d__CapsWindowSizeInScreenCoords 006A9920 f end=006A99D4 type="void __thiscall func(CGxDeviceD3d* this, CRect* dst)"
CGxDeviceD3d__IXformSetViewport 006A99E0 f end=006A9B35 type="void __thiscall func(CGxDeviceD3d* this)"
CGxDeviceD3d__XformSetProjection 006A9B40 f end=006A9D88 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)" CGxDeviceD3d__XformSetProjection 006A9B40 f end=006A9D88 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)"
CGxDeviceD3d__XformSetView 006A9E00 f end=006A9E09 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)" CGxDeviceD3d__XformSetView 006A9E00 f end=006A9E09 type="void __thiscall func(CGxDeviceD3d* this, C44Matrix* matrix)"
CGxDeviceD3d__IShaderConstantsFlush 006A9FE0 f end=006AA06D type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__IShaderConstantsFlush 006A9FE0 f end=006AA06D type="void __thiscall func(CGxDeviceD3d* this)"
@ -3687,6 +3711,16 @@ CShaderEffectManager__AddEffectFile 00876D90 f end=00876E2C ; CShaderEffectManag
SI2__Log_Write 00877E10 f end=00878005 SI2__Log_Write 00877E10 f end=00878005
SI2__Log_Write 00878010 f end=0087807E SI2__Log_Write 00878010 f end=0087807E
SI2__InitCapture 0087E020 f end=0087EBBD SI2__InitCapture 0087E020 f end=0087EBBD
NvAPI_Initialize 008A09BA f end=008A0A54
NvAPI_GetErrorMessage 008A0A54 f end=008A0A5A type="NvAPI_Status __stdcall func(int32_t nr, char* szDesc)"
NvAPI_Stereo_CreateConfigurationProfileRegistryKey 008A0F88 f end=008A0F8E type="NvAPI_Status __stdcall func(NV_StereoRegistryProfileType registryProfileType)"
NvAPI_Stereo_Enable 008A0FA0 f end=008A0FA6 type="NvAPI_Status __stdcall func()"
NvAPI_Stereo_Disable 008A0FA6 f end=008A0FAC type="NvAPI_Status __stdcall func()"
NvAPI_Stereo_IsEnabled 008A0FAC f end=008A0FB2 type="NvAPI_Status __stdcall func(uint8_t* pIsStereoEnabled)"
NvAPI_Stereo_CreateHandleFromIUnknown 008A0FB2 f end=008A0FB8 type="NvAPI_Status __stdcall func(IUnknown* pDevice, StereoHandle* pStereoHandle)"
NvAPI_Stereo_DestroyHandle 008A0FB8 f end=008A0FBE type="NvAPI_Status __stdcall func(StereoHandle stereoHandle)"
NvAPI_Stereo_SetSeparation 008A0FD6 f end=008A0FDC type="NvAPI_Status __stdcall func(StereoHandle stereoHandle, float newSeparationPercentage)"
NvAPI_Stereo_SetConvergence 008A0FEE f end=008A0FF4 type="NvAPI_Status __stdcall func(StereoHandle stereoHandle, float newConvergence)"
stub_return_one_byte 008A1420 f end=008A1423 ; known names: System_File::Shutdown, CVGxVideoOptionsVersionCallback stub_return_one_byte 008A1420 f end=008A1423 ; known names: System_File::Shutdown, CVGxVideoOptionsVersionCallback
FFX__Destroy 008C0360 f end=008C0589 FFX__Destroy 008C0360 f end=008C0589
stub_return_int32_one 008C8DE0 f type="int32_t __stdcall func()" ; Known names: GxDefaultApi, CCommand_Perf stub_return_int32_one 008C8DE0 f type="int32_t __stdcall func()" ; Known names: GxDefaultApi, CCommand_Perf
@ -4075,10 +4109,23 @@ s_noinfo 009E5630 l type="Blizzard__File__FileInfo"
firstByteMark 009E9EC8 l type="uint32_t[7]" firstByteMark 009E9EC8 l type="uint32_t[7]"
TInstanceId_EvtContext__v_table 009EA04C l type="TInstanceId_EvtContext__v_table" TInstanceId_EvtContext__v_table 009EA04C l type="TInstanceId_EvtContext__v_table"
s_pixelFormatToMipBitsCache 009F1074 l s_pixelFormatToMipBitsCache 009F1074 l
CGxDevice__vtable 00A2DDC0 l type="CGxDevice__vtable" CGxDevice__v_table 00A2DDC0 l type="CGxDevice__v_table"
CGxDeviceOpenGl__vtable 00A2E198 l CGxDeviceOpenGl__v_table 00A2E198 l type="CGxDevice__v_table"
CGxDeviceD3d__vtable 00A2E718 l CGxDeviceD3d__s_GxFormatToD3dFormat 00A2E4A8 l type="D3DFORMAT[8]"
CGxDeviceD3d__s_gxAttribToD3dAttribSize 00A2E4C8 l type="uint32_t[7]"
CGxDeviceD3d__v_table 00A2E718 l type="CGxDevice__v_table"
CGxDeviceD3d9Ex__vtable 00A2F500 l CGxDeviceD3d9Ex__vtable 00A2F500 l
CGxDeviceD3d__s_tolerableTexFmtMapping 00A2F7E8 l type="EGxTexFormat[13]"
CGxDeviceD3d__s_GxTexFmtToD3dFmt 00A2F81C l type="D3DFORMAT[13]"
CGxDeviceD3d__s_faceTypes 00A2F850 l type="D3DCUBEMAP_FACES[6]"
CGxDeviceD3d__s_primitiveConversion 00A2F8D4 l type="D3DPRIMITIVETYPE[6]"
CGxDeviceD3d__s_gxAttribToD3dAttribUsage 00A2F8EC l type="D3DDECLUSAGE[14]"
CGxDeviceD3d__s_gxAttribToD3dAttribUsageIndex 00A2F924 l type="uint32_t[14]"
CGxDeviceD3d__s_srcBlend 00A2F964 l type="D3DBLEND[12]"
CGxDeviceD3d__s_dstBlend 00A2F994 l type="D3DBLEND[12]"
CGxDeviceD3d__s_wrapModes 00A2F9C4 l type="D3DTEXTUREADDRESS[2]"
CGxDeviceD3d__s_cmpFunc 00A2FA14 l type="D3DCMPFUNC[4]"
CGxDeviceD3d__s_cullMode 00A2FA24 l type="D3DCULL[3]"
g_startup_StringsDB 00AB6350 l type="WowClientDB_Startup_StringsRec" g_startup_StringsDB 00AB6350 l type="WowClientDB_Startup_StringsRec"
System_File__Stacked__s_manager 00AB90AC l type="Blizzard__File__Filesystem*" System_File__Stacked__s_manager 00AB90AC l type="Blizzard__File__Filesystem*"
System_File__read_func 00AB912C l ; type="int32_t (*)(Blizzard__File__Filesystem* fs, System_File__Stacked__FileParms* parms)" System_File__read_func 00AB912C l ; type="int32_t (*)(Blizzard__File__Filesystem* fs, System_File__Stacked__FileParms* parms)"
@ -4325,6 +4372,10 @@ g_soundFilterDB 00AD50FC l type="WowClientDB_SoundFilterRec" ; 0x1D6
g_soundFilterElemDB 00AD5120 l type="WowClientDB_SoundFilterElemRec" ; 0x1D7 g_soundFilterElemDB 00AD5120 l type="WowClientDB_SoundFilterElemRec" ; 0x1D7
formatToInt 00AD87C4 l type="char*[8]" formatToInt 00AD87C4 l type="char*[8]"
g_gxApiNames 00AD87E4 l type="char*[6]" g_gxApiNames 00AD87E4 l type="char*[6]"
CGxDevice__kWinMinSize 00AD8BC0 l type="C2iVector"
CGxDeviceD3d__s_GxTexFormatToUse 00AD8EF0 l type="EGxTexFormat[13]"
CGxDeviceD3d__s_gxAttribToD3dAttribType 00AD8F24 l type="D3DDECLTYPE[7]"
CGxDeviceD3d__s_filterModes 00AD8F40 l type="D3DTEXTUREFILTERTYPE[6][3]"
CBLPFile__s_eightBitAlphaLookup 00AD90B0 l type="uint8_t[16]" CBLPFile__s_eightBitAlphaLookup 00AD90B0 l type="uint8_t[16]"
CBLPFile__s_oneBitAlphaLookup 00AD90C0 l type="uint8_t[2]" CBLPFile__s_oneBitAlphaLookup 00AD90C0 l type="uint8_t[2]"
s_rect 00ADBAB4 l type="RECTF" ; RECTF s_rect 00ADBAB4 l type="RECTF" ; RECTF
@ -4350,6 +4401,9 @@ g_lightFloatBandDB 00AF49E0 l type="WowClientDB_LightFloatBandRec" ; 0x15C
g_lightParamsDB 00AF4A04 l type="WowClientDB_LightParamsRec" ; 0x15E g_lightParamsDB 00AF4A04 l type="WowClientDB_LightParamsRec" ; 0x15E
g_lightDB 00AF4A28 l type="WowClientDB_LightRec" ; 0x15B g_lightDB 00AF4A28 l type="WowClientDB_LightRec" ; 0x15B
s_sleepInBackground 00B1D2AC l type="int32_t" s_sleepInBackground 00B1D2AC l type="int32_t"
NvApi__s_initialized 00B2376C l
result 00B23770 l type="int32_t"
NvApi__s_interface_table 00B23778 l type="NvApi__InterfaceTable[253]"
s_streamingdiag 00B2F050 l s_streamingdiag 00B2F050 l
g_clientEventContext 00B2F994 l type="HEVENTCONTEXT" g_clientEventContext 00B2F994 l type="HEVENTCONTEXT"
Blizzard__Streaming__s_streamingReady 00B38180 l type="bool" Blizzard__Streaming__s_streamingReady 00B38180 l type="bool"
@ -4452,12 +4506,14 @@ _CURRENT_LANGUAGE 00C5DE9C l type="int32_t"
s_maxFPSBk 00C5DF74 l type="uint32_t" s_maxFPSBk 00C5DF74 l type="uint32_t"
s_maxFPS 00C5DF7C l type="uint32_t" s_maxFPS 00C5DF7C l type="uint32_t"
g_theGxDevicePtr 00C5DF88 l type="CGxDevice*" g_theGxDevicePtr 00C5DF88 l type="CGxDevice*"
CGxDevice__s_uiVertexShader 00C5DFDC l CGxDevice__s_uiVertexShader 00C5DFD8 l
CGxDevice__s_shadowConstants 00C5DFE0 l CGxDevice__s_shadowConstants 00C5DFE0 l
CGxDevice__kWinAspect 00C5FFF0 l type="float"
CGxDevice__m_logBytes 00C5FFF4 l type="uint32_t" CGxDevice__m_logBytes 00C5FFF4 l type="uint32_t"
CGxDevice__m_log 00C5FFF8 l type="HSLOG" CGxDevice__m_log 00C5FFF8 l type="HSLOG"
CGxDevice__s_uiPixelShader 00C5FFFC l CGxDevice__s_uiPixelShader 00C5FFFC l
CGxDevice__s_clientAdjust 00C60300 l type="C2iVector" CGxDevice__s_clientAdjust 00C60300 l type="C2iVector"
d3dLight 00C606F8 l type="D3DLIGHT9"
isIdent 00C60760 l isIdent 00C60760 l
ClientServices__m_instance 00C79CE4 l ClientServices__m_instance 00C79CE4 l
ClientServices__m_selectRealmInfoValid 00C79CE9 l ClientServices__m_selectRealmInfoValid 00C79CE9 l

View file

@ -0,0 +1,10 @@
NvAPI_Initialize 008A09BA f end=008A0A54
NvAPI_Stereo_IsEnabled 008A0FAC f end=008A0FB2 type="NvAPI_Status __stdcall func(uint8_t* pIsStereoEnabled)"
NvAPI_Stereo_Enable 008A0FA0 f end=008A0FA6 type="NvAPI_Status __stdcall func()"
NvAPI_GetErrorMessage 008A0A54 f end=008A0A5A type="NvAPI_Status __stdcall func(int32_t nr, char* szDesc)"
NvAPI_Stereo_Disable 008A0FA6 f end=008A0FAC type="NvAPI_Status __stdcall func()"
NvAPI_Stereo_CreateConfigurationProfileRegistryKey 008A0F88 f end=008A0F8E type="NvAPI_Status __stdcall func(NV_StereoRegistryProfileType registryProfileType)"
NvAPI_Stereo_CreateHandleFromIUnknown 008A0FB2 f end=008A0FB8 type="NvAPI_Status __stdcall func(IUnknown* pDevice, StereoHandle* pStereoHandle)"
NvAPI_Stereo_SetConvergence 008A0FEE f end=008A0FF4 type="NvAPI_Status __stdcall func(StereoHandle stereoHandle, float newConvergence)"
NvAPI_Stereo_SetSeparation 008A0FD6 f end=008A0FDC type="NvAPI_Status __stdcall func(StereoHandle stereoHandle, float newSeparationPercentage)"
NvAPI_Stereo_DestroyHandle 008A0FB8 f end=008A0FBE type="NvAPI_Status __stdcall func(StereoHandle stereoHandle)"

View file

@ -0,0 +1,3 @@
result 00B23770 l type="int32_t"
NvApi__s_interface_table 00B23778 l type="NvApi__InterfaceTable[253]"
NvApi__s_initialized 00B2376C l

File diff suppressed because it is too large Load diff