feat(profile): added definitions for a handful of UI objects

This commit is contained in:
phaneron 2024-09-30 17:19:28 -04:00
parent ac20b7a227
commit 8ff5db67f2
39 changed files with 4484 additions and 183 deletions

View file

@ -135,6 +135,7 @@ static main() {
set_name(0x00482A20, "GxBufStream"); set_name(0x00482A20, "GxBufStream");
set_name(0x00482A40, "GxDraw"); set_name(0x00482A40, "GxDraw");
set_name(0x00493BF0, "GxCapsWindowSizeInScreenCoords"); set_name(0x00493BF0, "GxCapsWindowSizeInScreenCoords");
set_name(0x00495410, "CSimpleTop__OnLayerRender");
set_name(0x004A8500, "ScrnLayerSetRect"); set_name(0x004A8500, "ScrnLayerSetRect");
set_name(0x004A8720, "OnPaint"); set_name(0x004A8720, "OnPaint");
set_name(0x004A8BB0, "ScrnLayerCreate"); set_name(0x004A8BB0, "ScrnLayerCreate");
@ -579,7 +580,7 @@ static main() {
set_name(0x005262E0, "Script_TargetTotem"); set_name(0x005262E0, "Script_TargetTotem");
set_name(0x00527F00, "Script_InteractUnit"); set_name(0x00527F00, "Script_InteractUnit");
set_name(0x00528920, "Script_LoadAddOn"); set_name(0x00528920, "Script_LoadAddOn");
set_name(0x0052A980, "CGameUI__Initialize"); set_name(0x0052A980, "CGGameUI__Initialize");
set_name(0x0052B470, "Script_RegisterForSave"); set_name(0x0052B470, "Script_RegisterForSave");
set_name(0x0052B4E0, "Script_RegisterForSavePerCharacter"); set_name(0x0052B4E0, "Script_RegisterForSavePerCharacter");
set_name(0x0052C110, "Script_GetNumPartyMembers"); set_name(0x0052C110, "Script_GetNumPartyMembers");
@ -2136,7 +2137,6 @@ static main() {
set_name(0x00684D10, "CGxDevice__Log"); set_name(0x00684D10, "CGxDevice__Log");
set_name(0x00685970, "CGxDevice__IRsDirty"); set_name(0x00685970, "CGxDevice__IRsDirty");
set_name(0x006859E0, "CGxDevice__IRsForceUpdate_EGxRenderState"); set_name(0x006859E0, "CGxDevice__IRsForceUpdate_EGxRenderState");
set_name(0x006859E0, "CGxDevice__IRsForceUpdate");
set_name(0x00685A70, "CGxDevice__IRsForceUpdate"); set_name(0x00685A70, "CGxDevice__IRsForceUpdate");
set_name(0x00685B50, "CGxDevice__IRsSync"); set_name(0x00685B50, "CGxDevice__IRsSync");
set_name(0x00685C60, "CGxDevice__TexCreate"); set_name(0x00685C60, "CGxDevice__TexCreate");
@ -2177,6 +2177,7 @@ static main() {
set_name(0x00690750, "CGxDeviceD3d__DeviceCreate_WindowProc_CGxFormat"); set_name(0x00690750, "CGxDeviceD3d__DeviceCreate_WindowProc_CGxFormat");
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(0x006A00C0, "CGxDeviceD3d__ICursorDestroy"); set_name(0x006A00C0, "CGxDeviceD3d__ICursorDestroy");
set_name(0x006A0360, "CGxDeviceD3d__WindowProcD3d"); set_name(0x006A0360, "CGxDeviceD3d__WindowProcD3d");
set_name(0x006A1A90, "CGxDeviceD3d9Ex__CGxDeviceD3d9Ex"); set_name(0x006A1A90, "CGxDeviceD3d9Ex__CGxDeviceD3d9Ex");
@ -2961,6 +2962,8 @@ static main() {
set_func_end(0x00482A40, 0x00482A5D); set_func_end(0x00482A40, 0x00482A5D);
set_func_start(0x00493BF0, 0x00493BF0); set_func_start(0x00493BF0, 0x00493BF0);
set_func_end(0x00493BF0, 0x00493C09); set_func_end(0x00493BF0, 0x00493C09);
set_func_start(0x00495410, 0x00495410);
set_func_end(0x00495410, 0x0049546A);
set_func_start(0x004A8500, 0x004A8500); set_func_start(0x004A8500, 0x004A8500);
set_func_end(0x004A8500, 0x004A8522); set_func_end(0x004A8500, 0x004A8522);
set_func_start(0x004A8720, 0x004A8720); set_func_start(0x004A8720, 0x004A8720);
@ -6938,8 +6941,6 @@ static main() {
set_func_end(0x00685970, 0x006859DB); set_func_end(0x00685970, 0x006859DB);
set_func_start(0x006859E0, 0x006859E0); set_func_start(0x006859E0, 0x006859E0);
set_func_end(0x006859E0, 0x00685A65); set_func_end(0x006859E0, 0x00685A65);
set_func_start(0x006859E0, 0x006859E0);
set_func_end(0x006859E0, 0x00685A65);
set_func_start(0x00685A70, 0x00685A70); set_func_start(0x00685A70, 0x00685A70);
set_func_end(0x00685A70, 0x00685B4E); set_func_end(0x00685A70, 0x00685B4E);
set_func_start(0x00685B50, 0x00685B50); set_func_start(0x00685B50, 0x00685B50);
@ -7020,6 +7021,8 @@ static main() {
set_func_end(0x0069FB00, 0x0069FB68); set_func_end(0x0069FB00, 0x0069FB68);
set_func_start(0x0069FB70, 0x0069FB70); set_func_start(0x0069FB70, 0x0069FB70);
set_func_end(0x0069FB70, 0x0069FBB8); set_func_end(0x0069FB70, 0x0069FBB8);
set_func_start(0x0069FE10, 0x0069FE10);
set_func_end(0x0069FE10, 0x0069FE57);
set_func_start(0x006A00C0, 0x006A00C0); set_func_start(0x006A00C0, 0x006A00C0);
set_func_end(0x006A00C0, 0x006A0102); set_func_end(0x006A00C0, 0x006A0102);
set_func_start(0x006A0360, 0x006A0360); set_func_start(0x006A0360, 0x006A0360);

View file

@ -0,0 +1,31 @@
#ifndef ASYNC_OBJECT_H
#define ASYNC_OBJECT_H
#include "system/types.h"
#include "storm/list.h"
#include "async/queue.h"
DECLARE_STRUCT(CAsyncObject);
DECLARE_STRUCT(TSLink_CAsyncObject);
struct CAsyncObject {
void* file;
void* buffer;
uint32_t size;
void* userArg;
void* userPostloadCallback;
void* userPostUnloadCallback;
CAsyncQueue* queue;
void* ptr1c;
int8_t priority;
int8_t isProcessed;
int8_t isRead;
int8_t isCurrent;
int8_t char24;
int8_t char25;
uint16_t padding;
TSLink_CAsyncObject link;
};
STORM_TS_LIST(CAsyncObject);
#endif

View file

@ -0,0 +1,20 @@
#ifndef ASYNC_QUEUE_H
#define ASYNC_QUEUE_H
#include "system/types.h"
#include "storm/list.h"
DECLARE_STRUCT(TSLink_CAsyncQueue);
DECLARE_STRUCT(TSExplicitList_CAsyncObject);
DECLARE_STRUCT(CAsyncQueue);
STORM_TS_LIST(CAsyncQueue);
struct CAsyncQueue {
TSLink_CAsyncQueue link;
TSExplicitList_CAsyncObject readList;
TSExplicitList_CAsyncObject unkList;
int32_t int20;
};
#endif

View file

@ -0,0 +1,24 @@
#ifndef COMMON_ARRAY_H
#define COMMON_ARRAY_H
#include "storm/array.h"
#define COMMON_SIMPLE_SORTED_ARRAY(T) STORM_TS_GROWABLE_ARRAY(T); \
typedef struct CSimpleSortedArray_##T CSimpleSortedArray_##T; \
struct CSimpleSortedArray_##T { \
TSGrowableArray_##T m_array; \
uint32_t m_count; \
uint32_t m_maxcount; \
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

View file

@ -11,7 +11,7 @@
// TInstanceId<T> // TInstanceId<T>
// TSingletonInstanceId<T> // TSingletonInstanceId<T>
#define COMMON_INSTANCE_ID(T) \ #define COMMON_INSTANCE_ID(T) \
STORM_TS_LIST(T) \ STORM_TS_LIST(T); \
typedef struct TInstanceId_##T TInstanceId_##T; \ typedef struct TInstanceId_##T TInstanceId_##T; \
typedef struct TSingletonInstanceId_##T TSingletonInstanceId_##T; \ typedef struct TSingletonInstanceId_##T TSingletonInstanceId_##T; \
struct TInstanceId_##T { \ struct TInstanceId_##T { \
@ -23,7 +23,7 @@ struct TSingletonInstanceId_##T { \
}; };
#define COMMON_INSTANCE_ID_TABLE(T) \ #define COMMON_INSTANCE_ID_TABLE(T) \
STORM_TS_LIST(T) \ STORM_TS_LIST(T); \
typedef struct TInstanceIdTable_##T TInstanceIdTable_##T; \ typedef struct TInstanceIdTable_##T TInstanceIdTable_##T; \
struct TInstanceIdTable_##T { \ struct TInstanceIdTable_##T { \
SCritSect m_idCritSect; \ SCritSect m_idCritSect; \

View file

@ -0,0 +1,14 @@
#ifndef COMMON_RC_STRING_H
#define COMMON_RC_STRING_H
#include "common/refcount.h"
DECLARE_STRUCT(RCString);
// struct RCString : TRefCnt
struct RCString {
TRefCnt b_base;
uint8_t* m_str;
};
#endif

View file

@ -0,0 +1,11 @@
#ifndef COMMON_REF_COUNT_H
#define COMMON_REF_COUNT_H
DECLARE_STRUCT(TRefCnt);
struct TRefCnt {
void* vfptr;
uint32_t m_refcnt;
};
#endif

View file

@ -1,60 +0,0 @@
#ifndef D3D9_DEVICE_H
#define D3D9_DEVICE_H
#include "system/types.h"
#include "d3d9/caps.h"
typedef int32_t D3DFORMAT;
typedef struct D3DDISPLAYMODE D3DDISPLAYMODE;
typedef struct IDirect3D9 IDirect3D9;
typedef struct IDirect3DDevice9 IDirect3DDevice9;
typedef struct IDirect3DVertexDeclaration9 IDirect3DVertexDeclaration9;
typedef struct IDirect3DSurface9 IDirect3DSurface9;
typedef struct IDirect3DIndexBuffer9 IDirect3DIndexBuffer9;
typedef struct IDirect3DVertexBuffer9 IDirect3DVertexBuffer9;
typedef struct IDirect3DTexture9 IDirect3DTexture9;
typedef struct D3DLOCKED_RECT D3DLOCKED_RECT;
struct D3DDISPLAYMODE {
uint32_t Width;
uint32_t Height;
uint32_t RefreshRate;
D3DFORMAT Format;
};
struct IDirect3D9 {
void** v_vtable;
};
struct IDirect3DDevice9 {
void** v_vtable;
};
struct IDirect3DVertexDeclaration9 {
void** v_vtable;
};
struct IDirect3DSurface9 {
void** v_vtable;
};
struct IDirect3DIndexBuffer9 {
void** v_vtable;
};
struct IDirect3DVertexBuffer9 {
void** v_vtable;
};
struct IDirect3DTexture9 {
void** v_vtable;
};
struct D3DLOCKED_RECT {
int32_t Pitch;
void* pBits;
};
#endif

View file

@ -0,0 +1,184 @@
#ifndef D3D9_DEVICE_H
#define D3D9_DEVICE_H
#include "system/types.h"
#include "external/d3d9/caps.h"
typedef int32_t D3DFORMAT;
typedef struct D3DDISPLAYMODE D3DDISPLAYMODE;
typedef struct IDirect3D9 IDirect3D9;
typedef struct IDirect3DDevice9 IDirect3DDevice9;
typedef struct IDirect3DDevice9_vtable IDirect3DDevice9_vtable;
typedef struct IDirect3DVertexDeclaration9 IDirect3DVertexDeclaration9;
typedef struct IDirect3DSurface9 IDirect3DSurface9;
typedef struct IDirect3DIndexBuffer9 IDirect3DIndexBuffer9;
typedef struct IDirect3DVertexBuffer9 IDirect3DVertexBuffer9;
typedef struct IDirect3DTexture9 IDirect3DTexture9;
typedef struct D3DLOCKED_RECT D3DLOCKED_RECT;
struct D3DDISPLAYMODE {
uint32_t Width;
uint32_t Height;
uint32_t RefreshRate;
D3DFORMAT Format;
};
struct IDirect3D9 {
void** v_vtable;
};
struct IDirect3DDevice9_vtable {
void* v_fn_0_QueryInterface;
void* v_fn_1_AddRef;
void* v_fn_2_Release;
void* v_fn_3_TestCooperativeLevel;
void* v_fn_4_GetAvailableTextureMem;
void* v_fn_5_EvictManagedResources;
void* v_fn_6_GetDirect3D;
void* v_fn_7_GetDeviceCaps;
void* v_fn_8_GetDisplayMode;
void* v_fn_9_GetCreationParameters;
void* v_fn_10_SetCursorProperties;
void* v_fn_11_SetCursorPosition;
void* v_fn_12_ShowCursor;
void* v_fn_13_CreateAdditionalSwapChain;
void* v_fn_14_GetSwapChain;
void* v_fn_15_GetNumberOfSwapChains;
void* v_fn_16_Reset;
void* v_fn_17_Present;
void* v_fn_18_GetBackBuffer;
void* v_fn_19_GetRasterStatus;
void* v_fn_20_SetDialogBoxMode;
void* v_fn_21_SetGammaRamp;
void* v_fn_22_GetGammaRamp;
void* v_fn_23_CreateTexture;
void* v_fn_24_CreateVolumeTexture;
void* v_fn_25_CreateCubeTexture;
void* v_fn_26_CreateVertexBuffer;
void* v_fn_27_CreateIndexBuffer;
void* v_fn_28_CreateRenderTarget;
void* v_fn_29_CreateDepthStencilSurface;
void* v_fn_30_UpdateSurface;
void* v_fn_31_UpdateTexture;
void* v_fn_32_GetRenderTargetData;
void* v_fn_33_GetFrontBufferData;
void* v_fn_34_StretchRect;
void* v_fn_35_ColorFill;
void* v_fn_36_CreateOffscreenPlainSurface;
void* v_fn_37_SetRenderTarget;
void* v_fn_38_GetRenderTarget;
void* v_fn_39_SetDepthStencilSurface;
void* v_fn_40_GetDepthStencilSurface;
void* v_fn_41_BeginScene;
void* v_fn_42_EndScene;
void* v_fn_43_Clear;
void* v_fn_44_SetTransform;
void* v_fn_45_GetTransform;
void* v_fn_46_MultiplyTransform;
void* v_fn_47_SetViewport;
void* v_fn_48_GetViewport;
void* v_fn_49_SetMaterial;
void* v_fn_50_GetMaterial;
void* v_fn_51_SetLight;
void* v_fn_52_GetLight;
void* v_fn_53_LightEnable;
void* v_fn_54_GetLightEnable;
void* v_fn_55_SetClipPlane;
void* v_fn_56_GetClipPlane;
void* v_fn_57_SetRenderState;
void* v_fn_58_GetRenderState;
void* v_fn_59_CreateStateBlock;
void* v_fn_60_BeginStateBlock;
void* v_fn_61_EndStateBlock;
void* v_fn_62_SetClipStatus;
void* v_fn_63_GetClipStatus;
void* v_fn_64_GetTexture;
void* v_fn_65_SetTexture;
void* v_fn_66_GetTextureStageState;
void* v_fn_67_SetTextureStageState;
void* v_fn_68_GetSamplerState;
void* v_fn_69_SetSamplerState;
void* v_fn_70_ValidateDevice;
void* v_fn_71_SetPaletteEntries;
void* v_fn_72_GetPaletteEntries;
void* v_fn_73_SetCurrentTexturePalette;
void* v_fn_74_GetCurrentTexturePalette;
void* v_fn_75_SetScissorRect;
void* v_fn_76_GetScissorRect;
void* v_fn_77_SetSoftwareVertexProcessing;
void* v_fn_78_GetSoftwareVertexProcessing;
void* v_fn_79_SetNPatchMode;
void* v_fn_80_GetNPatchMode;
void* v_fn_81_DrawPrimitive;
void* v_fn_82_DrawIndexedPrimitive;
void* v_fn_83_DrawPrimitiveUP;
void* v_fn_84_DrawIndexedPrimitiveUP;
void* v_fn_85_ProcessVertices;
void* v_fn_86_CreateVertexDeclaration;
void* v_fn_87_SetVertexDeclaration;
void* v_fn_88_GetVertexDeclaration;
void* v_fn_89_SetFVF;
void* v_fn_90_GetFVF;
void* v_fn_91_CreateVertexShader;
void* v_fn_92_SetVertexShader;
void* v_fn_93_GetVertexShader;
void* v_fn_94_SetVertexShaderConstantF;
void* v_fn_95_GetVertexShaderConstantF;
void* v_fn_96_SetVertexShaderConstantI;
void* v_fn_97_GetVertexShaderConstantI;
void* v_fn_98_SetVertexShaderConstantB;
void* v_fn_99_GetVertexShaderConstantB;
void* v_fn_100_SetStreamSource;
void* v_fn_101_GetStreamSource;
void* v_fn_102_SetStreamSourceFreq;
void* v_fn_103_GetStreamSourceFreq;
void* v_fn_104_SetIndices;
void* v_fn_105_GetIndices;
void* v_fn_106_CreatePixelShader;
void* v_fn_107_SetPixelShader;
void* v_fn_108_GetPixelShader;
void* v_fn_109_SetPixelShaderConstantF;
void* v_fn_110_GetPixelShaderConstantF;
void* v_fn_111_SetPixelShaderConstantI;
void* v_fn_112_GetPixelShaderConstantI;
void* v_fn_113_SetPixelShaderConstantB;
void* v_fn_114_GetPixelShaderConstantB;
void* v_fn_115_DrawRectPatch;
void* v_fn_116_DrawTriPatch;
void* v_fn_117_DeletePatch;
void* v_fn_118_CreateQuery;
};
struct IDirect3DDevice9 {
IDirect3DDevice9_vtable* v_vtable;
};
struct IDirect3DVertexDeclaration9 {
void** v_vtable;
};
struct IDirect3DSurface9 {
void** v_vtable;
};
struct IDirect3DIndexBuffer9 {
void** v_vtable;
};
struct IDirect3DVertexBuffer9 {
void** v_vtable;
};
struct IDirect3DTexture9 {
void** v_vtable;
};
struct D3DLOCKED_RECT {
int32_t Pitch;
void* pBits;
};
#endif

View file

@ -8,25 +8,17 @@
#include "ui/simpleframe.h" #include "ui/simpleframe.h"
DECLARE_STRUCT(FrameScript_EventObject); DECLARE_STRUCT(FrameScript_EventObject);
DECLARE_STRUCT(SIMPLEFRAMENODE);
DECLARE_STRUCT(EVENTLISTENERNODE); DECLARE_STRUCT(EVENTLISTENERNODE);
STORM_TS_LIST(SIMPLEFRAMENODE);
STORM_TS_LIST(EVENTLISTENERNODE); STORM_TS_LIST(EVENTLISTENERNODE);
// struct SIMPLEFRAMENODE : TSLinkedNode<SIMPLEFRAMENODE>
struct SIMPLEFRAMENODE {
TSLinkedNode_SIMPLEFRAMENODE b_base;
CSimpleFrame* frame;
};
// struct EVENTLISTENERNODE : TSLinkedNode<EVENTLISTENERNODE> { // struct EVENTLISTENERNODE : TSLinkedNode<EVENTLISTENERNODE> {
struct EVENTLISTENERNODE { struct EVENTLISTENERNODE {
TSLinkedNode_EVENTLISTENERNODE b_base; TSLinkedNode_EVENTLISTENERNODE b_base;
FrameScript_Object* listener; FrameScript_Object* listener;
}; };
STORM_TS_HASH(FrameScript_EventObject, HASHKEY_STRI) STORM_TS_HASH(FrameScript_EventObject, HASHKEY_STRI);
struct FrameScript_EventObject { struct FrameScript_EventObject {
TSHashObject_FrameScript_EventObject_HASHKEY_STRI b_base; TSHashObject_FrameScript_EventObject_HASHKEY_STRI b_base;

View file

@ -4,6 +4,7 @@
#include "system/types.h" #include "system/types.h"
DECLARE_STRUCT(FrameScript_Object); DECLARE_STRUCT(FrameScript_Object);
DECLARE_STRUCT(FrameScript_Object__ScriptIx);
struct FrameScript_Object { struct FrameScript_Object {
void** v_vtable; void** v_vtable;
@ -12,4 +13,10 @@ struct FrameScript_Object {
int32_t m_onEvent; int32_t m_onEvent;
}; };
// struct FrameScript_Object::ScriptIx
struct FrameScript_Object__ScriptIx {
int32_t luaRef;
int8_t* unk;
};
#endif #endif

View file

@ -3,7 +3,7 @@
#include "gx/types.h" #include "gx/types.h"
typedef struct CGxBatch CGxBatch; DECLARE_STRUCT(CGxBatch);
struct CGxBatch { struct CGxBatch {
// Member variables // Member variables

View file

@ -3,7 +3,7 @@
#include "gx/device.h" #include "gx/device.h"
#include "d3d9/device.h" #include "external/d3d9/device.h"
typedef struct CGxDeviceD3d CGxDeviceD3d; typedef struct CGxDeviceD3d CGxDeviceD3d;

View file

@ -0,0 +1,99 @@
#ifndef GX_FONT_H
#define GX_FONT_H
#include "system/types.h"
#include "tempest/rect.h"
#include "storm/list.h"
#include "storm/hash.h"
#include "gx/string.h"
DECLARE_HANDLE(HFACE);
DECLARE_STRUCT(CGxFont);
DECLARE_STRUCT(GLYPHBITMAPDATA);
DECLARE_STRUCT(CHARCODEDESC);
DECLARE_STRUCT(KERNNODE);
DECLARE_STRUCT(KERNINGHASHKEY);
DECLARE_STRUCT(TEXTURECACHE);
DECLARE_STRUCT(TEXTURECACHEROW);
STORM_TS_LIST(CGxFont);
STORM_TS_LIST(CHARCODEDESC);
STORM_TS_HASH(CHARCODEDESC, HASHKEY_NONE);
struct GLYPHBITMAPDATA {
void* m_data;
uint32_t m_dataSize;
uint32_t m_glyphWidth;
uint32_t m_glyphHeight;
uint32_t m_glyphCellWidth;
float m_glyphAdvance;
float m_glyphBearing;
uint32_t m_glyphPitch;
int32_t m_yOffset;
int32_t m_yStart;
CRect m_textureCoords;
};
// struct CHARCODEDESC : TSHashObject<CHARCODEDESC,HASHKEY_NONE>
struct CHARCODEDESC {
TSHashObject_CHARCODEDESC_HASHKEY_NONE b_base;
TSLink_CHARCODEDESC textureRowLink;
TSLink_CHARCODEDESC fontGlyphLink;
uint32_t textureNumber;
uint32_t rowNumber;
uint32_t glyphStartPixel;
uint32_t glyphEndPixel;
GLYPHBITMAPDATA bitmapData;
};
//
// struct KERNNODE : TSHashObject<KERNNODE,KERNINGHASHKEY>
struct KERNNODE {
uint32_t flags;
float proporportionalSpacing;
float fixedWidthSpacing;
};
struct KERNINGHASHKEY {
uint32_t code;
};
struct TEXTURECACHEROW {
uint32_t widestFreeSlot;
TSExplicitList_CHARCODEDESC glyphList;
};
STORM_TS_FIXED_ARRAY(TEXTURECACHEROW);
struct TEXTURECACHE {
void* m_texture;
CGxFont* m_theFace;
uint8_t m_anyDirtyGlyphs;
uint8_t pad[3];
TSFixedArray_TEXTURECACHEROW m_textureRows;
};
STORM_TS_HASH(KERNNODE, KERNINGHASHKEY);
// struct CGxFont : TSLinkedNode<CGxFont>
struct CGxFont {
TSLinkedNode_CGxFont b_base;
TSExplicitList_CGxString m_strings;
TSHashTable_CHARCODEDESC_HASHKEY_NONE m_activeCharacters;
TSHashTable_KERNNODE_KERNINGHASHKEY m_kernInfo;
TSExplicitList_CHARCODEDESC m_activeCharacterCache;
HFACE m_faceHandle;
char m_fontName[260];
uint32_t m_cellHeight;
uint32_t m_baseline;
uint32_t m_flags;
float float184;
float m_pixelsPerUnit;
TEXTURECACHE m_textureCache[8];
uint32_t m_pixelSize;
};
#endif

View file

@ -0,0 +1,50 @@
#ifndef GX_STRING_H
#define GX_STRING_H
#include "tempest/vector.h"
DECLARE_STRUCT(CGxString);
STORM_TS_LIST(CGxString);
// struct CGxString : TSLinkedNode<CGxString>
struct CGxString {
TSLinkedNode_CGxString b_base;
TSLink_CGxString m_fontStringLink;
TSLink_CGxString m_batchedStringLink;
float m_requestedFontHeight;
float m_currentFontHeight;
C3Vector m_position;
CImVector m_fontColor;
CImVector m_shadowColor;
C2Vector m_shadowOffset;
float m_blockWidth;
float m_blockHeight;
void* m_currentFace;
char* m_text;
int32_t m_textLen;
int32_t m_vertJust;
int32_t m_horzJust;
float m_spacing;
uint32_t m_flags;
uint32_t m_texturePagesUsed;
int32_t m_textureEvicted;
uint32_t m_lastGradientStart;
uint32_t m_lastGradientLength;
C3Vector m_viewTranslation;
float m_scale;
uint32_t m_hyperlinkInfo[4];
uint32_t dword90;
uint32_t dword94;
uint32_t dword98;
uint32_t dword9C;
uint32_t dwordA0;
uint32_t dwordA4;
uint32_t dwordA8;
uint32_t dwordAC;
int32_t m_intB0;
void* m_textLines[8];
int32_t m_intD4;
};
#endif

View file

@ -0,0 +1,30 @@
#ifndef GX_STRING_BATCH_H
#define GX_STRING_BATCH_H
#include "storm/list.h"
#include "storm/hash.h"
#include "gx/font.h"
DECLARE_STRUCT(CGxStringBatch);
DECLARE_STRUCT(BATCHEDRENDERFONTDESC);
STORM_TS_HASH(BATCHEDRENDERFONTDESC, HASHKEY_PTR);
STORM_TS_LIST(CGxStringBatch);
// struct BATCHEDRENDERFONTDESC : TSHashObject<BATCHEDRENDERFONTDESC, HASHKEY_PTR>
struct BATCHEDRENDERFONTDESC {
TSHashObject_BATCHEDRENDERFONTDESC_HASHKEY_PTR b_base;
CGxFont* m_face;
// STORM_EXPLICIT_LIST(CGxString, m_batchedStringLink) m_strings;
TSExplicitList_CGxString m_strings;
};
// CGxStringBatch : TSLinkedNode<CGxStringBatch>
struct CGxStringBatch {
TSLinkedNode_CGxStringBatch b_base;
TSHashTable_BATCHEDRENDERFONTDESC_HASHKEY_PTR m_fontBatch;
uint32_t m_flags;
};
#endif

View file

@ -2,18 +2,25 @@
#include "system/detect.h" #include "system/detect.h"
// Types // Types (include all files to expose them in the disassembler)
// external types (c-ified)
#include "external/d3d9/caps.h"
#include "external/d3d9/device.h"
#include "async/object.h"
#include "async/queue.h"
#include "common/array.h"
#include "common/handle.h" #include "common/handle.h"
#include "common/instance.h" #include "common/instance.h"
#include "common/datarecycler.h" #include "common/datarecycler.h"
#include "common/status.h" #include "common/status.h"
#include "common/refcount.h"
#include "common/rcstring.h"
#include "cursor/types.h" #include "cursor/types.h"
#include "d3d9/caps.h"
#include "d3d9/device.h"
#include "event/types.h" #include "event/types.h"
#include "event/context.h" #include "event/context.h"
#include "event/handler.h" #include "event/handler.h"
@ -25,6 +32,7 @@
#include "framescript/object.h" #include "framescript/object.h"
#include "framescript/event_object.h" #include "framescript/event_object.h"
#include "gx/batch.h"
#include "gx/buffer.h" #include "gx/buffer.h"
#include "gx/caps.h" #include "gx/caps.h"
#include "gx/device.h" #include "gx/device.h"
@ -32,6 +40,8 @@
#include "gx/matrix_stack.h" #include "gx/matrix_stack.h"
#include "gx/shader.h" #include "gx/shader.h"
#include "gx/state_bom.h" #include "gx/state_bom.h"
#include "gx/string.h"
#include "gx/stringbatch.h"
#include "gx/types.h" #include "gx/types.h"
#include "gx/batch.h" #include "gx/batch.h"
#include "gx/d3d9.h" #include "gx/d3d9.h"
@ -41,7 +51,9 @@
#include "storm/array.h" #include "storm/array.h"
#include "storm/list.h" #include "storm/list.h"
#include "storm/hash.h" #include "storm/hash.h"
#include "storm/queue.h"
#include "storm/region.h" #include "storm/region.h"
#include "storm/thread.h"
#include "tempest/box.h" #include "tempest/box.h"
#include "tempest/matrix.h" #include "tempest/matrix.h"
@ -53,9 +65,19 @@
#include "tempest/vector.h" #include "tempest/vector.h"
#include "texture/blp.h" #include "texture/blp.h"
#include "texture/texture.h"
#include "texture/tga.h" #include "texture/tga.h"
#include "ui/backdropgenerator.h"
#include "ui/layoutframe.h"
#include "ui/renderbatch.h"
#include "ui/scriptobject.h"
#include "ui/scriptregion.h"
#include "ui/simplebatchedmesh.h"
#include "ui/simpleframe.h" #include "ui/simpleframe.h"
#include "ui/simpleregion.h"
#include "ui/simpletexture.h"
#include "ui/simpletop.h"
// include files that define the use of template classes for standard library types // include files that define the use of template classes for standard library types
// template classes for whoa types should be entered immediately after where the type is // template classes for whoa types should be entered immediately after where the type is

View file

@ -7,8 +7,8 @@
#include "storm/list.h" #include "storm/list.h"
#define STORM_TS_HASH(T, K) \ #define STORM_TS_HASH(T, K) \
STORM_TS_LIST(T) \ STORM_TS_LIST(T); \
STORM_TS_GROWABLE_ARRAY(TSList_##T) \ STORM_TS_GROWABLE_ARRAY(TSList_##T); \
typedef struct TSHashTable_##T##_##K TSHashTable_##T##_##K; \ typedef struct TSHashTable_##T##_##K TSHashTable_##T##_##K; \
typedef struct TSHashObject_##T##_##K TSHashObject_##T##_##K; \ typedef struct TSHashObject_##T##_##K TSHashObject_##T##_##K; \
struct TSHashTable_##T##_##K { \ struct TSHashTable_##T##_##K { \
@ -22,7 +22,7 @@ struct TSHashObject_##T##_##K { \
TSLink_##T m_linktoslot; \ TSLink_##T m_linktoslot; \
TSLink_##T m_linktofull; \ TSLink_##T m_linktofull; \
K m_key; \ K m_key; \
}; }
DECLARE_STRUCT(HASHKEY_PTR); DECLARE_STRUCT(HASHKEY_PTR);
DECLARE_STRUCT(HASHKEY_STR); DECLARE_STRUCT(HASHKEY_STR);

View file

@ -3,22 +3,18 @@
#include "system/types.h" #include "system/types.h"
// to make an object self referential
// forward-declare 'struct Object_type' as 'Object_type'
// then define 'struct Object_type'
// TSLink<T> // TSLink<T>
#define STORM_TS_LINK(T) typedef struct TSLink_##T TSLink_##T; \ #define STORM_TS_LINK(T) typedef struct TSLink_##T TSLink_##T; \
struct TSLink_##T { \ struct TSLink_##T { \
TSLink_##T* m_prevlink; \ TSLink_##T* m_prevlink; \
T* m_next; \ T* m_next; \
}; }
// TSList<T> // TSList<T>
// TSExplicitList<T> // TSExplicitList<T>
// TSLinkedNode<T> // TSLinkedNode<T>
#define STORM_TS_LIST(T) \ #define STORM_TS_LIST(T) \
STORM_TS_LINK(T) \ STORM_TS_LINK(T); \
typedef struct TSList_##T TSList_##T; \ typedef struct TSList_##T TSList_##T; \
typedef struct TSList_##T TSExplicitList_##T; \ typedef struct TSList_##T TSExplicitList_##T; \
typedef struct TSLinkedNode_##T TSLinkedNode_##T; \ typedef struct TSLinkedNode_##T TSLinkedNode_##T; \
@ -28,6 +24,7 @@ struct TSList_##T { \
}; \ }; \
struct TSLinkedNode_##T { \ struct TSLinkedNode_##T { \
TSLink_##T m_link; \ TSLink_##T m_link; \
}; }; \
typedef TSList_##T TSExplicitList_##T
#endif #endif

View file

@ -23,9 +23,9 @@ typedef struct TSTimerPriority_##T TSTimerPriority_##T; \
struct TSTimerPriority_##T { \ struct TSTimerPriority_##T { \
CSBasePriority b_base; \ CSBasePriority b_base; \
T m_val; \ T m_val; \
}; }
#define STORM_TS_PRIORITY_QUEUE(T) \ #define STORM_TS_PRIORITY_QUEUE(T) \
typedef CSBasePriorityQueue TSPriorityQueue_##T; typedef CSBasePriorityQueue TSPriorityQueue_##T
#endif #endif

View file

@ -0,0 +1,36 @@
#ifndef TEXTURE_TEXTURE_H
#define TEXTURE_TEXTURE_H
#include "common/handle.h"
#include "common/status.h"
#include "gx/types.h"
#include "gx/texture.h"
#include "async/object.h"
DECLARE_STRUCT(CTexture);
// struct CTexture : CHandleObject
struct CTexture {
CHandleObject b_base;
uint32_t dword8[6];
CGxTexFlags unkTexFlags1;
uint32_t dword10;
uint16_t flags;
int8_t bestMip;
int8_t alphaBits;
CStatus loadStatus;
CAsyncObject* asyncObject;
CGxTex* gxTex;
int32_t gxTexTarget;
uint16_t gxWidth;
uint16_t gxHeight;
EGxTexFormat gxTexFormat;
EGxTexFormat dataFormat;
CGxTexFlags gxTexFlags;
void* atlas;
uint32_t atlasBlockIndex;
uint32_t dword50[2];
char filename[260];
};
#endif

View file

@ -0,0 +1,37 @@
#ifndef UI_BACKDROP_GENERATOR_H
#define UI_BACKDROP_GENERATOR_H
#include "tempest/vector.h"
#include "ui/simpletexture.h"
struct CBackdropGenerator {
CSimpleTexture* m_backgroundTexture;
CSimpleTexture* m_leftTexture;
CSimpleTexture* m_rightTexture;
CSimpleTexture* m_topTexture;
CSimpleTexture* m_bottomTexture;
CSimpleTexture* m_topLeftTexture;
CSimpleTexture* m_topRightTexture;
CSimpleTexture* m_bottomLeftTexture;
CSimpleTexture* m_bottomRightTexture;
uint32_t dword24;
uint32_t dword28;
uint32_t dword2C;
uint32_t dword30;
uint32_t dword34;
uint32_t dword38;
uint32_t dword3C;
uint32_t dword40;
uint32_t dword44;
uint32_t dword48;
uint32_t dword4C;
uint32_t dword50;
uint32_t dword54;
uint32_t dword58;
uint32_t dword5C;
uint32_t dword60;
CImVector m_borderColor;
uint32_t dword68;
};
#endif

View file

@ -0,0 +1,59 @@
#ifndef UI_LAYOUT_FRAME_H
#define UI_LAYOUT_FRAME_H
#include "tempest/rect.h"
#include "storm/list.h"
DECLARE_STRUCT(CLayoutFrame__FRAMENODE);
DECLARE_STRUCT(CLayoutFrame_vtable);
DECLARE_STRUCT(CLayoutFrame);
STORM_TS_LIST(CLayoutFrame__FRAMENODE);
struct CLayoutFrame__FRAMENODE {
TSLinkedNode_CLayoutFrame__FRAMENODE b_base;
CLayoutFrame* frame;
uint32_t dep;
};
struct CLayoutFrame_vtable {
void* v_fn_00;
void* v_fn_01;
void* v_fn_02;
void* v_fn_03;
void* v_fn_04;
void* v_fn_05;
void* v_fn_06;
void* v_fn_07;
void* v_fn_08;
void* v_fn_09;
void* v_fn_10;
void* v_fn_11;
void* v_fn_12;
void* v_fn_13;
void* v_fn_14;
void* v_fn_15;
void* v_fn_16;
void* v_fn_17;
void* v_fn_18;
};
struct CLayoutFrame {
CLayoutFrame_vtable* v_vtable;
uint32_t resizeLink[2];
void* m_points[9];
TSList_CLayoutFrame__FRAMENODE m_resizeList;
uint32_t m_guard;
uint32_t m_flags;
CRect m_rect;
float m_width;
float m_height;
float m_layoutScale;
float m_layoutDepth;
float float64;
float float68;
float float6C;
float float70;
};
#endif

View file

@ -0,0 +1,28 @@
#ifndef UI_RENDER_BATCH_H
#define UI_RENDER_BATCH_H
#include "system/types.h"
#include "ui/simplebatchedmesh.h"
#include "gx/stringbatch.h"
DECLARE_STRUCT(CRenderBatch);
DECLARE_STRUCT(RENDERCALLBACKNODE);
STORM_TS_LIST(RENDERCALLBACKNODE);
STORM_TS_LIST(CRenderBatch);
// struct RENDERCALLBACKNODE : TSLinkedNode<RENDERCALLBACKNODE>
struct RENDERCALLBACKNODE {
void* callback;
void* param;
};
struct CRenderBatch {
uint32_t m_count;
TSGrowableArray_CSimpleBatchedMesh m_texturelist;
CGxStringBatch* m_stringbatch;
TSList_RENDERCALLBACKNODE m_callbacks;
TSLink_CRenderBatch renderLink;
};
#endif

View file

@ -0,0 +1,15 @@
#ifndef UI_SCRIPT_OBJECT_H
#define UI_SCRIPT_OBJECT_H
#include "common/rcstring.h"
#include "framescript/object.h"
DECLARE_STRUCT(CScriptObject);
// struct CScriptObject : FrameScript_Object {
struct CScriptObject {
FrameScript_Object b_base;
RCString m_name;
};
#endif

View file

@ -0,0 +1,21 @@
#ifndef UI_SCRIPT_REGION_H
#define UI_SCRIPT_REGION_H
#include "ui/simpleframe.h"
#include "ui/scriptobject.h"
#include "ui/layoutframe.h"
DECLARE_STRUCT(CScriptRegion);
// forward declare to avoid problems
DECLARE_STRUCT(CSimpleFrame);
// struct CScriptRegion : CScriptObject, CLayoutFrame {
struct CScriptRegion {
CScriptObject b_base_01;
CLayoutFrame b_base_02;
CSimpleFrame* m_parent;
void* m_animGroups;
uint32_t scriptregion_dword8;
};
#endif

View file

@ -0,0 +1,29 @@
#ifndef UI_SIMPLE_BATCHED_MESH_H
#define UI_SIMPLE_BATCHED_MESH_H
#include "texture/texture.h"
#include "gx/texture.h"
#include "gx/shader.h"
#include "tempest/vector.h"
DECLARE_STRUCT(CSimpleBatchedMesh);
struct CSimpleBatchedMesh {
CTexture* texture;
CGxTex* textureID;
EGxBlend alphaMode;
CGxShader* shader;
int32_t posCount;
C3Vector* position;
C2Vector* texCoord;
CImVector* color;
int32_t colorCount;
uint16_t* indices;
int32_t idxCount;
int32_t onAtlas;
float atlasScale;
C2Vector atlasOffset;
};
STORM_TS_GROWABLE_ARRAY(CSimpleBatchedMesh);
#endif

View file

@ -1,9 +1,88 @@
#ifndef UI_SIMPLE_FRAME_H #ifndef UI_SIMPLE_FRAME_H
#define UI_SIMPLE_FRAME_H #define UI_SIMPLE_FRAME_H
DECLARE_STRUCT(CSimpleFrame); #include "storm/list.h"
#include "tempest/rect.h"
#include "tempest/vector.h"
DECLARE_STRUCT(CSimpleFrame);
DECLARE_STRUCT(SIMPLEFRAMENODE);
STORM_TS_LIST(SIMPLEFRAMENODE);
#include "ui/scriptregion.h"
#include "ui/backdropgenerator.h"
#include "ui/renderbatch.h"
DECLARE_STRUCT(CBackdropGenerator);
// struct CSimpleFrame : CScriptRegion {
struct CSimpleFrame { struct CSimpleFrame {
CScriptRegion b_base;
void* m_top;
CSimpleFrame* m_tooltip;
CScriptRegion* m_titleRegion;
int32_t m_intAC;
int32_t m_id;
uint32_t m_flags;
float m_frameScale;
uint32_t dwordBC;
uint32_t dwordC0;
float m_floatC4;
float m_floatC8;
uint32_t dwordCC;
int32_t m_strata;
int32_t m_level;
uint32_t m_eventmask;
int32_t m_shown;
int32_t m_visible;
CRect m_hitRect;
CRect m_hitOffset;
uint32_t simpleframe_unk9[4];
int32_t m_highlightLocked;
uint32_t m_lookForDrag;
int32_t m_mouseDown;
int32_t m_dragging;
int32_t m_dragButton;
C2Vector m_clickPoint;
int32_t m_loading;
FrameScript_Object__ScriptIx m_onLoad;
FrameScript_Object__ScriptIx m_onSizeChanged;
FrameScript_Object__ScriptIx m_onUpdate;
FrameScript_Object__ScriptIx m_onShow;
FrameScript_Object__ScriptIx m_onHide;
FrameScript_Object__ScriptIx m_onEnter;
FrameScript_Object__ScriptIx m_onLeave;
FrameScript_Object__ScriptIx m_onMouseDown;
FrameScript_Object__ScriptIx m_onMouseUp;
FrameScript_Object__ScriptIx m_onMouseWheel;
FrameScript_Object__ScriptIx m_onDragStart;
FrameScript_Object__ScriptIx m_onDragStop;
FrameScript_Object__ScriptIx m_onReceiveDrag;
FrameScript_Object__ScriptIx m_onChar;
FrameScript_Object__ScriptIx m_onKeyDown;
FrameScript_Object__ScriptIx m_onKeyUp;
FrameScript_Object__ScriptIx m_onAttributeChange;
FrameScript_Object__ScriptIx m_onEnable;
FrameScript_Object__ScriptIx m_onDisable;
uint32_t m_attributes[10];
int32_t m_drawenabled[5];
CBackdropGenerator* m_backdrop;
uint32_t m_regions[3];
uint32_t m_drawlayers[15];
uint32_t m_batchDirty;
void* m_batch[5];
TSExplicitList_CRenderBatch m_renderList;
uint32_t m_children[3];
uint32_t m_framesLink[2];
uint32_t m_destroyedLink[2];
uint32_t m_strataLink[2];
};
// struct SIMPLEFRAMENODE : TSLinkedNode<SIMPLEFRAMENODE>
struct SIMPLEFRAMENODE {
TSLinkedNode_SIMPLEFRAMENODE b_base;
CSimpleFrame* frame;
}; };
#endif #endif

View file

@ -0,0 +1,21 @@
#ifndef UI_SIMPLE_REGION_H
#define UI_SIMPLE_REGION_H
#include "ui/scriptregion.h"
DECLARE_STRUCT(CSimpleRegion);
// struct CSimpleRegion : CScriptRegion
struct CSimpleRegion {
CScriptRegion b_base;
int32_t m_numAlpha;
uint8_t m_alpha[4];
int32_t m_numColor;
CImVector m_color[4];
uint32_t m_regionLink[2];
uint32_t m_drawLink[2];
uint16_t m_regionFlags;
uint16_t padding;
};
#endif

View file

@ -0,0 +1,22 @@
#ifndef UI_SIMPLE_TEXTURE_H
#define UI_SIMPLE_TEXTURE_H
#include "ui/simpleregion.h"
#include "texture/texture.h"
DECLARE_STRUCT(CSimpleTexture);
// struct CSimpleTexture : CSimpleRegion {
struct CSimpleTexture {
CSimpleRegion b_base;
uint32_t dwordD0;
CTexture* m_texture;
uint32_t m_alphaMode;
void* m_shader;
C3Vector m_position[4];
C3Vector m_position2[4];
C2Vector m_texCoord[4];
uint32_t dword160;
};
#endif

View file

@ -0,0 +1,67 @@
#ifndef UI_SIMPLE_TOP_H
#define UI_SIMPLE_TOP_H
#include "event/types.h"
#include "ui/layoutframe.h"
#include "ui/simpleframe.h"
#include "tempest/vector.h"
#include "common/array.h"
DECLARE_ENUM(FRAMEPOINT);
DECLARE_STRUCT(FRAMEPRIORITY);
DECLARE_STRUCT(CSimpleTop);
DECLARE_STRUCT(CSimpleTop__frame_layout);
enum FRAMEPOINT {
FRAMEPOINT_TOPLEFT = 0x0,
FRAMEPOINT_TOP = 0x1,
FRAMEPOINT_TOPRIGHT = 0x2,
FRAMEPOINT_LEFT = 0x3,
FRAMEPOINT_CENTER = 0x4,
FRAMEPOINT_RIGHT = 0x5,
FRAMEPOINT_BOTTOMLEFT = 0x6,
FRAMEPOINT_BOTTOM = 0x7,
FRAMEPOINT_BOTTOMRIGHT = 0x8,
FRAMEPOINT_NUMPOINTS = 0x9
};
struct CSimpleTop__frame_layout {
int32_t enabled;
CSimpleFrame* frame;
FRAMEPOINT anchor;
C2Vector last;
float float14;
};
struct FRAMEPRIORITY {
CSimpleFrame* frame;
uint32_t priority;
};
COMMON_SIMPLE_SORTED_ARRAY_POINTER_TO(FRAMEPRIORITY);
struct CSimpleTop {
CLayoutFrame b_base;
void* m_screenLayer;
CSimpleFrame* m_mouseFocus;
CSimpleFrame* m_mouseCapture;
uint32_t m_keydownCapture[787];
TSList_SIMPLEFRAMENODE m_frames;
uint32_t m_destroyed[3];
void* m_strata[9];
CSimpleTop__frame_layout m_layout;
CSimpleSortedArray_pointer_to_FRAMEPRIORITY m_eventqueue[5][9];
int32_t m_checkFocus;
EVENT_DATA_MOUSE m_mousePosition;
uint32_t dword1234;
void* m_mouseButtonCallback;
void* m_mouseMoveCallback;
void* m_displaySizeCallback;
uint32_t dword1244;
void* m_keyEventCallback;
uint32_t dword124C;
uint32_t dword1250;
uint32_t dword1254;
};
#endif

View file

@ -1 +1 @@
CGameUI__Initialize 0052A980 f end=0052AEC6 CGGameUI__Initialize 0052A980 f end=0052AEC6

View file

@ -1,6 +1,5 @@
CGxDevice__CGxDevice 00688690 f end=0068903F CGxDevice__CGxDevice 00688690 f end=0068903F
CGxDevice__MasterEnableSet 00685EB0 f end=00685F33 CGxDevice__MasterEnableSet 00685EB0 f end=00685F33
CGxDevice__IRsForceUpdate 006859E0 f end=00685A65
CGxDevice__NewOpenGl 0068BF20 f end=0068BF44 CGxDevice__NewOpenGl 0068BF20 f end=0068BF44
CGxDevice__NewD3d 00689EF0 f end=00689F14 CGxDevice__NewD3d 00689EF0 f end=00689F14
CGxDevice__NewD3d9Ex 0068C220 f end=0068C244 CGxDevice__NewD3d9Ex 0068C220 f end=0068C244

View file

@ -56,3 +56,4 @@ CGxDeviceD3d__IShaderCreateVertex 006AA0D0 f end=006AA125
CGxDeviceD3d__ShaderCreate 006AA130 f end=006AA18A CGxDeviceD3d__ShaderCreate 006AA130 f end=006AA18A
CGxDeviceD3d__IBindVertexShader 006AA2F0 f end=006AA346 CGxDeviceD3d__IBindVertexShader 006AA2F0 f end=006AA346
CGxDeviceD3d__IReleaseD3dResources 00690150 f end=00690223 CGxDeviceD3d__IReleaseD3dResources 00690150 f end=00690223
CGxDeviceD3d__ICursorClip 0069FE10 f end=0069FE57

View file

@ -130,6 +130,7 @@ GxBufUnlock 004829F0 f end=00482A13
GxBufStream 00482A20 f end=00482A3C GxBufStream 00482A20 f end=00482A3C
GxDraw 00482A40 f end=00482A5D GxDraw 00482A40 f end=00482A5D
GxCapsWindowSizeInScreenCoords 00493BF0 f end=00493C09 GxCapsWindowSizeInScreenCoords 00493BF0 f end=00493C09
CSimpleTop__OnLayerRender 00495410 f end=0049546A
ScrnLayerSetRect 004A8500 f end=004A8522 ScrnLayerSetRect 004A8500 f end=004A8522
OnPaint 004A8720 f end=004A8B58 OnPaint 004A8720 f end=004A8B58
ScrnLayerCreate 004A8BB0 f end=004A8C83 ScrnLayerCreate 004A8BB0 f end=004A8C83
@ -574,7 +575,7 @@ Script_AcceptAreaSpiritHeal 005262D0 f end=005262D8
Script_TargetTotem 005262E0 f end=00526362 Script_TargetTotem 005262E0 f end=00526362
Script_InteractUnit 00527F00 f end=00527FD4 Script_InteractUnit 00527F00 f end=00527FD4
Script_LoadAddOn 00528920 f end=00528AE1 Script_LoadAddOn 00528920 f end=00528AE1
CGameUI__Initialize 0052A980 f end=0052AEC6 CGGameUI__Initialize 0052A980 f end=0052AEC6
Script_RegisterForSave 0052B470 f end=0052B4D4 Script_RegisterForSave 0052B470 f end=0052B4D4
Script_RegisterForSavePerCharacter 0052B4E0 f end=0052B544 Script_RegisterForSavePerCharacter 0052B4E0 f end=0052B544
Script_GetNumPartyMembers 0052C110 f end=0052C187 Script_GetNumPartyMembers 0052C110 f end=0052C187
@ -2130,7 +2131,6 @@ CGxDevice__Log 00684C20 f end=00684C3E
CGxDevice__Log_CGxCaps 00684C40 f end=00684D07 ; CGxDevice::Log(CGxCaps const&) const CGxDevice__Log_CGxCaps 00684C40 f end=00684D07 ; CGxDevice::Log(CGxCaps const&) const
CGxDevice__Log 00684D10 f end=00684D6C CGxDevice__Log 00684D10 f end=00684D6C
CGxDevice__IRsDirty 00685970 f end=006859DB CGxDevice__IRsDirty 00685970 f end=006859DB
CGxDevice__IRsForceUpdate 006859E0 f end=00685A65
CGxDevice__IRsForceUpdate_EGxRenderState 006859E0 f end=00685A65 ; CGxDevice::IRsForceUpdate(EGxRenderState) CGxDevice__IRsForceUpdate_EGxRenderState 006859E0 f end=00685A65 ; CGxDevice::IRsForceUpdate(EGxRenderState)
CGxDevice__IRsForceUpdate 00685A70 f end=00685B4E ; CGxDevice::IRsForceUpdate() CGxDevice__IRsForceUpdate 00685A70 f end=00685B4E ; CGxDevice::IRsForceUpdate()
CGxDevice__IRsSync 00685B50 f end=00685BFE CGxDevice__IRsSync 00685B50 f end=00685BFE
@ -2172,6 +2172,7 @@ CGxDeviceD3d__ICreateD3d 00690680 f end=00690742
CGxDeviceD3d__DeviceCreate_WindowProc_CGxFormat 00690750 f end=00690821 CGxDeviceD3d__DeviceCreate_WindowProc_CGxFormat 00690750 f end=00690821
CGxDeviceD3d__ICreateD3dVB 0069FB00 f end=0069FB68 CGxDeviceD3d__ICreateD3dVB 0069FB00 f end=0069FB68
CGxDeviceD3d__CreatePoolAPI 0069FB70 f end=0069FBB8 CGxDeviceD3d__CreatePoolAPI 0069FB70 f end=0069FBB8
CGxDeviceD3d__ICursorClip 0069FE10 f end=0069FE57
CGxDeviceD3d__ICursorDestroy 006A00C0 f end=006A0102 CGxDeviceD3d__ICursorDestroy 006A00C0 f end=006A0102
CGxDeviceD3d__WindowProcD3d 006A0360 f end=006A0834 CGxDeviceD3d__WindowProcD3d 006A0360 f end=006A0834
CGxDeviceD3d9Ex__CGxDeviceD3d9Ex 006A1A90 f end=006A1C24 CGxDeviceD3d9Ex__CGxDeviceD3d9Ex 006A1A90 f end=006A1C24

View file

@ -0,0 +1 @@
CSimpleTop__OnLayerRender 00495410 f end=0049546A

View file

@ -1056,6 +1056,14 @@
"icount": "0x0", "icount": "0x0",
"parent": "0x93bf0" "parent": "0x93bf0"
}, },
{
"manual": true,
"start": "0x95410",
"end": "0x95469",
"module": "wow.exe",
"icount": "0x0",
"parent": "0x95410"
},
{ {
"manual": true, "manual": true,
"start": "0xa8500", "start": "0xa8500",
@ -17064,14 +17072,6 @@
"icount": "0x0", "icount": "0x0",
"parent": "0x2859e0" "parent": "0x2859e0"
}, },
{
"manual": true,
"start": "0x2859e0",
"end": "0x285a64",
"module": "wow.exe",
"icount": "0x0",
"parent": "0x2859e0"
},
{ {
"manual": true, "manual": true,
"start": "0x285a70", "start": "0x285a70",
@ -17392,6 +17392,14 @@
"icount": "0x0", "icount": "0x0",
"parent": "0x29fb70" "parent": "0x29fb70"
}, },
{
"manual": true,
"start": "0x29fe10",
"end": "0x29fe56",
"module": "wow.exe",
"icount": "0x0",
"parent": "0x29fe10"
},
{ {
"manual": true, "manual": true,
"start": "0x2a00c0", "start": "0x2a00c0",
@ -22026,6 +22034,12 @@
"text": "GxCapsWindowSizeInScreenCoords", "text": "GxCapsWindowSizeInScreenCoords",
"address": "0x93bf0" "address": "0x93bf0"
}, },
{
"manual": true,
"module": "wow.exe",
"text": "CSimpleTop__OnLayerRender",
"address": "0x95410"
},
{ {
"manual": true, "manual": true,
"module": "wow.exe", "module": "wow.exe",
@ -24693,7 +24707,7 @@
{ {
"manual": true, "manual": true,
"module": "wow.exe", "module": "wow.exe",
"text": "CGameUI__Initialize", "text": "CGGameUI__Initialize",
"address": "0x12a980" "address": "0x12a980"
}, },
{ {
@ -34032,12 +34046,6 @@
"text": "CGxDevice__IRsForceUpdate_EGxRenderState", "text": "CGxDevice__IRsForceUpdate_EGxRenderState",
"address": "0x2859e0" "address": "0x2859e0"
}, },
{
"manual": true,
"module": "wow.exe",
"text": "CGxDevice__IRsForceUpdate",
"address": "0x2859e0"
},
{ {
"manual": true, "manual": true,
"module": "wow.exe", "module": "wow.exe",
@ -34278,6 +34286,12 @@
"text": "CGxDeviceD3d__CreatePoolAPI", "text": "CGxDeviceD3d__CreatePoolAPI",
"address": "0x29fb70" "address": "0x29fb70"
}, },
{
"manual": true,
"module": "wow.exe",
"text": "CGxDeviceD3d__ICursorClip",
"address": "0x29fe10"
},
{ {
"manual": true, "manual": true,
"module": "wow.exe", "module": "wow.exe",

File diff suppressed because it is too large Load diff