Class layout for LEGO1 classes (#43)

* Stubbed a bunch of classes and annotated them for later use. Heavily wip and more of pseudocode right now.

* Converted pseudocode into real code!

* Created a bunch more classes and added more information to exisiting ones
Did not error check, this was pushed just for reference

* More classes and implementation details. Still not checked for any errors

* Fixed code and decided on a way to handle virtual table stubs

* Some additional fixes

* More smaller fixes

* Added classes to project and made it compile

* Fixed function adresses that caused the python script to fail

* More classes and virtual function resolves. Builds and compares fine.

* Again more classes and virtual function resolves. Builds and compares fine.

* No clue, I guess forced update for line endings

* Finished up some work, compiles fine. All functions are STUB annotated to not pollute reccmp.py output.

* line ending change

* rename GetClassName/IsClass

Mirroring recent changes from master

* further conform to current master

* update project

* cleanup

* project only updates when you close msdev

---------

Co-authored-by: Cydra <cydra95@gmail.com>
Co-authored-by: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
This commit is contained in:
Cydra
2023-06-29 10:10:08 +02:00
committed by GitHub
parent 4d200bb193
commit 07912eb05a
307 changed files with 8764 additions and 165 deletions

View File

@@ -7,6 +7,8 @@
class MxParam;
// VTABLE 0x100dc0f8
// SIZE 0x8
class MxCore
{
public:
@@ -16,10 +18,17 @@ public:
virtual long Tickle(); // vtable+08
// OFFSET: LEGO1 0x100144c0
inline virtual const char *ClassName() const { return "MxCore"; }; // vtable+0c
inline virtual const char *ClassName() const // vtable+0c
{
// 0x100f007c
return "MxCore";
}
// OFFSET: LEGO1 0x100140d0
inline virtual MxBool IsA(const char *name) const { return !strcmp(name, MxCore::ClassName()); }; // vtable+10
inline virtual MxBool IsA(const char *name) const // vtable+10
{
return !strcmp(name, MxCore::ClassName());
}
private:
unsigned int m_id;