mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-27 10:24:18 +00:00
Reccmp: Use symbol names in asm output (#433)
* Name substitution for reccmp asm output * Decomp marker corrections * Fix a few annotations * Fix IslePathActor dtor * Fix audio presenter * Fix LegoEntity::Create * Fix Pizza and related * Fix path part * Add missing annotations * Add missing annotations * Add more missing annotations * Fix MxNotificationParam * More fixes * More fixes * Add missing annotations * Fixes * More annotations * More annotations * More annotations * More annotations * Fixes and annotations * Find imports and thunk functions * Fix more bugs * Add some markers for LEGO1 imports, fix SIZE comment * Add more annotations * Rename annotation * Fix bugs and annotations * Fix bug * Order * Update legoanimpresenter.h * Re-enable print-rec-addr option --------- Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
@@ -10,20 +10,20 @@ MxS32 g_mxcoreCount[101] = {0, -6643, -5643, -5058, -4643, -4321, -4058, -38
|
||||
-358, -340, -321, -304, -286, -268, -251, -234, -217, -200, -184, -168, -152,
|
||||
-136, -120, -104, -89, -74, -58, -43, -29, -14, 0};
|
||||
|
||||
// GLOBAL: LEGO1 0x10101eac
|
||||
const char* g_parseExtraTokens = ":;";
|
||||
// GLOBAL: LEGO1 0x10102048
|
||||
const char* g_strACTION = "ACTION";
|
||||
|
||||
// GLOBAL: LEGO1 0x10101edc
|
||||
const char* g_strWORLD = "WORLD";
|
||||
|
||||
// GLOBAL: LEGO1 0x10101f20
|
||||
const char* g_strSOUND = "SOUND";
|
||||
|
||||
// GLOBAL: LEGO1 0x10101f58
|
||||
// GLOBAL: LEGO1 0x1010209c
|
||||
const char* g_strOBJECT = "OBJECT";
|
||||
|
||||
// GLOBAL: LEGO1 0x10102040
|
||||
const char* g_strACTION = "ACTION";
|
||||
// GLOBAL: LEGO1 0x101020b0
|
||||
const char* g_strSOUND = "SOUND";
|
||||
|
||||
// GLOBAL: LEGO1 0x101020cc
|
||||
const char* g_strVISIBILITY = "VISIBILITY";
|
||||
|
||||
// GLOBAL: LEGO1 0x101020d0
|
||||
const char* g_strWORLD = "WORLD";
|
||||
|
||||
// GLOBAL: LEGO1 0x101020e4
|
||||
const char* g_parseExtraTokens = ":;";
|
||||
|
||||
@@ -20,4 +20,10 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000e940
|
||||
// IsleActor::~IsleActor
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000e990
|
||||
// IsleActor::`scalar deleting destructor'
|
||||
|
||||
#endif // ISLEACTOR_H
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
class IslePathActor : public LegoPathActor {
|
||||
public:
|
||||
IslePathActor();
|
||||
|
||||
// FUNCTION: LEGO1 0x10002e10
|
||||
inline virtual ~IslePathActor() override { IslePathActor::Destroy(TRUE); } // vtable+0x0
|
||||
|
||||
// FUNCTION: LEGO1 0x10002ea0
|
||||
@@ -29,6 +31,7 @@ public:
|
||||
}
|
||||
|
||||
virtual MxResult Create(MxDSAction& p_dsAction) override; // vtable+0x18
|
||||
virtual void Destroy(MxBool p_fromDestructor) override; // vtable+0x1c
|
||||
// FUNCTION: LEGO1 0x10002e70
|
||||
virtual MxU32 VTable0xcc() { return 0; } // vtable+0xcc
|
||||
// FUNCTION: LEGO1 0x10002df0
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
class LegoActor : public LegoEntity {
|
||||
public:
|
||||
LegoActor();
|
||||
virtual ~LegoActor() override;
|
||||
|
||||
// FUNCTION: LEGO1 0x1002d210
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
@@ -43,4 +44,7 @@ private:
|
||||
MxU8 m_unk0x74; // 0x74
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1002d300
|
||||
// LegoActor::`scalar deleting destructor'
|
||||
|
||||
#endif // LEGOACTOR_H
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
class LegoAnimPresenter : public MxVideoPresenter {
|
||||
public:
|
||||
LegoAnimPresenter();
|
||||
virtual ~LegoAnimPresenter() override;
|
||||
|
||||
// FUNCTION: LEGO1 0x10068530
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
@@ -25,4 +26,7 @@ private:
|
||||
void Init();
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10068650
|
||||
// LegoAnimPresenter::`scalar deleting destructor'
|
||||
|
||||
#endif // LEGOANIMPRESENTER_H
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <stdlib.h>
|
||||
|
||||
// VTABLE: LEGO1 0x100d6aa0
|
||||
// SIZE 0x20
|
||||
class LegoEventNotificationParam : public MxNotificationParam {
|
||||
public:
|
||||
inline LegoEventNotificationParam() : MxNotificationParam(PARAM_NONE, NULL) {}
|
||||
@@ -22,7 +23,6 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
virtual ~LegoEventNotificationParam() override {} // vtable+0x0 (scalar deleting destructor)
|
||||
inline MxU8 GetKey() const { return m_key; }
|
||||
|
||||
protected:
|
||||
@@ -33,4 +33,10 @@ protected:
|
||||
MxU32 m_unk0x1c; // 0x1c
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10028770
|
||||
// LegoEventNotificationParam::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100287e0
|
||||
// LegoEventNotificationParam::~LegoEventNotificationParam
|
||||
|
||||
#endif // LEGOEVENTNOTIFICATIONPARAM_H
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
class LegoHideAnimPresenter : public LegoLoopingAnimPresenter {
|
||||
public:
|
||||
LegoHideAnimPresenter();
|
||||
virtual ~LegoHideAnimPresenter() override;
|
||||
|
||||
// FUNCTION: LEGO1 0x1006d880
|
||||
inline const char* ClassName() const override // vtable+0xc
|
||||
@@ -26,4 +27,7 @@ private:
|
||||
void Init();
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1006d9d0
|
||||
// LegoHideAnimPresenter::`scalar deleting destructor'
|
||||
|
||||
#endif // LEGOHIDEANIMPRESENTER_H
|
||||
|
||||
@@ -94,6 +94,9 @@ public:
|
||||
// TEMPLATE: LEGO1 0x1005bb80
|
||||
// MxCollection<LegoEventNotificationParam>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x1005bbe0
|
||||
// MxCollection<LegoEventNotificationParam>::~MxCollection<LegoEventNotificationParam>
|
||||
|
||||
// TEMPLATE: LEGO1 0x1005bc30
|
||||
// MxCollection<LegoEventNotificationParam>::Destroy
|
||||
|
||||
@@ -109,6 +112,9 @@ public:
|
||||
// SYNTHETIC: LEGO1 0x1005beb0
|
||||
// LegoEventQueue::`scalar deleting destructor'
|
||||
|
||||
// TEMPLATE: LEGO1 0x1005bf20
|
||||
// MxQueue<LegoEventNotificationParam>::~MxQueue<LegoEventNotificationParam>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1005bf70
|
||||
// MxQueue<LegoEventNotificationParam>::`scalar deleting destructor'
|
||||
|
||||
|
||||
@@ -21,4 +21,10 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1006d000
|
||||
// LegoLoopingAnimPresenter::~LegoLoopingAnimPresenter
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000f440
|
||||
// LegoLoopingAnimPresenter::`scalar deleting destructor'
|
||||
|
||||
#endif // LEGOLOOPINGANIMPRESENTER_H
|
||||
|
||||
@@ -18,7 +18,8 @@ class MxVariableTable;
|
||||
class LegoStream {
|
||||
public:
|
||||
LegoStream() : m_mode(0) {}
|
||||
inline virtual ~LegoStream(){};
|
||||
// FUNCTION: LEGO1 0x10045ad0
|
||||
inline virtual ~LegoStream() {}
|
||||
|
||||
virtual MxResult Read(void* p_buffer, MxU32 p_size) = 0;
|
||||
virtual MxResult Write(const void* p_buffer, MxU32 p_size) = 0;
|
||||
@@ -41,11 +42,14 @@ protected:
|
||||
MxU8 m_mode;
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10045b00
|
||||
// LegoStream::`scalar deleting destructor'
|
||||
|
||||
// VTABLE: LEGO1 0x100db730
|
||||
class LegoFileStream : public LegoStream {
|
||||
public:
|
||||
LegoFileStream();
|
||||
virtual ~LegoFileStream();
|
||||
virtual ~LegoFileStream() override;
|
||||
|
||||
MxResult Read(void* p_buffer, MxU32 p_size) override;
|
||||
MxResult Write(const void* p_buffer, MxU32 p_size) override;
|
||||
@@ -60,11 +64,13 @@ private:
|
||||
FILE* m_hFile;
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10099230
|
||||
// LegoFileStream::`scalar deleting destructor'
|
||||
|
||||
// VTABLE: LEGO1 0x100db710
|
||||
class LegoMemoryStream : public LegoStream {
|
||||
public:
|
||||
LegoMemoryStream(char* p_buffer);
|
||||
~LegoMemoryStream() {}
|
||||
|
||||
MxResult Read(void* p_buffer, MxU32 p_size) override;
|
||||
MxResult Write(const void* p_buffer, MxU32 p_size) override;
|
||||
@@ -76,4 +82,10 @@ private:
|
||||
MxU32 m_offset;
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10045a80
|
||||
// LegoMemoryStream::~LegoMemoryStream
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100990f0
|
||||
// LegoMemoryStream::`scalar deleting destructor'
|
||||
|
||||
#endif // LEGOSTREAM_H
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "decomp.h"
|
||||
#include "mxstring.h"
|
||||
|
||||
// VTABLE: LEGO1 0x100d7c88
|
||||
class LegoUnknown100d7c88 {
|
||||
public:
|
||||
~LegoUnknown100d7c88();
|
||||
|
||||
@@ -27,9 +27,15 @@ public:
|
||||
// TEMPLATE: LEGO1 0x1007b300
|
||||
// MxCollection<LegoUnknown100d7c88 *>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x1007b310
|
||||
// MxCollection<LegoUnknown100d7c88 *>::~MxCollection<LegoUnknown100d7c88 *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x1007b360
|
||||
// MxCollection<LegoUnknown100d7c88 *>::Destroy
|
||||
|
||||
// TEMPLATE: LEGO1 0x1007b370
|
||||
// MxList<LegoUnknown100d7c88 *>::~MxList<LegoUnknown100d7c88 *>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1007b400
|
||||
// LegoUnknown100d9d00::`scalar deleting destructor'
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ DECOMP_SIZE_ASSERT(GifMap, 0x08);
|
||||
DECOMP_SIZE_ASSERT(GifManagerBase, 0x14);
|
||||
DECOMP_SIZE_ASSERT(GifManager, 0x30);
|
||||
|
||||
// GLOBAL: LEGO1 0x100f0100
|
||||
GifMapEntry* g_unk0x100f0100;
|
||||
|
||||
// FUNCTION: LEGO1 0x10001cc0
|
||||
|
||||
@@ -7,8 +7,13 @@
|
||||
|
||||
DECOMP_SIZE_ASSERT(LegoBackgroundColor, 0x30)
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3fb0
|
||||
const char* g_delimiter = "\t";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3fb4
|
||||
const char* g_set = "set";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3fb8
|
||||
const char* g_reset = "reset";
|
||||
|
||||
// FUNCTION: LEGO1 0x1003bfb0
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
|
||||
DECOMP_SIZE_ASSERT(LegoFullScreenMovie, 0x24)
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3be8
|
||||
// GLOBAL: LEGO1 0x100f3fbc
|
||||
const char* g_strEnable = "enable";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3bf4
|
||||
// GLOBAL: LEGO1 0x100f3fc0
|
||||
const char* g_strDisable = "disable";
|
||||
|
||||
// FUNCTION: LEGO1 0x1003c500
|
||||
|
||||
@@ -19,15 +19,15 @@
|
||||
// There may be other members that come after.
|
||||
DECOMP_SIZE_ASSERT(LegoGameState, 0x430)
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3e24
|
||||
const char* g_historyGSI = "History.gsi";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3e30
|
||||
const char* g_playersGSI = "Players.gsi";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3e40
|
||||
const char* g_fileExtensionGS = ".GS";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3e44
|
||||
const char* g_playersGSI = "Players.gsi";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3e48
|
||||
const char* g_historyGSI = "History.gsi";
|
||||
|
||||
// GLOBAL: LEGO1 0x100f3e58
|
||||
ColorStringStruct g_colorSaveData[43] = {
|
||||
{"c_dbbkfny0", "lego red"}, {"c_dbbkxly0", "lego white"}, {"c_chbasey0", "lego black"},
|
||||
@@ -168,7 +168,7 @@ void LegoGameState::GetFileSavePath(MxString* p_outPath, MxULong p_slotn)
|
||||
strcpy(path, m_savePath);
|
||||
|
||||
// Slot: "G0", "G1", ...
|
||||
strcat(path, "G");
|
||||
strcat(path, "\\G");
|
||||
baseForSlot[0] += p_slotn;
|
||||
strcat(path, baseForSlot);
|
||||
|
||||
|
||||
@@ -11,3 +11,9 @@ LegoActor::LegoActor()
|
||||
m_unk0x10 = 0;
|
||||
m_unk0x74 = 0;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1002d320
|
||||
LegoActor::~LegoActor()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ MxResult LegoEntity::Create(MxDSAction& p_dsAction)
|
||||
{
|
||||
m_mxEntityId = p_dsAction.GetObjectId();
|
||||
m_atom = p_dsAction.GetAtomId();
|
||||
Init();
|
||||
SetWorld();
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
@@ -17,6 +17,13 @@ MxResult IslePathActor::Create(MxDSAction& p_dsAction)
|
||||
return MxEntity::Create(p_dsAction);
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1001a2a0
|
||||
void IslePathActor::Destroy(MxBool p_fromDestructor)
|
||||
{
|
||||
if (!p_fromDestructor)
|
||||
LegoPathActor::Destroy(FALSE);
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1001a350
|
||||
void IslePathActor::VTable0xe0()
|
||||
{
|
||||
|
||||
@@ -100,7 +100,7 @@ MxAtomId* g_testScript = NULL;
|
||||
// GLOBAL: LEGO1 0x100f457c
|
||||
MxAtomId* g_jukeboxwScript = NULL;
|
||||
|
||||
// GLOBAL: LEGO1 0x100f4580c
|
||||
// GLOBAL: LEGO1 0x100f4580
|
||||
MxAtomId* g_sndAnimScript = NULL;
|
||||
|
||||
// GLOBAL: LEGO1 0x100f4584
|
||||
@@ -118,7 +118,7 @@ MxBool g_isWorldActive = TRUE;
|
||||
// FUNCTION: LEGO1 0x10015700
|
||||
LegoOmni* Lego()
|
||||
{
|
||||
return (LegoOmni*) MxOmni::GetInstance();
|
||||
return LegoOmni::GetInstance();
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x10015710
|
||||
|
||||
@@ -6,6 +6,12 @@ LegoAnimPresenter::LegoAnimPresenter()
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10068670
|
||||
LegoAnimPresenter::~LegoAnimPresenter()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x100686f0
|
||||
void LegoAnimPresenter::Init()
|
||||
{
|
||||
|
||||
@@ -6,6 +6,12 @@ LegoHideAnimPresenter::LegoHideAnimPresenter()
|
||||
Init();
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1006d9f0
|
||||
LegoHideAnimPresenter::~LegoHideAnimPresenter()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1006da50
|
||||
void LegoHideAnimPresenter::Init()
|
||||
{
|
||||
|
||||
@@ -13,7 +13,7 @@ class Camera;
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// LegoView
|
||||
|
||||
// VTABLE: 0x100dc000
|
||||
// VTABLE: LEGO1 0x100dc000
|
||||
// SIZE 0x78
|
||||
class LegoView : public TglSurface {
|
||||
public:
|
||||
|
||||
@@ -18,6 +18,10 @@
|
||||
// LIBRARY: LEGO1 0x1008a1c0
|
||||
// _free
|
||||
|
||||
// LIBRARY: ISLE 0x407ec0
|
||||
// LIBRARY: LEGO1 0x1008b020
|
||||
// ___CxxFrameHandler
|
||||
|
||||
// LIBRARY: ISLE 0x408220
|
||||
// LIBRARY: LEGO1 0x1008b400
|
||||
// _atol
|
||||
@@ -33,6 +37,60 @@
|
||||
// LIBRARY: LEGO1 0x1008b5a0
|
||||
// _sprintf
|
||||
|
||||
// LIBRARY: LEGO1 0x1008b608
|
||||
// __ftol
|
||||
|
||||
// LIBRARY: LEGO1 0x1008b630
|
||||
// _srand
|
||||
|
||||
// LIBRARY: LEGO1 0x1008b680
|
||||
// _strncmp
|
||||
|
||||
// LIBRARY: LEGO1 0x1008b730
|
||||
// _fprintf
|
||||
|
||||
// LIBRARY: LEGO1 0x1008b780
|
||||
// _fwrite
|
||||
|
||||
// LIBRARY: LEGO1 0x1008b950
|
||||
// _fread
|
||||
|
||||
// LIBRARY: LEGO1 0x1008bbd0
|
||||
// _fclose
|
||||
|
||||
// LIBRARY: LEGO1 0x1008bdd0
|
||||
// _ftell
|
||||
|
||||
// LIBRARY: LEGO1 0x1008bff0
|
||||
// _fopen
|
||||
|
||||
// LIBRARY: LEGO1 0x1008c010
|
||||
// _strncpy
|
||||
|
||||
// LIBRARY: LEGO1 0x1008c110
|
||||
// __strcmpi
|
||||
|
||||
// LIBRARY: LEGO1 0x1008c1e0
|
||||
// __spawnl
|
||||
|
||||
// LIBRARY: LEGO1 0x1008c200
|
||||
// _sscanf
|
||||
|
||||
// LIBRARY: LEGO1 0x1008c410
|
||||
// _strlwr
|
||||
|
||||
// LIBRARY: LEGO1 0x1008c5c0
|
||||
// _fseek
|
||||
|
||||
// LIBRARY: LEGO1 0x1008ca60
|
||||
// _abort
|
||||
|
||||
// LIBRARY: LEGO1 0x100977c0
|
||||
// _itoa
|
||||
|
||||
// LIBRARY: LEGO1 0x10097b10
|
||||
// _strchr
|
||||
|
||||
// LIBRARY: ISLE 0x4081e0
|
||||
// _srand
|
||||
|
||||
@@ -46,4 +104,22 @@
|
||||
// LIBRARY: ISLE 0x409190
|
||||
// __getptd
|
||||
|
||||
// LIBRARY: LEGO1 0x100d1ed0
|
||||
// _strnicmp
|
||||
|
||||
// LIBRARY: LEGO1 0x100d1fd0
|
||||
// _strupr
|
||||
|
||||
// LIBRARY: LEGO1 0x100d2130
|
||||
// _vsprintf
|
||||
|
||||
// LIBRARY: LEGO1 0x100d21c2
|
||||
// __CIpow
|
||||
|
||||
// LIBRARY: LEGO1 0x100d21f0
|
||||
// _strstr
|
||||
|
||||
// LIBRARY: LEGO1 0x100d2270
|
||||
// __beginthreadex
|
||||
|
||||
#endif
|
||||
|
||||
@@ -158,11 +158,15 @@ struct MxDriver {
|
||||
// List<MxDriver>::~List<MxDriver>
|
||||
|
||||
// Compiler-generated copy ctor
|
||||
// Part of this function are two more synthetic sub-routines,
|
||||
// LEGO1 0x1009c400 and LEGO1 0x1009c460
|
||||
// SYNTHETIC: LEGO1 0x1009c290
|
||||
// MxDriver::MxDriver
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1009c400
|
||||
// list<MxDevice,allocator<MxDevice> >::insert
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1009c460
|
||||
// list<MxDisplayMode,allocator<MxDisplayMode> >::insert
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1009d450
|
||||
// MxDriver::`scalar deleting destructor'
|
||||
|
||||
@@ -223,4 +227,7 @@ private:
|
||||
// SIZE 0x14
|
||||
class MxDeviceEnumerate100d9cc8 : public MxDeviceEnumerate {};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1007b590
|
||||
// MxDeviceEnumerate100d9cc8::~MxDeviceEnumerate100d9cc8
|
||||
|
||||
#endif // MXDIRECT3D_H
|
||||
|
||||
@@ -97,6 +97,9 @@ inline double MxStopWatch::ElapsedSeconds() const
|
||||
return m_elapsedSeconds;
|
||||
}
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100a6fc0
|
||||
// MxStopWatch::~MxStopWatch
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// MxFrequencyMeter
|
||||
@@ -182,4 +185,7 @@ inline double MxFrequencyMeter::ElapsedSeconds() const
|
||||
return m_stopWatch.ElapsedSeconds();
|
||||
}
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100abd10
|
||||
// MxFrequencyMeter::~MxFrequencyMeter
|
||||
|
||||
#endif /* _MxStopWatch_h */
|
||||
|
||||
@@ -115,13 +115,25 @@ private:
|
||||
MxPresenter* m_unk0x14; // 0x14
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100511e0
|
||||
// MxActionNotificationParam::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100513a0
|
||||
// MxEndActionNotificationParam::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10051410
|
||||
// MxEndActionNotificationParam::~MxEndActionNotificationParam
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b0430
|
||||
// MxStartActionNotificationParam::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b04a0
|
||||
// MxStartActionNotificationParam::~MxStartActionNotificationParam
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b05c0
|
||||
// MxType4NotificationParam::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b0630
|
||||
// MxType4NotificationParam::~MxType4NotificationParam
|
||||
|
||||
#endif
|
||||
|
||||
@@ -43,4 +43,50 @@ struct MxAtomIdCounterCompare {
|
||||
|
||||
class MxAtomIdCounterSet : public set<MxAtomIdCounter*, MxAtomIdCounterCompare> {};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100ad170
|
||||
// MxAtomIdCounter::~MxAtomIdCounter
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100ad480
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::iterator::_Dec
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100ad780
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Lbound
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100ad4d0
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Insert
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100af6d0
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::~_Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCou
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100af7a0
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::iterator::_Inc
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100af7e0
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::erase
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100afc40
|
||||
// _Tree<MxAtomIdCounter *,MxAtomIdCounter *,set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Kfn,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::_Erase
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100afc80
|
||||
// set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >::~set<MxAtomIdCounter *,MxAtomIdCounterCompare,allocator<MxAtomIdCounter *> >
|
||||
// clang-format on
|
||||
|
||||
// TEMPLATE: LEGO1 0x100afe40
|
||||
// Set<MxAtomIdCounter *,MxAtomIdCounterCompare>::~Set<MxAtomIdCounter *,MxAtomIdCounterCompare>
|
||||
|
||||
#endif // MXATOMIDCOUNTER_H
|
||||
|
||||
@@ -33,4 +33,10 @@ protected:
|
||||
MxS32 m_volume;
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000d370
|
||||
// MxAudioPresenter::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1000d3e0
|
||||
// MxAudioPresenter::~MxAudioPresenter
|
||||
|
||||
#endif // MXAUDIOPRESENTER_H
|
||||
|
||||
@@ -46,6 +46,7 @@ public:
|
||||
void FUN_100c8670(MxDSStreamingAction* p_streamingAction);
|
||||
void InsertToList74(MxDSBuffer* p_buffer);
|
||||
void FUN_100c7cb0(MxDSStreamingAction* p_action);
|
||||
MxResult FUN_100c7890(MxDSStreamingAction* p_action);
|
||||
|
||||
private:
|
||||
MxStreamListMxDSAction m_list0x64; // 0x64
|
||||
@@ -58,7 +59,6 @@ private:
|
||||
MxStreamListMxDSAction m_list0xb8; // 0xb8
|
||||
MxBool m_unk0xc4; // 0xc4
|
||||
|
||||
MxResult FUN_100c7890(MxDSStreamingAction* p_action);
|
||||
void FUN_100c7970();
|
||||
void FUN_100c7ce0(MxDSBuffer* p_buffer);
|
||||
MxResult FUN_100c7d10();
|
||||
@@ -69,6 +69,9 @@ private:
|
||||
void FUN_100c8720();
|
||||
};
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c14d0
|
||||
// list<MxDSAction *,allocator<MxDSAction *> >::erase
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c7330
|
||||
// list<MxDSAction *,allocator<MxDSAction *> >::_Buynode
|
||||
|
||||
|
||||
@@ -20,9 +20,6 @@ public:
|
||||
|
||||
MxResult Run() override;
|
||||
MxResult StartWithTarget(MxDiskStreamProvider* p_target);
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100d10a0
|
||||
// MxDiskStreamProviderThread::`scalar deleting destructor'
|
||||
};
|
||||
|
||||
// VTABLE: LEGO1 0x100dd138
|
||||
@@ -58,9 +55,6 @@ public:
|
||||
virtual MxU32 GetLengthInDWords() override; // vtable+0x24
|
||||
virtual MxU32* GetBufferForDWords() override; // vtable+0x28
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100d1220
|
||||
// MxDiskStreamProvider::`scalar deleting destructor'
|
||||
|
||||
private:
|
||||
MxDiskStreamProviderThread m_thread; // 0x10
|
||||
MxSemaphore m_busySemaphore; // 0x2c
|
||||
@@ -70,4 +64,13 @@ private:
|
||||
MxStreamListMxDSAction m_list; // 0x54
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100d10a0
|
||||
// MxDiskStreamProviderThread::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100d1110
|
||||
// MxDiskStreamProviderThread::~MxDiskStreamProviderThread
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100d1220
|
||||
// MxDiskStreamProvider::`scalar deleting destructor'
|
||||
|
||||
#endif // MXDISKSTREAMPROVIDER_H
|
||||
|
||||
@@ -43,6 +43,7 @@ public:
|
||||
return !strcmp(p_name, MxDSAction::ClassName()) || MxDSObject::IsA(p_name);
|
||||
}
|
||||
|
||||
virtual undefined4 VTable0x14() override; // vtable+14;
|
||||
virtual MxU32 GetSizeOnDisk() override; // vtable+18;
|
||||
virtual void Deserialize(MxU8** p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
virtual MxLong GetDuration(); // vtable+24;
|
||||
|
||||
@@ -44,6 +44,9 @@ public:
|
||||
// TEMPLATE: LEGO1 0x100c9cc0
|
||||
// MxCollection<MxDSAction *>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c9cd0
|
||||
// MxCollection<MxDSAction *>::~MxCollection<MxDSAction *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c9d20
|
||||
// MxCollection<MxDSAction *>::Destroy
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "mxdsmediaaction.h"
|
||||
|
||||
// VTABLE: LEGO1 0x100dce18
|
||||
class MxDSEvent : public MxDSMediaAction {
|
||||
public:
|
||||
MxDSEvent();
|
||||
|
||||
@@ -11,6 +11,9 @@ class MxDSSource : public MxCore {
|
||||
public:
|
||||
MxDSSource() : m_lengthInDWords(0), m_pBuffer(NULL), m_position(-1) {}
|
||||
|
||||
// FUNCTION: LEGO1 0x100bff60
|
||||
virtual ~MxDSSource() override { delete[] m_pBuffer; }
|
||||
|
||||
// FUNCTION: LEGO1 0x100c0010
|
||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||
{
|
||||
@@ -41,4 +44,7 @@ protected:
|
||||
MxLong m_position; // 0x10
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100c00a0
|
||||
// MxDSSource::`scalar deleting destructor'
|
||||
|
||||
#endif // MXDSSOURCE_H
|
||||
|
||||
@@ -52,4 +52,34 @@ private:
|
||||
void FlushPending(MxCore* p_listener);
|
||||
};
|
||||
|
||||
// TEMPLATE: LEGO1 0x100ac320
|
||||
// list<unsigned int,allocator<unsigned int> >::~list<unsigned int,allocator<unsigned int> >
|
||||
|
||||
// FUNCTION: LEGO1 0x100ac3b0
|
||||
// MxIdList::~MxIdList
|
||||
|
||||
// TEMPLATE: LEGO1 0x100ac400
|
||||
// List<unsigned int>::~List<unsigned int>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100ac540
|
||||
// List<MxNotification *>::~List<MxNotification *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100ac590
|
||||
// list<MxNotification *,allocator<MxNotification *> >::~list<MxNotification *,allocator<MxNotification *> >
|
||||
|
||||
// TEMPLATE: LEGO1 0x100acbf0
|
||||
// list<MxNotification *,allocator<MxNotification *> >::begin
|
||||
|
||||
// TEMPLATE: LEGO1 0x100acc00
|
||||
// list<MxNotification *,allocator<MxNotification *> >::insert
|
||||
|
||||
// TEMPLATE: LEGO1 0x100acc50
|
||||
// list<MxNotification *,allocator<MxNotification *> >::erase
|
||||
|
||||
// TEMPLATE: LEGO1 0x100acca0
|
||||
// list<MxNotification *,allocator<MxNotification *> >::_Buynode
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100accd0
|
||||
// MxNotificationPtrList::~MxNotificationPtrList
|
||||
|
||||
#endif // MXNOTIFICATIONMANAGER_H
|
||||
|
||||
@@ -34,14 +34,13 @@ enum NotificationId {
|
||||
};
|
||||
|
||||
// VTABLE: LEGO1 0x100d56e0
|
||||
// SIZE 0x0c
|
||||
class MxNotificationParam : public MxParam {
|
||||
public:
|
||||
inline MxNotificationParam(NotificationId p_type, MxCore* p_sender) : MxParam(), m_type(p_type), m_sender(p_sender)
|
||||
{
|
||||
}
|
||||
|
||||
virtual ~MxNotificationParam() override {}
|
||||
|
||||
// FUNCTION: LEGO1 0x10010390
|
||||
virtual MxNotificationParam* Clone() { return new MxNotificationParam(m_type, m_sender); }; // vtable+0x4
|
||||
|
||||
@@ -50,8 +49,14 @@ public:
|
||||
inline NotificationId GetType() const { return m_type; }
|
||||
|
||||
protected:
|
||||
NotificationId m_type; // 0x4
|
||||
MxCore* m_sender; // 0x8
|
||||
NotificationId m_type; // 0x04
|
||||
MxCore* m_sender; // 0x08
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x10010430
|
||||
// MxNotificationParam::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100104a0
|
||||
// MxNotificationParam::~MxNotificationParam
|
||||
|
||||
#endif // MXNOTIFICATIONPARAM_H
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
// VTABLE: LEGO1 0x100dc218
|
||||
class MxOmniCreateParam : public MxParam {
|
||||
public:
|
||||
__declspec(dllexport) MxOmniCreateParam(
|
||||
@@ -30,4 +31,7 @@ private:
|
||||
MxOmniCreateFlags m_createFlags;
|
||||
};
|
||||
|
||||
// SYNTHETIC: ISLE 0x4014b0
|
||||
// MxOmniCreateParam::~MxOmniCreateParam
|
||||
|
||||
#endif // MXOMNICREATEPARAM_H
|
||||
|
||||
@@ -1,9 +1,18 @@
|
||||
#ifndef MXPARAM_H
|
||||
#define MXPARAM_H
|
||||
|
||||
// VTABLE: ISLE 0x40f018
|
||||
// VTABLE: LEGO1 0x100d56e8
|
||||
// SIZE 0x04
|
||||
class MxParam {
|
||||
public:
|
||||
// FUNCTION: ISLE 0x401530
|
||||
// FUNCTION: LEGO1 0x10010360
|
||||
virtual ~MxParam() {}
|
||||
};
|
||||
|
||||
// SYNTHETIC: ISLE 0x401540
|
||||
// SYNTHETIC: LEGO1 0x10010370
|
||||
// MxParam::`scalar deleting destructor'
|
||||
|
||||
#endif // MXPARAM_H
|
||||
|
||||
@@ -53,6 +53,9 @@ public:
|
||||
// TEMPLATE: LEGO1 0x1001ce20
|
||||
// MxList<MxPresenter *>::~MxList<MxPresenter *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x1001cf20
|
||||
// MxPtrList<MxPresenter>::~MxPtrList<MxPresenter>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1001cf70
|
||||
// MxCollection<MxPresenter *>::`scalar deleting destructor'
|
||||
|
||||
|
||||
@@ -53,6 +53,9 @@ public:
|
||||
// SYNTHETIC: LEGO1 0x100b3d80
|
||||
// MxRectList::`scalar deleting destructor'
|
||||
|
||||
// TEMPLATE: LEGO1 0x100b3df0
|
||||
// MxPtrList<MxRect32>::~MxPtrList<MxRect32>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b3e40
|
||||
// MxCollection<MxRect32 *>::`scalar deleting destructor'
|
||||
|
||||
|
||||
@@ -116,12 +116,21 @@ public:
|
||||
// TEMPLATE: LEGO1 0x100c32e0
|
||||
// MxCollection<MxRegionTopBottom *>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c32f0
|
||||
// MxCollection<MxRegionTopBottom *>::~MxCollection<MxRegionTopBottom *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c3340
|
||||
// MxCollection<MxRegionTopBottom *>::Destroy
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c3350
|
||||
// MxList<MxRegionTopBottom *>::~MxList<MxRegionTopBottom *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c33e0
|
||||
// MxPtrList<MxRegionTopBottom>::Destroy
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c3480
|
||||
// MxPtrList<MxRegionTopBottom>::~MxPtrList<MxRegionTopBottom>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100c34d0
|
||||
// MxCollection<MxRegionTopBottom *>::`scalar deleting destructor'
|
||||
|
||||
@@ -167,9 +176,18 @@ public:
|
||||
// TEMPLATE: LEGO1 0x100c4d80
|
||||
// MxCollection<MxRegionLeftRight *>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c4d90
|
||||
// MxCollection<MxRegionLeftRight *>::~MxCollection<MxRegionLeftRight *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c4de0
|
||||
// MxCollection<MxRegionLeftRight *>::Destroy
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c4df0
|
||||
// MxList<MxRegionLeftRight *>::~MxList<MxRegionLeftRight *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100c4f00
|
||||
// MxPtrList<MxRegionLeftRight>::~MxPtrList<MxRegionLeftRight>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100c4f50
|
||||
// MxCollection<MxRegionLeftRight *>::`scalar deleting destructor'
|
||||
|
||||
|
||||
@@ -5,12 +5,13 @@
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
// VTABLE: LEGO1 0x100dccf0
|
||||
// SIZE 0x08
|
||||
class MxSemaphore {
|
||||
public:
|
||||
MxSemaphore();
|
||||
|
||||
// Inlined only, no offset
|
||||
// FUNCTION: LEGO1 0x100c87e0
|
||||
~MxSemaphore() { CloseHandle(m_hSemaphore); }
|
||||
|
||||
virtual MxResult Init(MxU32 p_initialCount, MxU32 p_maxCount);
|
||||
|
||||
@@ -41,6 +41,9 @@ public:
|
||||
// TEMPLATE: LEGO1 0x100b5930
|
||||
// MxCollection<MxStreamChunk *>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x100b5940
|
||||
// MxCollection<MxStreamChunk *>::~MxCollection<MxStreamChunk *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100b5990
|
||||
// MxCollection<MxStreamChunk *>::Destroy
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100b9110
|
||||
~MxStreamerSubClass1() { delete[] m_buffer; }
|
||||
|
||||
undefined4 GetSize() const { return m_size; }
|
||||
@@ -48,6 +49,7 @@ public:
|
||||
inline MxStreamerSubClass3() : MxStreamerSubClass1(0x80) {}
|
||||
};
|
||||
|
||||
// VTABLE: LEGO1 0x100dc760
|
||||
class MxStreamerNotification : public MxNotificationParam {
|
||||
public:
|
||||
inline MxStreamerNotification(NotificationId p_type, MxCore* p_sender, MxStreamController* p_ctrlr)
|
||||
@@ -56,8 +58,6 @@ public:
|
||||
m_controller = p_ctrlr;
|
||||
}
|
||||
|
||||
virtual ~MxStreamerNotification() override {}
|
||||
|
||||
virtual MxNotificationParam* Clone() override;
|
||||
|
||||
MxStreamController* GetController() { return m_controller; }
|
||||
@@ -113,7 +113,21 @@ private:
|
||||
MxStreamerSubClass3 m_subclass2; // 0x20
|
||||
};
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100b9090
|
||||
// list<MxStreamController *,allocator<MxStreamController *> >::~list<MxStreamController *,allocator<MxStreamController *> >
|
||||
// clang-format on
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b9120
|
||||
// MxStreamer::`scalar deleting destructor'
|
||||
|
||||
// TEMPLATE: LEGO1 0x100b9140
|
||||
// List<MxStreamController *>::~List<MxStreamController *>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b97b0
|
||||
// MxStreamerNotification::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100b9820
|
||||
// MxStreamerNotification::~MxStreamerNotification
|
||||
|
||||
#endif // MXSTREAMER_H
|
||||
|
||||
@@ -41,4 +41,7 @@ protected:
|
||||
// SYNTHETIC: LEGO1 0x100d0870
|
||||
// MxStreamProvider::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100d08e0
|
||||
// MxStreamProvider::~MxStreamProvider
|
||||
|
||||
#endif // MXSTREAMPROVIDER_H
|
||||
|
||||
@@ -15,18 +15,33 @@ public:
|
||||
MxStringListCursor(MxStringList* p_list) : MxListCursor<MxString>(p_list){};
|
||||
};
|
||||
|
||||
// VTABLE: LEGO1 0x100dd010
|
||||
// class MxCollection<MxString>
|
||||
|
||||
// VTABLE: LEGO1 0x100dd028
|
||||
// class MxList<MxString>
|
||||
|
||||
// VTABLE: LEGO1 0x100dd070
|
||||
// class MxListCursor<MxString>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100cb3c0
|
||||
// MxCollection<MxString>::Compare
|
||||
|
||||
// TEMPLATE: LEGO1 0x100cb420
|
||||
// MxCollection<MxString>::~MxCollection<MxString>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100cb470
|
||||
// MxCollection<MxString>::Destroy
|
||||
|
||||
// TEMPLATE: LEGO1 0x100cb4c0
|
||||
// MxList<MxString>::~MxList<MxString>
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100cb590
|
||||
// MxCollection<MxString>::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100cb600
|
||||
// MxList<MxString>::`scalar deleting destructor'
|
||||
|
||||
// TEMPLATE: LEGO1 0x100cbb40
|
||||
// MxList<MxString>::Append
|
||||
|
||||
|
||||
@@ -50,4 +50,10 @@ private:
|
||||
|
||||
#define TICKLE_MANAGER_NOT_FOUND 0x80000000
|
||||
|
||||
// TEMPLATE: LEGO1 0x1005a4a0
|
||||
// list<MxTickleClient *,allocator<MxTickleClient *> >::~list<MxTickleClient *,allocator<MxTickleClient *> >
|
||||
|
||||
// TEMPLATE: LEGO1 0x1005a530
|
||||
// List<MxTickleClient *>::~List<MxTickleClient *>
|
||||
|
||||
#endif // MXTICKLEMANAGER_H
|
||||
|
||||
@@ -33,8 +33,11 @@ public:
|
||||
inline const MxString* GetKey() const { return &m_key; }
|
||||
|
||||
protected:
|
||||
MxString m_key;
|
||||
MxString m_value;
|
||||
MxString m_key; // 0x04
|
||||
MxString m_value; // 0x14
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1003bf40
|
||||
// MxVariable::~MxVariable
|
||||
|
||||
#endif // MXVARIABLE_H
|
||||
|
||||
@@ -26,6 +26,9 @@ public:
|
||||
// VTABLE: LEGO1 0x100dc1e8
|
||||
// class MxHashTable<MxVariable *>
|
||||
|
||||
// VTABLE: LEGO1 0x100dc680
|
||||
// class MxHashTableCursor<MxVariable *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100afcd0
|
||||
// MxCollection<MxVariable *>::Compare
|
||||
|
||||
@@ -50,6 +53,9 @@ public:
|
||||
// SYNTHETIC: LEGO1 0x100b0ca0
|
||||
// MxHashTable<MxVariable *>::`scalar deleting destructor'
|
||||
|
||||
// TEMPLATE: LEGO1 0x100b7680
|
||||
// MxHashTableCursor<MxVariable *>::~MxHashTableCursor<MxVariable *>
|
||||
|
||||
// TEMPLATE: LEGO1 0x100b7ab0
|
||||
// MxHashTable<MxVariable *>::Resize
|
||||
|
||||
|
||||
@@ -80,6 +80,7 @@ public:
|
||||
// FUNCTION: LEGO1 0x1000c800
|
||||
virtual MxS32 GetHeight() { return m_alpha ? m_alpha->m_height : m_bitmap->GetBmiHeightAbs(); }; // vtable+0x84
|
||||
|
||||
// VTABLE: LEGO1 0x100dc2bc
|
||||
// SIZE 0xc
|
||||
struct AlphaMask {
|
||||
MxU8* m_bitmask;
|
||||
|
||||
@@ -88,6 +88,12 @@ void MxDSAction::CopyFrom(MxDSAction& p_dsAction)
|
||||
this->m_unk0x90 = p_dsAction.m_unk0x90;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100adbd0
|
||||
undefined4 MxDSAction::VTable0x14()
|
||||
{
|
||||
return MxDSObject::VTable0x14();
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100adbe0
|
||||
MxU32 MxDSAction::GetSizeOnDisk()
|
||||
{
|
||||
|
||||
@@ -78,7 +78,7 @@ void MxEventPresenter::ReadyTickle()
|
||||
// FUNCTION: LEGO1 0x100c2eb0
|
||||
void MxEventPresenter::StartingTickle()
|
||||
{
|
||||
MxStreamChunk* chunk = NextChunk();
|
||||
MxStreamChunk* chunk = CurrentChunk();
|
||||
|
||||
if (chunk && m_action->GetElapsedTime() >= chunk->GetTime())
|
||||
ProgressTickleState(TickleState_Streaming);
|
||||
|
||||
@@ -215,18 +215,20 @@ void MxDiskStreamProvider::PerformWork()
|
||||
}
|
||||
}
|
||||
|
||||
MxDSBuffer* buffer;
|
||||
|
||||
{
|
||||
MxAutoLocker lock(&m_criticalSection);
|
||||
|
||||
if (!m_list.PopFrontStreamingAction(streamingAction))
|
||||
return;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (streamingAction->GetUnknowna0()->GetWriteOffset() < 0x20000) {
|
||||
g_unk0x10102878--;
|
||||
}
|
||||
|
||||
MxDSBuffer* buffer = streamingAction->GetUnknowna0();
|
||||
buffer = streamingAction->GetUnknowna0();
|
||||
|
||||
if (m_pFile->GetPosition() == streamingAction->GetBufferOffset() ||
|
||||
m_pFile->Seek(streamingAction->GetBufferOffset(), 0) == 0) {
|
||||
@@ -251,6 +253,7 @@ void MxDiskStreamProvider::PerformWork()
|
||||
}
|
||||
}
|
||||
|
||||
done:
|
||||
if (streamingAction) {
|
||||
controller->FUN_100c8670(streamingAction);
|
||||
}
|
||||
@@ -349,6 +352,8 @@ MxResult MxDiskStreamProvider::FUN_100d1b20(MxDSStreamingAction* p_action)
|
||||
p_action->SetUnknown94(unk0x14);
|
||||
p_action->SetBufferOffset(p_action->GetUnknowna0()->GetUnknown14());
|
||||
delete p_action->GetUnknowna0();
|
||||
p_action->SetUnknowna0(NULL);
|
||||
((MxDiskStreamController*) m_pLookup)->FUN_100c7890(p_action);
|
||||
return SUCCESS;
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -47,12 +47,12 @@ MxRAMStreamProvider::~MxRAMStreamProvider()
|
||||
m_bufferSize = 0;
|
||||
m_fileSize = 0;
|
||||
|
||||
free(m_pBufferOfFileSize);
|
||||
delete[] m_pBufferOfFileSize;
|
||||
m_pBufferOfFileSize = NULL;
|
||||
|
||||
m_lengthInDWords = 0;
|
||||
|
||||
free(m_bufferForDWords);
|
||||
delete[] m_bufferForDWords;
|
||||
m_bufferForDWords = NULL;
|
||||
}
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
DECOMP_SIZE_ASSERT(MxDisplaySurface, 0xac);
|
||||
|
||||
// GLOBAL: LEGO1 0x1010215c
|
||||
MxU32 g_unk0x1010215c = 0;
|
||||
|
||||
// FUNCTION: LEGO1 0x100ba500
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
DECOMP_SIZE_ASSERT(MxStillPresenter, 0x6c);
|
||||
|
||||
// GLOBAL: LEGO1 0x10101eb0
|
||||
// GLOBAL: LEGO1 0x101020e0
|
||||
const char* g_strBmpIsmap = "BMP_ISMAP";
|
||||
|
||||
// FUNCTION: LEGO1 0x100b9c70
|
||||
@@ -164,7 +164,7 @@ void MxStillPresenter::VTable0x88(MxS32 p_x, MxS32 p_y)
|
||||
// FUNCTION: LEGO1 0x100ba140
|
||||
void MxStillPresenter::Enable(MxBool p_enable)
|
||||
{
|
||||
MxVideoPresenter::Enable(p_enable);
|
||||
MxPresenter::Enable(p_enable);
|
||||
|
||||
if (MVideoManager() && (m_alpha || m_bitmap)) {
|
||||
// MxRect32 rect(m_location, MxSize32(GetWidth(), GetHeight()));
|
||||
|
||||
@@ -32,9 +32,6 @@ public:
|
||||
const float* GetWorldDirection() const { return m_local2world[2]; }
|
||||
const float* GetWorldUp() const { return m_local2world[1]; }
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100a4630
|
||||
// OrientableROI::`scalar deleting destructor'
|
||||
|
||||
protected:
|
||||
MxMatrix m_local2world; // 0x10
|
||||
BoundingBox m_world_bounding_box; // 0x58
|
||||
@@ -52,4 +49,10 @@ protected:
|
||||
undefined4 m_unk0xd8; // 0xd8
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100a4630
|
||||
// OrientableROI::`scalar deleting destructor'
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100aa2f0
|
||||
// OrientableROI::~OrientableROI
|
||||
|
||||
#endif // ORIENTABLEROI_H
|
||||
|
||||
@@ -30,8 +30,7 @@ void RealtimeView::SetPartsThreshold(float p_threshold)
|
||||
// FUNCTION: LEGO1 0x100a5e00
|
||||
float RealtimeView::GetUserMaxLOD()
|
||||
{
|
||||
// TODO
|
||||
return 0;
|
||||
return g_userMaxLod;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x100a5e10
|
||||
|
||||
@@ -108,4 +108,8 @@ protected:
|
||||
LODListBase* m_lods; // 0x8
|
||||
undefined m_unk0xc; // 0xc
|
||||
};
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100a5d50
|
||||
// ROI::~ROI
|
||||
|
||||
#endif // ROI_H
|
||||
|
||||
@@ -36,7 +36,7 @@ class MeshImpl;
|
||||
class TextureImpl;
|
||||
class UnkImpl;
|
||||
|
||||
// VTABLE 0x100db910
|
||||
// VTABLE: LEGO1 0x100db910
|
||||
class RendererImpl : public Renderer {
|
||||
public:
|
||||
RendererImpl() : m_data(0) {}
|
||||
@@ -105,7 +105,7 @@ void RendererImpl::Destroy()
|
||||
}
|
||||
}
|
||||
|
||||
// VTABLE 0x100db988
|
||||
// VTABLE: LEGO1 0x100db988
|
||||
class DeviceImpl : public Device {
|
||||
public:
|
||||
DeviceImpl() : m_data(0) {}
|
||||
@@ -142,7 +142,7 @@ private:
|
||||
IDirect3DRMDevice2* m_data;
|
||||
};
|
||||
|
||||
// VTABLE 0x100db9e8
|
||||
// VTABLE: LEGO1 0x100db9e8
|
||||
class ViewImpl : public View {
|
||||
public:
|
||||
ViewImpl() : m_data(0) {}
|
||||
@@ -194,7 +194,7 @@ private:
|
||||
IDirect3DRMViewport* m_data;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbad8
|
||||
// VTABLE: LEGO1 0x100dbad8
|
||||
class CameraImpl : public Camera {
|
||||
public:
|
||||
CameraImpl() : m_data(0) {}
|
||||
@@ -219,7 +219,7 @@ private:
|
||||
IDirect3DRMFrame2* m_data;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbaf8
|
||||
// VTABLE: LEGO1 0x100dbaf8
|
||||
class LightImpl : public Light {
|
||||
public:
|
||||
LightImpl() : m_data(0) {}
|
||||
@@ -245,7 +245,7 @@ private:
|
||||
IDirect3DRMFrame2* m_data;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbb88
|
||||
// VTABLE: LEGO1 0x100dbb88
|
||||
class MeshImpl : public Mesh {
|
||||
public:
|
||||
MeshImpl() : m_data(0) {}
|
||||
@@ -285,7 +285,7 @@ private:
|
||||
MeshData* m_data;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dba68
|
||||
// VTABLE: LEGO1 0x100dba68
|
||||
class GroupImpl : public Group {
|
||||
public:
|
||||
GroupImpl() : m_data(0) {}
|
||||
@@ -324,7 +324,7 @@ private:
|
||||
IDirect3DRMFrame2* m_data;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbb18
|
||||
// VTABLE: LEGO1 0x100dbb18
|
||||
class UnkImpl : public Unk {
|
||||
public:
|
||||
UnkImpl() : m_data(0) {}
|
||||
@@ -384,7 +384,7 @@ public:
|
||||
int m_texelsAllocatedByClient;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbb48
|
||||
// VTABLE: LEGO1 0x100dbb48
|
||||
class TextureImpl : public Texture {
|
||||
public:
|
||||
TextureImpl() : m_data(0) {}
|
||||
|
||||
@@ -98,7 +98,7 @@ class Mesh;
|
||||
class Texture;
|
||||
class Unk;
|
||||
|
||||
// VTABLE 0x100db980
|
||||
// VTABLE: LEGO1 0x100db980
|
||||
class Object {
|
||||
public:
|
||||
virtual ~Object() {}
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
virtual void* ImplementationDataPtr() = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100db948
|
||||
// VTABLE: LEGO1 0x100db948
|
||||
class Renderer : public Object {
|
||||
public:
|
||||
// vtable+0x08
|
||||
@@ -146,7 +146,7 @@ public:
|
||||
|
||||
Renderer* CreateRenderer();
|
||||
|
||||
// VTABLE 0x100db9b8
|
||||
// VTABLE: LEGO1 0x100db9b8
|
||||
class Device : public Object {
|
||||
public:
|
||||
// vtable+0x08
|
||||
@@ -165,7 +165,7 @@ public:
|
||||
virtual void InitFromWindowsDevice(Device*) = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dba28
|
||||
// VTABLE: LEGO1 0x100dba28
|
||||
class View : public Object {
|
||||
public:
|
||||
virtual Result Add(const Light*) = 0;
|
||||
@@ -219,20 +219,20 @@ public:
|
||||
) = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbae8
|
||||
// VTABLE: LEGO1 0x100dbae8
|
||||
class Camera : public Object {
|
||||
public:
|
||||
virtual Result SetTransformation(FloatMatrix4&) = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbb08
|
||||
// VTABLE: LEGO1 0x100dbb08
|
||||
class Light : public Object {
|
||||
public:
|
||||
virtual Result SetTransformation(FloatMatrix4&) = 0;
|
||||
virtual Result SetColor(float r, float g, float b) = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbbb0
|
||||
// VTABLE: LEGO1 0x100dbbb0
|
||||
class Mesh : public Object {
|
||||
public:
|
||||
virtual Result SetColor(float r, float g, float b, float a) = 0;
|
||||
@@ -249,7 +249,7 @@ public:
|
||||
virtual Mesh* ShallowClone(Unk*) = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbaa0
|
||||
// VTABLE: LEGO1 0x100dbaa0
|
||||
class Group : public Object {
|
||||
public:
|
||||
virtual Result SetTransformation(FloatMatrix4&) = 0;
|
||||
@@ -271,7 +271,7 @@ public:
|
||||
// Don't know what this is. Seems like another Tgl object which
|
||||
// was not in the leaked Tgl code. My suspicion is that it's
|
||||
// some kind of builder class for creating meshes.
|
||||
// VTABLE 0x100dbb30
|
||||
// VTABLE: LEGO1 0x100dbb30
|
||||
class Unk : public Object {
|
||||
public:
|
||||
virtual Result SetMeshData(
|
||||
@@ -287,7 +287,7 @@ public:
|
||||
virtual Unk* Clone() = 0;
|
||||
};
|
||||
|
||||
// VTABLE 0x100dbb68
|
||||
// VTABLE: LEGO1 0x100dbb68
|
||||
class Texture : public Object {
|
||||
public:
|
||||
// vtable+0x08
|
||||
|
||||
@@ -93,6 +93,22 @@ private:
|
||||
ViewLODListMap m_map;
|
||||
};
|
||||
|
||||
// FUNCTION: LEGO1 0x1001dde0
|
||||
// _Lockit::~_Lockit
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100a7890
|
||||
// _Tree<char const *,pair<char const * const,ViewLODList *>,map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::_Kfn,ROINameComparator,allocator<ViewLODList *> >::~_Tree<char const *,pair<char const * const,ViewLODList *>,map<char c
|
||||
// clang-format on
|
||||
|
||||
// clang-format off
|
||||
// TEMPLATE: LEGO1 0x100a80a0
|
||||
// map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >::~map<char const *,ViewLODList *,ROINameComparator,allocator<ViewLODList *> >
|
||||
// clang-format on
|
||||
|
||||
// TEMPLATE: LEGO1 0x100a70e0
|
||||
// Map<char const *,ViewLODList *,ROINameComparator>::~Map<char const *,ViewLODList *,ROINameComparator>
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// ViewLODList implementation
|
||||
|
||||
Reference in New Issue
Block a user