Merge branch 'Rainchus:main' into main
This commit is contained in:
commit
db63616c5e
22 changed files with 1461 additions and 234 deletions
|
|
@ -258,7 +258,7 @@ game/armem.c:
|
||||||
.bss start:0x801967E0 end:0x80196EC0
|
.bss start:0x801967E0 end:0x80196EC0
|
||||||
.sbss start:0x801D3E00 end:0x801D3E10
|
.sbss start:0x801D3E00 end:0x801D3E10
|
||||||
|
|
||||||
game/code_800498F0.c:
|
game/chrman.c:
|
||||||
.text start:0x800498F0 end:0x80050C5C
|
.text start:0x800498F0 end:0x80050C5C
|
||||||
.data start:0x801307C8 end:0x801311E8
|
.data start:0x801307C8 end:0x801311E8
|
||||||
.bss start:0x80196EC0 end:0x80197650
|
.bss start:0x80196EC0 end:0x80197650
|
||||||
|
|
@ -341,16 +341,22 @@ game/board/model.c:
|
||||||
.sdata2 start:0x801D5300 end:0x801D5318
|
.sdata2 start:0x801D5300 end:0x801D5318
|
||||||
|
|
||||||
game/board/window.c:
|
game/board/window.c:
|
||||||
.text start:0x8006FD7C end:0x800714F8
|
.text start:0x8006FD7C end:0x80070D84
|
||||||
.rodata start:0x8011DE60 end:0x8011DED0
|
.rodata start:0x8011DE60 end:0x8011DED0
|
||||||
.data start:0x80139AA0 end:0x80139B00
|
.data start:0x80139AA0 end:0x80139AE8
|
||||||
.bss start:0x8019D998 end:0x8019D9F8
|
.bss start:0x8019D998 end:0x8019D9F8
|
||||||
.sdata start:0x801D36E0 end:0x801D36F0
|
.sdata start:0x801D36E0 end:0x801D36E8
|
||||||
.sbss start:0x801D3F68 end:0x801D3F98
|
.sbss start:0x801D3F68 end:0x801D3F90
|
||||||
.sdata2 start:0x801D5318 end:0x801D5328
|
.sdata2 start:0x801D5318 end:0x801D5328
|
||||||
|
|
||||||
|
game/board/board_snd.c:
|
||||||
|
.text start:0x80070D84 end:0x80071290
|
||||||
|
.data start:0x80139AE8 end:0x80139B00
|
||||||
|
.sdata start:0x801D36E8 end:0x801D36F0
|
||||||
|
.sbss start:0x801D3F90 end:0x801D3F98
|
||||||
|
|
||||||
game/board/com.c:
|
game/board/com.c:
|
||||||
.text start:0x800714F8 end:0x800729A4
|
.text start:0x80071290 end:0x800729A4
|
||||||
.data start:0x80139B00 end:0x80139BC8
|
.data start:0x80139B00 end:0x80139BC8
|
||||||
.sdata start:0x801D36F0 end:0x801D36F8
|
.sdata start:0x801D36F0 end:0x801D36F8
|
||||||
.sdata2 start:0x801D5328 end:0x801D5350
|
.sdata2 start:0x801D5328 end:0x801D5350
|
||||||
|
|
@ -426,7 +432,7 @@ game/board/star.c:
|
||||||
.sdata2 start:0x801D5898 end:0x801D5938
|
.sdata2 start:0x801D5898 end:0x801D5938
|
||||||
|
|
||||||
game/board/dice_roll.c:
|
game/board/dice_roll.c:
|
||||||
.text start:0x80085CC8 end:0x8008831C
|
.text start:0x80085CC8 end:0x80088368
|
||||||
.rodata start:0x8011E0B0 end:0x8011E118
|
.rodata start:0x8011E0B0 end:0x8011E118
|
||||||
.data start:0x8013A368 end:0x8013A408
|
.data start:0x8013A368 end:0x8013A408
|
||||||
.bss start:0x801A4AE0 end:0x801A4AF0
|
.bss start:0x801A4AE0 end:0x801A4AF0
|
||||||
|
|
@ -435,7 +441,7 @@ game/board/dice_roll.c:
|
||||||
.sdata2 start:0x801D5938 end:0x801D59E0
|
.sdata2 start:0x801D5938 end:0x801D59E0
|
||||||
|
|
||||||
game/board/ui.c:
|
game/board/ui.c:
|
||||||
.text start:0x8008831C end:0x8008DF68
|
.text start:0x80088368 end:0x8008DF68
|
||||||
.rodata start:0x8011E118 end:0x8011E200
|
.rodata start:0x8011E118 end:0x8011E200
|
||||||
.data start:0x8013A408 end:0x8013A608
|
.data start:0x8013A408 end:0x8013A608
|
||||||
.bss start:0x801A4AF0 end:0x801A4B80
|
.bss start:0x801A4AF0 end:0x801A4B80
|
||||||
|
|
@ -830,15 +836,95 @@ dolphin/gx/GXStubs.c:
|
||||||
|
|
||||||
dolphin/gx/GXDisplayList.c:
|
dolphin/gx/GXDisplayList.c:
|
||||||
.text start:0x800CF018 end:0x800CF224
|
.text start:0x800CF018 end:0x800CF224
|
||||||
|
.bss start:0x801A6778 end:0x801A6C98
|
||||||
|
.sbss start:0x801D4600 end:0x801D4608
|
||||||
|
|
||||||
dolphin/gx/GXTransform.c:
|
dolphin/gx/GXTransform.c:
|
||||||
.text start:0x800CF224 end:0x800CF9D8
|
.text start:0x800CF224 end:0x800CF9D8
|
||||||
.sdata2 start:0x801D64D0 end:0x801D64F8
|
.sdata2 start:0x801D64D0 end:0x801D64F0
|
||||||
|
|
||||||
dolphin/gx/GXPerf.c:
|
dolphin/gx/GXPerf.c:
|
||||||
.text start:0x800CF9D8 end:0x800D09A4
|
.text start:0x800CF9D8 end:0x800D09A4
|
||||||
.data start:0x8013DDA0 end:0x8013DEE8
|
.data start:0x8013DDA0 end:0x8013DEE8
|
||||||
|
|
||||||
|
dolphin/card/CARDBios.c:
|
||||||
|
.text start:0x800D09A4 end:0x800D1CC4
|
||||||
|
.data start:0x8013DEE8 end:0x8013DF00
|
||||||
|
.bss start:0x801A6C98 end:0x801A6ED8
|
||||||
|
|
||||||
|
dolphin/card/CARDUnlock.c:
|
||||||
|
.text start:0x800D1CC4 end:0x800D2F24
|
||||||
|
.data start:0x8013DF00 end:0x8013E060
|
||||||
|
|
||||||
|
dolphin/card/CARDRdwr.c:
|
||||||
|
.text start:0x800D2F24 end:0x800D31A4
|
||||||
|
|
||||||
|
dolphin/card/CARDBlock.c:
|
||||||
|
.text start:0x800D31A4 end:0x800D35A8
|
||||||
|
|
||||||
|
dolphin/card/CARDDir.c:
|
||||||
|
.text start:0x800D35A8 end:0x800D380C
|
||||||
|
|
||||||
|
dolphin/card/CARDCheck.c:
|
||||||
|
.text start:0x800D380C end:0x800D4774
|
||||||
|
|
||||||
|
dolphin/card/CARDMount.c:
|
||||||
|
.text start:0x800D4774 end:0x800D5234
|
||||||
|
.data start:0x8013E060 end:0x8013E0A0
|
||||||
|
|
||||||
|
dolphin/card/CARDFormat.c:
|
||||||
|
.text start:0x800D5234 end:0x800D5A24
|
||||||
|
|
||||||
|
dolphin/card/CARDOpen.c:
|
||||||
|
.text start:0x800D5A24 end:0x800D5E78
|
||||||
|
|
||||||
|
dolphin/card/CARDCreate.c:
|
||||||
|
.text start:0x800D5E78 end:0x800D6210
|
||||||
|
|
||||||
|
dolphin/card/CARDRead.c:
|
||||||
|
.text start:0x800D6210 end:0x800D6688
|
||||||
|
|
||||||
|
dolphin/card/CARDWrite.c:
|
||||||
|
.text start:0x800D6688 end:0x800D6A04
|
||||||
|
|
||||||
|
dolphin/card/CARDDelete.c:
|
||||||
|
.text start:0x800D6A04 end:0x800D6C00
|
||||||
|
|
||||||
|
dolphin/card/CARDStat.c:
|
||||||
|
.text start:0x800D6C00 end:0x800D70E0
|
||||||
|
|
||||||
|
dolphin/card/CARDNet.c:
|
||||||
|
.text start:0x800D70E0 end:0x800D71A4
|
||||||
|
|
||||||
|
dolphin/exi/EXIBios.c:
|
||||||
|
.text start:0x800D71A4 end:0x800D8A78
|
||||||
|
.bss start:0x801A6ED8 end:0x801A6F98
|
||||||
|
|
||||||
|
dolphin/exi/EXIUart.c:
|
||||||
|
.text start:0x800D8A78 end:0x800D8CE8
|
||||||
|
.sbss start:0x801D4608 end:0x801D4618
|
||||||
|
|
||||||
|
dolphin/si/SIBios.c:
|
||||||
|
.text start:0x800D8CE8 end:0x800DA3C8
|
||||||
|
.data start:0x8013E0A0 end:0x8013E170
|
||||||
|
.bss start:0x801A6F98 end:0x801A71A0
|
||||||
|
.sbss start:0x801D4618 end:0x801D4628
|
||||||
|
|
||||||
|
dolphin/si/SISamplingRate.c:
|
||||||
|
.text start:0x800DA3C8 end:0x800DA4D0
|
||||||
|
.data start:0x8013E170 end:0x8013E208
|
||||||
|
.sbss start:0x801D4628 end:0x801D4640
|
||||||
|
|
||||||
|
dolphin/thp/THPDec.c:
|
||||||
|
.text start:0x800DA4D0 end:0x800E1A10
|
||||||
|
.rodata start:0x8011E440 end:0x8011E4D0
|
||||||
|
.bss start:0x801A71A0 end:0x801A72D0
|
||||||
|
.sbss start:0x801D4640 end:0x801D4758
|
||||||
|
.sdata2 start:0x801D64F0 end:0x801D6510
|
||||||
|
|
||||||
|
dolphin/thp/THPAudio.c:
|
||||||
|
.text start:0x800E1A10 end:0x800E1F40
|
||||||
|
|
||||||
Runtime.PPCEABI.H/global_destructor_chain.c:
|
Runtime.PPCEABI.H/global_destructor_chain.c:
|
||||||
.text start:0x800E2008 end:0x800E2068
|
.text start:0x800E2008 end:0x800E2068
|
||||||
.dtors start:0x8011DCE8 end:0x8011DCEC
|
.dtors start:0x8011DCE8 end:0x8011DCEC
|
||||||
|
|
@ -858,3 +944,6 @@ Runtime.PPCEABI.H/Gecko_ExceptionPPC.cp:
|
||||||
.data start:0x8013E218 end:0x8013E300
|
.data start:0x8013E218 end:0x8013E300
|
||||||
.bss start:0x801A72D0 end:0x801A72E0
|
.bss start:0x801A72D0 end:0x801A72E0
|
||||||
.sdata start:0x801D39B8 end:0x801D39C8
|
.sdata start:0x801D39B8 end:0x801D39C8
|
||||||
|
|
||||||
|
game/kerent.c:
|
||||||
|
.text start:0x8011CCC4 end:0x8011DCA8
|
||||||
|
|
|
||||||
|
|
@ -664,7 +664,7 @@ MGSeqSetParam = .text:0x80035968; // type:function size:0x4C
|
||||||
MGSeqKill = .text:0x800359B4; // type:function size:0x58
|
MGSeqKill = .text:0x800359B4; // type:function size:0x58
|
||||||
MGSeqKillAll = .text:0x80035A0C; // type:function size:0x3C
|
MGSeqKillAll = .text:0x80035A0C; // type:function size:0x3C
|
||||||
MGSeqIsDone = .text:0x80035A48; // type:function size:0xA4
|
MGSeqIsDone = .text:0x80035A48; // type:function size:0xA4
|
||||||
MGSeqDummy_80035AEC = .text:0x80035AEC; // type:function size:0x4
|
MGSeqStub = .text:0x80035AEC; // type:function size:0x4
|
||||||
MGSeqSprKill = .text:0x80035AF0; // type:function size:0x8C
|
MGSeqSprKill = .text:0x80035AF0; // type:function size:0x8C
|
||||||
SeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 scope:local
|
SeqInitTimer = .text:0x80035B7C; // type:function size:0x2E0 scope:local
|
||||||
SeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C scope:local
|
SeqUpdateTimer = .text:0x80035E5C; // type:function size:0x69C scope:local
|
||||||
|
|
@ -999,92 +999,92 @@ HuRestartSystem = .text:0x8005AE34; // type:function size:0xDC
|
||||||
HuSoftResetCheck = .text:0x8005AF10; // type:function size:0xFC scope:local
|
HuSoftResetCheck = .text:0x8005AF10; // type:function size:0xFC scope:local
|
||||||
HuSoftResetCountCheck = .text:0x8005B00C; // type:function size:0xCC scope:local
|
HuSoftResetCountCheck = .text:0x8005B00C; // type:function size:0xCC scope:local
|
||||||
HuSoftResetPostProc = .text:0x8005B0D8; // type:function size:0x78 scope:local
|
HuSoftResetPostProc = .text:0x8005B0D8; // type:function size:0x78 scope:local
|
||||||
fn_8005B150 = .text:0x8005B150; // type:function size:0x2E0
|
BoardInit = .text:0x8005B150; // type:function size:0x2E0
|
||||||
fn_8005B430 = .text:0x8005B430; // type:function size:0x64
|
InitBoardFunc = .text:0x8005B430; // type:function size:0x64 scope:local
|
||||||
fn_8005B494 = .text:0x8005B494; // type:function size:0x9C
|
ExecBoardFunc = .text:0x8005B494; // type:function size:0x9C scope:local
|
||||||
fn_8005B530 = .text:0x8005B530; // type:function size:0xCC
|
KillBoardFunc = .text:0x8005B530; // type:function size:0xCC scope:local
|
||||||
fn_8005B5FC = .text:0x8005B5FC; // type:function size:0xAC
|
BoardKill = .text:0x8005B5FC; // type:function size:0xAC
|
||||||
fn_8005B6A8 = .text:0x8005B6A8; // type:function size:0x48
|
fn_8005B6A8 = .text:0x8005B6A8; // type:function size:0x48
|
||||||
fn_8005B6F0 = .text:0x8005B6F0; // type:function size:0x74
|
BoardSetPauseEnable = .text:0x8005B6F0; // type:function size:0x74
|
||||||
fn_8005B764 = .text:0x8005B764; // type:function size:0x48
|
BoardGetPauseEnable = .text:0x8005B764; // type:function size:0x48
|
||||||
fn_8005B7AC = .text:0x8005B7AC; // type:function size:0x524
|
BoardSetSave = .text:0x8005B7AC; // type:function size:0x524
|
||||||
fn_8005BCD0 = .text:0x8005BCD0; // type:function size:0x160
|
fn_8005BCD0 = .text:0x8005BCD0; // type:function size:0x160
|
||||||
fn_8005BE30 = .text:0x8005BE30; // type:function size:0x160
|
BoardLoadConfig = .text:0x8005BE30; // type:function size:0x160
|
||||||
fn_8005BF90 = .text:0x8005BF90; // type:function size:0xC
|
DestroyBoardMainProc = .text:0x8005BF90; // type:function size:0xC scope:local
|
||||||
fn_8005BF9C = .text:0x8005BF9C; // type:function size:0x7D0
|
BoardMainProcFunc = .text:0x8005BF9C; // type:function size:0x7D0 scope:local
|
||||||
fn_8005C76C = .text:0x8005C76C; // type:function size:0x8C
|
BoardTurnNext = .text:0x8005C76C; // type:function size:0x8C
|
||||||
fn_8005C7F8 = .text:0x8005C7F8; // type:function size:0x28C
|
BoardIsTurnCont = .text:0x8005C7F8; // type:function size:0x28C
|
||||||
fn_8005CA84 = .text:0x8005CA84; // type:function size:0xC4
|
BoardSetNextOvl = .text:0x8005CA84; // type:function size:0xC4
|
||||||
fn_8005CB48 = .text:0x8005CB48; // type:function size:0x8C
|
BoardHasStarted = .text:0x8005CB48; // type:function size:0x8C
|
||||||
fn_8005CBD4 = .text:0x8005CBD4; // type:function size:0x410
|
CreateBoard = .text:0x8005CBD4; // type:function size:0x410 scope:local
|
||||||
fn_8005CFE4 = .text:0x8005CFE4; // type:function size:0x128
|
DestroyBoard = .text:0x8005CFE4; // type:function size:0x128 scope:local
|
||||||
fn_8005D10C = .text:0x8005D10C; // type:function size:0xC
|
fn_8005D10C = .text:0x8005D10C; // type:function size:0xC
|
||||||
fn_8005D118 = .text:0x8005D118; // type:function size:0x44
|
fn_8005D118 = .text:0x8005D118; // type:function size:0x44
|
||||||
fn_8005D15C = .text:0x8005D15C; // type:function size:0x50
|
fn_8005D15C = .text:0x8005D15C; // type:function size:0x50
|
||||||
fn_8005D1AC = .text:0x8005D1AC; // type:function size:0x3C
|
BoardCameraBackup = .text:0x8005D1AC; // type:function size:0x3C
|
||||||
fn_8005D1E8 = .text:0x8005D1E8; // type:function size:0x48
|
BoardCameraRestore = .text:0x8005D1E8; // type:function size:0x48
|
||||||
fn_8005D230 = .text:0x8005D230; // type:function size:0x54
|
BoardCameraScissorSet = .text:0x8005D230; // type:function size:0x54
|
||||||
fn_8005D284 = .text:0x8005D284; // type:function size:0x2AC
|
BoardCameraViewSet = .text:0x8005D284; // type:function size:0x2AC
|
||||||
fn_8005D530 = .text:0x8005D530; // type:function size:0x48
|
BoardCameraPosGet = .text:0x8005D530; // type:function size:0x48
|
||||||
fn_8005D578 = .text:0x8005D578; // type:function size:0x48
|
BoardCameraTargetGet = .text:0x8005D578; // type:function size:0x48
|
||||||
fn_8005D5C0 = .text:0x8005D5C0; // type:function size:0x48
|
BoardCameraRotGet = .text:0x8005D5C0; // type:function size:0x48
|
||||||
fn_8005D608 = .text:0x8005D608; // type:function size:0x20
|
BoardCameraZoomGet = .text:0x8005D608; // type:function size:0x20
|
||||||
fn_8005D628 = .text:0x8005D628; // type:function size:0xA8
|
BoardCameraDirGet = .text:0x8005D628; // type:function size:0xA8
|
||||||
fn_8005D6D0 = .text:0x8005D6D0; // type:function size:0xBC
|
BoardCameraPointDirGet = .text:0x8005D6D0; // type:function size:0xBC
|
||||||
fn_8005D78C = .text:0x8005D78C; // type:function size:0x28
|
BoardCameraSet = .text:0x8005D78C; // type:function size:0x28
|
||||||
fn_8005D7B4 = .text:0x8005D7B4; // type:function size:0x50
|
BoardCameraVisibleSet = .text:0x8005D7B4; // type:function size:0x50
|
||||||
fn_8005D804 = .text:0x8005D804; // type:function size:0x30
|
BoardCameraOffsetSet = .text:0x8005D804; // type:function size:0x30
|
||||||
fn_8005D834 = .text:0x8005D834; // type:function size:0xB4
|
BoardCameraTargetSetPlayer = .text:0x8005D834; // type:function size:0xB4
|
||||||
fn_8005D8E8 = .text:0x8005D8E8; // type:function size:0x40
|
BoardCameraTargetSetModel = .text:0x8005D8E8; // type:function size:0x40
|
||||||
fn_8005D928 = .text:0x8005D928; // type:function size:0x44
|
BoardCameraSTargetetSpace = .text:0x8005D928; // type:function size:0x44
|
||||||
fn_8005D96C = .text:0x8005D96C; // type:function size:0x28
|
BoardCameraVecCalcFuncSet = .text:0x8005D96C; // type:function size:0x28
|
||||||
fn_8005D994 = .text:0x8005D994; // type:function size:0x3C
|
BoardCameraQuakeSet = .text:0x8005D994; // type:function size:0x3C
|
||||||
fn_8005D9D0 = .text:0x8005D9D0; // type:function size:0x3C
|
BoardCameraQuakeReset = .text:0x8005D9D0; // type:function size:0x3C
|
||||||
fn_8005DA0C = .text:0x8005DA0C; // type:function size:0x28
|
BoardCameraTargetSet = .text:0x8005DA0C; // type:function size:0x28
|
||||||
fn_8005DA34 = .text:0x8005DA34; // type:function size:0x28
|
BoardCameraPosSet = .text:0x8005DA34; // type:function size:0x28
|
||||||
fn_8005DA5C = .text:0x8005DA5C; // type:function size:0x24
|
BoardCameraAngleZoomSet = .text:0x8005DA5C; // type:function size:0x24
|
||||||
fn_8005DA80 = .text:0x8005DA80; // type:function size:0x20
|
BoardCameraZoomSet = .text:0x8005DA80; // type:function size:0x20
|
||||||
fn_8005DAA0 = .text:0x8005DAA0; // type:function size:0x24
|
BoardCameraAngleSet = .text:0x8005DAA0; // type:function size:0x24
|
||||||
fn_8005DAC4 = .text:0x8005DAC4; // type:function size:0x24
|
BoardCameraNearFarSet = .text:0x8005DAC4; // type:function size:0x24
|
||||||
fn_8005DAE8 = .text:0x8005DAE8; // type:function size:0x3C
|
BoardCameraNearFarGet = .text:0x8005DAE8; // type:function size:0x3C
|
||||||
fn_8005DB24 = .text:0x8005DB24; // type:function size:0x48
|
BoardCameraStartMotion = .text:0x8005DB24; // type:function size:0x48
|
||||||
fn_8005DB6C = .text:0x8005DB6C; // type:function size:0x230
|
BoardCameraStartMotion2 = .text:0x8005DB6C; // type:function size:0x230
|
||||||
fn_8005DD9C = .text:0x8005DD9C; // type:function size:0x20
|
BoardCameraFovSet = .text:0x8005DD9C; // type:function size:0x20
|
||||||
fn_8005DDBC = .text:0x8005DDBC; // type:function size:0x2BC
|
BoardCameraCullCheck = .text:0x8005DDBC; // type:function size:0x2BC
|
||||||
fn_8005E078 = .text:0x8005E078; // type:function size:0x48
|
fn_8005E078 = .text:0x8005E078; // type:function size:0x48
|
||||||
fn_8005E0C0 = .text:0x8005E0C0; // type:function size:0x58
|
fn_8005E0C0 = .text:0x8005E0C0; // type:function size:0x58
|
||||||
fn_8005E118 = .text:0x8005E118; // type:function size:0x24C
|
BoardCameraInit = .text:0x8005E118; // type:function size:0x24C
|
||||||
fn_8005E364 = .text:0x8005E364; // type:function size:0x350
|
BoardCameraUpdate = .text:0x8005E364; // type:function size:0x350
|
||||||
fn_8005E6B4 = .text:0x8005E6B4; // type:function size:0xE4
|
BoardCameraCalcTarget = .text:0x8005E6B4; // type:function size:0xE4
|
||||||
fn_8005E798 = .text:0x8005E798; // type:function size:0x764
|
BoardCameraCalcVec = .text:0x8005E798; // type:function size:0x764
|
||||||
fn_8005EEFC = .text:0x8005EEFC; // type:function size:0x48
|
BoardMGDoneFlagSet = .text:0x8005EEFC; // type:function size:0x48
|
||||||
fn_8005EF44 = .text:0x8005EF44; // type:function size:0x48
|
BoardMGDoneFlagGet = .text:0x8005EF44; // type:function size:0x48
|
||||||
fn_8005EF8C = .text:0x8005EF8C; // type:function size:0x170
|
BoardMGExit = .text:0x8005EF8C; // type:function size:0x170
|
||||||
fn_8005F0FC = .text:0x8005F0FC; // type:function size:0x60
|
BoardMGKill = .text:0x8005F0FC; // type:function size:0x60
|
||||||
fn_8005F15C = .text:0x8005F15C; // type:function size:0xC4
|
BoardMGExec = .text:0x8005F15C; // type:function size:0xC4
|
||||||
fn_8005F220 = .text:0x8005F220; // type:function size:0x74
|
BoardMGCreate = .text:0x8005F220; // type:function size:0x74
|
||||||
fn_8005F294 = .text:0x8005F294; // type:function size:0x28
|
BoardMGStartFlagSet = .text:0x8005F294; // type:function size:0x28
|
||||||
fn_8005F2BC = .text:0x8005F2BC; // type:function size:0x28
|
BoardMGStartFlagReset = .text:0x8005F2BC; // type:function size:0x28
|
||||||
fn_8005F2E4 = .text:0x8005F2E4; // type:function size:0x48
|
BoardMGStartFlagGet = .text:0x8005F2E4; // type:function size:0x48
|
||||||
fn_8005F32C = .text:0x8005F32C; // type:function size:0x10C
|
BoardMTXCalcLookAt = .text:0x8005F32C; // type:function size:0x10C
|
||||||
fn_8005F438 = .text:0x8005F438; // type:function size:0x330
|
fn_8005F438 = .text:0x8005F438; // type:function size:0x330
|
||||||
fn_8005F768 = .text:0x8005F768; // type:function size:0x390
|
fn_8005F768 = .text:0x8005F768; // type:function size:0x390
|
||||||
fn_8005FAF8 = .text:0x8005FAF8; // type:function size:0x24
|
BoardRandInit = .text:0x8005FAF8; // type:function size:0x24
|
||||||
fn_8005FB1C = .text:0x8005FB1C; // type:function size:0x24
|
BoardRand = .text:0x8005FB1C; // type:function size:0x24
|
||||||
fn_8005FB40 = .text:0x8005FB40; // type:function size:0x50
|
BoardRandMod = .text:0x8005FB40; // type:function size:0x50
|
||||||
fn_8005FB90 = .text:0x8005FB90; // type:function size:0x58
|
BoardRandFloat = .text:0x8005FB90; // type:function size:0x58
|
||||||
fn_8005FBE8 = .text:0x8005FBE8; // type:function size:0x134
|
BoardVecMagXZCalc = .text:0x8005FBE8; // type:function size:0x134
|
||||||
fn_8005FD1C = .text:0x8005FD1C; // type:function size:0x15C
|
BoardVecMagXZCheck = .text:0x8005FD1C; // type:function size:0x15C
|
||||||
fn_8005FE78 = .text:0x8005FE78; // type:function size:0x7C
|
BoardVecCalcDAngleVec = .text:0x8005FE78; // type:function size:0x7C
|
||||||
fn_8005FEF4 = .text:0x8005FEF4; // type:function size:0x34
|
BoardVecCalcDAngle = .text:0x8005FEF4; // type:function size:0x34
|
||||||
fn_8005FF28 = .text:0x8005FF28; // type:function size:0x1C0
|
BoardVecCalcDAngleMod = .text:0x8005FF28; // type:function size:0x1C0
|
||||||
fn_800600E8 = .text:0x800600E8; // type:function size:0x6C
|
BoardVecMag2Check = .text:0x800600E8; // type:function size:0x6C
|
||||||
fn_80060154 = .text:0x80060154; // type:function size:0xD4
|
BoardFilterFadeOut = .text:0x80060154; // type:function size:0xD4
|
||||||
fn_80060228 = .text:0x80060228; // type:function size:0x174
|
BoardFilterFadeIn = .text:0x80060228; // type:function size:0x174
|
||||||
fn_8006039C = .text:0x8006039C; // type:function size:0x5C
|
BoardFilterFadeIsDone = .text:0x8006039C; // type:function size:0x5C
|
||||||
fn_800603F8 = .text:0x800603F8; // type:function size:0x34
|
BoardFilterFadeAlive = .text:0x800603F8; // type:function size:0x34
|
||||||
fn_8006042C = .text:0x8006042C; // type:function size:0x178
|
BoardFilterFadeUpdate = .text:0x8006042C; // type:function size:0x178
|
||||||
fn_800605A4 = .text:0x800605A4; // type:function size:0x350
|
BoardFilterFadeDraw = .text:0x800605A4; // type:function size:0x350
|
||||||
fn_800608F4 = .text:0x800608F4; // type:function size:0x164
|
fn_800608F4 = .text:0x800608F4; // type:function size:0x164
|
||||||
fn_80060A58 = .text:0x80060A58; // type:function size:0x24
|
fn_80060A58 = .text:0x80060A58; // type:function size:0x24
|
||||||
fn_80060A7C = .text:0x80060A7C; // type:function size:0x88
|
fn_80060A7C = .text:0x80060A7C; // type:function size:0x88
|
||||||
|
|
@ -1092,9 +1092,9 @@ fn_80060B04 = .text:0x80060B04; // type:function size:0xB8
|
||||||
fn_80060BBC = .text:0x80060BBC; // type:function size:0x564
|
fn_80060BBC = .text:0x80060BBC; // type:function size:0x564
|
||||||
fn_80061120 = .text:0x80061120; // type:function size:0x14C
|
fn_80061120 = .text:0x80061120; // type:function size:0x14C
|
||||||
fn_8006126C = .text:0x8006126C; // type:function size:0x254
|
fn_8006126C = .text:0x8006126C; // type:function size:0x254
|
||||||
fn_800614C0 = .text:0x800614C0; // type:function size:0x2B4
|
BoardTurnRemainInit = .text:0x800614C0; // type:function size:0x2B4
|
||||||
fn_80061774 = .text:0x80061774; // type:function size:0x2AC
|
BoardTurnRemainUpdate = .text:0x80061774; // type:function size:0x2AC
|
||||||
fn_80061A20 = .text:0x80061A20; // type:function size:0xAC
|
BoardTurnRemainHide = .text:0x80061A20; // type:function size:0xAC
|
||||||
fn_80061ACC = .text:0x80061ACC; // type:function size:0x80
|
fn_80061ACC = .text:0x80061ACC; // type:function size:0x80
|
||||||
fn_80061B4C = .text:0x80061B4C; // type:function size:0x54
|
fn_80061B4C = .text:0x80061B4C; // type:function size:0x54
|
||||||
fn_80061BA0 = .text:0x80061BA0; // type:function size:0x3A4
|
fn_80061BA0 = .text:0x80061BA0; // type:function size:0x3A4
|
||||||
|
|
@ -1104,7 +1104,7 @@ fn_80061FC4 = .text:0x80061FC4; // type:function size:0xC
|
||||||
fn_80061FD0 = .text:0x80061FD0; // type:function size:0xC
|
fn_80061FD0 = .text:0x80061FD0; // type:function size:0xC
|
||||||
fn_80061FDC = .text:0x80061FDC; // type:function size:0x78
|
fn_80061FDC = .text:0x80061FDC; // type:function size:0x78
|
||||||
fn_80062054 = .text:0x80062054; // type:function size:0x78
|
fn_80062054 = .text:0x80062054; // type:function size:0x78
|
||||||
fn_800620CC = .text:0x800620CC; // type:function size:0x80
|
BoardPlayerIsAllCom = .text:0x800620CC; // type:function size:0x80
|
||||||
fn_8006214C = .text:0x8006214C; // type:function size:0x16C
|
fn_8006214C = .text:0x8006214C; // type:function size:0x16C
|
||||||
fn_800622B8 = .text:0x800622B8; // type:function size:0x588
|
fn_800622B8 = .text:0x800622B8; // type:function size:0x588
|
||||||
fn_80062840 = .text:0x80062840; // type:function size:0xFC
|
fn_80062840 = .text:0x80062840; // type:function size:0xFC
|
||||||
|
|
@ -1289,32 +1289,32 @@ fn_8006F8A8 = .text:0x8006F8A8; // type:function size:0x9C
|
||||||
fn_8006F944 = .text:0x8006F944; // type:function size:0x178
|
fn_8006F944 = .text:0x8006F944; // type:function size:0x178
|
||||||
fn_8006FABC = .text:0x8006FABC; // type:function size:0x194
|
fn_8006FABC = .text:0x8006FABC; // type:function size:0x194
|
||||||
fn_8006FC50 = .text:0x8006FC50; // type:function size:0x12C
|
fn_8006FC50 = .text:0x8006FC50; // type:function size:0x12C
|
||||||
fn_8006FD7C = .text:0x8006FD7C; // type:function size:0x24
|
BoardWinInit = .text:0x8006FD7C; // type:function size:0x24
|
||||||
fn_8006FDA0 = .text:0x8006FDA0; // type:function size:0x34
|
lbl_8006FDA0 = .text:0x8006FDA0; // type:function size:0x34
|
||||||
fn_8006FDD4 = .text:0x8006FDD4; // type:function size:0x24
|
BoardWinKillAll = .text:0x8006FDD4; // type:function size:0x24
|
||||||
fn_8006FDF8 = .text:0x8006FDF8; // type:function size:0x6C
|
BoardWinDestroy = .text:0x8006FDF8; // type:function size:0x6C
|
||||||
fn_8006FE64 = .text:0x8006FE64; // type:function size:0x514
|
BoardWinProc = .text:0x8006FE64; // type:function size:0x514
|
||||||
BoardWinChoiceGet = .text:0x80070378; // type:function size:0xC
|
BoardWinChoiceGet = .text:0x80070378; // type:function size:0xC
|
||||||
fn_80070384 = .text:0x80070384; // type:function size:0xC
|
BoardWinPause = .text:0x80070384; // type:function size:0xC
|
||||||
fn_80070390 = .text:0x80070390; // type:function size:0x1A0
|
BoardWinCreateChoice = .text:0x80070390; // type:function size:0x1A0
|
||||||
BoardWinCreate = .text:0x80070530; // type:function size:0x1A0
|
BoardWinCreate = .text:0x80070530; // type:function size:0x1A0
|
||||||
fn_800706D0 = .text:0x800706D0; // type:function size:0x18
|
BoardWinInsertMesSet = .text:0x800706D0; // type:function size:0x18
|
||||||
BoardWinWait = .text:0x800706E8; // type:function size:0x50
|
BoardWinWait = .text:0x800706E8; // type:function size:0x50
|
||||||
BoardWinKill = .text:0x80070738; // type:function size:0x38
|
BoardWinKill = .text:0x80070738; // type:function size:0x38
|
||||||
fn_80070770 = .text:0x80070770; // type:function size:0x48
|
BoardWinSetAttr = .text:0x80070770; // type:function size:0x48
|
||||||
fn_800707B8 = .text:0x800707B8; // type:function size:0x48
|
BoardWinResetAttr = .text:0x800707B8; // type:function size:0x48
|
||||||
fn_80070800 = .text:0x80070800; // type:function size:0x1C
|
BoardWinChoiceDisable = .text:0x80070800; // type:function size:0x1C
|
||||||
fn_8007081C = .text:0x8007081C; // type:function size:0xC
|
BoardWinKeyWait = .text:0x8007081C; // type:function size:0xC
|
||||||
fn_80070828 = .text:0x80070828; // type:function size:0x64
|
BoardWinSpeedGet = .text:0x80070828; // type:function size:0x64
|
||||||
fn_8007088C = .text:0x8007088C; // type:function size:0x50
|
BoardWinSpeedSet = .text:0x8007088C; // type:function size:0x50
|
||||||
fn_800708DC = .text:0x800708DC; // type:function size:0x38
|
BoardWinChoiceNowGet = .text:0x800708DC; // type:function size:0x38
|
||||||
fn_80070914 = .text:0x80070914; // type:function size:0x44
|
BoardWinPriSet = .text:0x80070914; // type:function size:0x44
|
||||||
fn_80070958 = .text:0x80070958; // type:function size:0x38
|
BoardWinChoiceNowGet2 = .text:0x80070958; // type:function size:0x38
|
||||||
fn_80070990 = .text:0x80070990; // type:function size:0x38
|
BoardWinPortraitGet = .text:0x80070990; // type:function size:0x38
|
||||||
fn_800709C8 = .text:0x800709C8; // type:function size:0x38
|
BoardWinPortraitGetStar = .text:0x800709C8; // type:function size:0x38
|
||||||
fn_80070A00 = .text:0x80070A00; // type:function size:0x168
|
BoardWinPlayerSet = .text:0x80070A00; // type:function size:0x168
|
||||||
fn_80070B68 = .text:0x80070B68; // type:function size:0x214
|
BoardWinStartComKeySet = .text:0x80070B68; // type:function size:0x214
|
||||||
fn_80070D7C = .text:0x80070D7C; // type:function size:0x8
|
BoardWinComKeyFuncSet = .text:0x80070D7C; // type:function size:0x8
|
||||||
fn_80070D84 = .text:0x80070D84; // type:function size:0x68
|
fn_80070D84 = .text:0x80070D84; // type:function size:0x68
|
||||||
fn_80070DEC = .text:0x80070DEC; // type:function size:0xD0
|
fn_80070DEC = .text:0x80070DEC; // type:function size:0xD0
|
||||||
fn_80070EBC = .text:0x80070EBC; // type:function size:0x2C
|
fn_80070EBC = .text:0x80070EBC; // type:function size:0x2C
|
||||||
|
|
@ -4652,7 +4652,8 @@ lbl_8011E3D0 = .rodata:0x8011E3D0; // type:object size:0x20 data:4byte
|
||||||
lbl_8011E3F0 = .rodata:0x8011E3F0; // type:object size:0x20 data:4byte
|
lbl_8011E3F0 = .rodata:0x8011E3F0; // type:object size:0x20 data:4byte
|
||||||
lbl_8011E410 = .rodata:0x8011E410; // type:object size:0x20 data:4byte
|
lbl_8011E410 = .rodata:0x8011E410; // type:object size:0x20 data:4byte
|
||||||
lbl_8011E430 = .rodata:0x8011E430; // type:object size:0x10 data:4byte
|
lbl_8011E430 = .rodata:0x8011E430; // type:object size:0x10 data:4byte
|
||||||
lbl_8011E440 = .rodata:0x8011E440; // type:object size:0x90 data:byte
|
__THPJpegNaturalOrder = .rodata:0x8011E440; // type:object size:0x50 data:byte
|
||||||
|
__THPAANScaleFactor = .rodata:0x8011E490; // type:object size:0x40 data:byte
|
||||||
lbl_8011E4D0 = .rodata:0x8011E4D0; // type:object size:0x10
|
lbl_8011E4D0 = .rodata:0x8011E4D0; // type:object size:0x10
|
||||||
lbl_8011E4E0 = .rodata:0x8011E4E0; // type:object size:0x10
|
lbl_8011E4E0 = .rodata:0x8011E4E0; // type:object size:0x10
|
||||||
lbl_8011E4F0 = .rodata:0x8011E4F0; // type:object size:0x18 data:double
|
lbl_8011E4F0 = .rodata:0x8011E4F0; // type:object size:0x18 data:double
|
||||||
|
|
@ -5138,11 +5139,11 @@ jumptable_80139720 = .data:0x80139720; // type:object size:0x34 scope:local
|
||||||
bmpMes$493 = .data:0x80139754; // type:object size:0x18 scope:local
|
bmpMes$493 = .data:0x80139754; // type:object size:0x18 scope:local
|
||||||
lbl_8013976C = .data:0x8013976C; // type:object size:0x13 data:string
|
lbl_8013976C = .data:0x8013976C; // type:object size:0x13 data:string
|
||||||
lbl_8013977F = .data:0x8013977F; // type:object size:0x19
|
lbl_8013977F = .data:0x8013977F; // type:object size:0x19
|
||||||
lbl_80139798 = .data:0x80139798; // type:object size:0x24
|
camViewTbl = .data:0x80139798; // type:object size:0x24 scope:local
|
||||||
jumptable_801397BC = .data:0x801397BC; // type:object size:0x24 scope:local
|
jumptable_801397BC = .data:0x801397BC; // type:object size:0x24 scope:local
|
||||||
lbl_801397E0 = .data:0x801397E0; // type:object size:0x48
|
lbl_801397E0 = .data:0x801397E0; // type:object size:0x48
|
||||||
lbl_80139828 = .data:0x80139828; // type:object size:0xC
|
turnRemainSprTbl = .data:0x80139828; // type:object size:0xC scope:local
|
||||||
lbl_80139834 = .data:0x80139834; // type:object size:0x30
|
turnRemainSprPosTbl = .data:0x80139834; // type:object size:0x30 scope:local
|
||||||
lbl_80139864 = .data:0x80139864; // type:object size:0x10
|
lbl_80139864 = .data:0x80139864; // type:object size:0x10
|
||||||
lbl_80139874 = .data:0x80139874; // type:object size:0x24
|
lbl_80139874 = .data:0x80139874; // type:object size:0x24
|
||||||
lbl_80139898 = .data:0x80139898; // type:object size:0x10
|
lbl_80139898 = .data:0x80139898; // type:object size:0x10
|
||||||
|
|
@ -5158,8 +5159,8 @@ lbl_8013993C = .data:0x8013993C; // type:object size:0xA0
|
||||||
lbl_801399DC = .data:0x801399DC; // type:object size:0x20
|
lbl_801399DC = .data:0x801399DC; // type:object size:0x20
|
||||||
lbl_801399FC = .data:0x801399FC; // type:object size:0x74
|
lbl_801399FC = .data:0x801399FC; // type:object size:0x74
|
||||||
lbl_80139A70 = .data:0x80139A70; // type:object size:0x30
|
lbl_80139A70 = .data:0x80139A70; // type:object size:0x30
|
||||||
lbl_80139AA0 = .data:0x80139AA0; // type:object size:0x24
|
PortraitTbl = .data:0x80139AA0; // type:object size:0x24 scope:local
|
||||||
lbl_80139AC4 = .data:0x80139AC4; // type:object size:0x24
|
StarPortraitTbl = .data:0x80139AC4; // type:object size:0x24 scope:local
|
||||||
lbl_80139AE8 = .data:0x80139AE8; // type:object size:0x18
|
lbl_80139AE8 = .data:0x80139AE8; // type:object size:0x18
|
||||||
COMItemWeightTbl = .data:0x80139B00; // type:object size:0x60 scope:local
|
COMItemWeightTbl = .data:0x80139B00; // type:object size:0x60 scope:local
|
||||||
COMItemUseCheckFuncTbl = .data:0x80139B60; // type:object size:0x38 scope:local
|
COMItemUseCheckFuncTbl = .data:0x80139B60; // type:object size:0x38 scope:local
|
||||||
|
|
@ -5330,13 +5331,14 @@ p2f$194 = .data:0x8013DD80; // type:object size:0x20 scope:local
|
||||||
jumptable_8013DDA0 = .data:0x8013DDA0; // type:object size:0x5C scope:local
|
jumptable_8013DDA0 = .data:0x8013DDA0; // type:object size:0x5C scope:local
|
||||||
jumptable_8013DDFC = .data:0x8013DDFC; // type:object size:0x90 scope:local
|
jumptable_8013DDFC = .data:0x8013DDFC; // type:object size:0x90 scope:local
|
||||||
jumptable_8013DE8C = .data:0x8013DE8C; // type:object size:0x5C scope:local
|
jumptable_8013DE8C = .data:0x8013DE8C; // type:object size:0x5C scope:local
|
||||||
lbl_8013DEE8 = .data:0x8013DEE8; // type:object size:0x18
|
ResetFunctionInfo = .data:0x8013DEE8; // type:object size:0x10 scope:local
|
||||||
lbl_8013DF00 = .data:0x8013DF00; // type:object size:0x160
|
CardData = .data:0x8013DF00; // type:object size:0x160 scope:local align:32
|
||||||
lbl_8013E060 = .data:0x8013E060; // type:object size:0x20
|
SectorSizeTable = .data:0x8013E060; // type:object size:0x20 scope:local
|
||||||
lbl_8013E080 = .data:0x8013E080; // type:object size:0x20
|
LatencyTable = .data:0x8013E080; // type:object size:0x20 scope:local
|
||||||
Si = .data:0x8013E0A0; // type:object size:0x14 scope:local data:4byte
|
Si = .data:0x8013E0A0; // type:object size:0x14 scope:local data:4byte
|
||||||
Type = .data:0x8013E0B4; // type:object size:0x10 scope:local
|
Type = .data:0x8013E0B4; // type:object size:0x10 scope:local
|
||||||
XYNTSC = .data:0x8013E170; // type:object size:0x30 scope:local
|
XYNTSC = .data:0x8013E170; // type:object size:0x30 scope:local
|
||||||
|
XYPAL = .data:0x8013E1A0; // type:object size:0x30 scope:local
|
||||||
lbl_8013E208 = .data:0x8013E208; // type:object size:0x10
|
lbl_8013E208 = .data:0x8013E208; // type:object size:0x10
|
||||||
jumptable_8013E218 = .data:0x8013E218; // type:object size:0x44 scope:local
|
jumptable_8013E218 = .data:0x8013E218; // type:object size:0x44 scope:local
|
||||||
jumptable_8013E25C = .data:0x8013E25C; // type:object size:0x44 scope:local
|
jumptable_8013E25C = .data:0x8013E25C; // type:object size:0x44 scope:local
|
||||||
|
|
@ -5493,13 +5495,13 @@ padStat$377 = .bss:0x8019C460; // type:object size:0x30 scope:local
|
||||||
ToeMessageArray = .bss:0x8019C490; // type:object size:0x40 scope:local
|
ToeMessageArray = .bss:0x8019C490; // type:object size:0x40 scope:local
|
||||||
ToeThread = .bss:0x8019C4D0; // type:object size:0x310 scope:local align:8
|
ToeThread = .bss:0x8019C4D0; // type:object size:0x310 scope:local align:8
|
||||||
ToeThreadStack = .bss:0x8019C7E0; // type:object size:0x1000 scope:local
|
ToeThreadStack = .bss:0x8019C7E0; // type:object size:0x1000 scope:local
|
||||||
lbl_8019D7E0 = .bss:0x8019D7E0; // type:object size:0xC4 data:byte
|
boardCamera = .bss:0x8019D7E0; // type:object size:0xC4 data:byte
|
||||||
lbl_8019D8A4 = .bss:0x8019D8A4; // type:object size:0xC4
|
boardCameraBackup = .bss:0x8019D8A4; // type:object size:0xC4
|
||||||
lbl_8019D968 = .bss:0x8019D968; // type:object size:0x10
|
lbl_8019D968 = .bss:0x8019D968; // type:object size:0x10
|
||||||
lbl_8019D978 = .bss:0x8019D978; // type:object size:0x10
|
lbl_8019D978 = .bss:0x8019D978; // type:object size:0x10
|
||||||
lbl_8019D988 = .bss:0x8019D988; // type:object size:0x10
|
lbl_8019D988 = .bss:0x8019D988; // type:object size:0x10
|
||||||
lbl_8019D998 = .bss:0x8019D998; // type:object size:0x20
|
winInsertMesTbl = .bss:0x8019D998; // type:object size:0x20 scope:local
|
||||||
lbl_8019D9B8 = .bss:0x8019D9B8; // type:object size:0x40
|
choiceDisableTbl = .bss:0x8019D9B8; // type:object size:0x40 scope:local
|
||||||
lbl_8019D9F8 = .bss:0x8019D9F8; // type:object size:0xC data:float
|
lbl_8019D9F8 = .bss:0x8019D9F8; // type:object size:0xC data:float
|
||||||
lbl_8019DA04 = .bss:0x8019DA04; // type:object size:0xC data:4byte
|
lbl_8019DA04 = .bss:0x8019DA04; // type:object size:0xC data:4byte
|
||||||
SpaceData = .bss:0x8019DA10; // type:object size:0x7000 scope:local data:float
|
SpaceData = .bss:0x8019DA10; // type:object size:0x7000 scope:local data:float
|
||||||
|
|
@ -5569,18 +5571,25 @@ Origin = .bss:0x801A61C0; // type:object size:0x1E scope:local
|
||||||
CmdProbeDevice = .bss:0x801A61F0; // type:object size:0x10 scope:local
|
CmdProbeDevice = .bss:0x801A61F0; // type:object size:0x10 scope:local
|
||||||
gxData = .bss:0x801A6200; // type:object size:0x4F8 scope:local
|
gxData = .bss:0x801A6200; // type:object size:0x4F8 scope:local
|
||||||
FifoObj = .bss:0x801A66F8; // type:object size:0x80
|
FifoObj = .bss:0x801A66F8; // type:object size:0x80
|
||||||
lbl_801A6778 = .bss:0x801A6778; // type:object size:0x520 data:4byte
|
DisplayListFifo = .bss:0x801A6778; // type:object size:0x24 scope:local data:4byte
|
||||||
lbl_801A6C98 = .bss:0x801A6C98; // type:object size:0x220 data:4byte
|
__savedGXdata = .bss:0x801A679C; // type:object size:0x4F8 scope:local data:4byte
|
||||||
lbl_801A6EB8 = .bss:0x801A6EB8; // type:object size:0x20
|
__CARDBlock = .bss:0x801A6C98; // type:object size:0x220 data:4byte
|
||||||
|
__CARDDiskNone = .bss:0x801A6EB8; // type:object size:0x20
|
||||||
Ecb = .bss:0x801A6ED8; // type:object size:0xC0 scope:local data:4byte
|
Ecb = .bss:0x801A6ED8; // type:object size:0xC0 scope:local data:4byte
|
||||||
Packet = .bss:0x801A6F98; // type:object size:0x80 scope:local data:4byte
|
Packet = .bss:0x801A6F98; // type:object size:0x80 scope:local align:8 data:4byte
|
||||||
lbl_801A7018 = .bss:0x801A7018; // type:object size:0xA0
|
Alarm = .bss:0x801A7018; // type:object size:0xA0 scope:local align:8
|
||||||
TypeTime = .bss:0x801A70B8; // type:object size:0x20 scope:local
|
TypeTime = .bss:0x801A70B8; // type:object size:0x20 scope:local align:8
|
||||||
lbl_801A70D8 = .bss:0x801A70D8; // type:object size:0x20
|
XferTime = .bss:0x801A70D8; // type:object size:0x20 scope:local align:8
|
||||||
lbl_801A70F8 = .bss:0x801A70F8; // type:object size:0x40
|
TypeCallback = .bss:0x801A70F8; // type:object size:0x40 scope:local
|
||||||
lbl_801A7138 = .bss:0x801A7138; // type:object size:0x68 data:4byte
|
RDSTHandler = .bss:0x801A7138; // type:object size:0x10 scope:local data:4byte
|
||||||
lbl_801A71A0 = .bss:0x801A71A0; // type:object size:0x118
|
InputBufferValid = .bss:0x801A7148; // type:object size:0x10 scope:local data:4byte
|
||||||
lbl_801A72B8 = .bss:0x801A72B8; // type:object size:0x18 data:4byte
|
InputBuffer = .bss:0x801A7158; // type:object size:0x20 scope:local data:4byte
|
||||||
|
InputBufferVcount = .bss:0x801A7178; // type:object size:0x10 scope:local data:4byte
|
||||||
|
cmdFixDevice$327 = .bss:0x801A7188; // type:object size:0x10 scope:local data:4byte
|
||||||
|
__THPIDCTWorkspace = .bss:0x801A71A0; // type:object size:0x100 scope:local align:32
|
||||||
|
__THPLCWork512 = .bss:0x801A72A0; // type:object size:0xC scope:local
|
||||||
|
__THPLCWork640 = .bss:0x801A72AC; // type:object size:0xC scope:local
|
||||||
|
__THPMCUBuffer = .bss:0x801A72B8; // type:object size:0x18 scope:local data:4byte
|
||||||
fragmentinfo = .bss:0x801A72D0; // type:object size:0xC scope:local data:4byte
|
fragmentinfo = .bss:0x801A72D0; // type:object size:0xC scope:local data:4byte
|
||||||
__atexit_funcs = .bss:0x801A72E0; // type:object size:0x100 scope:local
|
__atexit_funcs = .bss:0x801A72E0; // type:object size:0x100 scope:local
|
||||||
stderr_buff = .bss:0x801A73E0; // type:object size:0x38 data:4byte
|
stderr_buff = .bss:0x801A73E0; // type:object size:0x38 data:4byte
|
||||||
|
|
@ -5741,7 +5750,7 @@ lbl_801D35D0 = .sdata:0x801D35D0; // type:object size:0x8
|
||||||
lbl_801D35D8 = .sdata:0x801D35D8; // type:object size:0x8
|
lbl_801D35D8 = .sdata:0x801D35D8; // type:object size:0x8
|
||||||
colorN$400 = .sdata:0x801D35E0; // type:object size:0x4 data:byte
|
colorN$400 = .sdata:0x801D35E0; // type:object size:0x4 data:byte
|
||||||
colorN$444 = .sdata:0x801D35E4; // type:object size:0x4 data:byte
|
colorN$444 = .sdata:0x801D35E4; // type:object size:0x4 data:byte
|
||||||
winPrio = .sdata:0x801D35E8; // type:object size:0x8 data:2byte
|
winPrio = .sdata:0x801D35E8; // type:object size:0x8 scope:local data:2byte
|
||||||
lbl_801D35F0 = .sdata:0x801D35F0; // type:object size:0x8
|
lbl_801D35F0 = .sdata:0x801D35F0; // type:object size:0x8
|
||||||
lbl_801D35F8 = .sdata:0x801D35F8; // type:object size:0x8
|
lbl_801D35F8 = .sdata:0x801D35F8; // type:object size:0x8
|
||||||
lbl_801D3600 = .sdata:0x801D3600; // type:object size:0x8
|
lbl_801D3600 = .sdata:0x801D3600; // type:object size:0x8
|
||||||
|
|
@ -5758,15 +5767,12 @@ SaveEnableF = .sdata:0x801D3640; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3644 = .sdata:0x801D3644; // type:object size:0x2 data:string
|
lbl_801D3644 = .sdata:0x801D3644; // type:object size:0x2 data:string
|
||||||
lbl_801D3646 = .sdata:0x801D3646; // type:object size:0x2 data:string
|
lbl_801D3646 = .sdata:0x801D3646; // type:object size:0x2 data:string
|
||||||
SlotNameTbl = .sdata:0x801D3648; // type:object size:0x8 scope:local
|
SlotNameTbl = .sdata:0x801D3648; // type:object size:0x8 scope:local
|
||||||
saveMessWin = .sdata:0x801D3650; // type:object size:0x8 scope:local data:4byte
|
saveMessWin = .sdata:0x801D3650; // type:object size:0x4 scope:local data:4byte
|
||||||
SR_PushTime = .sdata:0x801D3658; // type:object size:0x8 scope:local data:2byte
|
SR_PushTime = .sdata:0x801D3658; // type:object size:0x8 scope:local data:2byte
|
||||||
SR_ResetPad = .sdata:0x801D3660; // type:object size:0x1 scope:local data:byte
|
SR_ResetPad = .sdata:0x801D3660; // type:object size:0x1 scope:local data:byte
|
||||||
Xfb = .sdata:0x801D3664; // type:object size:0x8 scope:local data:4byte
|
Xfb = .sdata:0x801D3664; // type:object size:0x8 scope:local data:4byte
|
||||||
lbl_801D3670 = .sdata:0x801D3670; // type:object size:0x4 data:4byte
|
boardNextScene = .sdata:0x801D3670; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3674 = .sdata:0x801D3674; // type:object size:0x1 data:byte
|
filterColor = .sdata:0x801D3674; // type:object size:0x4 scope:local data:byte
|
||||||
lbl_801D3675 = .sdata:0x801D3675; // type:object size:0x1 data:byte
|
|
||||||
lbl_801D3676 = .sdata:0x801D3676; // type:object size:0x1 data:byte
|
|
||||||
lbl_801D3677 = .sdata:0x801D3677; // type:object size:0x1 data:byte
|
|
||||||
lbl_801D3678 = .sdata:0x801D3678; // type:object size:0x8
|
lbl_801D3678 = .sdata:0x801D3678; // type:object size:0x8
|
||||||
lbl_801D3680 = .sdata:0x801D3680; // type:object size:0x2 data:2byte
|
lbl_801D3680 = .sdata:0x801D3680; // type:object size:0x2 data:2byte
|
||||||
lbl_801D3682 = .sdata:0x801D3682; // type:object size:0x2 data:2byte
|
lbl_801D3682 = .sdata:0x801D3682; // type:object size:0x2 data:2byte
|
||||||
|
|
@ -5785,7 +5791,7 @@ lbl_801D36C0 = .sdata:0x801D36C0; // type:object size:0x6 data:string
|
||||||
lbl_801D36C6 = .sdata:0x801D36C6; // type:object size:0x6 data:string
|
lbl_801D36C6 = .sdata:0x801D36C6; // type:object size:0x6 data:string
|
||||||
lbl_801D36CC = .sdata:0x801D36CC; // type:object size:0x6 data:string
|
lbl_801D36CC = .sdata:0x801D36CC; // type:object size:0x6 data:string
|
||||||
lbl_801D36D2 = .sdata:0x801D36D2; // type:object size:0xE
|
lbl_801D36D2 = .sdata:0x801D36D2; // type:object size:0xE
|
||||||
lbl_801D36E0 = .sdata:0x801D36E0; // type:object size:0x8 data:2byte
|
windowID = .sdata:0x801D36E0; // type:object size:0x2 scope:local data:2byte
|
||||||
lbl_801D36E8 = .sdata:0x801D36E8; // type:object size:0x8 data:4byte
|
lbl_801D36E8 = .sdata:0x801D36E8; // type:object size:0x8 data:4byte
|
||||||
lbl_801D36F0 = .sdata:0x801D36F0; // type:object size:0x8 data:byte
|
lbl_801D36F0 = .sdata:0x801D36F0; // type:object size:0x8 data:byte
|
||||||
lbl_801D36F8 = .sdata:0x801D36F8; // type:object size:0x2 data:2byte
|
lbl_801D36F8 = .sdata:0x801D36F8; // type:object size:0x2 data:2byte
|
||||||
|
|
@ -6240,25 +6246,25 @@ trychkBusyWait = .sbss:0x801D3EC4; // type:object size:0x4 scope:local data:4byt
|
||||||
XfbProg = .sbss:0x801D3EC8; // type:object size:0x4 scope:local data:4byte
|
XfbProg = .sbss:0x801D3EC8; // type:object size:0x4 scope:local data:4byte
|
||||||
XfbH = .sbss:0x801D3ECC; // type:object size:0x2 scope:local data:2byte
|
XfbH = .sbss:0x801D3ECC; // type:object size:0x2 scope:local data:2byte
|
||||||
XfbW = .sbss:0x801D3ECE; // type:object size:0x2 scope:local data:2byte
|
XfbW = .sbss:0x801D3ECE; // type:object size:0x2 scope:local data:2byte
|
||||||
lbl_801D3ED0 = .sbss:0x801D3ED0; // type:object size:0x4 data:4byte
|
boardMainProc = .sbss:0x801D3ED0; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3ED4 = .sbss:0x801D3ED4; // type:object size:0x4 data:4byte
|
boardObjMan = .sbss:0x801D3ED4; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3ED8 = .sbss:0x801D3ED8; // type:object size:0x4 data:4byte
|
boardCameraObj = .sbss:0x801D3ED8; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EDC = .sbss:0x801D3EDC; // type:object size:0x4 data:4byte
|
lbl_801D3EDC = .sbss:0x801D3EDC; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EE0 = .sbss:0x801D3EE0; // type:object size:0x4 data:4byte
|
boardCameraUseBackup = .sbss:0x801D3EE0; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EE4 = .sbss:0x801D3EE4; // type:object size:0x4 data:4byte
|
boardCreateFunc = .sbss:0x801D3EE4; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3EE8 = .sbss:0x801D3EE8; // type:object size:0x4 data:4byte
|
boardDestroyFunc = .sbss:0x801D3EE8; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3EEC = .sbss:0x801D3EEC; // type:object size:0x4 data:4byte
|
lbl_801D3EEC = .sbss:0x801D3EEC; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EF0 = .sbss:0x801D3EF0; // type:object size:0x4 data:4byte
|
lbl_801D3EF0 = .sbss:0x801D3EF0; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EF4 = .sbss:0x801D3EF4; // type:object size:0x4 data:4byte
|
boardTurnFunc = .sbss:0x801D3EF4; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EF8 = .sbss:0x801D3EF8; // type:object size:0x4 data:4byte
|
lbl_801D3EF8 = .sbss:0x801D3EF8; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3EFC = .sbss:0x801D3EFC; // type:object size:0x4 data:4byte
|
lbl_801D3EFC = .sbss:0x801D3EFC; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F00 = .sbss:0x801D3F00; // type:object size:0x4 data:4byte
|
lbl_801D3F00 = .sbss:0x801D3F00; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F04 = .sbss:0x801D3F04; // type:object size:0x4 data:4byte
|
boardPlayerEffect = .sbss:0x801D3F04; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F08 = .sbss:0x801D3F08; // type:object size:0x4 data:4byte
|
boardFilterObj = .sbss:0x801D3F08; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F0C = .sbss:0x801D3F0C; // type:object size:0x4 data:4byte
|
lbl_801D3F0C = .sbss:0x801D3F0C; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F10 = .sbss:0x801D3F10; // type:object size:0x4 data:4byte
|
boardTurnRemainObj = .sbss:0x801D3F10; // type:object size:0x4 data:4byte
|
||||||
boardRandSeed = .sbss:0x801D3F14; // type:object size:0x4 data:4byte
|
boardRandSeed = .sbss:0x801D3F14; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F18 = .sbss:0x801D3F18; // type:object size:0x8 data:4byte
|
boardMainObj = .sbss:0x801D3F18; // type:object size:0x8 data:4byte
|
||||||
lbl_801D3F20 = .sbss:0x801D3F20; // type:object size:0x4 data:4byte
|
lbl_801D3F20 = .sbss:0x801D3F20; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F24 = .sbss:0x801D3F24; // type:object size:0x4 data:4byte
|
lbl_801D3F24 = .sbss:0x801D3F24; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F28 = .sbss:0x801D3F28; // type:object size:0x4 data:4byte
|
lbl_801D3F28 = .sbss:0x801D3F28; // type:object size:0x4 data:4byte
|
||||||
|
|
@ -6273,21 +6279,21 @@ lbl_801D3F4E = .sbss:0x801D3F4E; // type:object size:0xA
|
||||||
lbl_801D3F58 = .sbss:0x801D3F58; // type:object size:0x4 data:4byte
|
lbl_801D3F58 = .sbss:0x801D3F58; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F5C = .sbss:0x801D3F5C; // type:object size:0x4 data:4byte
|
lbl_801D3F5C = .sbss:0x801D3F5C; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F60 = .sbss:0x801D3F60; // type:object size:0x8 data:2byte
|
lbl_801D3F60 = .sbss:0x801D3F60; // type:object size:0x8 data:2byte
|
||||||
lbl_801D3F68 = .sbss:0x801D3F68; // type:object size:0x4 data:4byte
|
winProc = .sbss:0x801D3F68; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3F6C = .sbss:0x801D3F6C; // type:object size:0x4 data:4byte
|
comKeyFunc = .sbss:0x801D3F6C; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3F70 = .sbss:0x801D3F70; // type:object size:0x8 data:float
|
lbl_801D3F70 = .sbss:0x801D3F70; // type:object size:0x8 data:float
|
||||||
lbl_801D3F78 = .sbss:0x801D3F78; // type:object size:0x4 data:4byte
|
winAttr = .sbss:0x801D3F78; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3F7C = .sbss:0x801D3F7C; // type:object size:0x4 data:4byte
|
winMess = .sbss:0x801D3F7C; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D3F80 = .sbss:0x801D3F80; // type:object size:0x2 data:2byte
|
defaultChoice = .sbss:0x801D3F80; // type:object size:0x2 scope:local data:2byte
|
||||||
lbl_801D3F82 = .sbss:0x801D3F82; // type:object size:0x2 data:2byte
|
messSpeed = .sbss:0x801D3F82; // type:object size:0x2 scope:local data:2byte
|
||||||
lbl_801D3F84 = .sbss:0x801D3F84; // type:object size:0x2 data:2byte
|
winPrio = .sbss:0x801D3F84; // type:object size:0x2 scope:local data:2byte
|
||||||
lbl_801D3F86 = .sbss:0x801D3F86; // type:object size:0x1 data:byte
|
winWait = .sbss:0x801D3F86; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F87 = .sbss:0x801D3F87; // type:object size:0x1 data:byte
|
winPause = .sbss:0x801D3F87; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F88 = .sbss:0x801D3F88; // type:object size:0x1 data:byte
|
disablePlayer = .sbss:0x801D3F88; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F89 = .sbss:0x801D3F89; // type:object size:0x1 data:byte
|
winPosIdx = .sbss:0x801D3F89; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F8A = .sbss:0x801D3F8A; // type:object size:0x1 data:byte
|
winFrame = .sbss:0x801D3F8A; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F8B = .sbss:0x801D3F8B; // type:object size:0x1 data:byte
|
autoPickF = .sbss:0x801D3F8B; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F8C = .sbss:0x801D3F8C; // type:object size:0x1 data:byte
|
winChoice = .sbss:0x801D3F8C; // type:object size:0x1 scope:local data:byte
|
||||||
lbl_801D3F90 = .sbss:0x801D3F90; // type:object size:0x8
|
lbl_801D3F90 = .sbss:0x801D3F90; // type:object size:0x8
|
||||||
lbl_801D3F98 = .sbss:0x801D3F98; // type:object size:0x4 data:4byte
|
lbl_801D3F98 = .sbss:0x801D3F98; // type:object size:0x4 data:4byte
|
||||||
lbl_801D3F9C = .sbss:0x801D3F9C; // type:object size:0x1 data:byte
|
lbl_801D3F9C = .sbss:0x801D3F9C; // type:object size:0x1 data:byte
|
||||||
|
|
@ -6694,32 +6700,32 @@ TokenCB = .sbss:0x801D45E8; // type:object size:0x4 scope:local data:4byte
|
||||||
DrawDoneCB = .sbss:0x801D45EC; // type:object size:0x4 scope:local data:4byte
|
DrawDoneCB = .sbss:0x801D45EC; // type:object size:0x4 scope:local data:4byte
|
||||||
DrawDone = .sbss:0x801D45F0; // type:object size:0x1 scope:local data:byte
|
DrawDone = .sbss:0x801D45F0; // type:object size:0x1 scope:local data:byte
|
||||||
FinishQueue = .sbss:0x801D45F4; // type:object size:0x8 scope:local
|
FinishQueue = .sbss:0x801D45F4; // type:object size:0x8 scope:local
|
||||||
lbl_801D4600 = .sbss:0x801D4600; // type:object size:0x8 data:4byte
|
OldCPUFifo = .sbss:0x801D4600; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4608 = .sbss:0x801D4608; // type:object size:0x4 data:4byte
|
Chan = .sbss:0x801D4608; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D460C = .sbss:0x801D460C; // type:object size:0x4 data:4byte
|
Dev = .sbss:0x801D460C; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4610 = .sbss:0x801D4610; // type:object size:0x4 data:4byte
|
Enabled = .sbss:0x801D4610; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4614 = .sbss:0x801D4614; // type:object size:0x4 data:4byte
|
BarnacleEnabled = .sbss:0x801D4614; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4618 = .sbss:0x801D4618; // type:object size:0x4
|
cmdTypeAndStatus$78 = .sbss:0x801D4618; // type:object size:0x4 scope:local
|
||||||
cmdTypeAndStatus$371 = .sbss:0x801D461C; // type:object size:0x4 scope:local
|
cmdTypeAndStatus$371 = .sbss:0x801D461C; // type:object size:0x4 scope:local
|
||||||
lbl_801D4620 = .sbss:0x801D4620; // type:object size:0x8 data:4byte
|
__PADFixBits = .sbss:0x801D4620; // type:object size:0x8 data:4byte
|
||||||
SamplingRate = .sbss:0x801D4628; // type:object size:0x4 scope:local data:4byte
|
SamplingRate = .sbss:0x801D4628; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4640 = .sbss:0x801D4640; // type:object size:0x20 data:4byte
|
Ydchuff = .sbss:0x801D4640; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D4660 = .sbss:0x801D4660; // type:object size:0x20 data:4byte
|
Udchuff = .sbss:0x801D4660; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D4680 = .sbss:0x801D4680; // type:object size:0x20 data:4byte
|
Vdchuff = .sbss:0x801D4680; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D46A0 = .sbss:0x801D46A0; // type:object size:0x20 data:4byte
|
Yachuff = .sbss:0x801D46A0; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D46C0 = .sbss:0x801D46C0; // type:object size:0x20 data:4byte
|
Uachuff = .sbss:0x801D46C0; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D46E0 = .sbss:0x801D46E0; // type:object size:0x4 data:4byte
|
Vachuff = .sbss:0x801D46E0; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D46E4 = .sbss:0x801D46E4; // type:object size:0x4 data:4byte
|
__THPHuffmanBits = .sbss:0x801D46E4; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D46E8 = .sbss:0x801D46E8; // type:object size:0x4 data:4byte
|
__THPHuffmanSizeTab = .sbss:0x801D46E8; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D46EC = .sbss:0x801D46EC; // type:object size:0x14 data:4byte
|
__THPHuffmanCodeTab = .sbss:0x801D46EC; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4700 = .sbss:0x801D4700; // type:object size:0x20 data:4byte
|
Gbase = .sbss:0x801D4700; // type:object size:0x20 align:32 data:4byte
|
||||||
lbl_801D4720 = .sbss:0x801D4720; // type:object size:0x20 data:4byte
|
Gwid = .sbss:0x801D4720; // type:object size:0x20 align:32 data:4byte
|
||||||
lbl_801D4740 = .sbss:0x801D4740; // type:object size:0x4 data:4byte
|
Gq = .sbss:0x801D4740; // type:object size:0x4 scope:local align:32 data:4byte
|
||||||
lbl_801D4744 = .sbss:0x801D4744; // type:object size:0x4 data:4byte
|
__THPOldGQR5 = .sbss:0x801D4744; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4748 = .sbss:0x801D4748; // type:object size:0x4 data:4byte
|
__THPOldGQR6 = .sbss:0x801D4748; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D474C = .sbss:0x801D474C; // type:object size:0x4 data:4byte
|
__THPWorkArea = .sbss:0x801D474C; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4750 = .sbss:0x801D4750; // type:object size:0x4 data:4byte
|
__THPInfo = .sbss:0x801D4750; // type:object size:0x4 scope:local data:4byte
|
||||||
lbl_801D4754 = .sbss:0x801D4754; // type:object size:0x4 data:4byte
|
__THPInitFlag = .sbss:0x801D4754; // type:object size:0x4 scope:local data:4byte
|
||||||
__global_destructor_chain = .sbss:0x801D4758; // type:object size:0x4 scope:global data:4byte
|
__global_destructor_chain = .sbss:0x801D4758; // type:object size:0x4 scope:global data:4byte
|
||||||
__aborting = .sbss:0x801D4760; // type:object size:0x4 scope:global data:4byte
|
__aborting = .sbss:0x801D4760; // type:object size:0x4 scope:global data:4byte
|
||||||
__atexit_curr_func = .sbss:0x801D4764; // type:object size:0x4 scope:local data:4byte
|
__atexit_curr_func = .sbss:0x801D4764; // type:object size:0x4 scope:local data:4byte
|
||||||
|
|
|
||||||
51
configure.py
51
configure.py
|
|
@ -268,21 +268,22 @@ config.libs = [
|
||||||
Object(Matching, "game/wipe.c"),
|
Object(Matching, "game/wipe.c"),
|
||||||
Object(Matching, "game/window.c"),
|
Object(Matching, "game/window.c"),
|
||||||
Object(Matching, "game/messdata.c"),
|
Object(Matching, "game/messdata.c"),
|
||||||
Object(NonMatching, "game/card.c"),
|
Object(Matching, "game/card.c"),
|
||||||
Object(Matching, "game/armem.c"),
|
Object(Matching, "game/armem.c"),
|
||||||
Object(NonMatching, "game/code_800498F0.c"),
|
Object(NonMatching, "game/chrman.c"),
|
||||||
Object(NonMatching, "game/mapspace.c"),
|
Object(NonMatching, "game/mapspace.c"),
|
||||||
Object(NonMatching, "game/THPSimple.c"),
|
Object(NonMatching, "game/THPSimple.c"),
|
||||||
Object(NonMatching, "game/THPDraw.c"),
|
Object(NonMatching, "game/THPDraw.c"),
|
||||||
Object(NonMatching, "game/thpmain.c"),
|
Object(NonMatching, "game/thpmain.c"),
|
||||||
Object(NonMatching, "game/objsub.c"),
|
Object(NonMatching, "game/objsub.c"),
|
||||||
Object(NonMatching, "game/flag.c"),
|
Object(Matching, "game/flag.c"),
|
||||||
Object(NonMatching, "game/saveload.c"),
|
Object(Matching, "game/saveload.c"),
|
||||||
Object(NonMatching, "game/sreset.c"),
|
Object(NonMatching, "game/sreset.c"),
|
||||||
Object(NonMatching, "game/board/main.c"),
|
Object(NonMatching, "game/board/main.c"),
|
||||||
Object(NonMatching, "game/board/board.c"),
|
Object(NonMatching, "game/board/board.c"),
|
||||||
Object(NonMatching, "game/board/model.c"),
|
Object(NonMatching, "game/board/model.c"),
|
||||||
Object(NonMatching, "game/board/window.c"),
|
Object(NonMatching, "game/board/window.c"),
|
||||||
|
Object(NonMatching, "game/board/board_snd.c"),
|
||||||
Object(NonMatching, "game/board/com.c"),
|
Object(NonMatching, "game/board/com.c"),
|
||||||
Object(NonMatching, "game/board/overhead.c"),
|
Object(NonMatching, "game/board/overhead.c"),
|
||||||
Object(NonMatching, "game/board/space.c"),
|
Object(NonMatching, "game/board/space.c"),
|
||||||
|
|
@ -308,6 +309,7 @@ config.libs = [
|
||||||
Object(NonMatching, "game/board/pause.c"),
|
Object(NonMatching, "game/board/pause.c"),
|
||||||
Object(NonMatching, "game/board/com_path.c"),
|
Object(NonMatching, "game/board/com_path.c"),
|
||||||
Object(NonMatching, "game/board/tutorial.c"),
|
Object(NonMatching, "game/board/tutorial.c"),
|
||||||
|
Object(NonMatching, "game/kerent.c"),
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
DolphinLib(
|
DolphinLib(
|
||||||
|
|
@ -436,6 +438,47 @@ config.libs = [
|
||||||
Object(NonMatching, "dolphin/gx/GXPerf.c"),
|
Object(NonMatching, "dolphin/gx/GXPerf.c"),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
DolphinLib(
|
||||||
|
"card",
|
||||||
|
[
|
||||||
|
Object(NonMatching, "dolphin/card/CARDBios.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDUnlock.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDRdwr.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDBlock.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDDir.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDCheck.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDMount.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDFormat.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDOpen.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDCreate.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDRead.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDWrite.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDDelete.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDStat.c"),
|
||||||
|
Object(NonMatching, "dolphin/card/CARDNet.c"),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
DolphinLib(
|
||||||
|
"exi",
|
||||||
|
[
|
||||||
|
Object(NonMatching, "dolphin/exi/EXIBios.c"),
|
||||||
|
Object(NonMatching, "dolphin/exi/EXIUart.c"),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
DolphinLib(
|
||||||
|
"si",
|
||||||
|
[
|
||||||
|
Object(NonMatching, "dolphin/si/SIBios.c"),
|
||||||
|
Object(NonMatching, "dolphin/si/SISamplingRate.c"),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
DolphinLib(
|
||||||
|
"thp",
|
||||||
|
[
|
||||||
|
Object(NonMatching, "dolphin/thp/THPDec.c"),
|
||||||
|
Object(NonMatching, "dolphin/thp/THPAudio.c"),
|
||||||
|
],
|
||||||
|
),
|
||||||
{
|
{
|
||||||
"lib": "Runtime.PPCEABI.H",
|
"lib": "Runtime.PPCEABI.H",
|
||||||
"mw_version": config.linker_version,
|
"mw_version": config.linker_version,
|
||||||
|
|
|
||||||
|
|
@ -14,8 +14,8 @@ typedef struct player_config {
|
||||||
|
|
||||||
typedef struct system_state {
|
typedef struct system_state {
|
||||||
/* 0x00 */ struct {
|
/* 0x00 */ struct {
|
||||||
u16 story : 1;
|
u8 story : 1;
|
||||||
u16 team : 1;
|
u8 team : 1;
|
||||||
u8 : 7;
|
u8 : 7;
|
||||||
};
|
};
|
||||||
/* 0x02 */ struct {
|
/* 0x02 */ struct {
|
||||||
|
|
@ -46,8 +46,9 @@ typedef struct system_state {
|
||||||
/* 0x32 */ char unk_32[0x2];
|
/* 0x32 */ char unk_32[0x2];
|
||||||
/* 0x34 */ u16 mg_next;
|
/* 0x34 */ u16 mg_next;
|
||||||
/* 0x36 */ s16 mg_next_extra;
|
/* 0x36 */ s16 mg_next_extra;
|
||||||
/* 0x38 */ u8 flag[3][16];
|
/* 0x38 */ s16 unk_38;
|
||||||
/* 0x68 */ u8 unk_68[0x74];
|
/* 0x3A */ u8 flag[3][16];
|
||||||
|
/* 0x6A */ u8 unk_6A[0x72];
|
||||||
} SystemState; //8018fcf8, sizeof 0xDC
|
} SystemState; //8018fcf8, sizeof 0xDC
|
||||||
|
|
||||||
typedef struct player_state {
|
typedef struct player_state {
|
||||||
|
|
|
||||||
|
|
@ -43,21 +43,19 @@ void MGSeqKillAll(void);
|
||||||
void MGSeqPracticeStart(void);
|
void MGSeqPracticeStart(void);
|
||||||
void fn_8004D6F4(s16 arg);
|
void fn_8004D6F4(s16 arg);
|
||||||
|
|
||||||
s32 _CheckFlag(u32 flag);
|
|
||||||
|
|
||||||
void BoardWinCreate(s16, s32, s32);
|
void BoardWinCreate(s16, s32, s32);
|
||||||
void BoardWinKill(void);
|
void BoardWinKill(void);
|
||||||
void BoardWinWait(void);
|
void BoardWinWait(void);
|
||||||
|
|
||||||
s32 rand8(void);
|
s32 rand8(void);
|
||||||
|
|
||||||
void fn_8005D8E8(void);
|
void BoardCameraTargetSetModel(s16 model);
|
||||||
void fn_8005DB6C(s16, Vec*, s32, f32, f32, s32);
|
void BoardCameraStartMotion2(s16, Vec*, s32, f32, f32, s32);
|
||||||
void fn_8005E0C0(void);
|
void fn_8005E0C0(void);
|
||||||
void fn_80074210(s32, s32, Vec*);
|
void fn_80074210(s32, s32, Vec*);
|
||||||
void fn_8007A360(s32);
|
void fn_8007A360(s32);
|
||||||
void fn_8007F894(void);
|
void fn_8007F894(void);
|
||||||
void fn_80083F84(void);
|
s16 fn_80083F84(void);
|
||||||
void fn_800884F4(s32);
|
void fn_800884F4(s32);
|
||||||
void fn_800A4C88(void);
|
void fn_800A4C88(void);
|
||||||
void fn_800A6B10(void);
|
void fn_800A6B10(void);
|
||||||
|
|
@ -71,7 +69,7 @@ f32 fn_8006F128(s32);
|
||||||
void fn_8006F61C(s16, s32);
|
void fn_8006F61C(s16, s32);
|
||||||
void fn_800B42BC(s16);
|
void fn_800B42BC(s16);
|
||||||
s32 fn_8006DBD4(s16);
|
s32 fn_8006DBD4(s16);
|
||||||
void fn_8005B150(void*, void*);
|
void BoardInit(void*, void*);
|
||||||
void fn_8006F2E8(s32, Vec*);
|
void fn_8006F2E8(s32, Vec*);
|
||||||
void fn_8005D10C(void*, void*);
|
void fn_8005D10C(void*, void*);
|
||||||
s16 fn_8006D9A4(s32, void*, s32);
|
s16 fn_8006D9A4(s32, void*, s32);
|
||||||
|
|
@ -95,7 +93,7 @@ void fn_80083EDC(s16);
|
||||||
void fn_800A4F6C(s16);
|
void fn_800A4F6C(s16);
|
||||||
void fn_800B3FD8(void*);
|
void fn_800B3FD8(void*);
|
||||||
void fn_800B4274(s32, s32);
|
void fn_800B4274(s32, s32);
|
||||||
void fn_8005D5C0(Vec*);
|
void BoardCameraRotGet(Vec*);
|
||||||
void fn_8006F338(s16, f32, f32, f32);
|
void fn_8006F338(s16, f32, f32, f32);
|
||||||
s32 fn_8005B6A8(void);
|
s32 fn_8005B6A8(void);
|
||||||
void fn_8006EFBC(s16, Mtx);
|
void fn_8006EFBC(s16, Mtx);
|
||||||
|
|
|
||||||
23
include/game/card.h
Normal file
23
include/game/card.h
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
#ifndef _GAME_CARD_H
|
||||||
|
#define _GAME_CARD_H
|
||||||
|
|
||||||
|
#include "dolphin.h"
|
||||||
|
|
||||||
|
extern u8 UnMountCnt;
|
||||||
|
|
||||||
|
void HuCardInit(void);
|
||||||
|
s32 HuCardCheck(void);
|
||||||
|
s32 HuCardSlotCheck(s16 slot);
|
||||||
|
s32 HuCardMount(s16 slot);
|
||||||
|
void HuCardUnMount(s16 slot);
|
||||||
|
s32 HuCardFormat(s16 slot);
|
||||||
|
s32 HuCardOpen(s16 slot, const char *fileName, CARDFileInfo *fileInfo);
|
||||||
|
s32 HuCardRead(CARDFileInfo *fileInfo, void *addr, s32 length, s32 offset);
|
||||||
|
s32 HuCardCreate(s16 slot, const char *fileName, s32 size, CARDFileInfo *fileInfo);
|
||||||
|
s32 HuCardClose(CARDFileInfo *fileInfo);
|
||||||
|
s32 HuCardWrite(CARDFileInfo *fileInfo, const void *addr, s32 length, s32 offset);
|
||||||
|
s32 HuCardDelete(s16 slot, const char *fileName);
|
||||||
|
s32 HuCardSectorSizeGet(s16 slot);
|
||||||
|
s32 HuCardFreeSpaceGet(s16 slot, u32 *byteNotUsed, u32 *filesNotUsed);
|
||||||
|
|
||||||
|
#endif
|
||||||
11
include/game/flag.h
Normal file
11
include/game/flag.h
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
#ifndef _GAME_FLAG_H
|
||||||
|
#define _GAME_FLAG_H
|
||||||
|
|
||||||
|
#define FLAG_ID_MAKE(group, index) (((group) << 16)|(index))
|
||||||
|
|
||||||
|
s32 _CheckFlag(u32 flag);
|
||||||
|
void _SetFlag(u32 flag);
|
||||||
|
void _ClearFlag(u32 flag);
|
||||||
|
void _InitFlag(void);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
@ -206,7 +206,7 @@ void Hu3DCameraPerspectiveSet(s32, f32, f32, f32, f32);
|
||||||
void Hu3DCameraViewportSet(s32, f32, f32, f32, f32, f32, f32);
|
void Hu3DCameraViewportSet(s32, f32, f32, f32, f32, f32, f32);
|
||||||
void Hu3DCameraScissorSet(s32, s32, s32, s32, s32);
|
void Hu3DCameraScissorSet(s32, s32, s32, s32, s32);
|
||||||
void Hu3DCameraPosSet(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32);
|
void Hu3DCameraPosSet(s32, f32, f32, f32, f32, f32, f32, f32, f32, f32);
|
||||||
void Hu3DCameraPosSetV(s32, Vec, Vec, Vec);
|
void Hu3DCameraPosSetV(s32 cam, Vec *pos, Vec *up, Vec *target);
|
||||||
void Hu3DCameraKill(s32);
|
void Hu3DCameraKill(s32);
|
||||||
void Hu3DCameraAllKill(void);
|
void Hu3DCameraAllKill(void);
|
||||||
void Hu3DCameraSet(s32, Mtx);
|
void Hu3DCameraSet(s32, Mtx);
|
||||||
|
|
|
||||||
35
include/game/saveload.h
Normal file
35
include/game/saveload.h
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
#ifndef _GAME_SAVELOAD_H
|
||||||
|
#define _GAME_SAVELOAD_H
|
||||||
|
|
||||||
|
#include "common.h"
|
||||||
|
|
||||||
|
s32 SLFileOpen(char *arg0);
|
||||||
|
s32 SLFileCreate(char *arg0, u32 arg1, void *arg2);
|
||||||
|
s32 SLFileWrite(s32 arg0, void *arg1);
|
||||||
|
s32 SLFileRead(s32 arg0, void *arg1);
|
||||||
|
s32 SLFileClose(void);
|
||||||
|
void SLCurSlotNoSet(s16 arg0);
|
||||||
|
void SLCurBoxNoSet(s8 arg0);
|
||||||
|
void SLSaveFlagSet(s32 arg0);
|
||||||
|
s32 SLSaveFlagGet(void);
|
||||||
|
void SLSaveDataMake(s32 arg0, OSTime *arg1);
|
||||||
|
void SLSaveDataInfoSet(OSTime *arg0);
|
||||||
|
void SLCommonSet(void);
|
||||||
|
void SLSaveBoard(void);
|
||||||
|
void SLSaveBoardBackup(void);
|
||||||
|
s32 SLSave(void);
|
||||||
|
s32 SLLoad(void);
|
||||||
|
void SLLoadGameStat(void);
|
||||||
|
void SLLoadBoard(void);
|
||||||
|
void SLLoadBoardBackup(void);
|
||||||
|
void SLSerialNoGet(void);
|
||||||
|
BOOL SLSerialNoCheck(void);
|
||||||
|
BOOL SLCheckSumCheck(void);
|
||||||
|
u16 SLCheckSumGet(void);
|
||||||
|
void SLCheckSumSet(void);
|
||||||
|
s32 SLStatSet(s32 arg0);
|
||||||
|
s32 SLCardMount(s16 arg0);
|
||||||
|
s32 SLFormat(s16 arg0);
|
||||||
|
s16 SLMessOut(s16 arg0);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
@ -75,6 +75,8 @@ typedef struct {
|
||||||
/* 0x160 */ u8 ATTRIBUTE_ALIGN(32) mess_pal[10][3];
|
/* 0x160 */ u8 ATTRIBUTE_ALIGN(32) mess_pal[10][3];
|
||||||
} WindowData; // Size 0x180
|
} WindowData; // Size 0x180
|
||||||
|
|
||||||
|
extern WindowData winData[32];
|
||||||
|
|
||||||
void HuWindowInit(void);
|
void HuWindowInit(void);
|
||||||
void HuWinInit(s32 mess_data_no);
|
void HuWinInit(s32 mess_data_no);
|
||||||
s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame);
|
s16 HuWinCreate(float x, float y, s16 w, s16 h, s16 frame);
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,7 @@ void fn_1_C20(void) {
|
||||||
}
|
}
|
||||||
Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14);
|
Hu3D2Dto3D(&lbl_1_data_80[lbl_1_bss_1C], 1, &sp14);
|
||||||
fn_8006F158(lbl_1_bss_1E, &sp14);
|
fn_8006F158(lbl_1_bss_1E, &sp14);
|
||||||
fn_8005D5C0(&sp8);
|
BoardCameraRotGet(&sp8);
|
||||||
PSMTXRotRad(sp20, 'y', 0.2617994f);
|
PSMTXRotRad(sp20, 'y', 0.2617994f);
|
||||||
fn_8006EFBC(lbl_1_bss_1E, sp20);
|
fn_8006EFBC(lbl_1_bss_1E, sp20);
|
||||||
fn_8006F270(lbl_1_bss_1E, sp8.x, 0.0f, 0.0f);
|
fn_8006F270(lbl_1_bss_1E, sp8.x, 0.0f, 0.0f);
|
||||||
|
|
|
||||||
|
|
@ -185,33 +185,32 @@ void fn_1_13A4(void) {
|
||||||
temp_r3_2 = fn_800745F0(0, 0x80000);
|
temp_r3_2 = fn_800745F0(0, 0x80000);
|
||||||
fn_80074210(0, temp_r3_2, &sp14);
|
fn_80074210(0, temp_r3_2, &sp14);
|
||||||
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
||||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
fn_1_BA0(0x2E002C);
|
fn_1_BA0(0x2E002C);
|
||||||
fn_8007A360(temp_r3_2);
|
fn_8007A360(temp_r3_2);
|
||||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
temp_r3_2 = fn_800745F0(0, 0x10000000);
|
temp_r3_2 = fn_800745F0(0, 0x10000000);
|
||||||
fn_80074210(0, temp_r3_2, &sp14);
|
fn_80074210(0, temp_r3_2, &sp14);
|
||||||
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
||||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
fn_1_BA0(0x2E002E);
|
fn_1_BA0(0x2E002E);
|
||||||
fn_8007F894();
|
fn_8007F894();
|
||||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
temp_r3_2 = fn_800745F0(0, 0x08000000);
|
temp_r3_2 = fn_800745F0(0, 0x08000000);
|
||||||
fn_80074210(0, temp_r3_2, &sp14);
|
fn_80074210(0, temp_r3_2, &sp14);
|
||||||
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
fn_8006F158(lbl_1_bss_0->unk8, &sp14);
|
||||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
fn_1_BA0(0x2E0030);
|
fn_1_BA0(0x2E0030);
|
||||||
fn_800A6B10();
|
fn_800A6B10();
|
||||||
fn_8005DB6C(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
BoardCameraStartMotion2(lbl_1_bss_0->unk8, &sp8, 0, 3200.0f, -1.0f, 0x1E);
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
fn_1_BA0(0x2E0032);
|
fn_1_BA0(0x2E0032);
|
||||||
fn_80083F84();
|
BoardCameraTargetSetModel(fn_80083F84());
|
||||||
fn_8005D8E8();
|
|
||||||
fn_8005E0C0();
|
fn_8005E0C0();
|
||||||
fn_1_BA0(0x2E0033);
|
fn_1_BA0(0x2E0033);
|
||||||
fn_1_BA0(0x2E0034);
|
fn_1_BA0(0x2E0034);
|
||||||
|
|
@ -229,7 +228,7 @@ void fn_1_13A4(void) {
|
||||||
if (lbl_1_bss_C == 0) {
|
if (lbl_1_bss_C == 0) {
|
||||||
lbl_1_bss_C = 1;
|
lbl_1_bss_C = 1;
|
||||||
fn_80070EE8(0, 0x1F3);
|
fn_80070EE8(0, 0x1F3);
|
||||||
fn_8005B5FC();
|
BoardKill();
|
||||||
}
|
}
|
||||||
fn_800B3FD8(NULL);
|
fn_800B3FD8(NULL);
|
||||||
while (1) {
|
while (1) {
|
||||||
|
|
|
||||||
|
|
@ -153,7 +153,7 @@ void fn_1_1984(void) {
|
||||||
lbl_1_bss_C = 1;
|
lbl_1_bss_C = 1;
|
||||||
OSReport(lbl_1_data_98);
|
OSReport(lbl_1_data_98);
|
||||||
fn_80070EE8(0, 0x1F3);
|
fn_80070EE8(0, 0x1F3);
|
||||||
fn_8005B5FC();
|
BoardKill();
|
||||||
fn_800B3FD8(NULL);
|
fn_800B3FD8(NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -182,7 +182,7 @@ int fn_1_1AAC(s16 arg0, s32 arg1) {
|
||||||
lbl_1_bss_C = 1;
|
lbl_1_bss_C = 1;
|
||||||
OSReport(lbl_1_data_98);
|
OSReport(lbl_1_data_98);
|
||||||
fn_80070EE8(0, 0x1F3);
|
fn_80070EE8(0, 0x1F3);
|
||||||
fn_8005B5FC();
|
BoardKill();
|
||||||
fn_800B3FD8(NULL);
|
fn_800B3FD8(NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
#include "include/REL/w10Dll.h"
|
#include "include/REL/w10Dll.h"
|
||||||
|
|
||||||
void fn_1_0(void) {
|
void fn_1_0(void) {
|
||||||
fn_8005B150(&fn_1_E0, &fn_1_6D8);
|
BoardInit(&fn_1_E0, &fn_1_6D8);
|
||||||
}
|
}
|
||||||
|
|
||||||
int _prolog(void) {
|
int _prolog(void) {
|
||||||
|
|
@ -10,7 +10,7 @@ int _prolog(void) {
|
||||||
(**ctors)();
|
(**ctors)();
|
||||||
ctors++;
|
ctors++;
|
||||||
}
|
}
|
||||||
fn_8005B150(&fn_1_E0, &fn_1_6D8);
|
fn_1_0();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
181
src/game/card.c
Normal file
181
src/game/card.c
Normal file
|
|
@ -0,0 +1,181 @@
|
||||||
|
#include "dolphin.h"
|
||||||
|
#include "game/memory.h"
|
||||||
|
#include "game/card.h"
|
||||||
|
|
||||||
|
static void *cardWork;
|
||||||
|
u8 UnMountCnt;
|
||||||
|
|
||||||
|
static void MountCallBack(s32 chan, s32 result);
|
||||||
|
|
||||||
|
void HuCardInit(void)
|
||||||
|
{
|
||||||
|
CARDInit();
|
||||||
|
cardWork = HuMemDirectMalloc(HEAP_SYSTEM, CARD_WORKAREA_SIZE);
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardCheck(void)
|
||||||
|
{
|
||||||
|
s32 ret = 0;
|
||||||
|
s32 memSize, sectorSize;
|
||||||
|
s32 result;
|
||||||
|
do {
|
||||||
|
result = CARDProbeEx(0, &memSize, §orSize);
|
||||||
|
} while(result == CARD_RESULT_BUSY);
|
||||||
|
if(result == CARD_RESULT_READY) {
|
||||||
|
ret |= 1;
|
||||||
|
OSReport("SlotA Card MemSize %x,Sector Size %x\n", memSize, sectorSize);
|
||||||
|
HuCardMount(0);
|
||||||
|
}
|
||||||
|
do {
|
||||||
|
result = CARDProbeEx(1, &memSize, §orSize);
|
||||||
|
} while(result == CARD_RESULT_BUSY);
|
||||||
|
if(result == CARD_RESULT_READY) {
|
||||||
|
ret |= 2;
|
||||||
|
OSReport("SlotB Card MemSize %x,Sector Size %x\n", memSize, sectorSize);
|
||||||
|
HuCardMount(1);
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardSlotCheck(s16 slot)
|
||||||
|
{
|
||||||
|
s32 memSize, sectorSize;
|
||||||
|
s32 result;
|
||||||
|
do {
|
||||||
|
result = CARDProbeEx(slot, &memSize, §orSize);
|
||||||
|
} while(result == CARD_RESULT_BUSY);
|
||||||
|
if(result < 0) {
|
||||||
|
return result;
|
||||||
|
} else {
|
||||||
|
return sectorSize;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardMount(s16 slot)
|
||||||
|
{
|
||||||
|
s32 memSize, sectorSize;
|
||||||
|
s32 result;
|
||||||
|
do {
|
||||||
|
result = CARDProbeEx(slot, &memSize, §orSize);
|
||||||
|
} while(result == CARD_RESULT_BUSY);
|
||||||
|
if(result < 0) {
|
||||||
|
return result;
|
||||||
|
} else {
|
||||||
|
result = CARDMount(slot, cardWork, MountCallBack);
|
||||||
|
if(result == CARD_RESULT_FATAL_ERROR || result == CARD_RESULT_IOERROR) {
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if(result == CARD_RESULT_ENCODING) {
|
||||||
|
return CARD_RESULT_BROKEN;
|
||||||
|
}
|
||||||
|
if(result < 0 && result != CARD_RESULT_BROKEN) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
result = CARDCheck(slot);
|
||||||
|
if(result == CARD_RESULT_FATAL_ERROR || result == CARD_RESULT_IOERROR) {
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if(result == CARD_RESULT_ENCODING) {
|
||||||
|
return CARD_RESULT_BROKEN;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void HuCardUnMount(s16 slot)
|
||||||
|
{
|
||||||
|
CARDUnmount(slot);
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardFormat(s16 slot)
|
||||||
|
{
|
||||||
|
s32 result = CARDFormat(slot);
|
||||||
|
if(result == CARD_RESULT_FATAL_ERROR || result == CARD_RESULT_IOERROR) {
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void MountCallBack(s32 chan, s32 result)
|
||||||
|
{
|
||||||
|
UnMountCnt = (1 << chan);
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardOpen(s16 slot, const char *fileName, CARDFileInfo *fileInfo)
|
||||||
|
{
|
||||||
|
s32 result = CARDOpen(slot, fileName, fileInfo);
|
||||||
|
if(result == CARD_RESULT_FATAL_ERROR || result == CARD_RESULT_IOERROR) {
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if(result == CARD_RESULT_ENCODING) {
|
||||||
|
return CARD_RESULT_BROKEN;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardRead(CARDFileInfo *fileInfo, void *addr, s32 length, s32 offset)
|
||||||
|
{
|
||||||
|
s32 result = CARDRead(fileInfo, addr, length, offset);
|
||||||
|
if(result == CARD_RESULT_FATAL_ERROR || result == CARD_RESULT_IOERROR) {
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardCreate(s16 slot, const char *fileName, s32 size, CARDFileInfo *fileInfo)
|
||||||
|
{
|
||||||
|
s32 sectorSize;
|
||||||
|
s32 byteNotUsed, filesNotUsed;
|
||||||
|
s32 result;
|
||||||
|
result = CARDGetSectorSize(slot, (u32 *)§orSize);
|
||||||
|
if(result == CARD_RESULT_FATAL_ERROR || result == CARD_RESULT_NOCARD) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
if(size % sectorSize) {
|
||||||
|
size = sectorSize*(size+((sectorSize-1)/sectorSize));
|
||||||
|
}
|
||||||
|
result = CARDFreeBlocks(slot, &byteNotUsed, &filesNotUsed);
|
||||||
|
if(result != 0) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
if(filesNotUsed <= 0 || byteNotUsed < size) {
|
||||||
|
return CARD_RESULT_INSSPACE;
|
||||||
|
}
|
||||||
|
result = CARDCreate(slot, fileName, size, fileInfo);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardClose(CARDFileInfo *fileInfo)
|
||||||
|
{
|
||||||
|
s32 result = CARDClose(fileInfo);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardWrite(CARDFileInfo *fileInfo, const void *addr, s32 length, s32 offset)
|
||||||
|
{
|
||||||
|
s32 result = CARDWrite(fileInfo, addr, length, offset);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardDelete(s16 slot, const char *fileName)
|
||||||
|
{
|
||||||
|
s32 result = CARDDelete(slot, fileName);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardSectorSizeGet(s16 slot)
|
||||||
|
{
|
||||||
|
u32 sectorSize;
|
||||||
|
s32 result = CARDGetSectorSize(slot, §orSize);
|
||||||
|
if(result < 0) {
|
||||||
|
return result;
|
||||||
|
} else {
|
||||||
|
return sectorSize;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 HuCardFreeSpaceGet(s16 slot, u32 *byteNotUsed, u32 *filesNotUsed)
|
||||||
|
{
|
||||||
|
s32 result = CARDFreeBlocks(slot, (s32 *)byteNotUsed, (s32 *)filesNotUsed);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
41
src/game/flag.c
Normal file
41
src/game/flag.c
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
#include "common.h"
|
||||||
|
|
||||||
|
static u8 _Sys_Flag[16];
|
||||||
|
|
||||||
|
static u8 *GetFlagPtr(u32 flag)
|
||||||
|
{
|
||||||
|
u8 *ret;
|
||||||
|
u32 group = flag >> 16;
|
||||||
|
if((flag & 0xFFFF0000) == 0x30000) {
|
||||||
|
ret = _Sys_Flag;
|
||||||
|
} else {
|
||||||
|
ret = &GWSystem.flag[group][0];
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
u32 _CheckFlag(u32 flag)
|
||||||
|
{
|
||||||
|
u8 *flag_ptr = GetFlagPtr(flag);
|
||||||
|
u16 index = flag;
|
||||||
|
return flag_ptr[index/8] & (1 << (index % 8));
|
||||||
|
}
|
||||||
|
|
||||||
|
void _SetFlag(u32 flag)
|
||||||
|
{
|
||||||
|
u8 *flag_ptr = GetFlagPtr(flag);
|
||||||
|
u16 index = flag;
|
||||||
|
flag_ptr[index/8] |= (1 << (index % 8));
|
||||||
|
}
|
||||||
|
|
||||||
|
void _ClearFlag(u32 flag)
|
||||||
|
{
|
||||||
|
u8 *flag_ptr = GetFlagPtr(flag);
|
||||||
|
u16 index = flag;
|
||||||
|
flag_ptr[index/8] &= ~(1 << (index % 8));
|
||||||
|
}
|
||||||
|
|
||||||
|
void _InitFlag(void)
|
||||||
|
{
|
||||||
|
memset(_Sys_Flag, 0, sizeof(_Sys_Flag));
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
#include "string.h"
|
#include "string.h"
|
||||||
#include "game/gamework.h"
|
#include "game/gamework.h"
|
||||||
|
#include "game/flag.h"
|
||||||
|
|
||||||
GameStat GWGameStatDefault;
|
GameStat GWGameStatDefault;
|
||||||
GameStat GWGameStat;
|
GameStat GWGameStat;
|
||||||
|
|
@ -144,7 +145,7 @@ s16 GWGetMessSpeed(void)
|
||||||
|
|
||||||
void GWSetMGRecord(int index, s32 value)
|
void GWSetMGRecord(int index, s32 value)
|
||||||
{
|
{
|
||||||
if(!_CheckFlag(0x1000C)) {
|
if(!_CheckFlag(FLAG_ID_MAKE(1, 12))) {
|
||||||
GWGameStat.mg_record[index] = value;
|
GWGameStat.mg_record[index] = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -297,7 +298,7 @@ s16 GWGetCoins(int player)
|
||||||
|
|
||||||
void GWSetCoins(int player, s16 value)
|
void GWSetCoins(int player, s16 value)
|
||||||
{
|
{
|
||||||
if(!_CheckFlag(0x1000C)) {
|
if(!_CheckFlag(FLAG_ID_MAKE(1, 12))) {
|
||||||
if(value < 0) {
|
if(value < 0) {
|
||||||
value = 0;
|
value = 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1165,7 +1165,7 @@ void Hu3DCameraPosSet(s32 cam, f32 x, f32 y, f32 z, f32 ux, f32 uy, f32 uz, f32
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Hu3DCameraPosSetV(s32 cam, Vec pos, Vec up, Vec target) {
|
void Hu3DCameraPosSetV(s32 cam, Vec *pos, Vec *up, Vec *target) {
|
||||||
s16 mask;
|
s16 mask;
|
||||||
s16 i;
|
s16 i;
|
||||||
CameraData* cam_ptr;
|
CameraData* cam_ptr;
|
||||||
|
|
@ -1173,9 +1173,9 @@ void Hu3DCameraPosSetV(s32 cam, Vec pos, Vec up, Vec target) {
|
||||||
for (i = 0, mask = 1; i < 0x10; i++, mask <<= 1) {
|
for (i = 0, mask = 1; i < 0x10; i++, mask <<= 1) {
|
||||||
if ((cam & mask) != 0) {
|
if ((cam & mask) != 0) {
|
||||||
cam_ptr = &Hu3DCamera[i];
|
cam_ptr = &Hu3DCamera[i];
|
||||||
cam_ptr->pos = pos;
|
cam_ptr->pos = *pos;
|
||||||
cam_ptr->up = up;
|
cam_ptr->up = *up;
|
||||||
cam_ptr->target = target;
|
cam_ptr->target = *target;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
#include "game/printfunc.h"
|
#include "game/printfunc.h"
|
||||||
#include "game/object.h"
|
#include "game/object.h"
|
||||||
#include "game/pad.h"
|
#include "game/pad.h"
|
||||||
|
#include "game/flag.h"
|
||||||
|
|
||||||
#define OM_OVL_HIS_MAX 16
|
#define OM_OVL_HIS_MAX 16
|
||||||
#define OM_MAX_GROUPS 10
|
#define OM_MAX_GROUPS 10
|
||||||
|
|
@ -80,7 +81,7 @@ static void omWatchOverlayProc(void)
|
||||||
omovlevtno = omnextovlevtno;
|
omovlevtno = omnextovlevtno;
|
||||||
omovlstat = omnextovlstat;
|
omovlstat = omnextovlstat;
|
||||||
omnextovl = OVL_INVALID;
|
omnextovl = OVL_INVALID;
|
||||||
if(_CheckFlag(0x1000C)) {
|
if(_CheckFlag(FLAG_ID_MAKE(1, 12))) {
|
||||||
MGSeqPracticeStart();
|
MGSeqPracticeStart();
|
||||||
}
|
}
|
||||||
omSysPauseEnable(TRUE);
|
omSysPauseEnable(TRUE);
|
||||||
|
|
|
||||||
795
src/game/saveload.c
Normal file
795
src/game/saveload.c
Normal file
|
|
@ -0,0 +1,795 @@
|
||||||
|
#include "game/saveload.h"
|
||||||
|
#include "game/data.h"
|
||||||
|
#include "game/pad.h"
|
||||||
|
#include "game/window.h"
|
||||||
|
#include "game/flag.h"
|
||||||
|
#include "game/card.h"
|
||||||
|
|
||||||
|
#include "string.h"
|
||||||
|
|
||||||
|
static s16 SLCreateSaveWin(void);
|
||||||
|
static void SLKillSaveWin(void);
|
||||||
|
|
||||||
|
|
||||||
|
extern u8 UnMountCnt;
|
||||||
|
|
||||||
|
CARDFileInfo curFileInfo;
|
||||||
|
u8 ATTRIBUTE_ALIGN(32) saveBuf[0x4000];
|
||||||
|
|
||||||
|
u64 SLSerialNo;
|
||||||
|
s32 saveExecF;
|
||||||
|
u8 curBoxNo;
|
||||||
|
s16 curSlotNo;
|
||||||
|
|
||||||
|
u8 lbl_80132150[64] = {
|
||||||
|
"Mario Party 4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
|
||||||
|
"File 0 00/00/0000"
|
||||||
|
};
|
||||||
|
|
||||||
|
char *SaveFileNameTbl[] = {
|
||||||
|
"MARIPA4BOX0",
|
||||||
|
"MARIPA4BOX1",
|
||||||
|
"MARIPA4BOX2"
|
||||||
|
};
|
||||||
|
|
||||||
|
s32 SaveEnableF = 1;
|
||||||
|
|
||||||
|
static char *SlotNameTbl[] = {
|
||||||
|
"A",
|
||||||
|
"B"
|
||||||
|
};
|
||||||
|
|
||||||
|
static s32 saveMessWin = -1;
|
||||||
|
|
||||||
|
s32 SLFileOpen(char *arg0) {
|
||||||
|
s32 temp_r3;
|
||||||
|
|
||||||
|
if (SaveEnableF == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
while (1) {
|
||||||
|
temp_r3 = SLCardMount(curSlotNo);
|
||||||
|
if (temp_r3 < 0) {
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
temp_r3 = HuCardOpen(curSlotNo, arg0, &curFileInfo);
|
||||||
|
if (temp_r3 == CARD_RESULT_NOFILE) {
|
||||||
|
return CARD_RESULT_NOFILE;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_WRONGDEVICE) {
|
||||||
|
SLMessOut(7);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_FATAL_ERROR) {
|
||||||
|
SLMessOut(1);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
return CARD_RESULT_NOCARD;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_BROKEN) {
|
||||||
|
temp_r3 = HuCardSectorSizeGet(curSlotNo);
|
||||||
|
if (temp_r3 > 0 && temp_r3 != 0x2000) {
|
||||||
|
SLMessOut(8);
|
||||||
|
return CARD_RESULT_WRONGDEVICE;
|
||||||
|
}
|
||||||
|
UnMountCnt = 0;
|
||||||
|
temp_r3 = SLMessOut(5);
|
||||||
|
if (temp_r3 == 0) {
|
||||||
|
temp_r3 = SLFormat(curSlotNo);
|
||||||
|
if (temp_r3 != 0) {
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return CARD_RESULT_NOFILE;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return CARD_RESULT_READY;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLFileCreate(char *arg0, u32 arg1, void *arg2) {
|
||||||
|
float sp18[2];
|
||||||
|
u32 sp14;
|
||||||
|
u32 sp10;
|
||||||
|
s32 temp_r30;
|
||||||
|
s32 temp_r31;
|
||||||
|
|
||||||
|
if (SaveEnableF == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
temp_r31 = SLCardMount(curSlotNo);
|
||||||
|
if (temp_r31 < 0) {
|
||||||
|
return temp_r31;
|
||||||
|
}
|
||||||
|
temp_r31 = HuCardSectorSizeGet(curSlotNo);
|
||||||
|
if (temp_r31 < 0 && temp_r31 != 0x2000) {
|
||||||
|
SLMessOut(8);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
temp_r31 = HuCardFreeSpaceGet(curSlotNo, &sp14, &sp10);
|
||||||
|
if (sp10 == 0 && arg1 > sp14) {
|
||||||
|
SLMessOut(4);
|
||||||
|
return CARD_RESULT_INSSPACE;
|
||||||
|
}
|
||||||
|
if (sp10 == 0) {
|
||||||
|
SLMessOut(2);
|
||||||
|
return CARD_RESULT_INSSPACE;
|
||||||
|
}
|
||||||
|
if (arg1 > sp14) {
|
||||||
|
SLMessOut(3);
|
||||||
|
return CARD_RESULT_INSSPACE;
|
||||||
|
}
|
||||||
|
HuWinInit(1);
|
||||||
|
HuWinMesMaxSizeGet(1, sp18, 0x10000B);
|
||||||
|
temp_r30 = HuWinExCreateStyled(-10000.0f, 200.0f, sp18[0], sp18[1], -1, 2);
|
||||||
|
HuWinExAnimIn(temp_r30);
|
||||||
|
HuWinMesSet(temp_r30, 0x10000B);
|
||||||
|
HuWinMesWait(temp_r30);
|
||||||
|
_SetFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
temp_r31 = HuCardCreate(curSlotNo, arg0, arg1, &curFileInfo);
|
||||||
|
_ClearFlag(0x30000);
|
||||||
|
if (temp_r31 < 0) {
|
||||||
|
HuWinExAnimOut(temp_r30);
|
||||||
|
HuWinExCleanup(temp_r30);
|
||||||
|
}
|
||||||
|
if (temp_r31 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
return CARD_RESULT_NOCARD;
|
||||||
|
}
|
||||||
|
if (temp_r31 < 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
_SetFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
temp_r31 = HuCardWrite(&curFileInfo, arg2, arg1, 0);
|
||||||
|
_ClearFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
if (temp_r31 < 0) {
|
||||||
|
HuWinExAnimOut(temp_r30);
|
||||||
|
HuWinExCleanup(temp_r30);
|
||||||
|
}
|
||||||
|
if (temp_r31 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
return CARD_RESULT_NOCARD;
|
||||||
|
}
|
||||||
|
if (temp_r31 < 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
_SetFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
temp_r31 = SLStatSet(1);
|
||||||
|
_ClearFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
HuWinExAnimOut(temp_r30);
|
||||||
|
HuWinExCleanup(temp_r30);
|
||||||
|
if (temp_r31 < 0) {
|
||||||
|
return temp_r31;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLFileWrite(s32 arg0, void *arg1) {
|
||||||
|
float sp10[2];
|
||||||
|
s32 temp_r31;
|
||||||
|
s32 var_r30;
|
||||||
|
|
||||||
|
if (SaveEnableF == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
HuWinInit(1);
|
||||||
|
HuWinMesMaxSizeGet(1, sp10, 0x10000B);
|
||||||
|
temp_r31 = HuWinExCreateStyled(-10000.0f, 200.0f, sp10[0], sp10[1], -1, 2);
|
||||||
|
HuWinExAnimIn(temp_r31);
|
||||||
|
HuWinMesSet(temp_r31, 0x10000B);
|
||||||
|
HuWinMesWait(temp_r31);
|
||||||
|
HuPrcSleep(0x3C);
|
||||||
|
_SetFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
var_r30 = HuCardWrite(&curFileInfo, arg1, arg0, 0);
|
||||||
|
if (var_r30 == 0) {
|
||||||
|
var_r30 = SLStatSet(1);
|
||||||
|
}
|
||||||
|
_ClearFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
HuWinExAnimOut(temp_r31);
|
||||||
|
HuWinExCleanup(temp_r31);
|
||||||
|
return var_r30;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLFileRead(s32 arg0, void *arg1) {
|
||||||
|
s32 temp_r3;
|
||||||
|
|
||||||
|
if (SaveEnableF == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
temp_r3 = HuCardRead(&curFileInfo, arg1, arg0, 0);
|
||||||
|
if (temp_r3 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
} else if (temp_r3 < 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
}
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLFileClose(void) {
|
||||||
|
s32 temp_r31;
|
||||||
|
|
||||||
|
if (SaveEnableF == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
temp_r31 = HuCardClose(&curFileInfo);
|
||||||
|
return temp_r31;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLCurSlotNoSet(s16 arg0) {
|
||||||
|
curSlotNo = arg0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLCurBoxNoSet(s8 arg0) {
|
||||||
|
curBoxNo = arg0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLSaveFlagSet(s32 arg0) {
|
||||||
|
if (arg0 == 0) {
|
||||||
|
GWGameStat.party_continue = 0;
|
||||||
|
GWGameStat.story_continue = 0;
|
||||||
|
}
|
||||||
|
SaveEnableF = arg0;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLSaveFlagGet(void) {
|
||||||
|
return SaveEnableF;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLSaveDataMake(s32 arg0, OSTime *arg1) {
|
||||||
|
AnimData *temp_r3;
|
||||||
|
u8 *var_r30;
|
||||||
|
s32 i;
|
||||||
|
|
||||||
|
var_r30 = saveBuf;
|
||||||
|
if (arg0 != 0) {
|
||||||
|
for (i = 0; i < 0x4000; i++) {
|
||||||
|
var_r30[i] = 0xFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (i = 0; i < 0x20; i++) {
|
||||||
|
var_r30[i] = lbl_80132150[i];
|
||||||
|
}
|
||||||
|
for (i = 0; i < 0x20; i++) {
|
||||||
|
(&var_r30[0x20])[i] = lbl_80132150[i + 0x20];
|
||||||
|
}
|
||||||
|
temp_r3 = HuSprAnimRead(HuDataSelHeapReadNum(0x86001F, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||||
|
memcpy(var_r30 + 0x40, temp_r3->bmp->data, 0xC00);
|
||||||
|
memcpy(var_r30 + 0xC40, temp_r3->bmp->palData, 0x200);
|
||||||
|
temp_r3 = HuSprAnimRead(HuDataSelHeapReadNum(curBoxNo + 0x86001C, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||||
|
memcpy(var_r30 + 0xE40, temp_r3->bmp->data, 0x1000);
|
||||||
|
memcpy(var_r30 + 0x1E40, temp_r3->bmp->palData, 0x200);
|
||||||
|
SLSaveDataInfoSet(arg1);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLSaveDataInfoSet(OSTime *arg0) {
|
||||||
|
s16 temp_r30;
|
||||||
|
s16 temp_r31;
|
||||||
|
OSCalendarTime sp8;
|
||||||
|
|
||||||
|
OSTicksToCalendarTime(*arg0, &sp8);
|
||||||
|
saveBuf[0x25] = curBoxNo + 0x31;
|
||||||
|
temp_r31 = (sp8.mon + 1) / 10;
|
||||||
|
saveBuf[0x28] = temp_r31 + 0x30;
|
||||||
|
temp_r31 = (sp8.mon + 1) % 10;
|
||||||
|
saveBuf[0x29] = temp_r31 + 0x30;
|
||||||
|
temp_r31 = sp8.mday / 10;
|
||||||
|
saveBuf[0x2B] = temp_r31 + 0x30;
|
||||||
|
temp_r31 = sp8.mday % 10;
|
||||||
|
saveBuf[0x2C] = temp_r31 + 0x30;
|
||||||
|
temp_r30 = sp8.year;
|
||||||
|
temp_r31 = temp_r30 / 1000;
|
||||||
|
saveBuf[0x2E] = temp_r31 + 0x30;
|
||||||
|
temp_r30 -= temp_r31 * 1000;
|
||||||
|
temp_r31 = temp_r30 / 100;
|
||||||
|
saveBuf[0x2F] = temp_r31 + 0x30;
|
||||||
|
temp_r30 -= temp_r31 * 100;
|
||||||
|
temp_r31 = temp_r30 / 10;
|
||||||
|
saveBuf[0x30] = temp_r31 + 0x30;
|
||||||
|
temp_r30 -= temp_r31 * 10;
|
||||||
|
saveBuf[0x31] = temp_r30 + 0x30;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLCommonSet(void) {
|
||||||
|
OSTime temp_r28;
|
||||||
|
|
||||||
|
temp_r28 = OSGetTime();
|
||||||
|
GWGameStat.create_time = temp_r28;
|
||||||
|
memcpy(saveBuf + 0x2040, &GWGameStat, 0x118);
|
||||||
|
SLSaveDataInfoSet(&temp_r28);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLSaveBoard(void) {
|
||||||
|
s16 i;
|
||||||
|
|
||||||
|
memcpy(saveBuf + 0x2158, &GWSystem, 0xDC);
|
||||||
|
for (i = 0; i < 4; i++) {
|
||||||
|
memcpy(&saveBuf[i * 0x30 + 0x2234], &GWPlayer[i], 0x30);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLSaveBoardBackup(void) {
|
||||||
|
s16 i;
|
||||||
|
|
||||||
|
memcpy(saveBuf + 0x22F4, &GWSystem, 0xDC);
|
||||||
|
for (i = 0; i < 4; i++) {
|
||||||
|
memcpy(&saveBuf[i * 0x30 + 0x23D0], &GWPlayer[i], 0x30);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLSave(void) {
|
||||||
|
s32 var_r31;
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
SLCheckSumSet();
|
||||||
|
var_r31 = SLFileOpen(SaveFileNameTbl[curBoxNo]);
|
||||||
|
if (var_r31 == CARD_RESULT_NOFILE) {
|
||||||
|
if (!SLSerialNoCheck()) {
|
||||||
|
SLMessOut(9);
|
||||||
|
} else {
|
||||||
|
SLCreateSaveWin();
|
||||||
|
var_r31 = SLFileCreate(SaveFileNameTbl[curBoxNo], 0x4000, saveBuf);
|
||||||
|
SLKillSaveWin();
|
||||||
|
if (var_r31 >= 0) {
|
||||||
|
SLSerialNoGet();
|
||||||
|
goto block_32;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (var_r31 == CARD_RESULT_NOCARD) {
|
||||||
|
var_r31 = SLMessOut(0xA);
|
||||||
|
if (var_r31 != 0) {
|
||||||
|
SLMessOut(0xB);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
SLSaveFlagSet(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (var_r31 >= 0) {
|
||||||
|
if (!SLSerialNoCheck()) {
|
||||||
|
SLMessOut(9);
|
||||||
|
} else {
|
||||||
|
SLCreateSaveWin();
|
||||||
|
var_r31 = SLFileWrite(0x4000, saveBuf);
|
||||||
|
SLKillSaveWin();
|
||||||
|
if (var_r31 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
} else if (var_r31 == CARD_RESULT_WRONGDEVICE) {
|
||||||
|
SLMessOut(7);
|
||||||
|
} else if (var_r31 == CARD_RESULT_BROKEN) {
|
||||||
|
var_r31 = HuCardSectorSizeGet(curSlotNo);
|
||||||
|
if (var_r31 > 0 && var_r31 != 0x2000) {
|
||||||
|
SLMessOut(8);
|
||||||
|
goto block_36;
|
||||||
|
}
|
||||||
|
UnMountCnt = 0;
|
||||||
|
var_r31 = SLMessOut(5);
|
||||||
|
if (var_r31 == 0) {
|
||||||
|
var_r31 = SLFormat(curSlotNo);
|
||||||
|
if (var_r31 != 0) {
|
||||||
|
return var_r31;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
} else {
|
||||||
|
var_r31 = CARD_RESULT_BROKEN;
|
||||||
|
}
|
||||||
|
} else if (var_r31 < 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
}
|
||||||
|
block_32:
|
||||||
|
SLFileClose();
|
||||||
|
if (var_r31 >= 0) {
|
||||||
|
HuCardUnMount(curSlotNo);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
block_36:
|
||||||
|
var_r31 = SLMessOut(0xA);
|
||||||
|
if (var_r31 != 0) {
|
||||||
|
SLMessOut(0xB);
|
||||||
|
} else {
|
||||||
|
SLSaveFlagSet(0);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
HuCardUnMount(curSlotNo);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static s16 SLCreateSaveWin(void) {
|
||||||
|
float sp8[2];
|
||||||
|
s16 temp_r3;
|
||||||
|
|
||||||
|
HuWinInit(1);
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
HuWinMesMaxSizeGet(1, sp8, 0x100044);
|
||||||
|
temp_r3 = HuWinExCreateStyled(-10000.0f, 150.0f, sp8[0], sp8[1], -1, 2);
|
||||||
|
saveMessWin = temp_r3;
|
||||||
|
HuWinExAnimIn(temp_r3);
|
||||||
|
HuWinInsertMesSet(temp_r3, MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
HuWinMesSet(temp_r3, 0x100044);
|
||||||
|
HuWinMesWait(temp_r3);
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void SLKillSaveWin(void) {
|
||||||
|
if (saveMessWin != -1) {
|
||||||
|
HuWinExAnimOut(saveMessWin);
|
||||||
|
HuWinExCleanup(saveMessWin);
|
||||||
|
saveMessWin = -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLLoad(void) {
|
||||||
|
s32 var_r31;
|
||||||
|
u16 *temp_r29;
|
||||||
|
u16 temp_r27;
|
||||||
|
|
||||||
|
var_r31 = SLFileOpen(SaveFileNameTbl[curBoxNo]);
|
||||||
|
if (var_r31 >= 0) {
|
||||||
|
var_r31 = SLFileRead(0x4000, saveBuf);
|
||||||
|
SLFileClose();
|
||||||
|
if (var_r31 >= 0) {
|
||||||
|
temp_r29 = (u16*) &saveBuf[0x2490];
|
||||||
|
temp_r27 = SLCheckSumGet();
|
||||||
|
*temp_r29 == temp_r27;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
HuCardUnMount(curSlotNo);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLLoadGameStat(void) {
|
||||||
|
memcpy(&GWGameStat, saveBuf + 0x2040, 0x118);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLLoadBoard(void) {
|
||||||
|
s16 i;
|
||||||
|
|
||||||
|
memcpy(&GWSystem, saveBuf + 0x2158, 0xDC);
|
||||||
|
for (i = 0; i < 4; i++) {
|
||||||
|
memcpy(&GWPlayer[i], &saveBuf[i * 0x30 + 0x2234], 0x30);
|
||||||
|
GWPlayerCfg[i].character = GWPlayer[i].character;
|
||||||
|
GWPlayerCfg[i].pad_idx = GWPlayer[i].port;
|
||||||
|
GWPlayerCfg[i].diff = GWPlayer[i].diff;
|
||||||
|
GWPlayerCfg[i].iscom = GWPlayer[i].com;
|
||||||
|
GWPlayerCfg[i].group = GWPlayer[i].team;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLLoadBoardBackup(void) {
|
||||||
|
s16 i;
|
||||||
|
|
||||||
|
memcpy(&GWSystem, saveBuf + 0x22F4, 0xDC);
|
||||||
|
for (i = 0; i < 4; i++) {
|
||||||
|
memcpy(&GWPlayer[i], &saveBuf[i * 0x30 + 0x23D0], 0x30);
|
||||||
|
GWPlayerCfg[i].character = GWPlayer[i].character;
|
||||||
|
GWPlayerCfg[i].pad_idx = GWPlayer[i].port;
|
||||||
|
GWPlayerCfg[i].diff = GWPlayer[i].diff;
|
||||||
|
GWPlayerCfg[i].iscom = GWPlayer[i].com;
|
||||||
|
GWPlayerCfg[i].group = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLSerialNoGet(void) {
|
||||||
|
CARDGetSerialNo(curSlotNo, &SLSerialNo);
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL SLSerialNoCheck(void) {
|
||||||
|
s32 var_r31;
|
||||||
|
u64 sp8;
|
||||||
|
|
||||||
|
if (SLSerialNo == 0) {
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
var_r31 = CARDGetSerialNo(curSlotNo, &sp8);
|
||||||
|
if (var_r31 < 0) {
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
if (sp8 != SLSerialNo) {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL SLCheckSumCheck(void) {
|
||||||
|
u16 *temp_r31 = (u16*) &saveBuf[0x2490];
|
||||||
|
u16 temp_r3 = SLCheckSumGet();
|
||||||
|
|
||||||
|
if (*temp_r31 == temp_r3) {
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
u16 SLCheckSumGet(void) {
|
||||||
|
u32 i;
|
||||||
|
u32 var_r30;
|
||||||
|
|
||||||
|
for (i = var_r30 = 0; i < 0x2490; i++) {
|
||||||
|
var_r30 += saveBuf[i];
|
||||||
|
}
|
||||||
|
var_r30 = ~var_r30;
|
||||||
|
return (u16) var_r30 & 0xFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SLCheckSumSet(void) {
|
||||||
|
u16 temp_r31 = SLCheckSumGet();
|
||||||
|
|
||||||
|
saveBuf[0x2490] = (temp_r31 >> 8) & 0xFF;
|
||||||
|
saveBuf[0x2491] = temp_r31;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLStatSet(s32 arg0) {
|
||||||
|
CARDStat sp8;
|
||||||
|
s32 temp_r29;
|
||||||
|
s32 temp_r3;
|
||||||
|
|
||||||
|
temp_r29 = curFileInfo.fileNo;
|
||||||
|
temp_r3 = CARDGetStatus(curSlotNo, temp_r29, &sp8);
|
||||||
|
if (temp_r3 == -3) {
|
||||||
|
if (arg0 != 0) {
|
||||||
|
SLMessOut(0);
|
||||||
|
}
|
||||||
|
return -3;
|
||||||
|
}
|
||||||
|
if (temp_r3 < 0) {
|
||||||
|
if (arg0 != 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
}
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
sp8.commentAddr = 0;
|
||||||
|
sp8.iconAddr = 0x40;
|
||||||
|
CARDSetBannerFormat(&sp8, CARD_STAT_BANNER_C8);
|
||||||
|
CARDSetIconFormat(&sp8, 0, CARD_STAT_ICON_C8);
|
||||||
|
CARDSetIconFormat(&sp8, 1, CARD_STAT_ICON_C8);
|
||||||
|
CARDSetIconFormat(&sp8, 2, CARD_STAT_ICON_C8);
|
||||||
|
CARDSetIconFormat(&sp8, 3, CARD_STAT_ICON_C8);
|
||||||
|
CARDSetIconSpeed(&sp8, 0, CARD_STAT_SPEED_MIDDLE);
|
||||||
|
CARDSetIconSpeed(&sp8, 1, CARD_STAT_SPEED_MIDDLE);
|
||||||
|
CARDSetIconSpeed(&sp8, 2, CARD_STAT_SPEED_MIDDLE);
|
||||||
|
CARDSetIconSpeed(&sp8, 3, CARD_STAT_SPEED_MIDDLE);
|
||||||
|
CARDSetIconSpeed(&sp8, 4, CARD_STAT_SPEED_END);
|
||||||
|
CARDSetIconAnim(&sp8, CARD_STAT_ANIM_LOOP);
|
||||||
|
|
||||||
|
temp_r3 = CARDSetStatus(curSlotNo, temp_r29, &sp8);
|
||||||
|
if (temp_r3 == CARD_RESULT_NOCARD) {
|
||||||
|
if (arg0 != 0) {
|
||||||
|
SLMessOut(0);
|
||||||
|
}
|
||||||
|
return CARD_RESULT_NOCARD;
|
||||||
|
}
|
||||||
|
if (temp_r3 < 0) {
|
||||||
|
if (arg0 != 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
}
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLCardMount(s16 arg0) {
|
||||||
|
s32 temp_r3;
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
temp_r3 = HuCardMount(curSlotNo);
|
||||||
|
if (temp_r3 == CARD_RESULT_WRONGDEVICE) {
|
||||||
|
SLMessOut(7);
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_FATAL_ERROR) {
|
||||||
|
SLMessOut(1);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
return CARD_RESULT_NOCARD;
|
||||||
|
}
|
||||||
|
if (temp_r3 == CARD_RESULT_BROKEN) {
|
||||||
|
temp_r3 = HuCardSectorSizeGet(curSlotNo);
|
||||||
|
if (temp_r3 > 0 && temp_r3 != 0x2000) {
|
||||||
|
SLMessOut(8);
|
||||||
|
return CARD_RESULT_WRONGDEVICE;
|
||||||
|
}
|
||||||
|
UnMountCnt = 0;
|
||||||
|
temp_r3 = SLMessOut(5);
|
||||||
|
if (temp_r3 == 0) {
|
||||||
|
temp_r3 = SLFormat(curSlotNo);
|
||||||
|
if (temp_r3 != 0) {
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
temp_r3 = HuCardSectorSizeGet(curSlotNo);
|
||||||
|
if (temp_r3 < 0) {
|
||||||
|
SLMessOut(1);
|
||||||
|
return temp_r3;
|
||||||
|
}
|
||||||
|
if (temp_r3 != 0x2000) {
|
||||||
|
SLMessOut(8);
|
||||||
|
return CARD_RESULT_WRONGDEVICE;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
s32 SLFormat(s16 arg0) {
|
||||||
|
float sp8[2];
|
||||||
|
s16 temp_r24;
|
||||||
|
s16 temp_r3;
|
||||||
|
s16 temp_r3_2;
|
||||||
|
OSTime temp_r19;
|
||||||
|
|
||||||
|
HuWinInit(1);
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(16, 56));
|
||||||
|
temp_r3 = HuWinExCreateStyled(-10000.0f, 150.0f, sp8[0], sp8[1], -1, 2);
|
||||||
|
HuWinExAnimIn(temp_r3);
|
||||||
|
HuWinInsertMesSet(temp_r3, MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
HuWinMesSet(temp_r3, MAKE_MESSID(16, 56));
|
||||||
|
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(16, 11));
|
||||||
|
temp_r3_2 = HuWinExCreateStyled(-10000.0f, 200.0f, sp8[0], sp8[1], -1, 2);
|
||||||
|
HuWinExAnimIn(temp_r3_2);
|
||||||
|
HuWinMesSet(temp_r3_2, MAKE_MESSID(16, 11));
|
||||||
|
HuWinMesWait(temp_r3_2);
|
||||||
|
HuPrcSleep(0x1E);
|
||||||
|
if (UnMountCnt & (1 << curSlotNo)) {
|
||||||
|
HuWinExAnimOut(temp_r3);
|
||||||
|
HuWinExCleanup(temp_r3);
|
||||||
|
HuWinExAnimOut(temp_r3_2);
|
||||||
|
HuWinExCleanup(temp_r3_2);
|
||||||
|
SLMessOut(0xC);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_SetFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
temp_r24 = HuCardFormat(curSlotNo);
|
||||||
|
_ClearFlag(FLAG_ID_MAKE(3, 0));
|
||||||
|
if (temp_r24 < 0) {
|
||||||
|
HuWinExAnimOut(temp_r3);
|
||||||
|
HuWinExCleanup(temp_r3);
|
||||||
|
HuWinExAnimOut(temp_r3_2);
|
||||||
|
HuWinExCleanup(temp_r3_2);
|
||||||
|
}
|
||||||
|
if (temp_r24 == CARD_RESULT_FATAL_ERROR) {
|
||||||
|
SLMessOut(6);
|
||||||
|
SLMessOut(1);
|
||||||
|
return CARD_RESULT_FATAL_ERROR;
|
||||||
|
}
|
||||||
|
if (temp_r24 == CARD_RESULT_NOCARD) {
|
||||||
|
SLMessOut(0);
|
||||||
|
return CARD_RESULT_NOCARD;
|
||||||
|
}
|
||||||
|
if (temp_r24 == CARD_RESULT_WRONGDEVICE) {
|
||||||
|
SLMessOut(7);
|
||||||
|
return temp_r24;
|
||||||
|
}
|
||||||
|
HuWinExAnimOut(temp_r3);
|
||||||
|
HuWinExCleanup(temp_r3);
|
||||||
|
HuWinExAnimOut(temp_r3_2);
|
||||||
|
HuWinExCleanup(temp_r3_2);
|
||||||
|
CARDGetSerialNo(curSlotNo, &SLSerialNo);
|
||||||
|
curBoxNo = 0;
|
||||||
|
temp_r19 = OSGetTime();
|
||||||
|
SLSaveDataMake(0, &temp_r19);
|
||||||
|
SLCheckSumSet();
|
||||||
|
return temp_r24;
|
||||||
|
}
|
||||||
|
|
||||||
|
s16 SLMessOut(s16 arg0) {
|
||||||
|
WindowData *var_r26;
|
||||||
|
float sp8[2];
|
||||||
|
u32 var_r29;
|
||||||
|
s32 var_r31;
|
||||||
|
s32 var_r27;
|
||||||
|
s16 temp_r3;
|
||||||
|
s16 var_r28;
|
||||||
|
|
||||||
|
var_r28 = -1;
|
||||||
|
var_r29 = 0;
|
||||||
|
var_r27 = 0;
|
||||||
|
HuWinInit(1);
|
||||||
|
SLKillSaveWin();
|
||||||
|
switch (arg0) {
|
||||||
|
case 0:
|
||||||
|
var_r31 = MAKE_MESSID(16, 2);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
var_r31 = MAKE_MESSID(16, 83);
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
var_r31 = MAKE_MESSID(16, 74);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
var_r31 = MAKE_MESSID(16, 74);
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
var_r31 = MAKE_MESSID(16, 74);
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
var_r31 = MAKE_MESSID(16, 4);
|
||||||
|
var_r27 = 1;
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
var_r31 = MAKE_MESSID(16, 54);
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
var_r31 = MAKE_MESSID(16, 55);
|
||||||
|
break;
|
||||||
|
case 8:
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
var_r31 = MAKE_MESSID(16, 57);
|
||||||
|
break;
|
||||||
|
case 9:
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
var_r31 = MAKE_MESSID(16, 69);
|
||||||
|
break;
|
||||||
|
case 10:
|
||||||
|
var_r31 = MAKE_MESSID(16, 70);
|
||||||
|
var_r27 = 1;
|
||||||
|
break;
|
||||||
|
case 11:
|
||||||
|
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]), 0);
|
||||||
|
var_r29 = MAKE_MESSID_PTR(SlotNameTbl[curSlotNo]);
|
||||||
|
var_r31 = MAKE_MESSID(16, 72);
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
|
var_r31 = MAKE_MESSID(16, 80);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (var_r31 == MAKE_MESSID(16, 4)) {
|
||||||
|
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(16, 78));
|
||||||
|
} else {
|
||||||
|
HuWinMesMaxSizeGet(1, sp8, var_r31);
|
||||||
|
}
|
||||||
|
temp_r3 = HuWinExCreateStyled(-10000.0f, 200.0f, sp8[0], sp8[1], -1, 2);
|
||||||
|
var_r26 = &winData[temp_r3];
|
||||||
|
var_r26->active_pad = 1;
|
||||||
|
if (var_r29 != 0) {
|
||||||
|
HuWinInsertMesSet(temp_r3, var_r29, 0);
|
||||||
|
}
|
||||||
|
HuWinAttrSet(temp_r3, 0x10);
|
||||||
|
HuWinExAnimIn(temp_r3);
|
||||||
|
HuWinMesSet(temp_r3, var_r31);
|
||||||
|
HuWinMesWait(temp_r3);
|
||||||
|
if (var_r27 != 0) {
|
||||||
|
var_r28 = HuWinChoiceGet(temp_r3, 1);
|
||||||
|
if (arg0 == 5 && var_r28 == 0) {
|
||||||
|
HuWinMesSet(temp_r3, MAKE_MESSID(16, 78));
|
||||||
|
HuWinMesWait(temp_r3);
|
||||||
|
var_r28 = HuWinChoiceGet(temp_r3, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (arg0 == 0xB) {
|
||||||
|
while (!(HuPadBtnDown[0] & 0x100)) {
|
||||||
|
HuPrcVSleep();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
HuWinExAnimOut(temp_r3);
|
||||||
|
HuWinExCleanup(temp_r3);
|
||||||
|
return var_r28;
|
||||||
|
}
|
||||||
|
|
@ -185,7 +185,7 @@ static s32 winVoiceTbl[] = {
|
||||||
0x49
|
0x49
|
||||||
};
|
};
|
||||||
|
|
||||||
s16 winPrio = 1000;
|
static s16 winPrio = 1000;
|
||||||
|
|
||||||
void HuWindowInit(void) {
|
void HuWindowInit(void) {
|
||||||
s16 i;
|
s16 i;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
#include "dolphin.h"
|
#include "dolphin.h"
|
||||||
#include "game/wipe.h"
|
#include "game/wipe.h"
|
||||||
#include "game/memory.h"
|
#include "game/memory.h"
|
||||||
|
#include "game/flag.h"
|
||||||
|
|
||||||
extern s8 lbl_801D429C;
|
extern s8 lbl_801D429C;
|
||||||
|
|
||||||
|
|
@ -110,7 +111,7 @@ void WipeExecAlways(void)
|
||||||
void WipeCreate(s16 mode, s16 type, s16 duration)
|
void WipeCreate(s16 mode, s16 type, s16 duration)
|
||||||
{
|
{
|
||||||
WipeState *wipe;
|
WipeState *wipe;
|
||||||
if(_CheckFlag(0x1000B) && lbl_801D429C) {
|
if(_CheckFlag(FLAG_ID_MAKE(1, 11)) && lbl_801D429C) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
wipe = &wipeData;
|
wipe = &wipeData;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue