(Proposal) Adjustments to "decomp" language (#308)

* Adjustments to "decomp" language

* Fix a comment

* Fix accidental clang-formatting

* Fix order

* Fix order

* Remove junk

* Fix OFFSET

* Adjustments based on new suggestions

* Annotate globals

* Globals in ISLE

* More globals

* Merge from parser2 branch

* Allow prepending space for exact marker match

* To eliminate noise, require the 0x prefix on offset for marker match

* fix test from previous

* Count tab stops for indented functions to reduce MISSED_END_OF_FUNCTION noise

* FUNCTION to SYNTHETIC where needed

* Missed marker conversion on SetAtomId

* pylint cleanup, remove unused code

* Fix unexpected function end, add more unit tests

* Be more strict about synthetic name syntax

* Revert "Missed marker conversion on SetAtomId"

This reverts commit d87d665127.

* Revert "FUNCTION to SYNTHETIC where needed"

This reverts commit 8c815418d2.

* Implicit lookup by name for functions

* Fix VTABLE SYNTHETIC and other decomp markers

* Get vtable class name

* Vtable marker should identify struct

* No colon for SIZE comment

* Update README.md

* Update README.md

* Update CONTRIBUTING.md

* Update README.md

* Update README.md

* Update CONTRIBUTING.md

* Update README.md

* Update CONTRIBUTING.md

* Fix destructor/annotation

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

---------

Co-authored-by: disinvite <disinvite@users.noreply.github.com>
This commit is contained in:
Christian Semmler
2023-12-06 07:10:45 -05:00
committed by GitHub
parent 4f5b70013f
commit 494a556f8e
407 changed files with 3505 additions and 2493 deletions

View File

@@ -9,13 +9,13 @@
DECOMP_SIZE_ASSERT(MxStreamer, 0x2c);
// OFFSET: LEGO1 0x100b8f00
// FUNCTION: LEGO1 0x100b8f00
MxStreamer::MxStreamer()
{
NotificationManager()->Register(this);
}
// OFFSET: LEGO1 0x100b9190
// FUNCTION: LEGO1 0x100b9190
MxResult MxStreamer::Create()
{
undefined* b = new undefined[m_subclass1.GetSize() * 0x5800];
@@ -31,7 +31,7 @@ MxResult MxStreamer::Create()
return FAILURE;
}
// OFFSET: LEGO1 0x100b91d0
// FUNCTION: LEGO1 0x100b91d0
MxStreamer::~MxStreamer()
{
while (!m_openStreams.empty()) {
@@ -43,7 +43,7 @@ MxStreamer::~MxStreamer()
NotificationManager()->Unregister(this);
}
// OFFSET: LEGO1 0x100b92c0
// FUNCTION: LEGO1 0x100b92c0
MxStreamController* MxStreamer::Open(const char* p_name, MxU16 p_lookupType)
{
// TODO
@@ -68,7 +68,7 @@ MxStreamController* MxStreamer::Open(const char* p_name, MxU16 p_lookupType)
return stream;
}
// OFFSET: LEGO1 0x100b9570
// FUNCTION: LEGO1 0x100b9570
MxLong MxStreamer::Close(const char* p)
{
MxDSAction ds;
@@ -97,13 +97,13 @@ MxLong MxStreamer::Close(const char* p)
return FAILURE;
}
// OFFSET: LEGO1 0x100b9700
// FUNCTION: LEGO1 0x100b9700
MxNotificationParam* MxStreamerNotification::Clone()
{
return new MxStreamerNotification(m_type, m_sender, m_controller);
}
// OFFSET: LEGO1 0x100b9870
// FUNCTION: LEGO1 0x100b9870
MxStreamController* MxStreamer::GetOpenStream(const char* p_name)
{
for (list<MxStreamController*>::iterator it = m_openStreams.begin(); it != m_openStreams.end(); it++) {
@@ -119,7 +119,7 @@ MxStreamController* MxStreamer::GetOpenStream(const char* p_name)
return NULL;
}
// OFFSET: LEGO1 0x100b9930
// FUNCTION: LEGO1 0x100b9930
MxResult MxStreamer::AddStreamControllerToOpenList(MxStreamController* stream)
{
if (find(m_openStreams.begin(), m_openStreams.end(), stream) == m_openStreams.end()) {
@@ -130,7 +130,7 @@ MxResult MxStreamer::AddStreamControllerToOpenList(MxStreamController* stream)
return FAILURE;
}
// OFFSET: LEGO1 0x100b99b0
// FUNCTION: LEGO1 0x100b99b0
MxResult MxStreamer::FUN_100b99b0(MxDSAction* p_action)
{
MxStreamController* controller;
@@ -144,7 +144,7 @@ MxResult MxStreamer::FUN_100b99b0(MxDSAction* p_action)
return FAILURE;
}
// OFFSET: LEGO1 0x100b9b30
// FUNCTION: LEGO1 0x100b9b30
MxBool MxStreamer::FUN_100b9b30(MxDSObject& p_dsObject)
{
MxStreamController* controller = GetOpenStream(p_dsObject.GetAtomId().GetInternal());
@@ -153,7 +153,7 @@ MxBool MxStreamer::FUN_100b9b30(MxDSObject& p_dsObject)
return TRUE;
}
// OFFSET: LEGO1 0x100b9b60
// FUNCTION: LEGO1 0x100b9b60
MxLong MxStreamer::Notify(MxParam& p)
{
if (((MxNotificationParam&) p).GetNotification() == MXSTREAMER_DELETE_NOTIFY) {