From 539079e05c6bc355c9712ef749822b444237f9c8 Mon Sep 17 00:00:00 2001 From: gamemasterplc Date: Fri, 15 Nov 2024 19:54:18 -0600 Subject: [PATCH] Split to board stuff --- config/GMPE01_00/config.yml | 5 +- config/GMPE01_00/symbols.txt | 12 +- config/GMPP01_00/config.yml | 110 ++++- config/GMPP01_00/splits.txt | 70 ++++ config/GMPP01_00/symbols.txt | 783 ++++++++++++++++++----------------- config/GMPP01_02/config.yml | 92 +++- configure.py | 20 +- src/game/sreset.c | 127 +++++- 8 files changed, 801 insertions(+), 418 deletions(-) diff --git a/config/GMPE01_00/config.yml b/config/GMPE01_00/config.yml index 81fc8915..9512c05c 100644 --- a/config/GMPE01_00/config.yml +++ b/config/GMPE01_00/config.yml @@ -565,7 +565,4 @@ extract: header: retryerror_en.inc - symbol: wrongdisc_en binary: wrongdisc_en.bin - header: wrongdisc_en.inc -- symbol: DEMOFontBitmap - binary: DEMOFontBitmap.bin - header: DEMOFontBitmap.inc \ No newline at end of file + header: wrongdisc_en.inc \ No newline at end of file diff --git a/config/GMPE01_00/symbols.txt b/config/GMPE01_00/symbols.txt index d19c0624..889f9a19 100644 --- a/config/GMPE01_00/symbols.txt +++ b/config/GMPE01_00/symbols.txt @@ -2756,8 +2756,8 @@ __THPHuffDecodeDCTCompU = .text:0x800E0C48; // type:function size:0x6A8 scope:lo __THPHuffDecodeDCTCompV = .text:0x800E12F0; // type:function size:0x6A8 scope:local THPInit = .text:0x800E1998; // type:function size:0x78 THPAudioDecode = .text:0x800E1A10; // type:function size:0x464 -__THPAudioGetNewSample = .text:0x800E1E74; // type:function size:0x90 -__THPAudioInitialize = .text:0x800E1F04; // type:function size:0x3C +__THPAudioGetNewSample = .text:0x800E1E74; // type:function size:0x90 scope:local +__THPAudioInitialize = .text:0x800E1F04; // type:function size:0x3C scope:local __va_arg = .text:0x800E1F40; // type:function size:0xC8 scope:global __destroy_global_chain = .text:0x800E2008; // type:function size:0x48 scope:global __register_global_object = .text:0x800E2050; // type:function size:0x18 scope:global @@ -4554,7 +4554,7 @@ rmodeobj = .bss:0x80145A40; // type:object size:0x40 scope:local HeapTbl = .bss:0x80145A80; // type:object size:0x14 scope:local strline = .bss:0x80145A98; // type:object size:0x6800 scope:local pfStrBuf = .bss:0x8014C298; // type:object size:0x100 scope:local data:byte -processjmpbuf = .bss:0x8014C398; // type:object size:0xF8 align:8 scope:local +processjmpbuf = .bss:0x8014C398; // type:object size:0xF8 scope:local align:8 HuSprData = .bss:0x8014C490; // type:object size:0x9600 HuSprGrpData = .bss:0x80155A90; // type:object size:0x5400 data:2byte HuSprOrder = .bss:0x8015AE90; // type:object size:0x1800 @@ -4648,7 +4648,7 @@ THPFileName = .bss:0x801981A0; // type:object size:0x40 scope:local mgGameStatBackup = .bss:0x801981E0; // type:object size:0x118 mgIndexList = .bss:0x801982F8; // type:object size:0x100 mgTicTacToeGrid = .bss:0x801983F8; // type:object size:0x12 -_Sys_Flag = .bss:0x80198410; // type:object size:0x10 +_Sys_Flag = .bss:0x80198410; // type:object size:0x10 scope:local curFileInfo = .bss:0x80198420; // type:object size:0x20 saveBuf = .bss:0x80198440; // type:object size:0x4000 align:32 ToeMessageQueue = .bss:0x8019C440; // type:object size:0x20 scope:local @@ -5299,8 +5299,8 @@ omovlevtno = .sbss:0x801D3CD4; // type:object size:0x4 data:4byte omovlhisidx = .sbss:0x801D3CD8; // type:object size:0x4 data:4byte omcurdll = .sbss:0x801D3CDC; // type:object size:0x4 data:4byte omcurovl = .sbss:0x801D3CE0; // type:object size:0x4 data:4byte -omnextovl = .sbss:0x801D3CE4; // type:object size:0x4 data:4byte scope:local -omwatchproc = .sbss:0x801D3CE8; // type:object size:0x4 data:4byte scope:local +omnextovl = .sbss:0x801D3CE4; // type:object size:0x4 scope:local data:4byte +omwatchproc = .sbss:0x801D3CE8; // type:object size:0x4 scope:local data:4byte omDBGSysKeyObj = .sbss:0x801D3CEC; // type:object size:0x4 data:4byte y_start = .sbss:0x801D3CF0; // type:object size:0x4 scope:local data:4byte x_start = .sbss:0x801D3CF4; // type:object size:0x4 scope:local data:4byte diff --git a/config/GMPP01_00/config.yml b/config/GMPP01_00/config.yml index 8d3ed063..f54fa822 100644 --- a/config/GMPP01_00/config.yml +++ b/config/GMPP01_00/config.yml @@ -546,4 +546,112 @@ extract: header: hiliteData4.inc - symbol: Ascii8x8_1bpp binary: Ascii8x8_1bpp.bin - header: Ascii8x8_1bpp.inc \ No newline at end of file + header: Ascii8x8_1bpp.inc +- symbol: coveropen_en + binary: coveropen_en.bin + header: coveropen_en.inc +- symbol: fatalerror_en + binary: fatalerror_en.bin + header: fatalerror_en.inc +- symbol: loading_en + binary: loading_en.bin + header: loading_en.inc +- symbol: nodisc_en + binary: nodisc_en.bin + header: nodisc_en.inc +- symbol: retryerror_en + binary: retryerror_en.bin + header: retryerror_en.inc +- symbol: wrongdisc_en + binary: wrongdisc_en.bin + header: wrongdisc_en.inc +- symbol: coveropen_en + binary: coveropen_en.bin + header: coveropen_en.inc +- symbol: fatalerror_en + binary: fatalerror_en.bin + header: fatalerror_en.inc +- symbol: loading_en + binary: loading_en.bin + header: loading_en.inc +- symbol: nodisc_en + binary: nodisc_en.bin + header: nodisc_en.inc +- symbol: retryerror_en + binary: retryerror_en.bin + header: retryerror_en.inc +- symbol: wrongdisc_en + binary: wrongdisc_en.bin + header: wrongdisc_en.inc +- symbol: coveropen_fr + binary: coveropen_fr.bin + header: coveropen_fr.inc +- symbol: fatalerror_fr + binary: fatalerror_fr.bin + header: fatalerror_fr.inc +- symbol: loading_fr + binary: loading_fr.bin + header: loading_fr.inc +- symbol: nodisc_fr + binary: nodisc_fr.bin + header: nodisc_fr.inc +- symbol: retryerror_fr + binary: retryerror_fr.bin + header: retryerror_fr.inc +- symbol: wrongdisc_fr + binary: wrongdisc_fr.bin + header: wrongdisc_fr.inc +- symbol: coveropen_ge + binary: coveropen_ge.bin + header: coveropen_ge.inc +- symbol: fatalerror_ge + binary: fatalerror_ge.bin + header: fatalerror_ge.inc +- symbol: loading_ge + binary: loading_ge.bin + header: loading_ge.inc +- symbol: nodisc_ge + binary: nodisc_ge.bin + header: nodisc_ge.inc +- symbol: retryerror_ge + binary: retryerror_ge.bin + header: retryerror_ge.inc +- symbol: wrongdisc_ge + binary: wrongdisc_ge.bin + header: wrongdisc_ge.inc +- symbol: coveropen_it + binary: coveropen_it.bin + header: coveropen_it.inc +- symbol: fatalerror_it + binary: fatalerror_it.bin + header: fatalerror_it.inc +- symbol: loading_it + binary: loading_it.bin + header: loading_it.inc +- symbol: nodisc_it + binary: nodisc_it.bin + header: nodisc_it.inc +- symbol: retryerror_it + binary: retryerror_it.bin + header: retryerror_it.inc +- symbol: wrongdisc_it + binary: wrongdisc_it.bin + header: wrongdisc_it.inc +- symbol: coveropen_sp + binary: coveropen_sp.bin + header: coveropen_sp.inc +- symbol: fatalerror_sp + binary: fatalerror_sp.bin + header: fatalerror_sp.inc +- symbol: loading_sp + binary: loading_sp.bin + header: loading_sp.inc +- symbol: nodisc_sp + binary: nodisc_sp.bin + header: nodisc_sp.inc +- symbol: retryerror_sp + binary: retryerror_sp.bin + header: retryerror_sp.inc +- symbol: wrongdisc_sp + binary: wrongdisc_sp.bin + header: wrongdisc_sp.inc \ No newline at end of file diff --git a/config/GMPP01_00/splits.txt b/config/GMPP01_00/splits.txt index acd9362b..13f45da1 100644 --- a/config/GMPP01_00/splits.txt +++ b/config/GMPP01_00/splits.txt @@ -245,3 +245,73 @@ game/window.c: game/messdata.c: .text start:0x80048110 end:0x800481F8 + +game/card.c: + .text start:0x800481F8 end:0x800487FC + .data start:0x80130550 end:0x801305A0 + .sbss start:0x801F11B0 end:0x801F11B8 + +game/armem.c: + .text start:0x800487FC end:0x80049668 + .data start:0x801305A0 end:0x80130690 + .bss start:0x801B3B80 end:0x801B4260 + .sbss start:0x801F11B8 end:0x801F11C8 + +game/chrman.c: + .text start:0x80049668 end:0x800509D4 + .data start:0x80130690 end:0x801310B0 + .bss start:0x801B4260 end:0x801B49F0 + .sdata start:0x801F0998 end:0x801F09E0 + .sbss start:0x801F11C8 end:0x801F11D0 + .sdata2 start:0x801F2358 end:0x801F2490 + +game/mapspace.c: + .text start:0x800509D4 end:0x80054778 + .bss start:0x801B49F0 end:0x801B4E60 + .sbss start:0x801F11D0 end:0x801F11F0 + .sdata2 start:0x801F2490 end:0x801F24C0 + +game/THPSimple.c: + .text start:0x80054778 end:0x8005687C + .data start:0x801310B0 end:0x801311B0 + .bss start:0x801B4E60 end:0x801B5540 + .sdata start:0x801F09E0 end:0x801F09E8 + .sbss start:0x801F11F0 end:0x801F1210 + .sdata2 start:0x801F24C0 end:0x801F24C8 + +game/THPDraw.c: + .text start:0x8005687C end:0x800571D4 + .sdata2 start:0x801F24C8 end:0x801F24E0 + +game/thpmain.c: + .text start:0x800571D4 end:0x80057B9C + .rodata start:0x8011DB70 end:0x8011DB80 + .data start:0x801311B0 end:0x80131218 + .bss start:0x801B5540 end:0x801B5580 + .sbss start:0x801F1210 end:0x801F1238 + .sdata2 start:0x801F24E0 end:0x801F24F8 + +game/objsub.c: + .text start:0x80057B9C end:0x80057D88 + .data start:0x80131218 end:0x80132018 + .bss start:0x801B5580 end:0x801B57B0 + .sbss start:0x801F1238 end:0x801F1260 + +game/flag.c: + .text start:0x80057D88 end:0x80057FA0 + .bss start:0x801B57B0 end:0x801B57C0 + +game/saveload.c: + .text start:0x80057FA0 end:0x8005A40C + .data start:0x80132018 end:0x801320C0 + .bss start:0x801B57C0 end:0x801B97E0 + .sdata start:0x801F09E8 end:0x801F0A00 + .sbss start:0x801F1260 end:0x801F1270 + .sdata2 start:0x801F24F8 end:0x801F2508 + +game/sreset.c: + .text start:0x8005A40C end:0x8005AEF0 + .data start:0x801320C0 end:0x80156B20 + .bss start:0x801B97E0 end:0x801BAB80 + .sdata start:0x801F0A00 end:0x801F0A18 + .sbss start:0x801F1270 end:0x801F1288 diff --git a/config/GMPP01_00/symbols.txt b/config/GMPP01_00/symbols.txt index 2d1ba4be..e1839595 100644 --- a/config/GMPP01_00/symbols.txt +++ b/config/GMPP01_00/symbols.txt @@ -809,149 +809,149 @@ HuWinExCleanup = .text:0x80047E08; // type:function size:0xA4 HuWinExAnimPopIn = .text:0x80047EAC; // type:function size:0x264 MessData_MesPtrGet = .text:0x80048110; // type:function size:0xE8 HuCardInit = .text:0x800481F8; // type:function size:0x34 -fn_8004822C = .text:0x8004822C; // type:function size:0xC4 -fn_800482F0 = .text:0x800482F0; // type:function size:0x58 -fn_80048348 = .text:0x80048348; // type:function size:0xEC -fn_80048434 = .text:0x80048434; // type:function size:0x28 -fn_8004845C = .text:0x8004845C; // type:function size:0x50 -fn_800484AC = .text:0x800484AC; // type:function size:0x1C -fn_800484C8 = .text:0x800484C8; // type:function size:0x70 -fn_80048538 = .text:0x80048538; // type:function size:0x68 -fn_800485A0 = .text:0x800485A0; // type:function size:0x100 -fn_800486A0 = .text:0x800486A0; // type:function size:0x38 -fn_800486D8 = .text:0x800486D8; // type:function size:0x50 -fn_80048728 = .text:0x80048728; // type:function size:0x40 -fn_80048768 = .text:0x80048768; // type:function size:0x4C -fn_800487B4 = .text:0x800487B4; // type:function size:0x48 +HuCardCheck = .text:0x8004822C; // type:function size:0xC4 +HuCardSlotCheck = .text:0x800482F0; // type:function size:0x58 +HuCardMount = .text:0x80048348; // type:function size:0xEC +HuCardUnMount = .text:0x80048434; // type:function size:0x28 +HuCardFormat = .text:0x8004845C; // type:function size:0x50 +MountCallBack = .text:0x800484AC; // type:function size:0x1C scope:local +HuCardOpen = .text:0x800484C8; // type:function size:0x70 +HuCardRead = .text:0x80048538; // type:function size:0x68 +HuCardCreate = .text:0x800485A0; // type:function size:0x100 +HuCardClose = .text:0x800486A0; // type:function size:0x38 +HuCardWrite = .text:0x800486D8; // type:function size:0x50 +HuCardDelete = .text:0x80048728; // type:function size:0x40 +HuCardSectorSizeGet = .text:0x80048768; // type:function size:0x4C +HuCardFreeSpaceGet = .text:0x800487B4; // type:function size:0x48 HuARInit = .text:0x800487FC; // type:function size:0x148 HuARMalloc = .text:0x80048944; // type:function size:0x16C HuARFree = .text:0x80048AB0; // type:function size:0x16C HuAMemDump = .text:0x80048C1C; // type:function size:0xA8 HuAR_DVDtoARAM = .text:0x80048CC4; // type:function size:0x160 -fn_80048E24 = .text:0x80048E24; // type:function size:0x10 +ArqCallBack = .text:0x80048E24; // type:function size:0x10 scope:local HuAR_MRAMtoARAM = .text:0x80048E34; // type:function size:0x2C HuAR_MRAMtoARAM2 = .text:0x80048E60; // type:function size:0x140 HuAR_ARAMtoMRAM = .text:0x80048FA0; // type:function size:0x2C HuAR_ARAMtoMRAMNum = .text:0x80048FCC; // type:function size:0x1F0 -fn_800491BC = .text:0x800491BC; // type:function size:0x44 +ArqCallBackAM = .text:0x800491BC; // type:function size:0x44 scope:local HuARDMACheck = .text:0x80049200; // type:function size:0x8 HuARDirCheck = .text:0x80049208; // type:function size:0x58 HuARDirFree = .text:0x80049260; // type:function size:0x68 HuAR_ARAMtoMRAMFileRead = .text:0x800492C8; // type:function size:0x390 -fn_80049658 = .text:0x80049658; // type:function size:0x10 -fn_80049668 = .text:0x80049668; // type:function size:0x134 -fn_8004979C = .text:0x8004979C; // type:function size:0x1C -fn_800497B8 = .text:0x800497B8; // type:function size:0x98 -fn_80049850 = .text:0x80049850; // type:function size:0x58 -fn_800498A8 = .text:0x800498A8; // type:function size:0x428 -fn_80049CD0 = .text:0x80049CD0; // type:function size:0x3C -fn_80049D0C = .text:0x80049D0C; // type:function size:0x180 -fn_80049E8C = .text:0x80049E8C; // type:function size:0x20C -fn_8004A098 = .text:0x8004A098; // type:function size:0x173C -fn_8004B7D4 = .text:0x8004B7D4; // type:function size:0xB0 -fn_8004B884 = .text:0x8004B884; // type:function size:0x254 -fn_8004BAD8 = .text:0x8004BAD8; // type:function size:0xB0 -fn_8004BB88 = .text:0x8004BB88; // type:function size:0xB0 -fn_8004BC38 = .text:0x8004BC38; // type:function size:0xB0 -fn_8004BCE8 = .text:0x8004BCE8; // type:function size:0xB0 -fn_8004BD98 = .text:0x8004BD98; // type:function size:0xB0 -fn_8004BE48 = .text:0x8004BE48; // type:function size:0xB0 -fn_8004BEF8 = .text:0x8004BEF8; // type:function size:0x1CC -fn_8004C0C4 = .text:0x8004C0C4; // type:function size:0x4A0 -fn_8004C564 = .text:0x8004C564; // type:function size:0x1E8 -fn_8004C74C = .text:0x8004C74C; // type:function size:0x344 -fn_8004CA90 = .text:0x8004CA90; // type:function size:0x1D0 -fn_8004CC60 = .text:0x8004CC60; // type:function size:0x88 -fn_8004CCE8 = .text:0x8004CCE8; // type:function size:0x9C -fn_8004CD84 = .text:0x8004CD84; // type:function size:0x2B8 -fn_8004D03C = .text:0x8004D03C; // type:function size:0x430 +ArqCallBackAMFileRead = .text:0x80049658; // type:function size:0x10 scope:local +CharManInit = .text:0x80049668; // type:function size:0x134 +CharAMemPtrGet = .text:0x8004979C; // type:function size:0x1C +CharARAMOpen = .text:0x800497B8; // type:function size:0x98 +CharARAMClose = .text:0x80049850; // type:function size:0x58 +CharKill = .text:0x800498A8; // type:function size:0x428 +CharKillAll = .text:0x80049CD0; // type:function size:0x3C +CharModelCreate = .text:0x80049D0C; // type:function size:0x180 +UpdateChar = .text:0x80049E8C; // type:function size:0x20C scope:local +UpdateCharAnim = .text:0x8004A098; // type:function size:0x173C scope:local +PlayCharVoice = .text:0x8004B7D4; // type:function size:0xB0 scope:local +InitEffect = .text:0x8004B884; // type:function size:0x254 scope:local +CreateEffectDust = .text:0x8004BAD8; // type:function size:0xB0 scope:local +CreateEffectSmoke = .text:0x8004BB88; // type:function size:0xB0 scope:local +CreateEffectDot = .text:0x8004BC38; // type:function size:0xB0 scope:local +CreateEffectStar = .text:0x8004BCE8; // type:function size:0xB0 scope:local +CreateEffectWarn = .text:0x8004BD98; // type:function size:0xB0 scope:local +CreateEffectBird = .text:0x8004BE48; // type:function size:0xB0 scope:local +CreateEffect = .text:0x8004BEF8; // type:function size:0x1CC scope:local +UpdateEffect = .text:0x8004C0C4; // type:function size:0x4A0 scope:local +RotateEffect = .text:0x8004C564; // type:function size:0x1E8 +PlayEffectSound = .text:0x8004C74C; // type:function size:0x344 +CharModelMotionCreate = .text:0x8004CA90; // type:function size:0x1D0 +CharModelMotionIndexSet = .text:0x8004CC60; // type:function size:0x88 +CharModelMotionKill = .text:0x8004CCE8; // type:function size:0x9C +CharModelMotionDataClose = .text:0x8004CD84; // type:function size:0x2B8 +CharModelDataClose = .text:0x8004D03C; // type:function size:0x430 CharModelKill = .text:0x8004D46C; // type:function size:0x244 -fn_8004D6B0 = .text:0x8004D6B0; // type:function size:0x7C -fn_8004D72C = .text:0x8004D72C; // type:function size:0x17C -fn_8004D8A8 = .text:0x8004D8A8; // type:function size:0x7C -fn_8004D924 = .text:0x8004D924; // type:function size:0x7C -fn_8004D9A0 = .text:0x8004D9A0; // type:function size:0x4C -fn_8004D9EC = .text:0x8004D9EC; // type:function size:0x44 -fn_8004DA30 = .text:0x8004DA30; // type:function size:0x44 -fn_8004DA74 = .text:0x8004DA74; // type:function size:0x44 -fn_8004DAB8 = .text:0x8004DAB8; // type:function size:0x44 -fn_8004DAFC = .text:0x8004DAFC; // type:function size:0x84 -fn_8004DB80 = .text:0x8004DB80; // type:function size:0x44 -fn_8004DBC4 = .text:0x8004DBC4; // type:function size:0x4C -fn_8004DC10 = .text:0x8004DC10; // type:function size:0x80 -fn_8004DC90 = .text:0x8004DC90; // type:function size:0x1D4 -fn_8004DE64 = .text:0x8004DE64; // type:function size:0x484 -fn_8004E2E8 = .text:0x8004E2E8; // type:function size:0x3FC -fn_8004E6E4 = .text:0x8004E6E4; // type:function size:0x168 -fn_8004E84C = .text:0x8004E84C; // type:function size:0x1A0 -fn_8004E9EC = .text:0x8004E9EC; // type:function size:0x130 -fn_8004EB1C = .text:0x8004EB1C; // type:function size:0x2B4 -fn_8004EDD0 = .text:0x8004EDD0; // type:function size:0xE4 -fn_8004EEB4 = .text:0x8004EEB4; // type:function size:0x2B4 -fn_8004F168 = .text:0x8004F168; // type:function size:0x80 -fn_8004F1E8 = .text:0x8004F1E8; // type:function size:0xBC -fn_8004F2A4 = .text:0x8004F2A4; // type:function size:0x4C -fn_8004F2F0 = .text:0x8004F2F0; // type:function size:0xB0 -fn_8004F3A0 = .text:0x8004F3A0; // type:function size:0x2CC -fn_8004F66C = .text:0x8004F66C; // type:function size:0x2CC -fn_8004F938 = .text:0x8004F938; // type:function size:0xF80 -fn_800508B8 = .text:0x800508B8; // type:function size:0x30 -fn_800508E8 = .text:0x800508E8; // type:function size:0xEC -fn_800509D4 = .text:0x800509D4; // type:function size:0x1B8 -fn_80050B8C = .text:0x80050B8C; // type:function size:0x110 -fn_80050C9C = .text:0x80050C9C; // type:function size:0x2A8 -fn_80050F44 = .text:0x80050F44; // type:function size:0x38C -fn_800512D0 = .text:0x800512D0; // type:function size:0x470 -fn_80051740 = .text:0x80051740; // type:function size:0x5D4 -fn_80051D14 = .text:0x80051D14; // type:function size:0xF4 -fn_80051E08 = .text:0x80051E08; // type:function size:0x388 -fn_80052190 = .text:0x80052190; // type:function size:0x148 -fn_800522D8 = .text:0x800522D8; // type:function size:0x518 -fn_800527F0 = .text:0x800527F0; // type:function size:0x994 -fn_80053184 = .text:0x80053184; // type:function size:0xC28 -fn_80053DAC = .text:0x80053DAC; // type:function size:0x43C -fn_800541E8 = .text:0x800541E8; // type:function size:0x100 -fn_800542E8 = .text:0x800542E8; // type:function size:0x19C -fn_80054484 = .text:0x80054484; // type:function size:0x4C -fn_800544D0 = .text:0x800544D0; // type:function size:0x184 -fn_80054654 = .text:0x80054654; // type:function size:0x124 -fn_80054778 = .text:0x80054778; // type:function size:0x124 -fn_8005489C = .text:0x8005489C; // type:function size:0x54 -fn_800548F0 = .text:0x800548F0; // type:function size:0x408 -fn_80054CF8 = .text:0x80054CF8; // type:function size:0xC0 -fn_80054DB8 = .text:0x80054DB8; // type:function size:0x184 -fn_80054F3C = .text:0x80054F3C; // type:function size:0x240 -fn_8005517C = .text:0x8005517C; // type:function size:0x2A4 -fn_80055420 = .text:0x80055420; // type:function size:0x2A4 -fn_800556C4 = .text:0x800556C4; // type:function size:0x14 -fn_800556D8 = .text:0x800556D8; // type:function size:0x14 -fn_800556EC = .text:0x800556EC; // type:function size:0x1B8 -fn_800558A4 = .text:0x800558A4; // type:function size:0x47C -fn_80055D20 = .text:0x80055D20; // type:function size:0xD8 -fn_80055DF8 = .text:0x80055DF8; // type:function size:0x104 -fn_80055EFC = .text:0x80055EFC; // type:function size:0x5F8 -fn_800564F4 = .text:0x800564F4; // type:function size:0x58 -fn_8005654C = .text:0x8005654C; // type:function size:0x2C -fn_80056578 = .text:0x80056578; // type:function size:0x188 -fn_80056700 = .text:0x80056700; // type:function size:0x17C -fn_8005687C = .text:0x8005687C; // type:function size:0x130 -fn_800569AC = .text:0x800569AC; // type:function size:0x5A0 -fn_80056F4C = .text:0x80056F4C; // type:function size:0x288 -fn_800571D4 = .text:0x800571D4; // type:function size:0x108 -fn_800572DC = .text:0x800572DC; // type:function size:0x110 -fn_800573EC = .text:0x800573EC; // type:function size:0xF8 -fn_800574E4 = .text:0x800574E4; // type:function size:0x100 -fn_800575E4 = .text:0x800575E4; // type:function size:0xC -fn_800575F0 = .text:0x800575F0; // type:function size:0xC -fn_800575FC = .text:0x800575FC; // type:function size:0xC -fn_80057608 = .text:0x80057608; // type:function size:0x54 -fn_8005765C = .text:0x8005765C; // type:function size:0x8 -fn_80057664 = .text:0x80057664; // type:function size:0x20 -fn_80057684 = .text:0x80057684; // type:function size:0x30 -fn_800576B4 = .text:0x800576B4; // type:function size:0x27C -fn_80057930 = .text:0x80057930; // type:function size:0xA4 -fn_800579D4 = .text:0x800579D4; // type:function size:0x17C -fn_80057B50 = .text:0x80057B50; // type:function size:0x4C +CharModelMotionSet = .text:0x8004D6B0; // type:function size:0x7C +CharModelTexAnimSet = .text:0x8004D72C; // type:function size:0x17C +CharModelTexNameGet = .text:0x8004D8A8; // type:function size:0x7C +CharModelHookNameGet = .text:0x8004D924; // type:function size:0x7C +CharModelMotionTimeSet = .text:0x8004D9A0; // type:function size:0x4C +CharModelMotionTimeGet = .text:0x8004D9EC; // type:function size:0x44 +CharModelMotionMaxTimeGet = .text:0x8004DA30; // type:function size:0x44 +CharModelMotionEndCheck = .text:0x8004DA74; // type:function size:0x44 +CharModelMotionShiftIDGet = .text:0x8004DAB8; // type:function size:0x44 +CharModelMotionShiftSet = .text:0x8004DAFC; // type:function size:0x84 +CharModelMotionShiftTimeGet = .text:0x8004DB80; // type:function size:0x44 +CharModelMotionSpeedSet = .text:0x8004DBC4; // type:function size:0x4C +CharModelLayerSetAll = .text:0x8004DC10; // type:function size:0x80 +CharModelItemHookCreate = .text:0x8004DC90; // type:function size:0x1D4 +UpdateItemHook = .text:0x8004DE64; // type:function size:0x484 scope:local +CharModelEffectCreate = .text:0x8004E2E8; // type:function size:0x3FC +OrbitEffect = .text:0x8004E6E4; // type:function size:0x168 scope:local +CharModelCoinEffectCreate = .text:0x8004E84C; // type:function size:0x1A0 +fn_8004EC74 = .text:0x8004E9EC; // type:function size:0x130 +fn_8004EDA4 = .text:0x8004EB1C; // type:function size:0x2B4 +fn_8004F058 = .text:0x8004EDD0; // type:function size:0xE4 +fn_8004F13C = .text:0x8004EEB4; // type:function size:0x2B4 +CharModelLayerSetAll2 = .text:0x8004F168; // type:function size:0x80 +CharModelVoiceEnableSet = .text:0x8004F1E8; // type:function size:0xBC +fn_8004F52C = .text:0x8004F2A4; // type:function size:0x4C +CharModelEffectEnableSet = .text:0x8004F2F0; // type:function size:0xB0 +CharModelEffectNpcInit = .text:0x8004F3A0; // type:function size:0x2CC +CharModelEffectNpcInitSilent = .text:0x8004F66C; // type:function size:0x2CC +UpdateNpcEffect = .text:0x8004F938; // type:function size:0xF80 scope:local +CharModelStepTypeSet = .text:0x800508B8; // type:function size:0x30 +PlayStepFX = .text:0x800508E8; // type:function size:0xEC scope:local +MapWall = .text:0x800509D4; // type:function size:0x1B8 +MapWallCheck = .text:0x80050B8C; // type:function size:0x110 +MapPos = .text:0x80050C9C; // type:function size:0x2A8 +PolygonRangeCheck = .text:0x80050F44; // type:function size:0x38C scope:local +DefIfnnerMapCircle = .text:0x800512D0; // type:function size:0x470 scope:local +CalcPPLength = .text:0x80051740; // type:function size:0x5D4 scope:local +MapIflnnerCalc = .text:0x80051D14; // type:function size:0xF4 scope:local +MapCalcPoint = .text:0x80051E08; // type:function size:0x388 scope:local +AreaCheck = .text:0x80052190; // type:function size:0x148 scope:local +MapIflnnerTriangle = .text:0x800522D8; // type:function size:0x518 scope:local +MapIflnnerQuadrangle = .text:0x800527F0; // type:function size:0x994 scope:local +GetPolygonCircleMtx = .text:0x80053184; // type:function size:0xC28 scope:local +PrecalcPntToTriangle = .text:0x80053DAC; // type:function size:0x43C scope:local +Hitcheck_Triangle_with_Sphere = .text:0x800541E8; // type:function size:0x100 +Hitcheck_Quadrangle_with_Sphere = .text:0x800542E8; // type:function size:0x19C +DefSetHitFace = .text:0x80054484; // type:function size:0x4C scope:local +AppendAddXZ = .text:0x800544D0; // type:function size:0x184 +CharRotInv = .text:0x80054654; // type:function size:0x124 +THPSimpleInit = .text:0x80054778; // type:function size:0x124 +THPSimpleQuit = .text:0x8005489C; // type:function size:0x54 +THPSimpleOpen = .text:0x800548F0; // type:function size:0x408 +THPSimpleClose = .text:0x80054CF8; // type:function size:0xC0 +THPSimpleCalcNeedMemory = .text:0x80054DB8; // type:function size:0x184 +THPSimpleSetBuffer = .text:0x80054F3C; // type:function size:0x240 +__THPSimpleDVDCallback = .text:0x8005517C; // type:function size:0x2A4 scope:local +THPSimplePreLoad = .text:0x80055420; // type:function size:0x2A4 +THPSimpleAudioStart = .text:0x800556C4; // type:function size:0x14 +THPSimpleAudioStop = .text:0x800556D8; // type:function size:0x14 +THPSimpleLoadStop = .text:0x800556EC; // type:function size:0x1B8 +THPSimpleDecode = .text:0x800558A4; // type:function size:0x47C +VideoDecode = .text:0x80055D20; // type:function size:0xD8 scope:local +THPSimpleDrawCurrentFrame = .text:0x80055DF8; // type:function size:0x104 +MixAudio = .text:0x80055EFC; // type:function size:0x5F8 scope:local +THPSimpleGetVideoInfo = .text:0x800564F4; // type:function size:0x58 +THPSimpleGetTotalFrame = .text:0x8005654C; // type:function size:0x2C +THPAudioMixCallback = .text:0x80056578; // type:function size:0x188 scope:local +THPSimpleSetVolume = .text:0x80056700; // type:function size:0x17C +THPGXRestore = .text:0x8005687C; // type:function size:0x130 +THPGXYuv2RgbSetup = .text:0x800569AC; // type:function size:0x5A0 +THPGXYuv2RgbDraw = .text:0x80056F4C; // type:function size:0x288 +HuTHPSprCreateVol = .text:0x800571D4; // type:function size:0x108 +HuTHPSprCreate = .text:0x800572DC; // type:function size:0x110 +HuTHP3DCreateVol = .text:0x800573EC; // type:function size:0xF8 +HuTHP3DCreate = .text:0x800574E4; // type:function size:0x100 +HuTHPStop = .text:0x800575E4; // type:function size:0xC +HuTHPClose = .text:0x800575F0; // type:function size:0xC +HuTHPRestart = .text:0x800575FC; // type:function size:0xC +HuTHPEndCheck = .text:0x80057608; // type:function size:0x54 +HuTHPFrameGet = .text:0x8005765C; // type:function size:0x8 +HuTHPTotalFrameGet = .text:0x80057664; // type:function size:0x20 +HuTHPSetVolume = .text:0x80057684; // type:function size:0x30 +THPTestProc = .text:0x800576B4; // type:function size:0x27C scope:local +THPViewFunc = .text:0x80057930; // type:function size:0xA4 scope:local +THPViewSprFunc = .text:0x800579D4; // type:function size:0x17C scope:local +THPDecodeFunc = .text:0x80057B50; // type:function size:0x4C scope:local omMgIndexGet = .text:0x80057B9C; // type:function size:0x5C omGameSysInit = .text:0x80057BF8; // type:function size:0xF4 omVibrate = .text:0x80057CEC; // type:function size:0x9C @@ -959,46 +959,46 @@ _CheckFlag = .text:0x80057D88; // type:function size:0xA0 _SetFlag = .text:0x80057E28; // type:function size:0xA4 _ClearFlag = .text:0x80057ECC; // type:function size:0xA4 _InitFlag = .text:0x80057F70; // type:function size:0x30 -fn_80057FA0 = .text:0x80057FA0; // type:function size:0x140 -fn_800580E0 = .text:0x800580E0; // type:function size:0x280 -fn_80058360 = .text:0x80058360; // type:function size:0x10C -fn_8005846C = .text:0x8005846C; // type:function size:0x84 -fn_800584F0 = .text:0x800584F0; // type:function size:0x4C -fn_8005853C = .text:0x8005853C; // type:function size:0x8 -fn_80058544 = .text:0x80058544; // type:function size:0xC -fn_80058550 = .text:0x80058550; // type:function size:0x40 -fn_80058590 = .text:0x80058590; // type:function size:0x8 -fn_80058598 = .text:0x80058598; // type:function size:0x154 -fn_800586EC = .text:0x800586EC; // type:function size:0x218 -fn_80058904 = .text:0x80058904; // type:function size:0x254 -fn_80058B58 = .text:0x80058B58; // type:function size:0x8C -fn_80058BE4 = .text:0x80058BE4; // type:function size:0x8C -fn_80058C70 = .text:0x80058C70; // type:function size:0x370 -fn_80058FE0 = .text:0x80058FE0; // type:function size:0xDC -fn_800590BC = .text:0x800590BC; // type:function size:0x48 -fn_80059104 = .text:0x80059104; // type:function size:0x110 -fn_80059214 = .text:0x80059214; // type:function size:0x38 -fn_8005924C = .text:0x8005924C; // type:function size:0x1A0 -fn_800593EC = .text:0x800593EC; // type:function size:0x184 -fn_80059570 = .text:0x80059570; // type:function size:0x28 -fn_80059598 = .text:0x80059598; // type:function size:0xA0 -fn_80059638 = .text:0x80059638; // type:function size:0x60 -fn_80059698 = .text:0x80059698; // type:function size:0x54 -fn_800596EC = .text:0x800596EC; // type:function size:0x90 -fn_8005977C = .text:0x8005977C; // type:function size:0x1D4 -fn_80059950 = .text:0x80059950; // type:function size:0x12C -fn_80059A7C = .text:0x80059A7C; // type:function size:0x594 -fn_8005A010 = .text:0x8005A010; // type:function size:0x3FC +SLFileOpen = .text:0x80057FA0; // type:function size:0x140 +SLFileCreate = .text:0x800580E0; // type:function size:0x280 +SLFileWrite = .text:0x80058360; // type:function size:0x10C +SLFileRead = .text:0x8005846C; // type:function size:0x84 +SLFileClose = .text:0x800584F0; // type:function size:0x4C +SLCurSlotNoSet = .text:0x8005853C; // type:function size:0x8 +SLCurBoxNoSet = .text:0x80058544; // type:function size:0xC +SLSaveFlagSet = .text:0x80058550; // type:function size:0x40 +SLSaveFlagGet = .text:0x80058590; // type:function size:0x8 +SLSaveDataMake = .text:0x80058598; // type:function size:0x154 +SLSaveDataInfoSet = .text:0x800586EC; // type:function size:0x218 +SLCommonSet = .text:0x80058904; // type:function size:0x254 +SLSaveBoard = .text:0x80058B58; // type:function size:0x8C +SLSaveBoardStory = .text:0x80058BE4; // type:function size:0x8C +SLSave = .text:0x80058C70; // type:function size:0x370 +SLCreateSaveWin = .text:0x80058FE0; // type:function size:0xDC scope:local +SLKillSaveWin = .text:0x800590BC; // type:function size:0x48 scope:local +SLLoad = .text:0x80059104; // type:function size:0x110 +SLLoadGameStat = .text:0x80059214; // type:function size:0x38 +SLLoadBoard = .text:0x8005924C; // type:function size:0x1A0 +SLLoadBoardStory = .text:0x800593EC; // type:function size:0x184 +SLSerialNoGet = .text:0x80059570; // type:function size:0x28 +SLSerialNoCheck = .text:0x80059598; // type:function size:0xA0 +SLCheckSumCheck = .text:0x80059638; // type:function size:0x60 +SLCheckSumGet = .text:0x80059698; // type:function size:0x54 +SLCheckSumSet = .text:0x800596EC; // type:function size:0x90 +SLStatSet = .text:0x8005977C; // type:function size:0x1D4 +SLCardMount = .text:0x80059950; // type:function size:0x12C +SLFormat = .text:0x80059A7C; // type:function size:0x594 +SLMessOut = .text:0x8005A010; // type:function size:0x3FC HuSoftResetButtonCheck = .text:0x8005A40C; // type:function size:0x50 HuDvdErrDispIntFunc = .text:0x8005A45C; // type:function size:0x28 HuDvdErrDispInit = .text:0x8005A484; // type:function size:0x208 -fn_8005A68C = .text:0x8005A68C; // type:function size:0xD8 -fn_8005A764 = .text:0x8005A764; // type:function size:0x128 -fn_8005A88C = .text:0x8005A88C; // type:function size:0x348 -fn_8005ABD4 = .text:0x8005ABD4; // type:function size:0xDC -fn_8005ACB0 = .text:0x8005ACB0; // type:function size:0xFC -fn_8005ADAC = .text:0x8005ADAC; // type:function size:0xCC -fn_8005AE78 = .text:0x8005AE78; // type:function size:0x78 +ToeThreadFunc = .text:0x8005A68C; // type:function size:0xD8 scope:local +ToeDispCheck = .text:0x8005A764; // type:function size:0x128 scope:local +_HuDvdErrDispXFB = .text:0x8005A88C; // type:function size:0x348 scope:local +HuRestartSystem = .text:0x8005ABD4; // type:function size:0xDC +HuSoftResetCheck = .text:0x8005ACB0; // type:function size:0xFC scope:local +HuSoftResetCountCheck = .text:0x8005ADAC; // type:function size:0xCC scope:local +HuSoftResetPostProc = .text:0x8005AE78; // type:function size:0x78 scope:local fn_8005AEF0 = .text:0x8005AEF0; // type:function size:0x2E0 fn_8005B1D0 = .text:0x8005B1D0; // type:function size:0x64 fn_8005B234 = .text:0x8005B234; // type:function size:0x9C @@ -2080,11 +2080,11 @@ ICInvalidateRange = .text:0x800B60AC; // type:function size:0x38 scope:global ICFlashInvalidate = .text:0x800B60E4; // type:function size:0x10 scope:global ICEnable = .text:0x800B60F4; // type:function size:0x14 scope:global fn_800B6108 = .text:0x800B6108; // type:function size:0xCC -fn_800B61D4 = .text:0x800B61D4; // type:function size:0x38 +LCEnable = .text:0x800B61D4; // type:function size:0x38 LCDisable = .text:0x800B620C; // type:function size:0x28 scope:global -fn_800B6234 = .text:0x800B6234; // type:function size:0x24 -fn_800B6258 = .text:0x800B6258; // type:function size:0xAC -fn_800B6304 = .text:0x800B6304; // type:function size:0x18 +LCStoreBlocks = .text:0x800B6234; // type:function size:0x24 +LCStoreData = .text:0x800B6258; // type:function size:0xAC +LCQueueWait = .text:0x800B6304; // type:function size:0x18 L2GlobalInvalidate = .text:0x800B631C; // type:function size:0x98 scope:global DMAErrorHandler = .text:0x800B63B4; // type:function size:0x160 scope:global __OSCacheInit = .text:0x800B6514; // type:function size:0xF4 scope:global @@ -2137,11 +2137,11 @@ fn_800B8554 = .text:0x800B8554; // type:function size:0xC __OSReboot = .text:0x800B8560; // type:function size:0x1C0 scope:global OSRegisterResetFunction = .text:0x800B8720; // type:function size:0x84 scope:global Reset = .text:0x800B87A4; // type:function size:0x70 scope:local -fn_800B8814 = .text:0x800B8814; // type:function size:0x48 +__OSDoHotReset = .text:0x800B8814; // type:function size:0x48 OSResetSystem = .text:0x800B885C; // type:function size:0x278 scope:global OSGetResetCode = .text:0x800B8AD4; // type:function size:0x30 scope:global __OSResetSWInterruptHandler = .text:0x800B8B04; // type:function size:0xF4 scope:global -fn_800B8BF8 = .text:0x800B8BF8; // type:function size:0x298 +OSGetResetButtonState = .text:0x800B8BF8; // type:function size:0x298 fn_800B8E90 = .text:0x800B8E90; // type:function size:0x60 fn_800B8EF0 = .text:0x800B8EF0; // type:function size:0x118 __OSInitSram = .text:0x800B9008; // type:function size:0x134 scope:global @@ -2170,28 +2170,28 @@ __OSSystemCallVectorEnd = .text:0x800B9CB4; // type:label scope:global __OSInitSystemCall = .text:0x800B9CB8; // type:function size:0x64 scope:global __OSThreadInit = .text:0x800B9D1C; // type:function size:0x128 scope:global OSInitThreadQueue = .text:0x800B9E44; // type:function size:0x10 scope:global -fn_800B9E54 = .text:0x800B9E54; // type:function size:0xC +OSGetCurrentThread = .text:0x800B9E54; // type:function size:0xC OSDisableScheduler = .text:0x800B9E60; // type:function size:0x40 scope:global OSEnableScheduler = .text:0x800B9EA0; // type:function size:0x40 scope:global fn_800B9EE0 = .text:0x800B9EE0; // type:function size:0x68 -fn_800B9F48 = .text:0x800B9F48; // type:function size:0x3C +__OSGetEffectivePriority = .text:0x800B9F48; // type:function size:0x3C fn_800B9F84 = .text:0x800B9F84; // type:function size:0x1C0 SelectThread = .text:0x800BA144; // type:function size:0x200 scope:local __OSReschedule = .text:0x800BA344; // type:function size:0x30 scope:global -fn_800BA374 = .text:0x800BA374; // type:function size:0x3C -fn_800BA3B0 = .text:0x800BA3B0; // type:function size:0x120 -fn_800BA4D0 = .text:0x800BA4D0; // type:function size:0xE4 +OSYieldThread = .text:0x800BA374; // type:function size:0x3C +OSCreateThread = .text:0x800BA3B0; // type:function size:0x120 +OSExitThread = .text:0x800BA4D0; // type:function size:0xE4 OSCancelThread = .text:0x800BA5B4; // type:function size:0x1BC scope:global -fn_800BA770 = .text:0x800BA770; // type:function size:0x288 -fn_800BA9F8 = .text:0x800BA9F8; // type:function size:0x170 -fn_800BAB68 = .text:0x800BAB68; // type:function size:0xEC -fn_800BAC54 = .text:0x800BAC54; // type:function size:0x104 -fn_800BAD58 = .text:0x800BAD58; // type:function size:0x90 +OSResumeThread = .text:0x800BA770; // type:function size:0x288 +OSSuspendThread = .text:0x800BA9F8; // type:function size:0x170 +OSSleepThread = .text:0x800BAB68; // type:function size:0xEC +OSWakeupThread = .text:0x800BAC54; // type:function size:0x104 +OSSetIdleFunction = .text:0x800BAD58; // type:function size:0x90 OSGetTime = .text:0x800BADE8; // type:function size:0x18 scope:global OSGetTick = .text:0x800BAE00; // type:function size:0x8 scope:global __OSGetSystemTime = .text:0x800BAE08; // type:function size:0x64 scope:global fn_800BAE6C = .text:0x800BAE6C; // type:function size:0x19C -fn_800BB008 = .text:0x800BB008; // type:function size:0x204 +OSTicksToCalendarTime = .text:0x800BB008; // type:function size:0x204 __init_user = .text:0x800BB20C; // type:function size:0x20 scope:global __init_cpp = .text:0x800BB22C; // type:function size:0x54 scope:local _ExitProcess = .text:0x800BB280; // type:function size:0x20 scope:global @@ -2306,18 +2306,18 @@ DVDInquiryAsync = .text:0x800BFDC4; // type:function size:0xD0 scope:global DVDReset = .text:0x800BFE94; // type:function size:0x44 scope:global DVDGetCommandBlockStatus = .text:0x800BFED8; // type:function size:0x4C DVDGetDriveStatus = .text:0x800BFF24; // type:function size:0xAC scope:global -fn_800BFFD0 = .text:0x800BFFD0; // type:function size:0x10 -fn_800BFFE0 = .text:0x800BFFE0; // type:function size:0x270 -fn_800C0250 = .text:0x800C0250; // type:function size:0xAC +DVDSetAutoInvalidation = .text:0x800BFFD0; // type:function size:0x10 +DVDCancelAsync = .text:0x800BFFE0; // type:function size:0x270 +DVDCancel = .text:0x800C0250; // type:function size:0xAC fn_800C02FC = .text:0x800C02FC; // type:function size:0x24 -fn_800C0320 = .text:0x800C0320; // type:function size:0x8 -fn_800C0328 = .text:0x800C0328; // type:function size:0xE4 -fn_800C040C = .text:0x800C040C; // type:function size:0x11C +DVDGetCurrentDiskID = .text:0x800C0320; // type:function size:0x8 +DVDCheckDisk = .text:0x800C0328; // type:function size:0xE4 +__DVDPrepareResetAsync = .text:0x800C040C; // type:function size:0x11C __DVDClearWaitingQueue = .text:0x800C0528; // type:function size:0x38 scope:global __DVDPushWaitingQueue = .text:0x800C0560; // type:function size:0x68 scope:global __DVDPopWaitingQueue = .text:0x800C05C8; // type:function size:0xA0 scope:global __DVDCheckWaitingQueue = .text:0x800C0668; // type:function size:0x58 scope:global -fn_800C06C0 = .text:0x800C06C0; // type:function size:0x60 +__DVDDequeueWaitingQueue = .text:0x800C06C0; // type:function size:0x60 ErrorCode2Num = .text:0x800C0720; // type:function size:0x11C scope:local __DVDStoreErrorCode = .text:0x800C083C; // type:function size:0x7C scope:global cb = .text:0x800C08B8; // type:function size:0xD8 scope:local @@ -2357,7 +2357,7 @@ fn_800C3E34 = .text:0x800C3E34; // type:function size:0xD8 fn_800C3F0C = .text:0x800C3F0C; // type:function size:0x32C fn_800C4238 = .text:0x800C4238; // type:function size:0x134 PADReset = .text:0x800C436C; // type:function size:0x100 -fn_800C446C = .text:0x800C446C; // type:function size:0x104 +PADRecalibrate = .text:0x800C446C; // type:function size:0x104 PADInit = .text:0x800C4570; // type:function size:0x210 PADRead = .text:0x800C4780; // type:function size:0x3AC PADControlMotor = .text:0x800C4B2C; // type:function size:0xA4 @@ -2367,7 +2367,7 @@ fn_800C4DA4 = .text:0x800C4DA4; // type:function size:0x174 fn_800C4F18 = .text:0x800C4F18; // type:function size:0x3F8 fn_800C5310 = .text:0x800C5310; // type:function size:0x194 fn_800C54A4 = .text:0x800C54A4; // type:function size:0x60 -fn_800C5504 = .text:0x800C5504; // type:function size:0x54 +PADSetSamplingCallback = .text:0x800C5504; // type:function size:0x54 __PADDisableRecalibration = .text:0x800C5558; // type:function size:0x7C scope:global AIRegisterDMACallback = .text:0x800C55D4; // type:function size:0x44 AIInitDMA = .text:0x800C5618; // type:function size:0x88 @@ -2394,18 +2394,18 @@ fn_800C5EF4 = .text:0x800C5EF4; // type:function size:0x3C fn_800C5F30 = .text:0x800C5F30; // type:function size:0xF0 fn_800C6020 = .text:0x800C6020; // type:function size:0x68 fn_800C6088 = .text:0x800C6088; // type:function size:0x74 -fn_800C60FC = .text:0x800C60FC; // type:function size:0x8 -fn_800C6104 = .text:0x800C6104; // type:function size:0xBC +ARCheckInit = .text:0x800C60FC; // type:function size:0x8 +ARInit = .text:0x800C6104; // type:function size:0xBC fn_800C61C0 = .text:0x800C61C0; // type:function size:0x4 fn_800C61C4 = .text:0x800C61C4; // type:function size:0x8 -fn_800C61CC = .text:0x800C61CC; // type:function size:0x8 +ARGetSize = .text:0x800C61CC; // type:function size:0x8 fn_800C61D4 = .text:0x800C61D4; // type:function size:0x78 fn_800C624C = .text:0x800C624C; // type:function size:0x914 fn_800C6B60 = .text:0x800C6B60; // type:function size:0x100 fn_800C6C60 = .text:0x800C6C60; // type:function size:0x4 fn_800C6C64 = .text:0x800C6C64; // type:function size:0xCC -fn_800C6D30 = .text:0x800C6D30; // type:function size:0x68 -fn_800C6D98 = .text:0x800C6D98; // type:function size:0x15C +ARQInit = .text:0x800C6D30; // type:function size:0x68 +ARQPostRequest = .text:0x800C6D98; // type:function size:0x15C fn_800C6EF4 = .text:0x800C6EF4; // type:function size:0x10 fn_800C6F04 = .text:0x800C6F04; // type:function size:0x10 fn_800C6F14 = .text:0x800C6F14; // type:function size:0x18 @@ -2613,82 +2613,82 @@ fn_800D0CD8 = .text:0x800D0CD8; // type:function size:0xAC fn_800D0D84 = .text:0x800D0D84; // type:function size:0xA4 fn_800D0E28 = .text:0x800D0E28; // type:function size:0x22C fn_800D1054 = .text:0x800D1054; // type:function size:0x110 -fn_800D1164 = .text:0x800D1164; // type:function size:0x1B4 -fn_800D1318 = .text:0x800D1318; // type:function size:0x134 -fn_800D144C = .text:0x800D144C; // type:function size:0x11C -fn_800D1568 = .text:0x800D1568; // type:function size:0xE0 -fn_800D1648 = .text:0x800D1648; // type:function size:0x9C -fn_800D16E4 = .text:0x800D16E4; // type:function size:0x38 -fn_800D171C = .text:0x800D171C; // type:function size:0xB8 -fn_800D17D4 = .text:0x800D17D4; // type:function size:0x64 -fn_800D1838 = .text:0x800D1838; // type:function size:0x150 -fn_800D1988 = .text:0x800D1988; // type:function size:0x84 -fn_800D1A0C = .text:0x800D1A0C; // type:function size:0x98 +__CARDStart = .text:0x800D1164; // type:function size:0x1B4 +__CARDReadSegment = .text:0x800D1318; // type:function size:0x134 +__CARDWritePage = .text:0x800D144C; // type:function size:0x11C +__CARDEraseSector = .text:0x800D1568; // type:function size:0xE0 +CARDInit = .text:0x800D1648; // type:function size:0x9C +__CARDSetDiskID = .text:0x800D16E4; // type:function size:0x38 +__CARDGetControlBlock = .text:0x800D171C; // type:function size:0xB8 +__CARDPutControlBlock = .text:0x800D17D4; // type:function size:0x64 +CARDFreeBlocks = .text:0x800D1838; // type:function size:0x150 +CARDGetSectorSize = .text:0x800D1988; // type:function size:0x84 +__CARDSync = .text:0x800D1A0C; // type:function size:0x98 fn_800D1AA4 = .text:0x800D1AA4; // type:function size:0x50 fn_800D1AF4 = .text:0x800D1AF4; // type:function size:0x16C fn_800D1C60 = .text:0x800D1C60; // type:function size:0x144 fn_800D1DA4 = .text:0x800D1DA4; // type:function size:0xC4 -fn_800D1E68 = .text:0x800D1E68; // type:function size:0xB58 +__CARDUnlock = .text:0x800D1E68; // type:function size:0xB58 fn_800D29C0 = .text:0x800D29C0; // type:function size:0x70 fn_800D2A30 = .text:0x800D2A30; // type:function size:0x324 fn_800D2D54 = .text:0x800D2D54; // type:function size:0xDC -fn_800D2E30 = .text:0x800D2E30; // type:function size:0x64 +__CARDRead = .text:0x800D2E30; // type:function size:0x64 fn_800D2E94 = .text:0x800D2E94; // type:function size:0xDC -fn_800D2F70 = .text:0x800D2F70; // type:function size:0x64 -fn_800D2FD4 = .text:0x800D2FD4; // type:function size:0x8 +__CARDWrite = .text:0x800D2F70; // type:function size:0x64 +__CARDGetFatBlock = .text:0x800D2FD4; // type:function size:0x8 fn_800D2FDC = .text:0x800D2FDC; // type:function size:0xD4 fn_800D30B0 = .text:0x800D30B0; // type:function size:0xC8 -fn_800D3178 = .text:0x800D3178; // type:function size:0x118 -fn_800D3290 = .text:0x800D3290; // type:function size:0x9C -fn_800D332C = .text:0x800D332C; // type:function size:0xAC -fn_800D33D8 = .text:0x800D33D8; // type:function size:0x8 +__CARDAllocBlock = .text:0x800D3178; // type:function size:0x118 +__CARDFreeBlock = .text:0x800D3290; // type:function size:0x9C +__CARDUpdateFatBlock = .text:0x800D332C; // type:function size:0xAC +__CARDGetDirBlock = .text:0x800D33D8; // type:function size:0x8 fn_800D33E0 = .text:0x800D33E0; // type:function size:0xD0 fn_800D34B0 = .text:0x800D34B0; // type:function size:0xC8 -fn_800D3578 = .text:0x800D3578; // type:function size:0xC4 -fn_800D363C = .text:0x800D363C; // type:function size:0x1B0 +__CARDUpdateDir = .text:0x800D3578; // type:function size:0xC4 +__CARDCheckSum = .text:0x800D363C; // type:function size:0x1B0 fn_800D37EC = .text:0x800D37EC; // type:function size:0x284 fn_800D3A70 = .text:0x800D3A70; // type:function size:0x240 fn_800D3CB0 = .text:0x800D3CB0; // type:function size:0x284 -fn_800D3F34 = .text:0x800D3F34; // type:function size:0x8C -fn_800D3FC0 = .text:0x800D3FC0; // type:function size:0x590 -fn_800D4550 = .text:0x800D4550; // type:function size:0x54 +__CARDVerify = .text:0x800D3F34; // type:function size:0x8C +CARDCheckExAsync = .text:0x800D3FC0; // type:function size:0x590 +CARDCheck = .text:0x800D4550; // type:function size:0x54 fn_800D45A4 = .text:0x800D45A4; // type:function size:0xCC -fn_800D4670 = .text:0x800D4670; // type:function size:0x17C +CARDProbeEx = .text:0x800D4670; // type:function size:0x17C fn_800D47EC = .text:0x800D47EC; // type:function size:0x410 -fn_800D4BFC = .text:0x800D4BFC; // type:function size:0x138 -fn_800D4D34 = .text:0x800D4D34; // type:function size:0x1A0 -fn_800D4ED4 = .text:0x800D4ED4; // type:function size:0x48 +__CARDMountCallback = .text:0x800D4BFC; // type:function size:0x138 +CARDMountAsync = .text:0x800D4D34; // type:function size:0x1A0 +CARDMount = .text:0x800D4ED4; // type:function size:0x48 fn_800D4F1C = .text:0x800D4F1C; // type:function size:0x9C -fn_800D4FB8 = .text:0x800D4FB8; // type:function size:0xAC +CARDUnmount = .text:0x800D4FB8; // type:function size:0xAC fn_800D5064 = .text:0x800D5064; // type:function size:0x144 -fn_800D51A8 = .text:0x800D51A8; // type:function size:0x658 -fn_800D5800 = .text:0x800D5800; // type:function size:0x54 -fn_800D5854 = .text:0x800D5854; // type:function size:0x68 -fn_800D58BC = .text:0x800D58BC; // type:function size:0x98 -fn_800D5954 = .text:0x800D5954; // type:function size:0x30 -fn_800D5984 = .text:0x800D5984; // type:function size:0x150 -fn_800D5AD4 = .text:0x800D5AD4; // type:function size:0x178 -fn_800D5C4C = .text:0x800D5C4C; // type:function size:0x54 -fn_800D5CA0 = .text:0x800D5CA0; // type:function size:0x8 +__CARDFormatRegionAsync = .text:0x800D51A8; // type:function size:0x658 +CARDFormat = .text:0x800D5800; // type:function size:0x54 +__CARDCompareFileName = .text:0x800D5854; // type:function size:0x68 +__CARDAccess = .text:0x800D58BC; // type:function size:0x98 +__CARDIsPublic = .text:0x800D5954; // type:function size:0x30 +__CARDGetFileNo = .text:0x800D5984; // type:function size:0x150 +CARDOpen = .text:0x800D5AD4; // type:function size:0x178 +CARDClose = .text:0x800D5C4C; // type:function size:0x54 +__CARDIsOpened = .text:0x800D5CA0; // type:function size:0x8 fn_800D5CA8 = .text:0x800D5CA8; // type:function size:0x130 -fn_800D5DD8 = .text:0x800D5DD8; // type:function size:0x220 -fn_800D5FF8 = .text:0x800D5FF8; // type:function size:0x48 -fn_800D6040 = .text:0x800D6040; // type:function size:0x1B8 +CARDCreateAsync = .text:0x800D5DD8; // type:function size:0x220 +CARDCreate = .text:0x800D5FF8; // type:function size:0x48 +__CARDSeek = .text:0x800D6040; // type:function size:0x1B8 fn_800D61F8 = .text:0x800D61F8; // type:function size:0x130 -fn_800D6328 = .text:0x800D6328; // type:function size:0x148 -fn_800D6470 = .text:0x800D6470; // type:function size:0x48 +CARDReadAsync = .text:0x800D6328; // type:function size:0x148 +CARDRead = .text:0x800D6470; // type:function size:0x48 fn_800D64B8 = .text:0x800D64B8; // type:function size:0x170 fn_800D6628 = .text:0x800D6628; // type:function size:0xB0 -fn_800D66D8 = .text:0x800D66D8; // type:function size:0x114 -fn_800D67EC = .text:0x800D67EC; // type:function size:0x48 +CARDWriteAsync = .text:0x800D66D8; // type:function size:0x114 +CARDWrite = .text:0x800D67EC; // type:function size:0x48 fn_800D6834 = .text:0x800D6834; // type:function size:0xA4 -fn_800D68D8 = .text:0x800D68D8; // type:function size:0x110 -fn_800D69E8 = .text:0x800D69E8; // type:function size:0x48 +CARDDeleteAsync = .text:0x800D68D8; // type:function size:0x110 +CARDDelete = .text:0x800D69E8; // type:function size:0x48 fn_800D6A30 = .text:0x800D6A30; // type:function size:0x1F8 -fn_800D6C28 = .text:0x800D6C28; // type:function size:0x12C -fn_800D6D54 = .text:0x800D6D54; // type:function size:0x174 -fn_800D6EC8 = .text:0x800D6EC8; // type:function size:0x48 -fn_800D6F10 = .text:0x800D6F10; // type:function size:0xC4 +CARDGetStatus = .text:0x800D6C28; // type:function size:0x12C +CARDSetStatusAsync = .text:0x800D6D54; // type:function size:0x174 +CARDSetStatus = .text:0x800D6EC8; // type:function size:0x48 +CARDGetSerialNo = .text:0x800D6F10; // type:function size:0xC4 fn_800D6FD4 = .text:0x800D6FD4; // type:function size:0xF4 EXIImm = .text:0x800D70C8; // type:function size:0x25C scope:global fn_800D7324 = .text:0x800D7324; // type:function size:0xA0 @@ -2737,8 +2737,8 @@ GetTypeCallback = .text:0x800D9C60; // type:function size:0x298 scope:local SIGetType = .text:0x800D9EF8; // type:function size:0x1C4 scope:global fn_800DA0BC = .text:0x800DA0BC; // type:function size:0x13C SISetSamplingRate = .text:0x800DA1F8; // type:function size:0xE4 scope:global -fn_800DA2DC = .text:0x800DA2DC; // type:function size:0x24 -fn_800DA300 = .text:0x800DA300; // type:function size:0x244 +SIRefreshSamplingRate = .text:0x800DA2DC; // type:function size:0x24 +THPVideoDecode = .text:0x800DA300; // type:function size:0x244 fn_800DA544 = .text:0x800DA544; // type:function size:0x44 fn_800DA588 = .text:0x800DA588; // type:function size:0x13C fn_800DA6C4 = .text:0x800DA6C4; // type:function size:0x11C @@ -2756,8 +2756,8 @@ fn_800DE950 = .text:0x800DE950; // type:function size:0x1AAC fn_800E03FC = .text:0x800E03FC; // type:function size:0x67C fn_800E0A78 = .text:0x800E0A78; // type:function size:0x6A8 fn_800E1120 = .text:0x800E1120; // type:function size:0x6A8 -fn_800E17C8 = .text:0x800E17C8; // type:function size:0x78 -fn_800E1840 = .text:0x800E1840; // type:function size:0x464 +THPInit = .text:0x800E17C8; // type:function size:0x78 +THPAudioDecode = .text:0x800E1840; // type:function size:0x464 fn_800E1CA4 = .text:0x800E1CA4; // type:function size:0x90 fn_800E1D34 = .text:0x800E1D34; // type:function size:0x3C __va_arg = .text:0x800E1D70; // type:function size:0xC8 scope:global @@ -3495,8 +3495,8 @@ EXI2_Reserve = .text:0x8011527C; // type:function size:0x4 scope:global EXI2_Unreserve = .text:0x80115280; // type:function size:0x4 scope:global AMC_IsStub = .text:0x80115284; // type:function size:0x8 scope:global Hu_IsStub = .text:0x8011528C; // type:function size:0x8 scope:weak -fn_80115294 = .text:0x80115294; // type:function size:0x10 -fn_801152A4 = .text:0x801152A4; // type:function size:0x34 +HuSetVecF = .text:0x80115294; // type:function size:0x10 +HuSubVecF = .text:0x801152A4; // type:function size:0x34 fn_801152D8 = .text:0x801152D8; // type:function size:0x6C fn_80115344 = .text:0x80115344; // type:function size:0x27C fn_801155C0 = .text:0x801155C0; // type:function size:0x15C @@ -5082,11 +5082,18 @@ lbl_801305A0 = .data:0x801305A0; // type:object size:0x19 data:string lbl_801305B9 = .data:0x801305B9; // type:object size:0x14 data:string lbl_801305CD = .data:0x801305CD; // type:object size:0x93 lbl_80130660 = .data:0x80130660; // type:object size:0x30 -lbl_80130690 = .data:0x80130690; // type:object size:0x60 -lbl_801306F0 = .data:0x801306F0; // type:object size:0x60 -lbl_80130750 = .data:0x80130750; // type:object size:0x168 +effectDataTbl = .data:0x80130690; // type:object size:0x60 scope:local +charDirTbl = .data:0x801306F0; // type:object size:0x60 scope:local +effectDustParam = .data:0x80130750; // type:object size:0x38 scope:local +effectDotParam = .data:0x80130788; // type:object size:0x38 scope:local +effectStarParam = .data:0x801307C0; // type:object size:0x38 scope:local +effectWarnParam = .data:0x801307F8; // type:object size:0x38 scope:local +effectSmokeParam = .data:0x80130830; // type:object size:0x38 scope:local +lbl_801309A0 = .data:0x80130868; // type:object size:0x20 scope:local +lbl_801309C0 = .data:0x80130888; // type:object size:0x20 scope:local +lbl_801309E0 = .data:0x801308A8; // type:object size:0x10 scope:local jumptable_801308B8 = .data:0x801308B8; // type:object size:0x1E8 scope:local -lbl_80130AA0 = .data:0x80130AA0; // type:object size:0x40 +voiceParam = .data:0x80130AA0; // type:object size:0x40 scope:local lbl_80130AE0 = .data:0x80130AE0; // type:object size:0xE data:string lbl_80130AEE = .data:0x80130AEE; // type:object size:0xE data:string lbl_80130AFC = .data:0x80130AFC; // type:object size:0xE data:string @@ -5115,66 +5122,66 @@ lbl_80130C48 = .data:0x80130C48; // type:object size:0x18 data:string lbl_80130C60 = .data:0x80130C60; // type:object size:0xE data:string lbl_80130C6E = .data:0x80130C6E; // type:object size:0x18 data:string lbl_80130C86 = .data:0x80130C86; // type:object size:0x1A -lbl_80130CA0 = .data:0x80130CA0; // type:object size:0x100 +charTexNameTbl = .data:0x80130CA0; // type:object size:0x100 lbl_80130DA0 = .data:0x80130DA0; // type:object size:0xD data:string lbl_80130DAD = .data:0x80130DAD; // type:object size:0xD data:string lbl_80130DBA = .data:0x80130DBA; // type:object size:0xE data:string lbl_80130DC8 = .data:0x80130DC8; // type:object size:0xE data:string lbl_80130DD6 = .data:0x80130DD6; // type:object size:0x12 -lbl_80130DE8 = .data:0x80130DE8; // type:object size:0xA0 -lbl_80130E88 = .data:0x80130E88; // type:object size:0x38 -lbl_80130EC0 = .data:0x80130EC0; // type:object size:0x38 -lbl_80130EF8 = .data:0x80130EF8; // type:object size:0x38 -lbl_80130F30 = .data:0x80130F30; // type:object size:0x38 +hookNameTbl = .data:0x80130DE8; // type:object size:0xA0 scope:local +modelParticleParam = .data:0x80130E88; // type:object size:0x38 scope:local +coinParticleParam = .data:0x80130EC0; // type:object size:0x38 +lbl_80130EF8 = .data:0x80130EF8; // type:object size:0x38 scope:local +lbl_80130F30 = .data:0x80130F30; // type:object size:0x38 scope:local lbl_80130F68 = .data:0x80130F68; // type:object size:0x1C lbl_80130F84 = .data:0x80130F84; // type:object size:0x38 lbl_80130FBC = .data:0x80130FBC; // type:object size:0x38 lbl_80130FF4 = .data:0x80130FF4; // type:object size:0xBC -lbl_801310B0 = .data:0x801310B0; // type:object size:0x100 +VolumeTable = .data:0x801310B0; // type:object size:0x100 scope:local lbl_801311B0 = .data:0x801311B0; // type:object size:0x4D lbl_801311FD = .data:0x801311FD; // type:object size:0x1B mgInfoTbl = .data:0x80131218; // type:object size:0xE00 data:2byte -lbl_80132018 = .data:0x80132018; // type:object size:0x40 +commentTbl = .data:0x80132018; // type:object size:0x40 scope:local lbl_80132058 = .data:0x80132058; // type:object size:0xC data:string lbl_80132064 = .data:0x80132064; // type:object size:0xC data:string lbl_80132070 = .data:0x80132070; // type:object size:0xC data:string -lbl_8013207C = .data:0x8013207C; // type:object size:0xC +SaveFileNameTbl = .data:0x8013207C; // type:object size:0xC jumptable_80132088 = .data:0x80132088; // type:object size:0x34 scope:local -lbl_801320C0 = .data:0x801320C0; // type:object size:0x10 -lbl_801320D0 = .data:0x801320D0; // type:object size:0x1384 noreloc -lbl_80133454 = .data:0x80133454; // type:object size:0x1384 noreloc -lbl_801347D8 = .data:0x801347D8; // type:object size:0x1384 noreloc -lbl_80135B5C = .data:0x80135B5C; // type:object size:0x1384 noreloc -lbl_80136EE0 = .data:0x80136EE0; // type:object size:0x1384 noreloc -lbl_80138264 = .data:0x80138264; // type:object size:0x1384 noreloc -lbl_801395E8 = .data:0x801395E8; // type:object size:0x1384 noreloc -lbl_8013A96C = .data:0x8013A96C; // type:object size:0x1384 noreloc -lbl_8013BCF0 = .data:0x8013BCF0; // type:object size:0x1384 noreloc -lbl_8013D074 = .data:0x8013D074; // type:object size:0x1384 noreloc -lbl_8013E3F8 = .data:0x8013E3F8; // type:object size:0x1384 noreloc -lbl_8013F77C = .data:0x8013F77C; // type:object size:0x1384 noreloc -lbl_80140B00 = .data:0x80140B00; // type:object size:0x1384 noreloc -lbl_80141E84 = .data:0x80141E84; // type:object size:0x1384 noreloc -lbl_80143208 = .data:0x80143208; // type:object size:0x1384 noreloc -lbl_8014458C = .data:0x8014458C; // type:object size:0x1384 noreloc -lbl_80145910 = .data:0x80145910; // type:object size:0x1384 noreloc -lbl_80146C94 = .data:0x80146C94; // type:object size:0x1384 noreloc -lbl_80148018 = .data:0x80148018; // type:object size:0x1384 noreloc -lbl_8014939C = .data:0x8014939C; // type:object size:0x1384 noreloc -lbl_8014A720 = .data:0x8014A720; // type:object size:0x1384 noreloc -lbl_8014BAA4 = .data:0x8014BAA4; // type:object size:0x1384 noreloc -lbl_8014CE28 = .data:0x8014CE28; // type:object size:0x1384 noreloc -lbl_8014E1AC = .data:0x8014E1AC; // type:object size:0x1384 noreloc -lbl_8014F530 = .data:0x8014F530; // type:object size:0x1384 noreloc -lbl_801508B4 = .data:0x801508B4; // type:object size:0x1384 noreloc -lbl_80151C38 = .data:0x80151C38; // type:object size:0x1384 noreloc -lbl_80152FBC = .data:0x80152FBC; // type:object size:0x1384 noreloc -lbl_80154340 = .data:0x80154340; // type:object size:0x1384 noreloc -lbl_801556C4 = .data:0x801556C4; // type:object size:0x1384 noreloc +SR_PreRstChk = .data:0x801320C0; // type:object size:0x10 scope:local +coveropen_en = .data:0x801320D0; // type:object size:0x1384 noreloc +fatalerror_en = .data:0x80133454; // type:object size:0x1384 noreloc +loading_en = .data:0x801347D8; // type:object size:0x1384 noreloc +nodisc_en = .data:0x80135B5C; // type:object size:0x1384 noreloc +retryerror_en = .data:0x80136EE0; // type:object size:0x1384 noreloc +wrongdisc_en = .data:0x80138264; // type:object size:0x1384 noreloc +coveropen_fr = .data:0x801395E8; // type:object size:0x1384 noreloc +fatalerror_fr = .data:0x8013A96C; // type:object size:0x1384 noreloc +loading_fr = .data:0x8013BCF0; // type:object size:0x1384 noreloc +nodisc_fr = .data:0x8013D074; // type:object size:0x1384 noreloc +retryerror_fr = .data:0x8013E3F8; // type:object size:0x1384 noreloc +wrongdisc_fr = .data:0x8013F77C; // type:object size:0x1384 noreloc +coveropen_ge = .data:0x80140B00; // type:object size:0x1384 noreloc +fatalerror_ge = .data:0x80141E84; // type:object size:0x1384 noreloc +loading_ge = .data:0x80143208; // type:object size:0x1384 noreloc +nodisc_ge = .data:0x8014458C; // type:object size:0x1384 noreloc +retryerror_ge = .data:0x80145910; // type:object size:0x1384 noreloc +wrongdisc_ge = .data:0x80146C94; // type:object size:0x1384 noreloc +coveropen_it = .data:0x80148018; // type:object size:0x1384 noreloc +fatalerror_it = .data:0x8014939C; // type:object size:0x1384 noreloc +loading_it = .data:0x8014A720; // type:object size:0x1384 noreloc +nodisc_it = .data:0x8014BAA4; // type:object size:0x1384 noreloc +retryerror_it = .data:0x8014CE28; // type:object size:0x1384 noreloc +wrongdisc_it = .data:0x8014E1AC; // type:object size:0x1384 noreloc +coveropen_sp = .data:0x8014F530; // type:object size:0x1384 noreloc +fatalerror_sp = .data:0x801508B4; // type:object size:0x1384 noreloc +loading_sp = .data:0x80151C38; // type:object size:0x1384 noreloc +nodisc_sp = .data:0x80152FBC; // type:object size:0x1384 noreloc +retryerror_sp = .data:0x80154340; // type:object size:0x1384 noreloc +wrongdisc_sp = .data:0x801556C4; // type:object size:0x1384 noreloc jumptable_80156A48 = .data:0x80156A48; // type:object size:0x34 scope:local -lbl_80156A7C = .data:0x80156A7C; // type:object size:0x78 +bmpMes$493 = .data:0x80156A7C; // type:object size:0x78 scope:local lbl_80156AF4 = .data:0x80156AF4; // type:object size:0x13 data:string -lbl_80156B07 = .data:0x80156B07; // type:object size:0x19 +lbl_80156B07 = .data:0x80156B07; // type:object size:0x12 data:string lbl_80156B20 = .data:0x80156B20; // type:object size:0x24 jumptable_80156B44 = .data:0x80156B44; // type:object size:0x24 scope:local lbl_80156B68 = .data:0x80156B68; // type:object size:0x48 @@ -5489,34 +5496,41 @@ winData = .bss:0x801AF760; // type:object size:0x3000 align:32 data:byte winKey = .bss:0x801B2760; // type:object size:0x10 winComKeyBuf = .bss:0x801B2770; // type:object size:0x1400 mesWInsert = .bss:0x801B3B70; // type:object size:0x10 -lbl_801B3B80 = .bss:0x801B3B80; // type:object size:0x400 data:byte -lbl_801B3F80 = .bss:0x801B3F80; // type:object size:0x20 -lbl_801B3FA0 = .bss:0x801B3FA0; // type:object size:0x2C0 -lbl_801B4260 = .bss:0x801B4260; // type:object size:0x640 -lbl_801B48A0 = .bss:0x801B48A0; // type:object size:0x10 data:2byte -lbl_801B48B0 = .bss:0x801B48B0; // type:object size:0x20 -lbl_801B48D0 = .bss:0x801B48D0; // type:object size:0x80 -lbl_801B4950 = .bss:0x801B4950; // type:object size:0xA0 -lbl_801B49F0 = .bss:0x801B49F0; // type:object size:0x40 -lbl_801B4A30 = .bss:0x801B4A30; // type:object size:0x60 -lbl_801B4A90 = .bss:0x801B4A90; // type:object size:0xC data:float -lbl_801B4A9C = .bss:0x801B4A9C; // type:object size:0xC data:float -lbl_801B4AA8 = .bss:0x801B4AA8; // type:object size:0x78 -lbl_801B4B20 = .bss:0x801B4B20; // type:object size:0x18C -lbl_801B4CAC = .bss:0x801B4CAC; // type:object size:0x180 -lbl_801B4E2C = .bss:0x801B4E2C; // type:object size:0x34 -lbl_801B4E60 = .bss:0x801B4E60; // type:object size:0x1A0 -lbl_801B5000 = .bss:0x801B5000; // type:object size:0x500 -lbl_801B5500 = .bss:0x801B5500; // type:object size:0x40 -lbl_801B5540 = .bss:0x801B5540; // type:object size:0x40 -lbl_801B5580 = .bss:0x801B5580; // type:object size:0x118 -lbl_801B5698 = .bss:0x801B5698; // type:object size:0x100 -lbl_801B5798 = .bss:0x801B5798; // type:object size:0x18 -lbl_801B57B0 = .bss:0x801B57B0; // type:object size:0x10 -lbl_801B57C0 = .bss:0x801B57C0; // type:object size:0x20 -lbl_801B57E0 = .bss:0x801B57E0; // type:object size:0x4000 -lbl_801B97E0 = .bss:0x801B97E0; // type:object size:0x1277 -lbl_801BAA57 = .bss:0x801BAA57; // type:object size:0x129 +ARInfo = .bss:0x801B3B80; // type:object size:0x400 data:byte +arqReq = .bss:0x801B3F80; // type:object size:0x20 scope:local +ARQueBuf = .bss:0x801B3FA0; // type:object size:0x280 scope:local +preLoadBuf = .bss:0x801B4220; // type:object size:0x40 scope:local +charInstance = .bss:0x801B4260; // type:object size:0x640 scope:local +effectMdl = .bss:0x801B48A0; // type:object size:0x10 scope:local data:2byte +particleData = .bss:0x801B48B0; // type:object size:0x20 scope:local +itemHookProcess = .bss:0x801B48D0; // type:object size:0x80 scope:local +lbl_801975B0 = .bss:0x801B4950; // type:object size:0x10 scope:local +lbl_801975C0 = .bss:0x801B4960; // type:object size:0x90 scope:local +MapObject = .bss:0x801B49F0; // type:object size:0x40 +MapMT = .bss:0x801B4A30; // type:object size:0x30 +MapMTR = .bss:0x801B4A60; // type:object size:0x30 +MTRAdd = .bss:0x801B4A90; // type:object size:0xC scope:local data:float +FieldVec = .bss:0x801B4A9C; // type:object size:0xC scope:local data:float +ColisionIdx = .bss:0x801B4AA8; // type:object size:0x78 +HitFaceVec = .bss:0x801B4B20; // type:object size:0x180 +OldXYZ = .bss:0x801B4CA0; // type:object size:0xC scope:local +HitFace = .bss:0x801B4CAC; // type:object size:0x180 +CharObject = .bss:0x801B4E2C; // type:object size:0x30 +SimpleControl = .bss:0x801B4E60; // type:object size:0x1A0 +SoundBuffer = .bss:0x801B5000; // type:object size:0x500 scope:local align:32 +WorkBuffer = .bss:0x801B5500; // type:object size:0x40 scope:local align:32 +THPFileName = .bss:0x801B5540; // type:object size:0x40 scope:local +mgGameStatBackup = .bss:0x801B5580; // type:object size:0x118 +mgIndexList = .bss:0x801B5698; // type:object size:0x100 +mgTicTacToeGrid = .bss:0x801B5798; // type:object size:0x12 +_Sys_Flag = .bss:0x801B57B0; // type:object size:0x10 scope:local +curFileInfo = .bss:0x801B57C0; // type:object size:0x20 +saveBuf = .bss:0x801B57E0; // type:object size:0x4000 +ToeMessageQueue = .bss:0x801B97E0; // type:object size:0x20 scope:local +padStat$377 = .bss:0x801B9800; // type:object size:0x30 scope:local +ToeMessageArray = .bss:0x801B9830; // type:object size:0x40 scope:local +ToeThread = .bss:0x801B9870; // type:object size:0x310 scope:local align:8 +ToeThreadStack = .bss:0x801B9B80; // type:object size:0x1000 scope:local lbl_801BAB80 = .bss:0x801BAB80; // type:object size:0xC4 data:byte lbl_801BAC44 = .bss:0x801BAC44; // type:object size:0xC4 lbl_801BAD08 = .bss:0x801BAD08; // type:object size:0x10 @@ -5791,14 +5805,14 @@ lbl_801F09CB = .sdata:0x801F09CB; // type:object size:0x8 data:string lbl_801F09D3 = .sdata:0x801F09D3; // type:object size:0x6 data:string lbl_801F09D9 = .sdata:0x801F09D9; // type:object size:0x7 lbl_801F09E0 = .sdata:0x801F09E0; // type:object size:0x8 -lbl_801F09E8 = .sdata:0x801F09E8; // type:object size:0x4 data:4byte +SaveEnableF = .sdata:0x801F09E8; // type:object size:0x4 data:4byte lbl_801F09EC = .sdata:0x801F09EC; // type:object size:0x2 data:string lbl_801F09EE = .sdata:0x801F09EE; // type:object size:0x2 data:string -lbl_801F09F0 = .sdata:0x801F09F0; // type:object size:0x8 -lbl_801F09F8 = .sdata:0x801F09F8; // type:object size:0x8 data:4byte -lbl_801F0A00 = .sdata:0x801F0A00; // type:object size:0x8 data:2byte -lbl_801F0A08 = .sdata:0x801F0A08; // type:object size:0x1 data:byte -lbl_801F0A0C = .sdata:0x801F0A0C; // type:object size:0xC data:4byte +SlotNameTbl = .sdata:0x801F09F0; // type:object size:0x8 scope:local +saveMessWin = .sdata:0x801F09F8; // type:object size:0x4 data:4byte +SR_PushTime = .sdata:0x801F0A00; // type:object size:0x8 scope:local data:2byte +SR_ResetPad = .sdata:0x801F0A08; // type:object size:0x1 scope:local data:byte +Xfb = .sdata:0x801F0A0C; // type:object size:0x8 scope:local data:4byte lbl_801F0A18 = .sdata:0x801F0A18; // type:object size:0x4 data:4byte lbl_801F0A1C = .sdata:0x801F0A1C; // type:object size:0x1 data:byte lbl_801F0A1D = .sdata:0x801F0A1D; // type:object size:0x1 data:byte @@ -6226,58 +6240,57 @@ cardAnimB = .sbss:0x801F119C; // type:object size:0x4 scope:local data:4byte cardAnimA = .sbss:0x801F11A0; // type:object size:0x4 scope:local data:4byte cursorAnim = .sbss:0x801F11A4; // type:object size:0x4 scope:local data:4byte iconAnim = .sbss:0x801F11A8; // type:object size:0x8 scope:local data:4byte -lbl_801F11B0 = .sbss:0x801F11B0; // type:object size:0x1 scope:local data:byte -lbl_801F11B4 = .sbss:0x801F11B4; // type:object size:0x4 data:4byte -lbl_801F11B8 = .sbss:0x801F11B8; // type:object size:0x2 data:2byte -lbl_801F11BC = .sbss:0x801F11BC; // type:object size:0x4 data:4byte -lbl_801F11C0 = .sbss:0x801F11C0; // type:object size:0x8 data:4byte -lbl_801F11C8 = .sbss:0x801F11C8; // type:object size:0x4 data:4byte -lbl_801F11CC = .sbss:0x801F11CC; // type:object size:0x4 data:4byte -lbl_801F11D0 = .sbss:0x801F11D0; // type:object size:0x4 data:4byte -lbl_801F11D4 = .sbss:0x801F11D4; // type:object size:0x4 data:4byte -lbl_801F11D8 = .sbss:0x801F11D8; // type:object size:0x4 data:4byte -lbl_801F11DC = .sbss:0x801F11DC; // type:object size:0x4 data:4byte -lbl_801F11E0 = .sbss:0x801F11E0; // type:object size:0x4 -lbl_801F11E4 = .sbss:0x801F11E4; // type:object size:0x4 data:4byte -lbl_801F11E8 = .sbss:0x801F11E8; // type:object size:0x4 data:float -lbl_801F11EC = .sbss:0x801F11EC; // type:object size:0x4 data:float -lbl_801F11F0 = .sbss:0x801F11F0; // type:object size:0x4 data:4byte -lbl_801F11F4 = .sbss:0x801F11F4; // type:object size:0x4 data:4byte -lbl_801F11F8 = .sbss:0x801F11F8; // type:object size:0x4 data:4byte -lbl_801F11FC = .sbss:0x801F11FC; // type:object size:0x4 data:4byte -lbl_801F1200 = .sbss:0x801F1200; // type:object size:0x4 data:4byte -lbl_801F1204 = .sbss:0x801F1204; // type:object size:0x4 data:4byte -lbl_801F1208 = .sbss:0x801F1208; // type:object size:0x8 data:4byte -lbl_801F1210 = .sbss:0x801F1210; // type:object size:0x4 data:4byte -lbl_801F1214 = .sbss:0x801F1214; // type:object size:0x2 data:2byte -lbl_801F1218 = .sbss:0x801F1218; // type:object size:0x4 data:4byte -lbl_801F121C = .sbss:0x801F121C; // type:object size:0x2 data:2byte -lbl_801F121E = .sbss:0x801F121E; // type:object size:0x2 data:2byte -lbl_801F1220 = .sbss:0x801F1220; // type:object size:0x4 data:4byte -lbl_801F1224 = .sbss:0x801F1224; // type:object size:0x4 data:4byte -lbl_801F1228 = .sbss:0x801F1228; // type:object size:0x4 data:4byte -lbl_801F122C = .sbss:0x801F122C; // type:object size:0xC data:4byte -lbl_801F1238 = .sbss:0x801F1238; // type:object size:0x4 -lbl_801F123C = .sbss:0x801F123C; // type:object size:0x4 -lbl_801F1240 = .sbss:0x801F1240; // type:object size:0x4 data:4byte +UnMountCnt = .sbss:0x801F11B0; // type:object size:0x1 data:byte +cardWork = .sbss:0x801F11B4; // type:object size:0x4 scope:local data:4byte +arqIdx = .sbss:0x801F11B8; // type:object size:0x2 scope:local data:2byte +arqCnt = .sbss:0x801F11BC; // type:object size:0x4 scope:local data:4byte +ARBase = .sbss:0x801F11C0; // type:object size:0x8 scope:local data:4byte +effectAMemP = .sbss:0x801F11C8; // type:object size:0x4 scope:local data:4byte +skipAnimUpdate = .sbss:0x801F11CC; // type:object size:0x4 scope:local data:4byte +CollisionCount = .sbss:0x801F11D0; // type:object size:0x4 data:4byte +topvtx = .sbss:0x801F11D4; // type:object size:0x4 scope:local data:4byte +AttrHsf = .sbss:0x801F11D8; // type:object size:0x4 scope:local data:4byte +HitFaceCount = .sbss:0x801F11DC; // type:object size:0x4 data:4byte +nChar = .sbss:0x801F11E0; // type:object size:0x4 +nMap = .sbss:0x801F11E4; // type:object size:0x4 data:4byte +AddZ = .sbss:0x801F11E8; // type:object size:0x4 data:float +AddX = .sbss:0x801F11EC; // type:object size:0x4 data:float +Initialized = .sbss:0x801F11F0; // type:object size:0x4 scope:local data:4byte +OldAIDCallback = .sbss:0x801F11F4; // type:object size:0x4 scope:local data:4byte +AudioSystem = .sbss:0x801F11F8; // type:object size:0x4 scope:local data:4byte +bufIdx = .sbss:0x801F11FC; // type:object size:0x4 scope:local data:4byte +CurAudioBuffer = .sbss:0x801F1200; // type:object size:0x4 scope:local data:4byte +LastAudioBuffer = .sbss:0x801F1204; // type:object size:0x4 scope:local data:4byte +SoundBufferIndex = .sbss:0x801F1208; // type:object size:0x4 scope:local data:4byte +THPProc = .sbss:0x801F1210; // type:object size:0x4 data:4byte +THPStart = .sbss:0x801F1214; // type:object size:0x2 scope:local data:2byte +THPFrame = .sbss:0x801F1218; // type:object size:0x4 scope:local data:4byte +THPStat = .sbss:0x801F121C; // type:object size:0x2 scope:local data:2byte +THPLoopF = .sbss:0x801F121E; // type:object size:0x2 scope:local data:2byte +decodeThread = .sbss:0x801F1220; // type:object size:0x4 scope:local data:4byte +decodeStackP = .sbss:0x801F1224; // type:object size:0x4 scope:local data:4byte +decodeRate = .sbss:0x801F1228; // type:object size:0x4 scope:local data:4byte +audioTrack = .sbss:0x801F122C; // type:object size:0x8 scope:local data:4byte +mgBoardHostEnableF = .sbss:0x801F1238; // type:object size:0x4 +mgInstExitEnableF = .sbss:0x801F123C; // type:object size:0x4 +mgPracticeEnableF = .sbss:0x801F1240; // type:object size:0x4 data:4byte mgQuitExtraF = .sbss:0x801F1244; // type:object size:0x4 data:4byte -lbl_801F1248 = .sbss:0x801F1248; // type:object size:0x4 -lbl_801F124C = .sbss:0x801F124C; // type:object size:0x2 -lbl_801F124E = .sbss:0x801F124E; // type:object size:0x2 -lbl_801F1250 = .sbss:0x801F1250; // type:object size:0x8 -lbl_801F1258 = .sbss:0x801F1258; // type:object size:0x8 -lbl_801F1260 = .sbss:0x801F1260; // type:object size:0x2 data:2byte -lbl_801F1262 = .sbss:0x801F1262; // type:object size:0x1 data:byte -lbl_801F1264 = .sbss:0x801F1264; // type:object size:0x4 -lbl_801F1268 = .sbss:0x801F1268; // type:object size:0x4 data:4byte -lbl_801F126C = .sbss:0x801F126C; // type:object size:0x4 data:4byte -lbl_801F1270 = .sbss:0x801F1270; // type:object size:0x4 data:4byte -lbl_801F1274 = .sbss:0x801F1274; // type:object size:0x4 data:4byte -lbl_801F1278 = .sbss:0x801F1278; // type:object size:0x4 data:4byte -lbl_801F127C = .sbss:0x801F127C; // type:object size:0x4 data:4byte -lbl_801F1280 = .sbss:0x801F1280; // type:object size:0x4 data:4byte -lbl_801F1284 = .sbss:0x801F1284; // type:object size:0x2 data:2byte -lbl_801F1286 = .sbss:0x801F1286; // type:object size:0x2 data:2byte +mgRecordExtra = .sbss:0x801F1248; // type:object size:0x4 +lbl_801D3E94 = .sbss:0x801F124C; // type:object size:0x2 +mgBattleStarMax = .sbss:0x801F124E; // type:object size:0x2 +mgBattleStar = .sbss:0x801F1250; // type:object size:0x8 +mgTypeCurr = .sbss:0x801F1258; // type:object size:0x2 +curSlotNo = .sbss:0x801F1260; // type:object size:0x2 data:2byte +curBoxNo = .sbss:0x801F1262; // type:object size:0x1 data:byte +saveExecF = .sbss:0x801F1264; // type:object size:0x4 +SLSerialNo = .sbss:0x801F1268; // type:object size:0x8 data:4byte +H_ResetReady = .sbss:0x801F1270; // type:object size:0x4 scope:local data:4byte +SR_RestartChk = .sbss:0x801F1274; // type:object size:0x4 scope:local data:4byte +SR_ExecReset = .sbss:0x801F1278; // type:object size:0x4 data:4byte +trychkBusyWait = .sbss:0x801F127C; // type:object size:0x4 scope:local data:4byte +XfbProg = .sbss:0x801F1280; // type:object size:0x4 scope:local data:4byte +XfbH = .sbss:0x801F1284; // type:object size:0x2 scope:local data:2byte +XfbW = .sbss:0x801F1286; // type:object size:0x2 scope:local data:2byte lbl_801F1288 = .sbss:0x801F1288; // type:object size:0x4 data:4byte lbl_801F128C = .sbss:0x801F128C; // type:object size:0x4 data:4byte lbl_801F1290 = .sbss:0x801F1290; // type:object size:0x4 data:4byte diff --git a/config/GMPP01_02/config.yml b/config/GMPP01_02/config.yml index 226191e5..81dce3b1 100644 --- a/config/GMPP01_02/config.yml +++ b/config/GMPP01_02/config.yml @@ -546,4 +546,94 @@ extract: header: hiliteData4.inc - symbol: Ascii8x8_1bpp binary: Ascii8x8_1bpp.bin - header: Ascii8x8_1bpp.inc \ No newline at end of file + header: Ascii8x8_1bpp.inc +- symbol: coveropen_en + binary: coveropen_en.bin + header: coveropen_en.inc +- symbol: fatalerror_en + binary: fatalerror_en.bin + header: fatalerror_en.inc +- symbol: loading_en + binary: loading_en.bin + header: loading_en.inc +- symbol: nodisc_en + binary: nodisc_en.bin + header: nodisc_en.inc +- symbol: retryerror_en + binary: retryerror_en.bin + header: retryerror_en.inc +- symbol: wrongdisc_en + binary: wrongdisc_en.bin + header: wrongdisc_en.inc +- symbol: coveropen_fr + binary: coveropen_fr.bin + header: coveropen_fr.inc +- symbol: fatalerror_fr + binary: fatalerror_fr.bin + header: fatalerror_fr.inc +- symbol: loading_fr + binary: loading_fr.bin + header: loading_fr.inc +- symbol: nodisc_fr + binary: nodisc_fr.bin + header: nodisc_fr.inc +- symbol: retryerror_fr + binary: retryerror_fr.bin + header: retryerror_fr.inc +- symbol: wrongdisc_fr + binary: wrongdisc_fr.bin + header: wrongdisc_fr.inc +- symbol: coveropen_ge + binary: coveropen_ge.bin + header: coveropen_ge.inc +- symbol: fatalerror_ge + binary: fatalerror_ge.bin + header: fatalerror_ge.inc +- symbol: loading_ge + binary: loading_ge.bin + header: loading_ge.inc +- symbol: nodisc_ge + binary: nodisc_ge.bin + header: nodisc_ge.inc +- symbol: retryerror_ge + binary: retryerror_ge.bin + header: retryerror_ge.inc +- symbol: wrongdisc_ge + binary: wrongdisc_ge.bin + header: wrongdisc_ge.inc +- symbol: coveropen_it + binary: coveropen_it.bin + header: coveropen_it.inc +- symbol: fatalerror_it + binary: fatalerror_it.bin + header: fatalerror_it.inc +- symbol: loading_it + binary: loading_it.bin + header: loading_it.inc +- symbol: nodisc_it + binary: nodisc_it.bin + header: nodisc_it.inc +- symbol: retryerror_it + binary: retryerror_it.bin + header: retryerror_it.inc +- symbol: wrongdisc_it + binary: wrongdisc_it.bin + header: wrongdisc_it.inc +- symbol: coveropen_sp + binary: coveropen_sp.bin + header: coveropen_sp.inc +- symbol: fatalerror_sp + binary: fatalerror_sp.bin + header: fatalerror_sp.inc +- symbol: loading_sp + binary: loading_sp.bin + header: loading_sp.inc +- symbol: nodisc_sp + binary: nodisc_sp.bin + header: nodisc_sp.inc +- symbol: retryerror_sp + binary: retryerror_sp.bin + header: retryerror_sp.inc +- symbol: wrongdisc_sp + binary: wrongdisc_sp.bin + header: wrongdisc_sp.inc \ No newline at end of file diff --git a/configure.py b/configure.py index 0c48e37b..823fed30 100644 --- a/configure.py +++ b/configure.py @@ -410,18 +410,18 @@ config.libs = [ Object(Matching, "game/ShapeExec.c"), Object(Matching, "game/wipe.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/window.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/messdata.c"), + Object(Matching, "game/messdata.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/card.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/armem.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/chrman.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/mapspace.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/THPSimple.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/THPDraw.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/thpmain.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/objsub.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/flag.c"), + Object(Matching, "game/armem.c"), + Object(Matching, "game/chrman.c"), + Object(Matching, "game/mapspace.c"), + Object(Matching, "game/THPSimple.c"), + Object(Matching, "game/THPDraw.c"), + Object(Matching, "game/thpmain.c"), + Object(Matching, "game/objsub.c"), + Object(Matching, "game/flag.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/saveload.c"), - Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/sreset.c"), + Object(Matching, "game/sreset.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/main.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/player.c"), Object(MatchingFor("GMPE01_00", "GMPE01_01"), "game/board/model.c"), diff --git a/src/game/sreset.c b/src/game/sreset.c index ae00c3cf..2ddadd51 100644 --- a/src/game/sreset.c +++ b/src/game/sreset.c @@ -4,6 +4,9 @@ #include "game/pad.h" #include "game/audio.h" #include "game/thpmain.h" +#include "game/gamework_data.h" + +#include "version.h" #define SR_DVD_LOADING 0 #define SR_DVD_COVER_OPEN 1 @@ -19,6 +22,8 @@ extern s32 HuDvdErrWait; static s32 SR_PreRstChk[4] = {}; +#if VERSION_NTSC + #include "coveropen_en.inc" #include "fatalerror_en.inc" #include "loading_en.inc" @@ -26,6 +31,45 @@ static s32 SR_PreRstChk[4] = {}; #include "retryerror_en.inc" #include "wrongdisc_en.inc" +#else + +#include "coveropen_en.inc" +#include "fatalerror_en.inc" +#include "loading_en.inc" +#include "nodisc_en.inc" +#include "retryerror_en.inc" +#include "wrongdisc_en.inc" + +#include "coveropen_fr.inc" +#include "fatalerror_fr.inc" +#include "loading_fr.inc" +#include "nodisc_fr.inc" +#include "retryerror_fr.inc" +#include "wrongdisc_fr.inc" + +#include "coveropen_ge.inc" +#include "fatalerror_ge.inc" +#include "loading_ge.inc" +#include "nodisc_ge.inc" +#include "retryerror_ge.inc" +#include "wrongdisc_ge.inc" + +#include "coveropen_it.inc" +#include "fatalerror_it.inc" +#include "loading_it.inc" +#include "nodisc_it.inc" +#include "retryerror_it.inc" +#include "wrongdisc_it.inc" + +#include "coveropen_sp.inc" +#include "fatalerror_sp.inc" +#include "loading_sp.inc" +#include "nodisc_sp.inc" +#include "retryerror_sp.inc" +#include "wrongdisc_sp.inc" + +#endif + static s16 SR_PushTime[4] = {}; static s8 SR_ResetPad = -1; @@ -103,9 +147,17 @@ void HuDvdErrDispInit(GXRenderModeObj *rmode, void *xfb1, void *xfb2) XfbW = (u16)(((u16)rmode->fbWidth+15) & ~0xF); XfbH = rmode->xfbHeight; } else { + #if VERSION_NTSC XfbW = 640; XfbH = 480; + #else + XfbW = 640; + XfbH = 528; + #endif } + #if VERSION_PAL + (void)(VIGetTvFormat() == VI_PAL); + #endif if((u16)rmode->xFBmode == VI_XFBMODE_SF) { XfbProg = 0; } else { @@ -223,20 +275,39 @@ static void ToeDispCheck(void) _HuDvdErrDispXFB(status); } +#if VERSION_NTSC + +#define XFB_SIZE 0x96000 + +#else + +#define XFB_SIZE (XfbW*XfbH*2) + +#endif + static void _HuDvdErrDispXFB(s32 error) { + #if VERSION_NTSC static void *bmpMes[][6] = { loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en }; - volatile s32 status; - u8 color[2]; - s8 language; + #else + static void *bmpMes[][6] = { + loading_en, coveropen_en, nodisc_en, wrongdisc_en, retryerror_en, fatalerror_en, + loading_fr, coveropen_fr, nodisc_fr, wrongdisc_fr, retryerror_fr, fatalerror_fr, + loading_ge, coveropen_ge, nodisc_ge, wrongdisc_ge, retryerror_ge, fatalerror_ge, + loading_it, coveropen_it, nodisc_it, wrongdisc_it, retryerror_it, fatalerror_it, + loading_sp, coveropen_sp, nodisc_sp, wrongdisc_sp, retryerror_sp, fatalerror_sp + }; + #endif + s16 *bmpData; u8 *xfb1_ptr; u8 *xfb2_ptr; u32 i; u32 data; u32 row; + s8 language; u32 *xfb1; u32 *xfb2; u32 j; @@ -246,25 +317,59 @@ static void _HuDvdErrDispXFB(s32 error) u32 *data_ptr; u32 row_offset; u32 row_pitch; + void *tempfb1; + void *tempfb2; + s32 status; + u8 color[2]; + + + #if VERSION_PAL + switch(GWGameStat.language) { + case 2: + language = 2; + break; + + case 3: + language = 1; + break; + + case 4: + language = 3; + break; + + case 5: + language = 4; + break; + + default: + language = 0; + break; + } + #else language = 0; + #endif xfb1 = Xfb[0]; xfb2 = Xfb[1]; - for(i=0; i<0x25800; i++, xfb1++, xfb2++) { + for(i=0; i>= 2, xfb1_ptr += 4, xfb2_ptr += 4) { @@ -290,8 +395,8 @@ static void _HuDvdErrDispXFB(s32 error) } } } - DCStoreRangeNoSync(sp14[1], bmpData[0]*2); - DCStoreRangeNoSync(sp14[0], bmpData[0]*2); + DCStoreRangeNoSync(tempfb1, bmpData[0]*2); + DCStoreRangeNoSync(tempfb2, bmpData[0]*2); } status = DVDGetDriveStatus(); while(status) {