ogrebattle64/src/boot.c

30 lines
663 B
C

#include "common.h"
extern u8 obStackMain[];
void boot(void) {
osInitialize();
osCreateThread(&obThreadIdle, 1, obIdle, NULL, obStackIdle, 0xA);
osStartThread(&obThreadIdle);
}
void obIdle(void* arg) {
D_800E7A18 = NULL;
obInitializePi();
__idle_start_4_threads(2, 1);
osViSetSpecialFeatures(OS_VI_DIVOT_ON | OS_VI_DITHER_FILTER_ON | OS_VI_GAMMA_OFF | OS_VI_GAMMA_DITHER_OFF);
osCreateThread(&obThreadMain, 3, obMain, NULL, obStackMain, 0xA);
osStartThread(&obThreadMain);
osSetThreadPri(&obThreadIdle, OS_PRIORITY_IDLE);
while(1) {
if (D_800E7A18 != NULL) {
D_800E7A18();
}
}
}