move d_a_itembase_static / d_a_item_static / Z2StatusMgr (#123)

* move d_a_itembase_static

* move d_a_item_static

* moved Z2StatusMgr

* clang

* fixes

* clang?

* move d_save

* move d_meter2_info

* some d_meter2_info fixes

* move most d_a_player

* move d_bg_s stuff

* move c_cc_s stuff

* move d_cc stuff

* move d_attention / d_event / d_stage
This commit is contained in:
TakaRikka
2021-05-02 13:13:14 -04:00
committed by GitHub
parent a9c78b5b0b
commit 2f4904dae2
234 changed files with 5861 additions and 6762 deletions
+6 -7
View File
@@ -1,5 +1,5 @@
//
//
//
//
#include "dol2asm.h"
@@ -15,16 +15,15 @@ extern void* const _ctors[];
extern void* const _dtors[];
extern "C" void _prolog() {
ModuleConstructorsX(_ctors);
ModuleProlog();
ModuleConstructorsX(_ctors);
ModuleProlog();
}
extern "C" void _epilog() {
ModuleEpilog();
ModuleDestructorsX(_dtors);
ModuleEpilog();
ModuleDestructorsX(_dtors);
}
extern "C" void _unresolved() {
ModuleUnresolved();
ModuleUnresolved();
}
@@ -6,31 +6,30 @@
#include "dolphin/types.h"
struct __destructor_chain {
__destructor_chain* next;
void* destructor;
void* object;
__destructor_chain* next;
void* destructor;
void* object;
};
#define CALL_DTOR(DTOR, OBJECT, VALUE) (((void (*)(void *,short))(DTOR))((OBJECT),VALUE))
#define CALL_DTOR(DTOR, OBJECT, VALUE) (((void (*)(void*, short))(DTOR))((OBJECT), VALUE))
#define CALL_DTOR_ALL(DTOR, OBJECT) CALL_DTOR(DTOR, OBJECT, (-1))
static __destructor_chain* __global_destructor_chain;
extern "C" void __register_global_object(void *object, void *destructor, __destructor_chain *link) {
link->next = __global_destructor_chain;
link->destructor = destructor;
link->object = object;
__global_destructor_chain = link;
extern "C" void __register_global_object(void* object, void* destructor, __destructor_chain* link) {
link->next = __global_destructor_chain;
link->destructor = destructor;
link->object = object;
__global_destructor_chain = link;
}
extern "C" void __destroy_global_chain() {
__destructor_chain* gcd;
while ((gcd=__global_destructor_chain) != NULL) {
__global_destructor_chain = gcd->next;
__destructor_chain* gcd;
while ((gcd = __global_destructor_chain) != NULL) {
__global_destructor_chain = gcd->next;
CALL_DTOR_ALL(gcd->destructor, gcd->object);
}
CALL_DTOR_ALL(gcd->destructor, gcd->object);
}
}
SECTION_DTORS10 extern void* const __destroy_global_chain_reference = (void*)__destroy_global_chain;