Merge pull request #109 from Yanis002/gamemodeadventure

Started `09_Adventure/Game/GameModeAdventure.cpp` (97%)
This commit is contained in:
Aetias
2025-07-06 11:09:25 +02:00
committed by GitHub
37 changed files with 561 additions and 162 deletions
+2
View File
@@ -65,4 +65,6 @@ src/Main/Game/Game.cpp:
.text start:0x0202c6c8 end:0x0202d0cc
src/Main/Game/GameMode.cpp:
complete
.text start:0x0202c0a8 end:0x0202c0cc
.data start:0x0205762c end:0x02057650
+1 -1
View File
@@ -425,7 +425,7 @@ from:0x02079d02 kind:thumb_call_arm to:0x02007938 module:main
from:0x02079d16 kind:thumb_call to:0x02079bdc module:overlay(0)
from:0x02079d20 kind:load to:0x020691a0 module:main
from:0x02079d3c kind:thumb_call_arm to:0x0201823c module:main
from:0x02079d44 kind:load to:0x02057634 module:main
from:0x02079d44 kind:load to:0x0205762c add:8 module:main
from:0x02079d48 kind:load to:0x020e2020 module:overlay(0)
from:0x02079d4c kind:load to:0x027e0d40 module:dtcm
from:0x02079d50 kind:load to:0x027e0934 module:dtcm
+3 -3
View File
@@ -164,9 +164,9 @@ func_ov002_020f41f8 kind:function(arm,size=0x14) addr:0x020f41f8
func_ov002_020f420c kind:function(arm,size=0xb90) addr:0x020f420c
func_ov002_020f4d9c kind:function(arm,size=0x324) addr:0x020f4d9c
func_ov002_020f50c0 kind:function(arm,size=0x2d0) addr:0x020f50c0
func_ov002_020f5390 kind:function(arm,size=0x174) addr:0x020f5390
func_ov002_020f5504 kind:function(arm,size=0x1c4) addr:0x020f5504
func_ov002_020f56c8 kind:function(arm,size=0x19c) addr:0x020f56c8
_ZN18UnkStruct_0211a9ac19func_ov002_020f5390EPt kind:function(arm,size=0x174) addr:0x020f5390
_ZN18UnkStruct_0211a9ac19func_ov002_020f5504EPt kind:function(arm,size=0x1c4) addr:0x020f5504
_ZN18UnkStruct_0211a9ac19func_ov002_020f56c8EPt kind:function(arm,size=0x19c) addr:0x020f56c8
func_ov002_020f5864 kind:function(arm,size=0x50) addr:0x020f5864
func_ov002_020f58b4 kind:function(arm,size=0x248) addr:0x020f58b4
func_ov002_020f5afc kind:function(arm,size=0x2c8) addr:0x020f5afc
+10 -10
View File
@@ -75,7 +75,7 @@ func_ov003_020f2944 kind:function(thumb,size=0x32) addr:0x020f2944
func_ov003_020f2978 kind:function(thumb,size=0xa0) addr:0x020f2978
func_ov003_020f2a18 kind:function(arm,size=0x14) addr:0x020f2a18
func_ov003_020f2a2c kind:function(thumb,size=0xa0) addr:0x020f2a2c
func_ov003_020f2acc kind:function(thumb,size=0xb8) addr:0x020f2acc
_ZN18UnkStruct_020f297819func_ov003_020f2accEv kind:function(thumb,size=0xb8) addr:0x020f2acc
func_ov003_020f2b84 kind:function(thumb,size=0x46) addr:0x020f2b84
func_ov003_020f2bcc kind:function(thumb,size=0x50) addr:0x020f2bcc
func_ov003_020f2c1c kind:function(arm,size=0x1c) addr:0x020f2c1c
@@ -171,8 +171,8 @@ func_ov003_020f4510 kind:function(thumb,size=0x24) addr:0x020f4510
func_ov003_020f4534 kind:function(thumb,size=0x24) addr:0x020f4534
func_ov003_020f4558 kind:function(thumb,size=0xa8) addr:0x020f4558
func_ov003_020f4600 kind:function(thumb,size=0x78) addr:0x020f4600
func_ov003_020f4678 kind:function(thumb,size=0x80) addr:0x020f4678
func_ov003_020f46f8 kind:function(thumb,size=0x1e) addr:0x020f46f8
_ZN17UnkClass_027e105419func_ov003_020f4678Ei kind:function(thumb,size=0x80) addr:0x020f4678
_ZN17UnkClass_027e105418func_ov003_02f46f8Ev kind:function(thumb,size=0x1e) addr:0x020f46f8
func_ov003_020f4718 kind:function(thumb,size=0x48) addr:0x020f4718
func_ov003_020f4760 kind:function(thumb,size=0x18) addr:0x020f4760
func_ov003_020f4778 kind:function(thumb,size=0x6c) addr:0x020f4778
@@ -184,7 +184,7 @@ func_ov003_020f48dc kind:function(thumb,size=0x2e) addr:0x020f48dc
func_ov003_020f490c kind:function(thumb,size=0x34) addr:0x020f490c
func_ov003_020f4940 kind:function(thumb,size=0x20) addr:0x020f4940
func_ov003_020f4960 kind:function(arm,size=0xfc) addr:0x020f4960
func_ov003_020f4a5c kind:function(arm,size=0xbc) addr:0x020f4a5c
_ZN17UnkClass_027e105419func_ov003_020f4a5cEv kind:function(arm,size=0xbc) addr:0x020f4a5c
func_ov003_020f4b18 kind:function(thumb,size=0x64) addr:0x020f4b18
func_ov003_020f4b7c kind:function(arm,size=0x44) addr:0x020f4b7c
func_ov003_020f4bc0 kind:function(thumb,size=0x48) addr:0x020f4bc0
@@ -355,23 +355,23 @@ func_ov003_020fab64 kind:function(thumb,size=0x240) addr:0x020fab64
func_ov003_020fada4 kind:function(thumb,size=0x2e) addr:0x020fada4
func_ov003_020fadd4 kind:function(thumb,size=0x20) addr:0x020fadd4
func_ov003_020fadf4 kind:function(thumb,size=0x40) addr:0x020fadf4
func_ov003_020fae34 kind:function(thumb,size=0x30) addr:0x020fae34
func_ov003_020fae64 kind:function(thumb,size=0x22) addr:0x020fae64
_ZN18UnkStruct_020fadf4D1Ev kind:function(thumb,size=0x30) addr:0x020fae34
_ZN18UnkStruct_020fadf419func_ov003_020fae64Ev kind:function(thumb,size=0x22) addr:0x020fae64
func_ov003_020fae88 kind:function(thumb,size=0x18) addr:0x020fae88
func_ov003_020faea0 kind:function(thumb,size=0x44) addr:0x020faea0
func_ov003_020faee4 kind:function(thumb,size=0x48) addr:0x020faee4
func_ov003_020faf2c kind:function(thumb,size=0x48) addr:0x020faf2c
func_ov003_020faf74 kind:function(thumb,size=0x1c) addr:0x020faf74
func_ov003_020faf90 kind:function(thumb,size=0x80) addr:0x020faf90
func_ov003_020fb010 kind:function(thumb,size=0x44) addr:0x020fb010
_ZN18UnkStruct_0211ac0c19func_ov003_020faf90Ev kind:function(thumb,size=0x80) addr:0x020faf90
_ZN18UnkStruct_0211ac0c19func_ov003_020fb010Ev kind:function(thumb,size=0x44) addr:0x020fb010
func_ov003_020fb054 kind:function(thumb,size=0x30) addr:0x020fb054
func_ov003_020fb084 kind:function(thumb,size=0x24) addr:0x020fb084
func_ov003_020fb0a8 kind:function(thumb,size=0x8) addr:0x020fb0a8
func_ov003_020fb0b0 kind:function(thumb,size=0x68) addr:0x020fb0b0
func_ov003_020fb118 kind:function(thumb,size=0x2e) addr:0x020fb118
func_ov003_020fb148 kind:function(arm,size=0x110) addr:0x020fb148
func_ov003_020fb258 kind:function(thumb,size=0x14) addr:0x020fb258
func_ov003_020fb26c kind:function(thumb,size=0x26) addr:0x020fb26c
_ZN18UnkStruct_0211ac0c19func_ov003_020fb258EPt kind:function(thumb,size=0x14) addr:0x020fb258
_ZN18UnkStruct_0211ac0c19func_ov003_020fb26cEv kind:function(thumb,size=0x26) addr:0x020fb26c
func_ov003_020fb294 kind:function(thumb,size=0x38) addr:0x020fb294
func_ov003_020fb2cc kind:function(thumb,size=0x1a) addr:0x020fb2cc
func_ov003_020fb2e8 kind:function(thumb,size=0x88) addr:0x020fb2e8
+1 -1
View File
@@ -1,5 +1,5 @@
func_ov005_02100ae0 kind:function(arm,size=0x9c) addr:0x02100ae0
func_ov005_02100b7c kind:function(arm,size=0x74) addr:0x02100b7c
_ZN18UnkStruct_027e0d3819func_ov005_02100b7cEi kind:function(arm,size=0x74) addr:0x02100b7c
func_ov005_02100bf0 kind:function(arm,size=0xc0) addr:0x02100bf0
func_ov005_02100cb0 kind:function(arm,size=0x110) addr:0x02100cb0
func_ov005_02100dc0 kind:function(arm,size=0x4c) addr:0x02100dc0
+1 -1
View File
@@ -39,7 +39,7 @@ from:0x02100ef8 kind:arm_call to:0x02007ad8 module:main
from:0x02100f10 kind:arm_call to:0x02007ad8 module:main
from:0x02100f38 kind:arm_call_thumb to:0x0200b944 module:main
from:0x02100f44 kind:arm_call_thumb to:0x0200b954 module:main
from:0x02100f54 kind:load to:0x02057634 module:main
from:0x02100f54 kind:load to:0x0205762c add:8 module:main
from:0x02100f58 kind:load to:0x021029c8 module:overlay(7)
from:0x02100f5c kind:load to:0x021029fc module:overlay(7)
from:0x02100f60 kind:load to:0x021029ec module:overlay(7)
+1 -1
View File
@@ -10,7 +10,7 @@ from:0x02112cf0 kind:arm_call_thumb to:0x02031e1c module:main
from:0x02112d18 kind:arm_call_thumb to:0x02027ab4 module:main
from:0x02112d44 kind:arm_call_thumb to:0x02027ab4 module:main
from:0x02112d4c kind:arm_call_thumb to:0x02016fcc module:main
from:0x02112d5c kind:load to:0x02057634 module:main
from:0x02112d5c kind:load to:0x0205762c add:8 module:main
from:0x02112d60 kind:load to:0x02113b44 module:overlay(8)
from:0x02112d64 kind:load to:0x02113b00 module:overlay(8)
from:0x02112d68 kind:load to:0x02113b04 module:overlay(8)
@@ -7,3 +7,4 @@
src/09_Adventure/Game/GameModeAdventure.cpp:
.text start:0x02112c20 end:0x021132cc
.data start:0x0211e680 end:0x0211e6ec
+8 -8
View File
@@ -1,8 +1,8 @@
_ZN17GameModeAdventure6CreateEi kind:function(thumb,size=0x20) addr:0x02112c20
_ZN17GameModeAdventureC1Ei kind:function(thumb,size=0x128) addr:0x02112c40
_Z19func_ov009_02112d68v kind:function(arm,size=0x4) addr:0x02112d68
_ZN21UnkStruct_020f2978_00D1Ev kind:function(arm,size=0x4) addr:0x02112d68
_ZN17GameModeAdventureD0Ev kind:function(thumb,size=0x88) addr:0x02112d6c
_ZN17GameModeAdventureD2Ev kind:function(thumb,size=0x84) addr:0x02112df4
_ZN17GameModeAdventureD1Ev kind:function(thumb,size=0x84) addr:0x02112df4
_ZN17GameModeAdventure8vfunc_08Ei kind:function(arm,size=0x17c) addr:0x02112e78
_ZN17GameModeAdventure8vfunc_0cEPt kind:function(arm,size=0xc8) addr:0x02112ff4
_ZN17GameModeAdventure8vfunc_10EPt kind:function(arm,size=0xe0) addr:0x021130bc
@@ -22,9 +22,9 @@ func_ov009_0211364c kind:function(thumb,size=0x2) addr:0x0211364c
func_ov009_02113650 kind:function(arm,size=0x1c) addr:0x02113650
func_ov009_0211366c kind:function(arm,size=0x2c) addr:0x0211366c
func_ov009_02113698 kind:function(arm,size=0x2c) addr:0x02113698
func_ov009_021136c4 kind:function(arm,size=0x24) addr:0x021136c4
func_ov009_021136e8 kind:function(arm,size=0x24) addr:0x021136e8
func_ov009_0211370c kind:function(arm,size=0x20) addr:0x0211370c
_ZN23UnkStruct_020fadf4_Base19func_ov009_021136c4Ev kind:function(arm,size=0x24) addr:0x021136c4
_ZN18UnkStruct_0211ac0c19func_ov009_021136e8Ev kind:function(arm,size=0x24) addr:0x021136e8
_ZN23UnkStruct_020fadf4_Base19func_ov009_0211370cEv kind:function(arm,size=0x20) addr:0x0211370c
func_ov009_0211372c kind:function(arm,size=0x11c) addr:0x0211372c
func_ov009_02113848 kind:function(thumb,size=0x20) addr:0x02113848
func_ov009_02113868 kind:function(thumb,size=0x94) addr:0x02113868
@@ -345,12 +345,12 @@ func_ov009_0211a880 kind:function(arm,size=0x2c) addr:0x0211a880
func_ov009_0211a8ac kind:function(arm,size=0xdc) addr:0x0211a8ac
func_ov009_0211a988 kind:function(arm,size=0x24) addr:0x0211a988
func_ov009_0211a9ac kind:function(thumb,size=0x88) addr:0x0211a9ac
func_ov009_0211aa34 kind:function(thumb,size=0x60) addr:0x0211aa34
_ZN18UnkStruct_0211a9acD1Ev kind:function(thumb,size=0x60) addr:0x0211aa34
func_ov009_0211aa94 kind:function(arm,size=0xf8) addr:0x0211aa94
func_ov009_0211ab8c kind:function(arm,size=0x3c) addr:0x0211ab8c
func_ov009_0211abc8 kind:function(arm,size=0x44) addr:0x0211abc8
func_ov009_0211ac0c kind:function(thumb,size=0x20) addr:0x0211ac0c
func_ov009_0211ac2c kind:function(thumb,size=0x2a) addr:0x0211ac2c
_ZN18UnkStruct_0211ac0c19func_ov009_0211ac2cEv kind:function(thumb,size=0x2a) addr:0x0211ac2c
func_ov009_0211ac58 kind:function(thumb,size=0x90) addr:0x0211ac58
func_ov009_0211ace8 kind:function(thumb,size=0x10) addr:0x0211ace8
func_ov009_0211acf8 kind:function(thumb,size=0xa0) addr:0x0211acf8
@@ -608,7 +608,7 @@ data_ov009_0211e690 kind:data(any) addr:0x0211e690
data_ov009_0211e694 kind:data(any) addr:0x0211e694
data_ov009_0211e698 kind:data(any) addr:0x0211e698
data_ov009_0211e69c kind:data(any) addr:0x0211e69c
data_ov009_0211e6c8 kind:data(any) addr:0x0211e6c8
_ZTV17GameModeAdventure kind:data(any) addr:0x0211e6c8
data_ov009_0211e6ec kind:data(any) addr:0x0211e6ec
data_ov009_0211e6f0 kind:data(any) addr:0x0211e6f0
data_ov009_0211e6f4 kind:data(any) addr:0x0211e6f4
+1 -1
View File
@@ -16,7 +16,7 @@ from:0x02112cfc kind:thumb_call_arm to:0x02032a74 module:main
from:0x02112d00 kind:thumb_call_arm to:0x020329b0 module:main
from:0x02112d10 kind:thumb_call_arm to:0x02032a74 module:main
from:0x02112d16 kind:thumb_call_arm to:0x020d8718 module:overlay(0)
from:0x02112d20 kind:load to:0x02057634 module:main
from:0x02112d20 kind:load to:0x0205762c add:8 module:main
from:0x02112d24 kind:load to:0x0211ea68 module:overlay(10)
from:0x02112d28 kind:load to:0x027e0618 module:dtcm
from:0x02112d2c kind:load to:0x027e0ce0 module:dtcm
+1 -1
View File
@@ -6309,7 +6309,7 @@ from:0x0212b99c kind:thumb_call to:0x0211c048 module:overlay(11)
from:0x0212b9a0 kind:thumb_call_arm to:0x0200c20c module:main
from:0x0212b9ac kind:thumb_call_arm to:0x0200ee38 module:main
from:0x0212b9b2 kind:thumb_call_arm to:0x0200ef98 module:main
from:0x0212b9bc kind:load to:0x02057634 module:main
from:0x0212b9bc kind:load to:0x0205762c add:8 module:main
from:0x0212b9c0 kind:load to:0x021307e8 module:overlay(11)
from:0x0212b9c4 kind:load to:0x027e0ce0 module:dtcm
from:0x0212b9cc kind:load to:0x027e05f4 module:dtcm
+1 -1
View File
@@ -272,7 +272,7 @@ from:0x0211530c kind:arm_call to:0x020f802c module:overlay(1)
from:0x0211532c kind:arm_call to:0x020f7f34 module:overlay(1)
from:0x02115340 kind:arm_call to:0x020f5024 module:overlay(1)
from:0x02115358 kind:arm_call to:0x02115800 module:overlay(13)
from:0x02115370 kind:load to:0x02057634 module:main
from:0x02115370 kind:load to:0x0205762c add:8 module:main
from:0x02115374 kind:load to:0x021161c0 module:overlay(13)
from:0x02115378 kind:load to:0x021153b8 module:overlay(13)
from:0x0211537c kind:load to:0x021153d8 module:overlay(13)
+3 -3
View File
@@ -1353,8 +1353,8 @@ func_0202bc10 kind:function(arm,size=0x28) addr:0x0202bc10
func_0202bc38 kind:function(arm,size=0x320) addr:0x0202bc38
func_0202bf58 kind:function(arm,size=0x68) addr:0x0202bf58
func_0202bfc0 kind:function(arm,size=0xe8) addr:0x0202bfc0
_ZN8GameModeD0Ev kind:function(thumb,size=0x2) addr:0x0202c0a8
_ZN8GameModeD2Ev kind:function(thumb,size=0xc) addr:0x0202c0ac
_ZN8GameModeD1Ev kind:function(thumb,size=0x2) addr:0x0202c0a8
_ZN8GameModeD0Ev kind:function(thumb,size=0xc) addr:0x0202c0ac
_ZN8GameMode13func_0202c0b8Ev kind:function(thumb,size=0x2) addr:0x0202c0b8
_ZN8GameMode8vfunc_0cEPt kind:function(thumb,size=0x2) addr:0x0202c0bc
_ZN8GameMode8vfunc_10EPt kind:function(thumb,size=0x2) addr:0x0202c0c0
@@ -2646,7 +2646,7 @@ data_02057610 kind:data(any) addr:0x02057610
data_02057618 kind:data(any) addr:0x02057618
data_02057620 kind:data(any) addr:0x02057620
data_02057628 kind:data(any) addr:0x02057628
data_02057634 kind:data(any) addr:0x02057634
_ZTV8GameMode kind:data(any) addr:0x0205762c
data_02057650 kind:data(any) addr:0x02057650
data_0205765c kind:data(any) addr:0x0205765c
data_02057664 kind:data(any) addr:0x02057664
+2
View File
@@ -65,4 +65,6 @@ src/Main/Game/Game.cpp:
.text start:0x0202c6b0 end:0x0202d0b4
src/Main/Game/GameMode.cpp:
complete
.text start:0x0202c090 end:0x0202c0b4
.data start:0x020575cc end:0x020575f0
+1 -1
View File
@@ -425,7 +425,7 @@ from:0x02079ca2 kind:thumb_call_arm to:0x02007938 module:main
from:0x02079cb6 kind:thumb_call to:0x02079b7c module:overlay(0)
from:0x02079cc0 kind:load to:0x02069140 module:main
from:0x02079cdc kind:thumb_call_arm to:0x0201823c module:main
from:0x02079ce4 kind:load to:0x020575d4 module:main
from:0x02079ce4 kind:load to:0x020575cc add:8 module:main
from:0x02079ce8 kind:load to:0x020e1fc0 module:overlay(0)
from:0x02079cec kind:load to:0x027e0d40 module:dtcm
from:0x02079cf0 kind:load to:0x027e0934 module:dtcm
+3 -3
View File
@@ -164,9 +164,9 @@ func_ov002_020f41f8 kind:function(arm,size=0x14) addr:0x020f4198
func_ov002_020f420c kind:function(arm,size=0xb90) addr:0x020f41ac
func_ov002_020f4d9c kind:function(arm,size=0x324) addr:0x020f4d3c
func_ov002_020f50c0 kind:function(arm,size=0x2d0) addr:0x020f5060
func_ov002_020f5390 kind:function(arm,size=0x174) addr:0x020f5330
func_ov002_020f5504 kind:function(arm,size=0x1c4) addr:0x020f54a4
func_ov002_020f56c8 kind:function(arm,size=0x19c) addr:0x020f5668
_ZN18UnkStruct_0211a9ac19func_ov002_020f5390EPt kind:function(arm,size=0x174) addr:0x020f5330
_ZN18UnkStruct_0211a9ac19func_ov002_020f5504EPt kind:function(arm,size=0x1c4) addr:0x020f54a4
_ZN18UnkStruct_0211a9ac19func_ov002_020f56c8EPt kind:function(arm,size=0x19c) addr:0x020f5668
func_ov002_020f5864 kind:function(arm,size=0x50) addr:0x020f5804
func_ov002_020f58b4 kind:function(arm,size=0x248) addr:0x020f5854
func_ov002_020f5afc kind:function(arm,size=0x2c8) addr:0x020f5a9c
+10 -10
View File
@@ -75,7 +75,7 @@ func_ov003_020f2944 kind:function(thumb,size=0x32) addr:0x020f28e4
func_ov003_020f2978 kind:function(thumb,size=0xa0) addr:0x020f2918
func_ov003_020f2a18 kind:function(arm,size=0x14) addr:0x020f29b8
func_ov003_020f2a2c kind:function(thumb,size=0xa0) addr:0x020f29cc
func_ov003_020f2acc kind:function(thumb,size=0xb8) addr:0x020f2a6c
_ZN18UnkStruct_020f297819func_ov003_020f2accEv kind:function(thumb,size=0xb8) addr:0x020f2a6c
func_ov003_020f2b84 kind:function(thumb,size=0x46) addr:0x020f2b24
func_ov003_020f2bcc kind:function(thumb,size=0x50) addr:0x020f2b6c
func_ov003_020f2c1c kind:function(arm,size=0x1c) addr:0x020f2bbc
@@ -171,8 +171,8 @@ func_ov003_020f4510 kind:function(thumb,size=0x24) addr:0x020f44b0
func_ov003_020f4534 kind:function(thumb,size=0x24) addr:0x020f44d4
func_ov003_020f4558 kind:function(thumb,size=0xa8) addr:0x020f44f8
func_ov003_020f4600 kind:function(thumb,size=0x78) addr:0x020f45a0
func_ov003_020f4678 kind:function(thumb,size=0x80) addr:0x020f4618
func_ov003_020f46f8 kind:function(thumb,size=0x1e) addr:0x020f4698
_ZN17UnkClass_027e105419func_ov003_020f4678Ei kind:function(thumb,size=0x80) addr:0x020f4618
_ZN17UnkClass_027e105418func_ov003_02f46f8Ev kind:function(thumb,size=0x1e) addr:0x020f4698
func_ov003_020f4718 kind:function(thumb,size=0x48) addr:0x020f46b8
func_ov003_020f4760 kind:function(thumb,size=0x18) addr:0x020f4700
func_ov003_020f4778 kind:function(thumb,size=0x6c) addr:0x020f4718
@@ -184,7 +184,7 @@ func_ov003_020f48dc kind:function(thumb,size=0x2e) addr:0x020f487c
func_ov003_020f490c kind:function(thumb,size=0x34) addr:0x020f48ac
func_ov003_020f4940 kind:function(thumb,size=0x20) addr:0x020f48e0
func_ov003_020f4960 kind:function(arm,size=0xfc) addr:0x020f4900
func_ov003_020f4a5c kind:function(arm,size=0xbc) addr:0x020f49fc
_ZN17UnkClass_027e105419func_ov003_020f4a5cEv kind:function(arm,size=0xbc) addr:0x020f49fc
func_ov003_020f4b18 kind:function(thumb,size=0x64) addr:0x020f4ab8
func_ov003_020f4b7c kind:function(arm,size=0x44) addr:0x020f4b1c
func_ov003_020f4bc0 kind:function(thumb,size=0x48) addr:0x020f4b60
@@ -355,23 +355,23 @@ func_ov003_020fab64 kind:function(thumb,size=0x240) addr:0x020faad8
func_ov003_020fada4 kind:function(thumb,size=0x2e) addr:0x020fad18
func_ov003_020fadd4 kind:function(thumb,size=0x20) addr:0x020fad48
func_ov003_020fadf4 kind:function(thumb,size=0x40) addr:0x020fad68
func_ov003_020fae34 kind:function(thumb,size=0x30) addr:0x020fada8
func_ov003_020fae64 kind:function(thumb,size=0x22) addr:0x020fadd8
_ZN18UnkStruct_020fadf4D1Ev kind:function(thumb,size=0x30) addr:0x020fada8
_ZN18UnkStruct_020fadf419func_ov003_020fae64Ev kind:function(thumb,size=0x22) addr:0x020fadd8
func_ov003_020fae88 kind:function(thumb,size=0x18) addr:0x020fadfc
func_ov003_020faea0 kind:function(thumb,size=0x44) addr:0x020fae14
func_ov003_020faee4 kind:function(thumb,size=0x48) addr:0x020fae58
func_ov003_020faf2c kind:function(thumb,size=0x48) addr:0x020faea0
func_ov003_020faf74 kind:function(thumb,size=0x1c) addr:0x020faee8
func_ov003_020faf90 kind:function(thumb,size=0x80) addr:0x020faf04
func_ov003_020fb010 kind:function(thumb,size=0x44) addr:0x020faf84
_ZN18UnkStruct_0211ac0c19func_ov003_020faf90Ev kind:function(thumb,size=0x80) addr:0x020faf04
_ZN18UnkStruct_0211ac0c19func_ov003_020fb010Ev kind:function(thumb,size=0x44) addr:0x020faf84
func_ov003_020fb054 kind:function(thumb,size=0x30) addr:0x020fafc8
func_ov003_020fb084 kind:function(thumb,size=0x24) addr:0x020faff8
func_ov003_020fb0a8 kind:function(thumb,size=0x8) addr:0x020fb01c
func_ov003_020fb0b0 kind:function(thumb,size=0x68) addr:0x020fb024
func_ov003_020fb118 kind:function(thumb,size=0x2e) addr:0x020fb08c
func_ov003_020fb148 kind:function(arm,size=0x110) addr:0x020fb0bc
func_ov003_020fb258 kind:function(thumb,size=0x14) addr:0x020fb1cc
func_ov003_020fb26c kind:function(thumb,size=0x26) addr:0x020fb1e0
_ZN18UnkStruct_0211ac0c19func_ov003_020fb258EPt kind:function(thumb,size=0x14) addr:0x020fb1cc
_ZN18UnkStruct_0211ac0c19func_ov003_020fb26cEv kind:function(thumb,size=0x26) addr:0x020fb1e0
func_ov003_020fb294 kind:function(thumb,size=0x38) addr:0x020fb208
func_ov003_020fb2cc kind:function(thumb,size=0x1a) addr:0x020fb240
func_ov003_020fb2e8 kind:function(thumb,size=0x88) addr:0x020fb25c
+1 -1
View File
@@ -1,5 +1,5 @@
func_ov005_02100ae0 kind:function(arm,size=0x9c) addr:0x02100a60
func_ov005_02100b7c kind:function(arm,size=0x74) addr:0x02100afc
_ZN18UnkStruct_027e0d3819func_ov005_02100b7cEi kind:function(arm,size=0x74) addr:0x02100afc
func_ov005_02100bf0 kind:function(arm,size=0xc0) addr:0x02100b70
func_ov005_02100cb0 kind:function(arm,size=0x110) addr:0x02100c30
func_ov005_02100dc0 kind:function(arm,size=0x4c) addr:0x02100d40
+1 -1
View File
@@ -39,7 +39,7 @@ from:0x02100e78 kind:arm_call to:0x02007ad8 module:main
from:0x02100e90 kind:arm_call to:0x02007ad8 module:main
from:0x02100eb8 kind:arm_call_thumb to:0x0200b944 module:main
from:0x02100ec4 kind:arm_call_thumb to:0x0200b954 module:main
from:0x02100ed4 kind:load to:0x020575d4 module:main
from:0x02100ed4 kind:load to:0x020575cc add:8 module:main
from:0x02100ed8 kind:load to:0x02102948 module:overlay(7)
from:0x02100edc kind:load to:0x0210297c module:overlay(7)
from:0x02100ee0 kind:load to:0x0210296c module:overlay(7)
+1 -1
View File
@@ -10,7 +10,7 @@ from:0x02112c70 kind:arm_call_thumb to:0x02031e18 module:main
from:0x02112c98 kind:arm_call_thumb to:0x02027ab4 module:main
from:0x02112cc4 kind:arm_call_thumb to:0x02027ab4 module:main
from:0x02112ccc kind:arm_call_thumb to:0x02016fcc module:main
from:0x02112cdc kind:load to:0x020575d4 module:main
from:0x02112cdc kind:load to:0x020575cc add:8 module:main
from:0x02112ce0 kind:load to:0x02113ac4 module:overlay(8)
from:0x02112ce4 kind:load to:0x02113a80 module:overlay(8)
from:0x02112ce8 kind:load to:0x02113a84 module:overlay(8)
@@ -7,3 +7,4 @@
src/09_Adventure/Game/GameModeAdventure.cpp:
.text start:0x02112ba0 end:0x0211324c
.data start:0x0211e600 end:0x0211e66c
+8 -8
View File
@@ -1,8 +1,8 @@
_ZN17GameModeAdventure6CreateEi kind:function(thumb,size=0x20) addr:0x02112ba0
_ZN17GameModeAdventureC1Ei kind:function(thumb,size=0x128) addr:0x02112bc0
_Z19func_ov009_02112d68v kind:function(arm,size=0x4) addr:0x02112ce8
_ZN21UnkStruct_020f2978_00D1Ev kind:function(arm,size=0x4) addr:0x02112ce8
_ZN17GameModeAdventureD0Ev kind:function(thumb,size=0x88) addr:0x02112cec
_ZN17GameModeAdventureD2Ev kind:function(thumb,size=0x84) addr:0x02112d74
_ZN17GameModeAdventureD1Ev kind:function(thumb,size=0x84) addr:0x02112d74
_ZN17GameModeAdventure8vfunc_08Ei kind:function(arm,size=0x17c) addr:0x02112df8
_ZN17GameModeAdventure8vfunc_0cEPt kind:function(arm,size=0xc8) addr:0x02112f74
_ZN17GameModeAdventure8vfunc_10EPt kind:function(arm,size=0xe0) addr:0x0211303c
@@ -22,9 +22,9 @@ func_ov009_0211364c kind:function(thumb,size=0x2) addr:0x021135cc
func_ov009_02113650 kind:function(arm,size=0x1c) addr:0x021135d0
func_ov009_0211366c kind:function(arm,size=0x2c) addr:0x021135ec
func_ov009_02113698 kind:function(arm,size=0x2c) addr:0x02113618
func_ov009_021136c4 kind:function(arm,size=0x24) addr:0x02113644
func_ov009_021136e8 kind:function(arm,size=0x24) addr:0x02113668
func_ov009_0211370c kind:function(arm,size=0x20) addr:0x0211368c
_ZN23UnkStruct_020fadf4_Base19func_ov009_021136c4Ev kind:function(arm,size=0x24) addr:0x02113644
_ZN18UnkStruct_0211ac0c19func_ov009_021136e8Ev kind:function(arm,size=0x24) addr:0x02113668
_ZN23UnkStruct_020fadf4_Base19func_ov009_0211370cEv kind:function(arm,size=0x20) addr:0x0211368c
func_ov009_0211372c kind:function(arm,size=0x11c) addr:0x021136ac
func_ov009_02113848 kind:function(thumb,size=0x20) addr:0x021137c8
func_ov009_02113868 kind:function(thumb,size=0x94) addr:0x021137e8
@@ -345,12 +345,12 @@ func_ov009_0211a880 kind:function(arm,size=0x2c) addr:0x0211a800
func_ov009_0211a8ac kind:function(arm,size=0xdc) addr:0x0211a82c
func_ov009_0211a988 kind:function(arm,size=0x24) addr:0x0211a908
func_ov009_0211a9ac kind:function(thumb,size=0x88) addr:0x0211a92c
func_ov009_0211aa34 kind:function(thumb,size=0x60) addr:0x0211a9b4
_ZN18UnkStruct_0211a9acD1Ev kind:function(thumb,size=0x60) addr:0x0211a9b4
func_ov009_0211aa94 kind:function(arm,size=0xf8) addr:0x0211aa14
func_ov009_0211ab8c kind:function(arm,size=0x3c) addr:0x0211ab0c
func_ov009_0211abc8 kind:function(arm,size=0x44) addr:0x0211ab48
func_ov009_0211ac0c kind:function(thumb,size=0x20) addr:0x0211ab8c
func_ov009_0211ac2c kind:function(thumb,size=0x2a) addr:0x0211abac
_ZN18UnkStruct_0211ac0c19func_ov009_0211ac2cEv kind:function(thumb,size=0x2a) addr:0x0211abac
func_ov009_0211ac58 kind:function(thumb,size=0x90) addr:0x0211abd8
func_ov009_0211ace8 kind:function(thumb,size=0x10) addr:0x0211ac68
func_ov009_0211acf8 kind:function(thumb,size=0xa0) addr:0x0211ac78
@@ -608,7 +608,7 @@ data_ov009_0211e690 kind:data(any) addr:0x0211e610
data_ov009_0211e694 kind:data(any) addr:0x0211e614
data_ov009_0211e698 kind:data(any) addr:0x0211e618
data_ov009_0211e69c kind:data(any) addr:0x0211e61c
data_ov009_0211e6c8 kind:data(any) addr:0x0211e648
_ZTV17GameModeAdventure kind:data(any) addr:0x0211e648
data_ov009_0211e6ec kind:data(any) addr:0x0211e66c
data_ov009_0211e6f0 kind:data(any) addr:0x0211e670
data_ov009_0211e6f4 kind:data(any) addr:0x0211e674
+1 -1
View File
@@ -16,7 +16,7 @@ from:0x02112c7c kind:thumb_call_arm to:0x02032a70 module:main
from:0x02112c80 kind:thumb_call_arm to:0x020329ac module:main
from:0x02112c90 kind:thumb_call_arm to:0x02032a70 module:main
from:0x02112c96 kind:thumb_call_arm to:0x020d86b8 module:overlay(0)
from:0x02112ca0 kind:load to:0x020575d4 module:main
from:0x02112ca0 kind:load to:0x020575cc add:8 module:main
from:0x02112ca4 kind:load to:0x0211e9e8 module:overlay(10)
from:0x02112ca8 kind:load to:0x027e0618 module:dtcm
from:0x02112cac kind:load to:0x027e0ce0 module:dtcm
+1 -1
View File
@@ -6309,7 +6309,7 @@ from:0x0212b91c kind:thumb_call to:0x0211bfc8 module:overlay(11)
from:0x0212b920 kind:thumb_call_arm to:0x0200c20c module:main
from:0x0212b92c kind:thumb_call_arm to:0x0200ee38 module:main
from:0x0212b932 kind:thumb_call_arm to:0x0200ef98 module:main
from:0x0212b93c kind:load to:0x020575d4 module:main
from:0x0212b93c kind:load to:0x020575cc add:8 module:main
from:0x0212b940 kind:load to:0x02130768 module:overlay(11)
from:0x0212b944 kind:load to:0x027e0ce0 module:dtcm
from:0x0212b94c kind:load to:0x027e05f4 module:dtcm
+1 -1
View File
@@ -272,7 +272,7 @@ from:0x0211528c kind:arm_call to:0x020f7fcc module:overlay(1)
from:0x021152ac kind:arm_call to:0x020f7ed4 module:overlay(1)
from:0x021152c0 kind:arm_call to:0x020f4fc4 module:overlay(1)
from:0x021152d8 kind:arm_call to:0x02115780 module:overlay(13)
from:0x021152f0 kind:load to:0x020575d4 module:main
from:0x021152f0 kind:load to:0x020575cc add:8 module:main
from:0x021152f4 kind:load to:0x02116140 module:overlay(13)
from:0x021152f8 kind:load to:0x02115338 module:overlay(13)
from:0x021152fc kind:load to:0x02115358 module:overlay(13)
+3 -3
View File
@@ -1353,8 +1353,8 @@ func_0202bc10 kind:function(arm,size=0x28) addr:0x0202bbf8
func_0202bc38 kind:function(arm,size=0x320) addr:0x0202bc20
func_0202bf58 kind:function(arm,size=0x68) addr:0x0202bf40
func_0202bfc0 kind:function(arm,size=0xe8) addr:0x0202bfa8
_ZN8GameModeD0Ev kind:function(thumb,size=0x2) addr:0x0202c090
_ZN8GameModeD2Ev kind:function(thumb,size=0xc) addr:0x0202c094
_ZN8GameModeD1Ev kind:function(thumb,size=0x2) addr:0x0202c090
_ZN8GameModeD0Ev kind:function(thumb,size=0xc) addr:0x0202c094
_ZN8GameMode13func_0202c0b8Ev kind:function(thumb,size=0x2) addr:0x0202c0a0
_ZN8GameMode8vfunc_0cEPt kind:function(thumb,size=0x2) addr:0x0202c0a4
_ZN8GameMode8vfunc_10EPt kind:function(thumb,size=0x2) addr:0x0202c0a8
@@ -2645,7 +2645,7 @@ data_02057610 kind:data(any) addr:0x020575b0
data_02057618 kind:data(any) addr:0x020575b8
data_02057620 kind:data(any) addr:0x020575c0
data_02057628 kind:data(any) addr:0x020575c8
data_02057634 kind:data(any) addr:0x020575d4
_ZTV8GameMode kind:data(any) addr:0x020575cc
data_02057650 kind:data(any) addr:0x020575f0
data_0205765c kind:data(any) addr:0x020575fc
gBuildDate kind:data(any) addr:0x02057604
+45 -12
View File
@@ -1,20 +1,51 @@
#pragma once
#include "Save/AdventureFlags.hpp"
#include "global.h"
#include "nds/math.h"
#include "types.h"
struct UnkStruct_027e0d38_UnkC {
/* 00 */ unk32 mUnk_00;
s32 func_ov000_020a5e9c(void);
};
struct UnkStruct_027e0d38_Unk28 {
/* 00 */ unk8 mUnk_00[0x34];
/* 34 */ bool mUnk_34;
/* 35 */ unk8 mUnk_35[0x27];
/* 5c */ unk32 mUnk_5c[3];
/* 68 */
/* 000 */ unk32 *mUnk_00;
/* 004 */ unk32 mUnk_04;
/* 008 */ unk32 mUnk_08;
/* 00C */ unk32 mUnk_0c;
/* 010 */ unk32 mUnk_10;
/* 014 */ unk32 mUnk_14;
/* 018 */ unk32 mUnk_18;
/* 01C */ UnkStruct_027e0d38_UnkC mUnk_1c;
/* 020 */ unk32 mUnk_20;
/* 024 */ unk32 mUnk_24;
/* 028 */ unk32 mUnk_28;
/* 02C */ unk8 mUnk_2c;
/* 02D */ unk8 mUnk_2d;
/* 02E */ u8 mUnk_2e;
/* 02F */ unk8 mUnk_2f;
/* 030 */ unk32 mUnk_30;
/* 034 */ bool mUnk_34;
/* 035 */ unk8 mUnk_35;
/* 036 */ unk16 mUnk_36;
/* 038 */ Vec3p mUnk_38;
/* 044 */ UnkStruct_027e0d38_UnkC mUnk_44;
/* 048 */ unk8 mUnk_48[0x50 - 0x48];
/* 050 */ unk8 mUnk_50;
/* 051 */ unk8 mUnk_51;
/* 052 */ unk8 mUnk_52;
/* 053 */ unk8 mUnk_53;
/* 054 */ unk8 mUnk_54;
/* 055 */ unk8 mUnk_55;
/* 056 */ u8 mUnk_56;
/* 057 */ unk8 mUnk_57;
/* 058 */ unk32 mUnk_58;
/* 05c */ UnkStruct_02082348_04 mUnk_5c;
/* 070 */ FlagsUnk2 mUnk_70;
/* 088 */ unk8 pad1[0x9A - 0x88];
/* 09a */ u8 mUnk_9a;
/* 09b */ u8 mUnk_9b;
/* 09c */ unk32 mUnk_9c;
/* 0a0 */ Vec3p mUnk_a0;
/* 0ac */ unk32 mUnk_ac;
/* 110 */
};
struct UnkStruct_027e0d38 {
@@ -23,7 +54,7 @@ struct UnkStruct_027e0d38 {
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0c */ UnkStruct_027e0d38_UnkC mUnk_0c;
/* 10 */ unk32 mUnk_10;
/* 10 */ unk32 mUnk_10; // `UnkStruct_02082348_04`?
/* 14 */ unk32 mUnk_14;
/* 18 */ unk32 mUnk_18;
/* 1c */ unk16 mUnk_1c;
@@ -39,6 +70,8 @@ struct UnkStruct_027e0d38 {
s32 func_ov000_02078b40();
unk8 func_ov000_02078b64();
bool func_ov000_02078b88();
void func_ov004_02100bcc();
unk32 func_ov005_02100b7c(unk32 param_1);
};
extern UnkStruct_027e0d38 *data_027e0d38;
+1 -1
View File
@@ -21,7 +21,7 @@ public:
/* 0fe */ unk16 mUnk_0fe;
/* 100 */ unk8 mUnk_100;
/* 101 */ s8 mUnk_101;
/* 102 */ unk8 mUnk_102;
/* 102 */ bool mUnk_102;
/* 103 */ u8 mUnk_103;
/* 104 */
+15 -3
View File
@@ -5,10 +5,22 @@
#include "System/SysNew.hpp"
typedef unk32 GameModeId;
enum GameModeId_ {
GameModeId_Load = 0,
GameModeId_StartupScreen = 1,
GameModeId_Adventure = 2,
GameModeId_FileSelect = 3,
GameModeId_WFCSetup = 4,
GameModeId_DownloadPlay = 5,
GameModeId_Battle = 6,
GameModeId_Contact = 7
};
class GameMode : public SysObject {
public:
/* 000 (vtable) */
/* 004 */ unk32 mUnk_000;
/* 004 */ GameModeId mModeId;
/* 008 */
/* 00 */ virtual ~GameMode();
@@ -20,8 +32,8 @@ public:
/* 1c */
inline GameMode() {}
inline GameMode(unk32 param1) :
mUnk_000(param1) {}
inline GameMode(GameModeId modeId) :
mModeId(modeId) {}
void func_0202c0b8();
};
+92 -2
View File
@@ -4,13 +4,103 @@
#include "types.h"
#include "Game/GameModePlay.hpp"
#include "Render/FadeControl.hpp"
#include "System/SysNew.hpp"
#include "Unknown/UnkStruct_02037750.hpp"
class UnkStruct_020fadf4_Base : public SysObject {
public:
unk32 func_ov009_021136c4();
unk32 func_ov009_0211370c();
};
class UnkStruct_0211a9ac : public SysObject {
public:
/* 000 */ unk8 pad[0x354];
/* 354 */
UnkStruct_0211a9ac();
~UnkStruct_0211a9ac();
void func_ov002_020f50c0(unk32 param_1);
void func_ov002_020f5390(u16 *param_1);
void func_ov002_020f5504(u16 *param_1);
void func_ov002_020f56c8(u16 *param_1);
};
// ov003
class UnkStruct_020fadf4 : public UnkStruct_020fadf4_Base {
public:
/* 00 */ unk8 pad[0x4c];
/* 4c */
UnkStruct_020fadf4();
UnkStruct_020fadf4(UnkStruct_0211a9ac *param_1);
~UnkStruct_020fadf4();
void func_ov009_021135d0();
void func_ov003_020fae64();
};
class UnkStruct_020f2978_00 {
public:
/* 000 (vtable) */
/* 04 */ unk8 pad[0x14];
/* 18 */
/* 00 */ virtual void vfunc_00(); // func_ov000_020d0670
/* 04 */ virtual void vfunc_04(); // func_ov000_020cff1c
/* 08 */ virtual void vfunc_08(); // func_ov000_020d0000
/* 0c */ virtual void vfunc_0c(); // func_ov000_020d0048
/* 10 */ virtual void vfunc_10(); // func_ov000_020cff8c
UnkStruct_020f2978_00();
~UnkStruct_020f2978_00();
};
// ov003
class UnkStruct_020f2978 : public SysObject {
public:
/* 00 */ UnkStruct_020f2978_00 mUnk_00[2];
/* 30 */ UnkStruct_02037750 mUnk_30;
/* 50 */ unk8 pad2[0x88 - 0x50];
/* 88 */
UnkStruct_020f2978();
unk32 func_ov003_020f2a2c();
unk32 func_ov003_020f2acc();
};
class UnkStruct_0211ac0c : public UnkStruct_020fadf4_Base {
public:
/* 00 */ unk32 mUnk_00;
/* 04 */ FadeControl mUnk_04;
/* 28 */ unk8 pad[0x44 - 0x28];
/* 44 */
UnkStruct_0211ac0c();
UnkStruct_0211ac0c(UnkStruct_020f2978 *param_1);
void func_ov009_0211372c();
void func_ov003_020fb26c();
unk32 func_ov009_021136e8();
unk32 func_ov003_020fb148();
unk32 func_ov003_020fb258(u16 *param_1);
void func_ov009_0211ac2c();
void func_ov003_020faf90();
void func_ov003_020fb010();
};
class GameModeAdventure : public GameModePlay {
public:
/* 000 (base) */
/* 008 */ unk8 mUnk_008[0x10];
/* 008 */ UnkStruct_0211a9ac *mUnk_008;
/* 00c */ UnkStruct_020fadf4 *mUnk_00c;
/* 010 */ UnkStruct_020f2978 *mUnk_010;
/* 014 */ UnkStruct_0211ac0c *mUnk_014;
/* 018 */
public:
/* 00 */ virtual ~GameModeAdventure() override;
/* 08 */ virtual unk32 vfunc_08(unk32 param1) override;
/* 0c */ virtual void vfunc_0c(u16 *param1) override;
+7 -1
View File
@@ -120,11 +120,13 @@ extern struct TouchControl gTouchControl;
class UnkClass_027e0e28 {
public:
unk32 func_ov000_0207bc48();
void func_ov000_0207bc9c();
};
extern UnkClass_027e0e28 *data_027e0e28;
extern u8 data_027e0c54;
extern unk32 *data_ov009_0211f5b4;
extern "C" unk32 func_ov003_020f3f94(unk32 *);
extern "C" void func_ov003_020f4060(unk32 **);
extern unk32 *data_02057ed4;
// see Actor.cpp
@@ -161,8 +163,12 @@ public:
void func_ov003_020f4874(void);
void func_ov003_020f4760(u8, unk32);
unk32 func_ov003_020f4960(void);
void func_ov003_020f4a5c(void);
void func_ov003_02f46f8(void);
void func_ov003_020f4678(unk32);
};
extern UnkClass_027e1054 data_027e1054;
extern UnkClass_027e1054 *data_027e1054;
class UnkClass_ov000_020eec9c {
public:
+25 -11
View File
@@ -57,21 +57,35 @@ enum AdventureFlag_ {
/* 0x187 */ AdventureFlag_COUNT = 391,
};
struct FlagsUnk2 {
struct UnkStruct_027e0d38_UnkC {
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0c */ unk32 mUnk_0c;
/* 10 */ unk16 mUnk_10;
/* 12 */ unk8 mUnk_12;
/* 13 */ unk8 mUnk_13;
/* 14 */ unk8 mUnk_14;
/* 15 */ unk8 mUnk_15;
/* 16 */ unk8 mUnk_16;
/* 17 */ unk8 mUnk_17;
s32 func_ov000_020a5e9c(void);
};
class UnkStruct_02082348_04 {
public:
/* 00 */ unk32 mUnk_00;
/* 00 */ unk32 mUnk_04;
/* 00 */ unk32 mUnk_08;
/* 0c */ unk16 mUnk_0c;
/* 0e */ u8 mUnk_0e;
/* 0f */ u8 mUnk_0f;
/* 10 */ u8 mUnk_10;
/* 11 */ u8 mUnk_11;
/* 12 */ u8 mUnk_12;
/* 13 */ u8 mUnk_13;
/* 14 */
};
struct FlagsUnk2 {
/* 00 */ UnkStruct_027e0d38_UnkC mUnk_00;
/* 04 */ UnkStruct_02082348_04 mUnk_04;
/* 18 */
~FlagsUnk2();
void func_ov000_02078bf0(FlagsUnk2 *param_2);
void func_ov004_02100ae0();
};
struct FlagsUnk {
+2
View File
@@ -15,6 +15,8 @@ void SysDelete(void *ptr);
void *func_0202e99c(s32 length);
void *func_0202e9bc(s32 length);
extern u32 *data_027e0ce0[];
class SysObject {
public:
static void *operator new(unsigned long length, u32 *id, u32 idLength);
+36 -50
View File
@@ -84,20 +84,6 @@ struct astruct_16 {
/* 2c */
}; // What is this struct?
// This might be FlagsUnk2
struct UnkStruct_02082348 {
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0c */ unk32 mUnk_0c;
/* 10 */ unk16 mUnk_10;
/* 12 */ u8 mUnk_12;
/* 13 */ u8 mUnk_13;
/* 14 */ u8 mUnk_14;
/* 15 */ u8 mUnk_15;
/* 16 */
};
struct UnkStruct_027e077c {
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
@@ -203,17 +189,17 @@ ARM void MapManager::func_ov00_020820fc(s32 param_2, unk32 param_3, unk32 param_
ARM void MapManager::func_ov00_0208210c(unk32 param_2, unk32 *param_3) {
void *pvVar3;
unk32 uVar2;
UnkStruct_02082348 local_40[2];
FlagsUnk2 local_40[2];
local_40[1].mUnk_00 = 0x47;
local_40[1].mUnk_04 = 0;
local_40[1].mUnk_08 = 0;
local_40[1].mUnk_0c = -2;
local_40[1].mUnk_10 = 0;
local_40[1].mUnk_12 = -1;
local_40[1].mUnk_13 = 0;
local_40[1].mUnk_14 = 0;
local_40[1].mUnk_15 = 0;
local_40[1].mUnk_00.mUnk_00 = 0x47;
local_40[1].mUnk_04.mUnk_00 = 0;
local_40[1].mUnk_04.mUnk_04 = 0;
local_40[1].mUnk_04.mUnk_08 = -2;
local_40[1].mUnk_04.mUnk_0c = 0;
local_40[1].mUnk_04.mUnk_0e = -1;
local_40[1].mUnk_04.mUnk_0f = 0;
local_40[1].mUnk_04.mUnk_10 = 0;
local_40[1].mUnk_04.mUnk_11 = 0;
if (param_2 != 0) {
*param_3 = 0xb;
*(unk8 *) (param_3 + 1) = 2;
@@ -221,8 +207,8 @@ ARM void MapManager::func_ov00_0208210c(unk32 param_2, unk32 *param_3) {
} else {
this->func_ov00_02082348((unk32 *) &local_40[1]);
*param_3 = ((UnkStruct_027e0d38_UnkC *) &local_40[1])->func_ov000_020a5e9c();
*(unk8 *) (param_3 + 1) = local_40[1].mUnk_12;
*(u8 *) ((int) param_3 + 5) = local_40[1].mUnk_13;
*(unk8 *) (param_3 + 1) = local_40[1].mUnk_04.mUnk_0e;
*(u8 *) ((int) param_3 + 5) = local_40[1].mUnk_04.mUnk_0f;
}
param_3[2] = ((UnkStruct_027e0d38_UnkC *) ((unk32) (data_027e0d38->mUnk_28) + 0x1c))->func_ov000_020a5e9c();
*(u8 *) (param_3 + 4) = *(u8 *) ((int) data_027e0d38->mUnk_28 + 0x2e);
@@ -239,19 +225,19 @@ ARM void MapManager::func_ov00_0208210c(unk32 param_2, unk32 *param_3) {
param_3[0xb] = *(unk32 *) ((int) pvVar3 + 0x64);
*(unk16 *) ((int) param_3 + 0x16) = *(unk16 *) ((int) data_027e0d38->mUnk_28 + 0x68);
pvVar3 = data_027e0d38->mUnk_28;
local_40[0].mUnk_00 = *(unk32 *) ((int) pvVar3 + 0x70);
local_40[0].mUnk_04 = *(unk32 *) ((int) pvVar3 + 0x74);
local_40[0].mUnk_08 = *(unk32 *) ((int) pvVar3 + 0x78);
local_40[0].mUnk_0c = *(unk32 *) ((int) pvVar3 + 0x7c);
local_40[0].mUnk_10 = *(unk16 *) ((int) pvVar3 + 0x80);
local_40[0].mUnk_12 = *(u8 *) ((int) pvVar3 + 0x82);
local_40[0].mUnk_13 = *(u8 *) ((int) pvVar3 + 0x83);
local_40[0].mUnk_14 = *(u8 *) ((int) pvVar3 + 0x84);
local_40[0].mUnk_15 = *(u8 *) ((int) pvVar3 + 0x85);
local_40[0].mUnk_00.mUnk_00 = *(unk32 *) ((int) pvVar3 + 0x70);
local_40[0].mUnk_04.mUnk_00 = *(unk32 *) ((int) pvVar3 + 0x74);
local_40[0].mUnk_04.mUnk_04 = *(unk32 *) ((int) pvVar3 + 0x78);
local_40[0].mUnk_04.mUnk_08 = *(unk32 *) ((int) pvVar3 + 0x7c);
local_40[0].mUnk_04.mUnk_0c = *(unk16 *) ((int) pvVar3 + 0x80);
local_40[0].mUnk_04.mUnk_0e = *(u8 *) ((int) pvVar3 + 0x82);
local_40[0].mUnk_04.mUnk_0f = *(u8 *) ((int) pvVar3 + 0x83);
local_40[0].mUnk_04.mUnk_10 = *(u8 *) ((int) pvVar3 + 0x84);
local_40[0].mUnk_04.mUnk_11 = *(u8 *) ((int) pvVar3 + 0x85);
uVar2 = ((UnkStruct_027e0d38_UnkC *) &local_40[0])->func_ov000_020a5e9c();
param_3[0x70] = uVar2;
*(u8 *) ((int) param_3 + 0x1be) = local_40[0].mUnk_12;
*(u8 *) ((int) param_3 + 0x1bf) = local_40[0].mUnk_13;
*(u8 *) ((int) param_3 + 0x1be) = local_40[0].mUnk_04.mUnk_0e;
*(u8 *) ((int) param_3 + 0x1bf) = local_40[0].mUnk_04.mUnk_0f;
func_ov000_02096324(data_027e0f70, param_3);
func_ov000_0209d6e8(data_027e0f7c, param_3);
if (this->mCourse->mType != CourseType_TempleOfTheOceanKing) {
@@ -268,16 +254,16 @@ ARM void MapManager::func_ov00_0208230c(s32 *param_2) {
}
ARM void MapManager::func_ov00_02082348(unk32 *param_2) {
UnkStruct_02082348 unkStruct;
unkStruct.mUnk_00 = 0x47;
unkStruct.mUnk_04 = 0;
unkStruct.mUnk_08 = 0;
unkStruct.mUnk_0c = -2;
unkStruct.mUnk_10 = 0;
unkStruct.mUnk_12 = -1;
unkStruct.mUnk_13 = 0;
unkStruct.mUnk_14 = 0;
unkStruct.mUnk_15 = 0;
FlagsUnk2 unkStruct;
unkStruct.mUnk_00.mUnk_00 = 0x47;
unkStruct.mUnk_04.mUnk_00 = 0;
unkStruct.mUnk_04.mUnk_04 = 0;
unkStruct.mUnk_04.mUnk_08 = -2;
unkStruct.mUnk_04.mUnk_0c = 0;
unkStruct.mUnk_04.mUnk_0e = -1;
unkStruct.mUnk_04.mUnk_0f = 0;
unkStruct.mUnk_04.mUnk_10 = 0;
unkStruct.mUnk_04.mUnk_11 = 0;
this->func_ov00_0208230c((s32 *) &unkStruct);
func_ov000_02078bf0((s32 *) &unkStruct, param_2);
}
@@ -766,9 +752,9 @@ ARM void MapManager::func_ov00_0208315c(s32 *param_2, s32 *param_3) {
if (*piVar4 == -2 || piVar4 == piVar2) {
pvVar3 = data_027e0d38->mUnk_28;
local_2c.x = pvVar3->mUnk_5c[0];
local_2c.y = pvVar3->mUnk_5c[1];
local_2c.z = pvVar3->mUnk_5c[2];
local_2c.x = pvVar3->mUnk_5c.mUnk_00;
local_2c.y = pvVar3->mUnk_5c.mUnk_04;
local_2c.z = pvVar3->mUnk_5c.mUnk_08;
this->func_ov00_02083298((u32) * (u8 *) (*(s32 *) data_027e0d38->mUnk_28 + 0x56), &local_2c, param_2, param_3);
return;
}
+262 -12
View File
@@ -1,13 +1,263 @@
#include "Game/GameModeAdventure.hpp"
#include "global.h"
GameModeAdventure *GameModeAdventure::Create(unk32 param1) {}
GameModeAdventure::GameModeAdventure(unk32 param1) :
GameModePlay(param1) {}
void func_ov009_02112d68() {}
GameModeAdventure::~GameModeAdventure() {}
unk32 GameModeAdventure::vfunc_08(unk32 param1) {}
void GameModeAdventure::vfunc_0c(u16 *param1) {}
void GameModeAdventure::vfunc_10(u16 *param1) {}
void GameModeAdventure::vfunc_14(u16 *param1) {}
void GameModeAdventure::vfunc_1c() {}
void GameModeAdventure::vfunc_20() {}
#include "DTCM/UnkStruct_027e0d38.hpp"
#include "Game/Game.hpp"
#include "Game/GameModeAdventure.hpp"
#include "Message/MsgProc.hpp"
#include "Save/AdventureFlags.hpp"
#include "System/OverlayManager.hpp"
extern unk32 data_027e1044;
extern unk32 data_ov000_020eab04;
extern unk32 data_ov000_020eab08;
extern unk8 data_ov000_020eab09;
extern "C" void *func_ov003_020f4510();
extern "C" void func_ov000_02078b0c();
extern "C" void func_ov003_020f4534();
extern UnkStruct_0211ac0c data_ov009_0211f5dc;
extern "C" void func_ov029_0216dcf4(unk32 *, unk32);
extern unk32 data_ov022_0217a4ac;
extern "C" void func_ov015_0217707c(unk32 *);
extern unk32 data_027e1060;
extern "C" void func_ov005_0210274c(void *, unk32, u16 *);
extern "C" void func_ov005_021026f8(void *, unk32, u16 *);
extern "C" void func_ov005_02102828(void *, unk32, u16 *);
extern "C" void func_ov003_020f40c0(unk32 **, u16 *);
extern "C" void func_ov003_020f40e8(unk32 **, u16 *);
THUMB GameModeAdventure *GameModeAdventure::Create(unk32 param1) {
return new(data_027e0ce0[1], 4) GameModeAdventure(param1);
}
// non-matching
THUMB GameModeAdventure::GameModeAdventure(unk32 param1) :
GameModePlay(param1) {
FlagsUnk2 local_28;
this->mUnk_008 = new(data_027e0ce0[1], 4) UnkStruct_0211a9ac();
this->mUnk_00c = new(data_027e0ce0[1], 4) UnkStruct_020fadf4(this->mUnk_008);
this->mUnk_010 = new(data_027e0ce0[1], 4) UnkStruct_020f2978();
this->mUnk_014 = new(data_027e0ce0[1], 4) UnkStruct_0211ac0c(this->mUnk_010);
data_027e1044 = param1;
func_ov003_020f4510();
local_28.mUnk_00.mUnk_00 = 0x47;
local_28.mUnk_04.mUnk_00 = 0;
local_28.mUnk_04.mUnk_04 = 0;
local_28.mUnk_04.mUnk_08 = -2;
local_28.mUnk_04.mUnk_0c = 0;
local_28.mUnk_04.mUnk_0e = -1;
local_28.mUnk_04.mUnk_0f = 0;
local_28.mUnk_04.mUnk_10 = 0;
local_28.mUnk_04.mUnk_11 = 0;
if (gGame.mUnk_102 != 0) {
AdventureFlags::Get_FlagsUnk_00(0x17, &local_28);
} else {
if (gGame.mPrevModeId == 1) {
AdventureFlags::Get_FlagsUnk_00(0x17, &local_28);
} else if (data_ov000_020eab04 == 0x47) {
AdventureFlags::Get_FlagsUnk_00(0x01, &local_28);
} else {
unk32 index = AdventureFlags::func_ov00_02097ecc();
if (index != 0x21) {
AdventureFlags::Get_FlagsUnk_00(index, &local_28);
} else {
local_28.mUnk_00.mUnk_00 = data_ov000_020eab04;
local_28.mUnk_04.mUnk_0e = data_ov000_020eab08;
local_28.mUnk_04.mUnk_0f = data_ov000_020eab09;
}
}
}
local_28.func_ov004_02100ae0();
data_027e0d38->func_ov004_02100bcc();
gOverlayManager.LoadIfNotLoaded(OverlayIndex_2, OverlayId_05);
}
ARM UnkStruct_020f2978_00::~UnkStruct_020f2978_00() {}
// non-matching
THUMB GameModeAdventure::~GameModeAdventure() {
func_ov000_02078b0c();
func_ov003_020f4534();
data_027e1044 = 0;
if (this->mUnk_014 != NULL) {
this->mUnk_014->mUnk_04.Unregister();
delete this->mUnk_014;
}
delete this->mUnk_010;
delete this->mUnk_00c;
delete this->mUnk_008;
}
// non-matching
ARM unk32 GameModeAdventure::vfunc_08(unk32 param1) {
unk32 uVar2 = 0;
if (data_027e0d38->mUnk_14 == 1) {
uVar2 = data_027e0d38->func_ov005_02100b7c(param1);
} else {
if (data_027e0d38->mUnk_0c.func_ov000_020a5e9c() == 2) {
func_ov015_0217707c(&data_027e1060);
uVar2 = data_027e0d38->func_ov005_02100b7c(param1);
} else {
if (this->mUnk_00c->func_ov009_0211370c() == 0) {
if (this->mUnk_00c->func_ov009_021136c4() != 0) {
this->mUnk_008->func_ov002_020f50c0(param1);
} else {
if (data_ov009_0211f5dc.func_ov009_021136e8() != 0) {
if (this->mUnk_014->func_ov009_0211370c() == 0) {
if (this->mUnk_014->func_ov009_021136c4() != 0) {
uVar2 = this->mUnk_010->func_ov003_020f2a2c();
} else {
uVar2 = data_027e0d38->func_ov005_02100b7c(param1);
if (data_027e0d38->mUnk_14 == 1) {
return uVar2;
}
if (gOverlayManager.mLoadedOverlays[OverlayIndex_6] == OverlayId_29) {
func_ov029_0216dcf4(&data_ov022_0217a4ac, param1);
} else {
func_ov003_020f4060(&data_ov009_0211f5b4);
}
}
}
}
data_027e1054->func_ov003_020f4960();
}
data_ov009_0211f5dc.func_ov003_020fb148();
}
this->mUnk_00c->func_ov009_021135d0();
this->mUnk_014->func_ov009_0211372c();
data_027e0e28->func_ov000_0207bc9c();
}
}
return uVar2;
}
ARM void GameModeAdventure::vfunc_0c(u16 *param1) {
if (data_027e0d38->mUnk_14 == 1) {
func_ov005_021026f8(data_027e0d38->mUnk_24, data_027e0d38->mUnk_04, param1);
return;
}
if (this->mUnk_00c->func_ov009_0211370c() != 0) {
return;
}
if (this->mUnk_00c->func_ov009_021136c4() != 0) {
this->mUnk_008->func_ov002_020f5390(param1);
return;
}
if (data_ov009_0211f5dc.func_ov009_021136e8() == 0) {
return;
}
if (this->mUnk_014->func_ov009_021136e8() == 0) {
return;
}
func_ov005_021026f8(data_027e0d38->mUnk_24, data_027e0d38->mUnk_04, param1);
func_ov003_020f40c0(&data_ov009_0211f5b4, param1);
data_027e1054->func_ov003_020f4a5c();
}
ARM void GameModeAdventure::vfunc_10(u16 *param1) {
if (data_027e0d38->mUnk_14 == 1) {
func_ov005_0210274c(data_027e0d38->mUnk_24, data_027e0d38->mUnk_04, param1);
return;
}
if (this->mUnk_00c->func_ov009_0211370c() != 0) {
return;
}
if (this->mUnk_00c->func_ov009_021136c4() != 0) {
this->mUnk_008->func_ov002_020f5504(param1);
return;
}
if (this->mUnk_014->func_ov009_0211370c() != 0) {
return;
}
if (this->mUnk_014->func_ov009_021136c4() != 0) {
this->mUnk_010->func_ov003_020f2acc();
return;
}
func_ov005_0210274c(data_027e0d38->mUnk_24, data_027e0d38->mUnk_04, param1);
func_ov003_020f40e8(&data_ov009_0211f5b4, param1);
if (data_ov009_0211f5dc.func_ov009_021136c4() == 0) {
return;
}
data_ov009_0211f5dc.func_ov003_020fb258(param1);
}
ARM void GameModeAdventure::vfunc_14(u16 *param1) {
if (data_027e0d38->mUnk_14 == 1) {
func_ov005_02102828(data_027e0d38->mUnk_24, data_027e0d38->mUnk_04, param1);
return;
}
if (this->mUnk_00c->func_ov009_0211370c() != 0) {
return;
}
if (this->mUnk_00c->func_ov009_021136c4() != 0) {
this->mUnk_008->func_ov002_020f56c8(param1);
return;
}
if (data_ov009_0211f5dc.func_ov009_0211370c() != 0) {
return;
}
if (data_ov009_0211f5dc.func_ov009_021136c4() != 0) {
data_ov009_0211f5dc.func_ov003_020fb26c();
return;
}
if (this->mUnk_014->func_ov009_021136e8() == 0) {
return;
}
func_ov005_02102828(data_027e0d38->mUnk_24, data_027e0d38->mUnk_04, param1);
}
THUMB void GameModeAdventure::vfunc_1c() {
this->GameModePlay::vfunc_1c();
if (data_027e0d38->mUnk_14 != 1) {
this->mUnk_00c->func_ov003_020fae64();
data_ov009_0211f5dc.func_ov003_020faf90();
this->mUnk_014->func_ov009_0211ac2c();
data_027e1054->func_ov003_020f4678(1);
}
}
THUMB void GameModeAdventure::vfunc_20() {
if (data_027e0d38->mUnk_14 != 1) {
data_027e1054->func_ov003_02f46f8();
data_ov009_0211f5dc.func_ov003_020fb010();
}
this->GameModePlay::vfunc_20();
}
+6 -6
View File
@@ -1,8 +1,8 @@
#include "Game/GameMode.hpp"
GameMode::~GameMode() {}
void GameMode::func_0202c0b8() {}
void GameMode::vfunc_0c(u16 *param1) {}
void GameMode::vfunc_10(u16 *param1) {}
void GameMode::vfunc_14(u16 *param1) {}
void GameMode::vfunc_18() {}
THUMB GameMode::~GameMode() {}
THUMB void GameMode::func_0202c0b8() {}
THUMB void GameMode::vfunc_0c(u16 *param1) {}
THUMB void GameMode::vfunc_10(u16 *param1) {}
THUMB void GameMode::vfunc_14(u16 *param1) {}
THUMB void GameMode::vfunc_18() {}
+2 -2
View File
@@ -961,7 +961,7 @@ ARM bool UnkStruct_020397f8::func_0203c1a0() {
pVar1 = (s8 *) data_027e103c->func_ov000_020cef9c();
iVar3 = data_027e0f7c.func_ov000_0209d90c(pVar1[0x24F], 0);
data_027e1054.func_ov003_020f4760(iVar3[1], 0);
data_027e1054->func_ov003_020f4760(iVar3[1], 0);
data_ov000_020eec9c.func_ov000_020d77e4(6);
data_027e103c->func_ov000_020cfb58();
@@ -977,7 +977,7 @@ ARM bool UnkStruct_020397f8::func_0203c1a0() {
}
ARM bool UnkStruct_020397f8::func_0203c25c(UnkStruct_020397f8 *param1) {
if (data_027e1054.mUnk_00->mUnk_00->mUnk_95 != 0) {
if (data_027e1054->mUnk_00->mUnk_00->mUnk_95 != 0) {
return false;
}