goobye, goto!

This commit is contained in:
jiangzhengwenjz
2019-06-09 04:37:34 +08:00
parent 5110cafe24
commit ec5dd73767
+16 -18
View File
@@ -63,6 +63,15 @@ extern struct SpriteTemplate *gUnknown_83A0010;
extern u8 gUnknown_84795C8;
extern struct MapData Route1_Layout;
extern void VblankHblankHandlerSetZero();
extern void sub_812B1E0(u16);
extern u8 ListMenuInitInternal(struct ListMenuTemplate *, u16 scrollOffset, u16 selectedRow);
extern void sub_8055DC4();
extern bool16 sub_80BF518(u8 textPrinterId);
extern void _call_via_r1(s32 arg, void *func);
extern void sub_810B108(u8);
extern void sub_8159F40();
void TeachyTvCallback();
void TeachyTvMainCallback();
void TeachyTvVblankHandler();
@@ -97,15 +106,6 @@ void TeachyTvComputeSingleMapTileBlockFromTilesetAndMetaTiles(u8 *blockBuf, u8 *
u16 TeachyTvComputePalIndexArrayEntryByMetaTile(u8 *palIndexArrayBuf, u16 metaTile);
void TeachyTvLoadMapPalette(struct MapData *mStruct, u8 *palIndexArray);
extern void VblankHblankHandlerSetZero();
extern void sub_812B1E0(u16);
extern u8 ListMenuInitInternal(struct ListMenuTemplate *, u16 scrollOffset, u16 selectedRow);
extern void sub_8055DC4();
extern bool16 sub_80BF518(u8 textPrinterId);
extern void _call_via_r1(s32 arg, void *func);
extern void sub_810B108(u8);
extern void sub_8159F40();
void TeachyTvCallback()
{
RunTasks();
@@ -161,13 +161,9 @@ void TeachyTvMainCallback()
u32 x;
state = gMain.state;
if ( !state )
goto RESETANDLOAD;
else if ( state == 1 )
goto SETDMATOVRAM;
else
return;
RESETANDLOAD:
switch(state)
{
case 0:
memBuf = (u8 **)&gUnknown_203F450;
(*memBuf) = (u8*)AllocZeroed(0x4008u);
*(u32*)gUnknown_203F450 = (u32)state;
@@ -183,8 +179,8 @@ RESETANDLOAD:
TeachyTvSetupBg();
TeachyTvLoadGraphic();
++gMain.state;
return;
SETDMATOVRAM:
break;
case 1:
if( free_temp_tile_data_buffers_if_possible() == 1 )
return;
TeachyTvCreateAndRenderRbox();
@@ -214,6 +210,8 @@ SETDMATOVRAM:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10u, 0, 0);
SetVBlankCallback(TeachyTvVblankHandler);
SetMainCallback2(TeachyTvCallback);
break;
}
}
void TeachyTvSetupBg()