Get pokefirered_modern to build

This commit is contained in:
PikalaxALT
2020-04-04 12:58:08 -04:00
parent c47eca8a18
commit cc3419eff7
18 changed files with 604 additions and 114 deletions
+20
View File
@@ -90,7 +90,27 @@ void EnableVCountIntrAtLine150(void);
void AgbMain()
{
#if MODERN
// Modern compilers are liberal with the stack on entry to this function,
// so RegisterRamReset may crash if it resets IWRAM.
RegisterRamReset(RESET_ALL & ~RESET_IWRAM);
asm("mov\tr1, #0xC0\n"
"\tlsl\tr1, r1, #0x12\n"
"\tmov r2, #0xFC\n"
"\tlsl r2, r2, #0x7\n"
"\tadd\tr2, r1, r2\n"
"\tmov\tr0, #0\n"
"\tmov\tr3, r0\n"
"\tmov\tr4, r0\n"
"\tmov\tr5, r0\n"
".LCU0:\n"
"\tstmia r1!, {r0, r3, r4, r5}\n"
"\tcmp\tr1, r2\n"
"\tbcc\t.LCU0\n"
);
#else
RegisterRamReset(RESET_ALL);
#endif //MODERN
*(vu16 *)BG_PLTT = RGB_WHITE;
InitGpuRegManager();
REG_WAITCNT = WAITCNT_PREFETCH_ENABLE | WAITCNT_WS0_S_1 | WAITCNT_WS0_N_3;