Files
mm/src/boot_O2_g3/boot_main.c
T
Tom Overton d4effceefd En_Elforg (Stray Fairy) OK and mostly documented (#359)
* Migrate data to C

* EnElforg_Init OK

* func_80ACC470 OK

* EnElforg_Destroy OK

* EnElforg_Update OK

* func_80ACCBD0 OK

* func_80ACCBB8 OK

* func_80ACD6EC OK

* func_80ACD59C OK

* func_80ACD6A8 OK

* func_80ACD610 OK

* func_80ACD878 OK

* Declare animated materials for Elforg

* EnElforg_Draw OK

* func_80ACCC98 OK

* func_80ACC7E4 OK

* func_80ACC8D4 OK

* func_80ACCEB0 OK

* func_80ACC994 OK

* PLAYER -> GET_PLAYER

* func_80ACCE4C OK

* func_80ACC934 OK

* func_80ACCAC0 OK

* func_80ACD2E4 OK

* func_80ACD1F0 OK

* func_80ACD164 OK

* func_80ACD1B0 OK (maybe fakematch but oh well)

* func_80ACD088 OK

* Better match for func_80ACD1B0

* Use compiled reloc

* Move static data to appropriate function

* Name sCylinderInit appropriately

* Add explanatory comment

* Clean up forward declarations

* Add macro for the flag

* Macro and enum for type

* Add STRAY_FAIRY_GET_PARAM_1C0 macro (no clue what this does)

* Document the area stuff

* Name some functions

* Document timer and direction

* Eliminate some early returns

* Tons more documentation

* Name remaining functions

* Document flags

* Name targetDistanceFromHome

* fairyFountainTimer -> secondaryTimer, since it's used outside of Fairy Fountains

* Name the unknown flag

* Name the collider fairy type

* Last bit of renaming/documenting

* Remove zero check

* Use hex constant for newAngle

* Merge animation updates

* Use 0x10000 instead of 65536.0f

* Use decimal for alpha

* Move yDifference initialization up to the same line as declaration

* Use +=/-=

* <= 30 instead of < 31

* += -1 -> --

* >= 81 -> > 80

* 0xDFFFFFFF -> ~0x20000000

* EnElforg_InitializeSpeedAndRotation -> EnElforg_InitializeParams
2021-10-31 13:25:10 -03:00

23 lines
806 B
C

#include "prevent_bss_reordering.h"
#include "global.h"
#include "prevent_bss_reordering.h"
StackEntry sBootThreadInfo;
OSThread sIdleThread;
u8 sIdleThreadStack[0x400];
StackEntry sIdleThreadInfo;
u8 sBootThreadStack[0x400];
void bootproc(void) {
StackCheck_Init(&sBootThreadInfo, sBootThreadStack, sBootThreadStack + sizeof(sBootThreadStack), 0, -1, "boot");
osMemSize = osGetMemSize();
func_800818F4();
osInitialize();
osUnmapTLBAll();
gCartHandle = osCartRomInit();
StackCheck_Init(&sIdleThreadInfo, sIdleThreadStack, sIdleThreadStack + sizeof(sIdleThreadStack), 0, 256, "idle");
osCreateThread(&sIdleThread, Z_THREAD_ID_IDLE, Idle_ThreadEntry, NULL, sIdleThreadStack + sizeof(sIdleThreadStack),
Z_PRIORITY_IDLE);
osStartThread(&sIdleThread);
}