feat(console): add more hardware detection information

This commit is contained in:
phaneron 2025-04-04 18:23:32 -04:00
parent 44ba6b92bb
commit 9963994a52
7 changed files with 56 additions and 23 deletions

View file

@ -35,7 +35,7 @@ struct Hardware {
Hardware__Device videoDevice; Hardware__Device videoDevice;
Hardware__Device soundDevice; Hardware__Device soundDevice;
uint32_t cpuIdx; uint32_t cpuIdx;
uint32_t videoIdx; uint32_t videoID;
uint32_t soundIdx; uint32_t soundIdx;
uint32_t memIdx; uint32_t memIdx;
VideoHardwareRec* videoHw; VideoHardwareRec* videoHw;

View file

@ -8,18 +8,19 @@
typedef int32_t D3DFORMAT; typedef int32_t D3DFORMAT;
DECLARE_STRUCT(D3DDISPLAYMODE); DECLARE_STRUCT(D3DDISPLAYMODE);
DECLARE_STRUCT(IDirect3D9_v_table);
DECLARE_STRUCT(IDirect3D9); DECLARE_STRUCT(IDirect3D9);
DECLARE_STRUCT(IDirect3DDevice9); DECLARE_STRUCT(IDirect3DDevice9);
DECLARE_STRUCT(IDirect3DDevice9_vtable); DECLARE_STRUCT(IDirect3DDevice9_v_table);
DECLARE_STRUCT(IDirect3DVertexDeclaration9); DECLARE_STRUCT(IDirect3DVertexDeclaration9);
DECLARE_STRUCT(IDirect3DSurface9__vtable); DECLARE_STRUCT(IDirect3DSurface9__v_table);
DECLARE_STRUCT(IDirect3DSurface9); DECLARE_STRUCT(IDirect3DSurface9);
DECLARE_STRUCT(IDirect3DIndexBuffer9); DECLARE_STRUCT(IDirect3DIndexBuffer9);
DECLARE_STRUCT(IDirect3DVertexBuffer9); DECLARE_STRUCT(IDirect3DVertexBuffer9);
DECLARE_STRUCT(IDirect3DTexture9); DECLARE_STRUCT(IDirect3DTexture9);
DECLARE_STRUCT(IDirect3DVertexShader9__vtable); DECLARE_STRUCT(IDirect3DVertexShader9__v_table);
DECLARE_STRUCT(IDirect3DVertexShader9); DECLARE_STRUCT(IDirect3DVertexShader9);
DECLARE_STRUCT(IDirect3DPixelShader9__vtable); DECLARE_STRUCT(IDirect3DPixelShader9__v_table);
DECLARE_STRUCT(IDirect3DPixelShader9); DECLARE_STRUCT(IDirect3DPixelShader9);
DECLARE_STRUCT(D3DLOCKED_RECT); DECLARE_STRUCT(D3DLOCKED_RECT);
@ -31,11 +32,31 @@ struct D3DDISPLAYMODE {
D3DFORMAT Format; D3DFORMAT Format;
}; };
struct IDirect3D9 { struct IDirect3D9_v_table {
void** v_vtable; 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 IDirect3DDevice9_vtable { 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;
@ -159,14 +180,14 @@ struct IDirect3DDevice9_vtable {
}; };
struct IDirect3DDevice9 { struct IDirect3DDevice9 {
IDirect3DDevice9_vtable* v_vtable; IDirect3DDevice9_v_table* v_table;
}; };
struct IDirect3DVertexDeclaration9 { struct IDirect3DVertexDeclaration9 {
void** v_vtable; void** v_table;
}; };
struct IDirect3DSurface9__vtable { struct IDirect3DSurface9__v_table {
/*** IUnknown methods ***/ /*** IUnknown methods ***/
void* v_fn_0_QueryInterface; void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef; void* v_fn_1_AddRef;
@ -190,19 +211,19 @@ struct IDirect3DSurface9__vtable {
}; };
struct IDirect3DSurface9 { struct IDirect3DSurface9 {
IDirect3DSurface9__vtable* v_vtable; IDirect3DSurface9__v_table* v_table;
}; };
struct IDirect3DIndexBuffer9 { struct IDirect3DIndexBuffer9 {
void** v_vtable; void** v_table;
}; };
struct IDirect3DVertexBuffer9 { struct IDirect3DVertexBuffer9 {
void** v_vtable; void** v_table;
}; };
struct IDirect3DTexture9 { struct IDirect3DTexture9 {
void** v_vtable; void** v_table;
}; };
struct D3DLOCKED_RECT { struct D3DLOCKED_RECT {
@ -210,7 +231,7 @@ struct D3DLOCKED_RECT {
void* pBits; void* pBits;
}; };
struct IDirect3DVertexShader9__vtable { struct IDirect3DVertexShader9__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;
@ -219,10 +240,10 @@ struct IDirect3DVertexShader9__vtable {
}; };
struct IDirect3DVertexShader9 { struct IDirect3DVertexShader9 {
IDirect3DVertexShader9__vtable* v_vtable; IDirect3DVertexShader9__v_table* v_table;
}; };
struct IDirect3DPixelShader9__vtable { struct IDirect3DPixelShader9__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;
@ -231,7 +252,7 @@ struct IDirect3DPixelShader9__vtable {
}; };
struct IDirect3DPixelShader9 { struct IDirect3DPixelShader9 {
IDirect3DPixelShader9__vtable* v_vtable; IDirect3DPixelShader9__v_table* v_v_table;
}; };
#endif #endif

View file

@ -85,8 +85,9 @@ CGxDevice__XformSetView 00689050 f end=006890C0 type="void __thiscall func(CGxDe
CGxDevice__destructor 006890C0 f end=00689460 type="void __thiscall func(CGxDevice* this)" CGxDevice__destructor 006890C0 f end=00689460 type="void __thiscall func(CGxDevice* this)"
CGxDevice__scalar_deleting_destructor 00689690 f end=006896BB type="void __thiscall func(CGxDevice* this, uint8_t __flags)" CGxDevice__scalar_deleting_destructor 00689690 f end=006896BB type="void __thiscall func(CGxDevice* this, uint8_t __flags)"
CGxDevice__ShaderCreate 006897C0 f end=00689A49 type="void __thiscall func(CGxDevice* this, CGxShader**, EGxShTarget, char*, char*, int32_t)" CGxDevice__ShaderCreate 006897C0 f end=00689A49 type="void __thiscall func(CGxDevice* this, CGxShader**, EGxShTarget, char*, char*, int32_t)"
CGxDevice__DeviceAdapterID 00689C10 f end=00689DA2 HToI 00689B90 f end=00689C02 type="__int16 __usercall func@<ax>(char* h@<eax>, int count)"
CGxDevice__DeviceAdapterInfer 00689DB0 f end=00689E7B CGxDevice__AdapterID 00689C10 f end=00689DA2
CGxDevice__AdapterInfer 00689DB0 f end=00689E7B
CGxDevice__FindDisplayDevice 00689EA0 f end=00689EF0 type="int32_t __stdcall func(PDISPLAY_DEVICEA device, uint32_t flag)" ; UC CGxDevice__FindDisplayDevice 00689EA0 f end=00689EF0 type="int32_t __stdcall func(PDISPLAY_DEVICEA device, uint32_t flag)" ; UC
CGxDevice__NewD3d 00689EF0 f end=00689F14 type="CGxDevice* __stdcall func()" CGxDevice__NewD3d 00689EF0 f end=00689F14 type="CGxDevice* __stdcall func()"
CGxDevice__AdapterMonitorModes 0068A4C0 f end=0068A589 type="void __stdcall func(TSGrowableArray_CGxMonitorMode* modes)" CGxDevice__AdapterMonitorModes 0068A4C0 f end=0068A589 type="void __stdcall func(TSGrowableArray_CGxMonitorMode* modes)"

View file

@ -16,6 +16,7 @@ CGxDeviceD3d__QueryBegin 0068EA10 f end=0068EA81 type="bool __thiscall func(CGxD
CGxDeviceD3d__QueryGetParam 0068EA90 f end=0068EB1D type="bool __thiscall func(CGxDeviceD3d* this, CGxQuery* query, EGxQueryParam param, uint32_t* data)" CGxDeviceD3d__QueryGetParam 0068EA90 f end=0068EB1D type="bool __thiscall func(CGxDeviceD3d* this, CGxQuery* query, EGxQueryParam param, uint32_t* data)"
CGxDeviceD3d__ICreateWindow 0068EBB0 f end=0068ED78 CGxDeviceD3d__ICreateWindow 0068EBB0 f end=0068ED78
CGxDeviceD3d__ILoadD3dLib 0068ED80 f end=0068EE13 CGxDeviceD3d__ILoadD3dLib 0068ED80 f end=0068EE13
CGxDeviceD3d__IUnloadD3dLib 0068E140 f end=0068E174
CGxDeviceD3d__ISetCaps 0068EE20 f end=0068F36D CGxDeviceD3d__ISetCaps 0068EE20 f end=0068F36D
CGxDeviceD3d__ICreateD3dDevice 0068F3D0 f end=0068F692 CGxDeviceD3d__ICreateD3dDevice 0068F3D0 f end=0068F692
CGxDeviceD3d__DeviceSetRenderTarget 0068F770 f end=0068F8F2 type="void __thiscall func(CGxDeviceD3d* this, EGxBuffer buffer, CGxTex* texture, uint32_t plane)" CGxDeviceD3d__DeviceSetRenderTarget 0068F770 f end=0068F8F2 type="void __thiscall func(CGxDeviceD3d* this, EGxBuffer buffer, CGxTex* texture, uint32_t plane)"

View file

@ -2425,8 +2425,9 @@ CGxDevice__destructor 006890C0 f end=00689460 type="void __thiscall func(CGxDevi
CGxDevice__scalar_deleting_destructor 00689690 f end=006896BB type="void __thiscall func(CGxDevice* this, uint8_t __flags)" CGxDevice__scalar_deleting_destructor 00689690 f end=006896BB type="void __thiscall func(CGxDevice* this, uint8_t __flags)"
CGxDevice__ShaderCreate 006897C0 f end=00689A49 type="void __thiscall func(CGxDevice* this, CGxShader**, EGxShTarget, char*, char*, int32_t)" CGxDevice__ShaderCreate 006897C0 f end=00689A49 type="void __thiscall func(CGxDevice* this, CGxShader**, EGxShTarget, char*, char*, int32_t)"
CGxShader__Valid 00689A50 f end=00689A6F CGxShader__Valid 00689A50 f end=00689A6F
CGxDevice__DeviceAdapterID 00689C10 f end=00689DA2 HToI 00689B90 f end=00689C02 type="__int16 __usercall func@<ax>(char* h@<eax>, int count)"
CGxDevice__DeviceAdapterInfer 00689DB0 f end=00689E7B CGxDevice__AdapterID 00689C10 f end=00689DA2
CGxDevice__AdapterInfer 00689DB0 f end=00689E7B
CGxMonitorModeSort 00689E80 f type="int32_t __stdcall func(void* a, void* b)" CGxMonitorModeSort 00689E80 f type="int32_t __stdcall func(void* a, void* b)"
CGxDevice__FindDisplayDevice 00689EA0 f end=00689EF0 type="int32_t __stdcall func(PDISPLAY_DEVICEA device, uint32_t flag)" ; UC CGxDevice__FindDisplayDevice 00689EA0 f end=00689EF0 type="int32_t __stdcall func(PDISPLAY_DEVICEA device, uint32_t flag)" ; UC
CGxDevice__NewD3d 00689EF0 f end=00689F14 type="CGxDevice* __stdcall func()" CGxDevice__NewD3d 00689EF0 f end=00689F14 type="CGxDevice* __stdcall func()"
@ -2436,6 +2437,7 @@ CGxDevice__AdapterMonitorModes 0068A4C0 f end=0068A589 type="void __stdcall func
CGxDeviceOpenGl__CGxDeviceOpenGl 0068BBC0 f end=0068BD15 type="void __thiscall func(CGxDeviceOpenGl* this)" CGxDeviceOpenGl__CGxDeviceOpenGl 0068BBC0 f end=0068BD15 type="void __thiscall func(CGxDeviceOpenGl* this)"
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()"
CGxDeviceD3d__IUnloadD3dLib 0068E140 f end=0068E174
CGxDeviceD3d__ICreateD3dIB 0068E180 f end=0068E1E8 CGxDeviceD3d__ICreateD3dIB 0068E180 f end=0068E1E8
CGxDeviceD3d__ISetPresentParms 0068E250 f end=0068E448 CGxDeviceD3d__ISetPresentParms 0068E250 f end=0068E448
CGxDeviceD3d__DeviceEvictResources 0068E450 f end=0068E49E type="void __thiscall func(CGxDeviceD3d* this)" CGxDeviceD3d__DeviceEvictResources 0068E450 f end=0068E49E type="void __thiscall func(CGxDeviceD3d* this)"
@ -2940,6 +2942,8 @@ OsSystemEnableCpuLog 0086B0C0 f end=0086B0CB
IOsSystemCpuLog 0086B0D0 f end=0086B23D IOsSystemCpuLog 0086B0D0 f end=0086B23D
OsGetProcessorCount 0086B240 f end=0086B27D OsGetProcessorCount 0086B240 f end=0086B27D
OsSleep 0086B280 f end=0086B28F OsSleep 0086B280 f end=0086B28F
OsSetSleepInBackground 0086B2A0 f end=0086B2AD
OsSetBackgroundSleepMs 0086B2C0 f end=0086B2CD
OsGetVersionString 0086B430 f end=0086B458 OsGetVersionString 0086B430 f end=0086B458
OsGetComputerName 0086B480 f end=0086B493 OsGetComputerName 0086B480 f end=0086B493
OsGetUserName 0086B4A0 f end=0086B4B3 OsGetUserName 0086B4A0 f end=0086B4B3
@ -3471,6 +3475,7 @@ g_lightIntBandDB 00AF49BC l type="WowClientDB_LightIntBandRec" ; 0x15D
g_lightFloatBandDB 00AF49E0 l type="WowClientDB_LightFloatBandRec" ; 0x15C 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_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"
@ -3620,6 +3625,7 @@ s_processorSockets 00D415AC l type="int32_t"
s_processorCores 00D415B0 l type="int32_t" s_processorCores 00D415B0 l type="int32_t"
s_processorCount 00D415B4 l type="int32_t" s_processorCount 00D415B4 l type="int32_t"
s_cpuLogEnabled 00D415C0 l type="int32_t" s_cpuLogEnabled 00D415C0 l type="int32_t"
s_backgroundSleepMs 00D415C4 l type="uint32_t"
s_cpuTicksPerSecond 00D415C8 l type="uint64_t" s_cpuTicksPerSecond 00D415C8 l type="uint64_t"
s_gotPowerProfFrequency 00D415D0 l type="int32_t" s_gotPowerProfFrequency 00D415D0 l type="int32_t"
s_checkedPowerProfInfo 00D415D4 l type="int32_t" s_checkedPowerProfInfo 00D415D4 l type="int32_t"

View file

@ -15,6 +15,8 @@ OsSystemEnableCpuLog 0086B0C0 f end=0086B0CB
IOsSystemCpuLog 0086B0D0 f end=0086B23D IOsSystemCpuLog 0086B0D0 f end=0086B23D
OsGetProcessorCount 0086B240 f end=0086B27D OsGetProcessorCount 0086B240 f end=0086B27D
OsSleep 0086B280 f end=0086B28F OsSleep 0086B280 f end=0086B28F
OsSetSleepInBackground 0086B2A0 f end=0086B2AD
OsSetBackgroundSleepMs 0086B2C0 f end=0086B2CD
OsGetVersionString 0086B430 f end=0086B458 OsGetVersionString 0086B430 f end=0086B458
OsGetComputerName 0086B480 f end=0086B493 OsGetComputerName 0086B480 f end=0086B493
OsGetUserName 0086B4A0 f end=0086B4B3 OsGetUserName 0086B4A0 f end=0086B4B3

View file

@ -1,3 +1,4 @@
s_sleepInBackground 00B1D2AC l type="int32_t"
s_WindowResizeLock 00D41580 l type="int32_t" s_WindowResizeLock 00D41580 l type="int32_t"
s_haveProcessorFeatures 00D415A0 l type="int32_t" s_haveProcessorFeatures 00D415A0 l type="int32_t"
s_processorVendor 00D415A4 l type="int32_t" s_processorVendor 00D415A4 l type="int32_t"
@ -6,6 +7,7 @@ s_processorSockets 00D415AC l type="int32_t"
s_processorCores 00D415B0 l type="int32_t" s_processorCores 00D415B0 l type="int32_t"
s_processorCount 00D415B4 l type="int32_t" s_processorCount 00D415B4 l type="int32_t"
s_cpuLogEnabled 00D415C0 l type="int32_t" s_cpuLogEnabled 00D415C0 l type="int32_t"
s_backgroundSleepMs 00D415C4 l type="uint32_t"
s_cpuTicksPerSecond 00D415C8 l type="uint64_t" s_cpuTicksPerSecond 00D415C8 l type="uint64_t"
s_gotPowerProfFrequency 00D415D0 l type="int32_t" s_gotPowerProfFrequency 00D415D0 l type="int32_t"
s_checkedPowerProfInfo 00D415D4 l type="int32_t" s_checkedPowerProfInfo 00D415D4 l type="int32_t"