diff --git a/.gitignore b/.gitignore index e2b78543..f4611bbf 100644 --- a/.gitignore +++ b/.gitignore @@ -11,4 +11,4 @@ objdiff.json /dsd.exe /dsd.pdb build.ninja -.ninja_log +.ninja_log* diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 63208160..f25bc17d 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -79,9 +79,9 @@ func_ov000_0207896c kind:function(thumb,size=0x128) addr:0x207896c func_ov000_02078a94 kind:function(thumb,size=0x40) addr:0x2078a94 func_ov000_02078ad4 kind:function(thumb,size=0x38) addr:0x2078ad4 func_ov000_02078b0c kind:function(thumb,size=0x34) addr:0x2078b0c -func_ov000_02078b40 kind:function(arm,size=0x24) addr:0x2078b40 -func_ov000_02078b64 kind:function(arm,size=0x24) addr:0x2078b64 -func_ov000_02078b88 kind:function(arm,size=0x3c) addr:0x2078b88 +_ZN18UnkStruct_027e0d3819func_ov000_02078b40Ev kind:function(arm,size=0x24) addr:0x2078b40 +_ZN18UnkStruct_027e0d3819func_ov000_02078b64Ev kind:function(arm,size=0x24) addr:0x2078b64 +_ZN18UnkStruct_027e0d3819func_ov000_02078b88Ev kind:function(arm,size=0x3c) addr:0x2078b88 func_ov000_02078bc4 kind:function(thumb,size=0x2c) addr:0x2078bc4 func_ov000_02078bf0 kind:function(thumb,size=0x11c) addr:0x2078bf0 func_ov000_02078d0c kind:function(thumb,size=0x24) addr:0x2078d0c @@ -141,7 +141,7 @@ func_ov000_02079ed8 kind:function(thumb,size=0x24) addr:0x2079ed8 func_ov000_02079efc kind:function(thumb,size=0x40) addr:0x2079efc func_ov000_02079f3c kind:function(thumb,size=0x20) addr:0x2079f3c func_ov000_02079f5c kind:function(thumb,size=0xa0) addr:0x2079f5c -func_ov000_02079ffc kind:function(thumb,size=0x3c) addr:0x2079ffc +LoadNsbTexturedModel kind:function(thumb,size=0x3c) addr:0x2079ffc func_ov000_0207a038 kind:function(thumb,size=0x104) addr:0x207a038 _ZN19Actor_UnkStruct_012C1Ev kind:function(arm,size=0x4c) addr:0x207a13c _ZN19Actor_UnkStruct_0a4C1Eiiii kind:function(thumb,size=0x1c) addr:0x207a188 @@ -152,7 +152,7 @@ func_ov000_0207a2d8 kind:function(arm,size=0x10) addr:0x207a2d8 func_ov000_0207a2e8 kind:function(thumb,size=0x14) addr:0x207a2e8 func_ov000_0207a2fc kind:function(arm,size=0x4) addr:0x207a2fc func_ov000_0207a300 kind:function(thumb,size=0x8c) addr:0x207a300 -func_ov000_0207a38c kind:function(thumb,size=0x58) addr:0x207a38c +_ZN15SaveItemManagerC1Ev kind:function(thumb,size=0x58) addr:0x207a38c func_ov000_0207a3e4 kind:function(thumb,size=0x34) addr:0x207a3e4 func_ov000_0207a418 kind:function(thumb,size=0xbc) addr:0x207a418 func_ov000_0207a4d4 kind:function(thumb,size=0x1c) addr:0x207a4d4 @@ -428,26 +428,26 @@ _ZN11TriggerBase8vfunc_10Ev kind:function(arm,size=0x8) addr:0x2080ddc _ZN7MapBase18func_ov00_02080de4Ev kind:function(arm,size=0x4) addr:0x2080de4 _ZN7MapBase18func_ov00_02080de8Ei kind:function(arm,size=0xf4) addr:0x2080de8 _ZN7MapBase18func_ov00_02080edcEv kind:function(arm,size=0x44) addr:0x2080edc -func_ov000_02080f20 kind:function(arm,size=0x44) addr:0x2080f20 -func_ov000_02080f64 kind:function(arm,size=0x30) addr:0x2080f64 -func_ov000_02080f94 kind:function(arm,size=0x64) addr:0x2080f94 -func_ov000_02080ff8 kind:function(arm,size=0x48) addr:0x2080ff8 -func_ov000_02081040 kind:function(arm,size=0x30) addr:0x2081040 -func_ov000_02081070 kind:function(arm,size=0x48) addr:0x2081070 -func_ov000_020810b8 kind:function(arm,size=0x30) addr:0x20810b8 -func_ov000_020810e8 kind:function(arm,size=0x48) addr:0x20810e8 -func_ov000_02081130 kind:function(arm,size=0x30) addr:0x2081130 -func_ov000_02081160 kind:function(arm,size=0x15c) addr:0x2081160 -func_ov000_020812bc kind:function(arm,size=0xcc) addr:0x20812bc -func_ov000_02081388 kind:function(arm,size=0x10) addr:0x2081388 -func_ov000_02081398 kind:function(arm,size=0x18c) addr:0x2081398 -func_ov000_02081524 kind:function(arm,size=0xd0) addr:0x2081524 -func_ov000_020815f4 kind:function(arm,size=0x10) addr:0x20815f4 -func_ov000_02081604 kind:function(arm,size=0x1d8) addr:0x2081604 -func_ov000_020817dc kind:function(arm,size=0xd0) addr:0x20817dc -func_ov000_020818ac kind:function(arm,size=0x10) addr:0x20818ac -func_ov000_020818bc kind:function(arm,size=0x1d4) addr:0x20818bc -func_ov000_02081a90 kind:function(arm,size=0xd0) addr:0x2081a90 +_ZNSt6vectorIP11TriggerBaseED1Ev kind:function(arm,size=0x44) addr:0x2080f20 +_ZNSt6vectorIP11TriggerBaseE9push_backERS1_ kind:function(arm,size=0x30) addr:0x2080f64 +_ZNSt6vectorIP11TriggerBaseE5eraseEPS1_S3_ kind:function(arm,size=0x64) addr:0x2080f94 +_ZNSt6vectorI8EntranceED1Ev kind:function(arm,size=0x48) addr:0x2080ff8 +_ZNSt6vectorI8EntranceE9push_backERS0_ kind:function(arm,size=0x30) addr:0x2081040 +_ZNSt6vectorI4ExitED1Ev kind:function(arm,size=0x48) addr:0x2081070 +_ZNSt6vectorI4ExitE9push_backERS0_ kind:function(arm,size=0x30) addr:0x20810b8 +_ZNSt6vectorI15CameraViewpointED1Ev kind:function(arm,size=0x48) addr:0x20810e8 +_ZNSt6vectorI15CameraViewpointE9push_backERS0_ kind:function(arm,size=0x30) addr:0x2081130 +_ZNSt6vectorIP11TriggerBaseE11append_backEiPS1_ kind:function(arm,size=0x15c) addr:0x2081160 +_ZNSt6vectorIP11TriggerBaseE16get_new_capacityEi kind:function(arm,size=0xcc) addr:0x20812bc +_ZNSt6vectorI8EntranceE13decrease_sizeEi kind:function(arm,size=0x10) addr:0x2081388 +_ZNSt6vectorI8EntranceE11append_backEiPS0_ kind:function(arm,size=0x18c) addr:0x2081398 +_ZNSt6vectorI8EntranceE16get_new_capacityEi kind:function(arm,size=0xd0) addr:0x2081524 +_ZNSt6vectorI4ExitE13decrease_sizeEi kind:function(arm,size=0x10) addr:0x20815f4 +_ZNSt6vectorI4ExitE11append_backEiPS0_ kind:function(arm,size=0x1d8) addr:0x2081604 +_ZNSt6vectorI4ExitE16get_new_capacityEi kind:function(arm,size=0xd0) addr:0x20817dc +_ZNSt6vectorI15CameraViewpointE13decrease_sizeEi kind:function(arm,size=0x10) addr:0x20818ac +_ZNSt6vectorI15CameraViewpointE11append_backEiPS0_ kind:function(arm,size=0x1d4) addr:0x20818bc +_ZNSt6vectorI15CameraViewpointE16get_new_capacityEi kind:function(arm,size=0xd0) addr:0x2081a90 func_ov000_02081b60 kind:function(arm,size=0x1c) addr:0x2081b60 func_ov000_02081b7c kind:function(arm,size=0x1c) addr:0x2081b7c func_ov000_02081b98 kind:function(arm,size=0x1c) addr:0x2081b98 @@ -620,7 +620,7 @@ _ZN10MapManager18func_ov00_02083f44EP5Vec3p kind:function(arm,size=0x3c) addr:0x _ZN10MapManager16MapData_vfunc_6cEv kind:function(arm,size=0x18) addr:0x2083f80 _ZN10MapManager16MapData_vfunc_70Ev kind:function(arm,size=0x18) addr:0x2083f98 _ZN10MapManager18func_ov00_02083fb0EPjPS_P5Vec3p kind:function(arm,size=0x74) addr:0x2083fb0 -_ZN10MapManager18func_ov00_02084024EiP4AABB kind:function(arm,size=0x64) addr:0x2084024 +_ZN10MapManager18GetTileWorldBoundsEP5Vec2bP4AABB kind:function(arm,size=0x64) addr:0x2084024 _ZN10MapManager16MapData_vfunc_54Ev kind:function(arm,size=0x18) addr:0x2084088 _ZN10MapManager18func_ov00_020840a0Ecci kind:function(arm,size=0x24) addr:0x20840a0 _ZN10MapManager16MapData_vfunc_78Ev kind:function(arm,size=0x18) addr:0x20840c4 @@ -909,19 +909,19 @@ func_ov000_0208e420 kind:function(arm,size=0xd4) addr:0x208e420 func_ov000_0208e4f4 kind:function(arm,size=0x4) addr:0x208e4f4 func_ov000_0208e4f8 kind:function(arm,size=0x1c) addr:0x208e4f8 func_ov000_0208e514 kind:function(arm,size=0x16c) addr:0x208e514 -func_ov000_0208e680 kind:function(arm,size=0x30) addr:0x208e680 -func_ov000_0208e6b0 kind:function(arm,size=0x40) addr:0x208e6b0 -func_ov000_0208e6f0 kind:function(arm,size=0x14) addr:0x208e6f0 -func_ov000_0208e704 kind:function(arm,size=0x14) addr:0x208e704 -func_ov000_0208e718 kind:function(arm,size=0x14) addr:0x208e718 +_ZN4AABB19func_ov000_0208e680Ev kind:function(arm,size=0x30) addr:0x208e680 +_ZN4AABB9GetCenterEP5Vec3p kind:function(arm,size=0x40) addr:0x208e6b0 +_ZN4AABB8GetSizeXEv kind:function(arm,size=0x14) addr:0x208e6f0 +_ZN4AABB8GetSizeZEv kind:function(arm,size=0x14) addr:0x208e704 +_ZN4AABB8GetSizeYEv kind:function(arm,size=0x14) addr:0x208e718 _ZN4AABB8ContainsEP5Vec3p kind:function(arm,size=0x78) addr:0x208e72c _ZN4AABB12ContainsInXZEP5Vec3p kind:function(arm,size=0x44) addr:0x208e7a4 -func_ov000_0208e7e8 kind:function(arm,size=0x44) addr:0x208e7e8 -func_ov000_0208e82c kind:function(arm,size=0x50) addr:0x208e82c -func_ov000_0208e87c kind:function(arm,size=0x4f8) addr:0x208e87c -func_ov000_0208ed74 kind:function(arm,size=0x64) addr:0x208ed74 -func_ov000_0208edd8 kind:function(arm,size=0x28) addr:0x208edd8 -func_ov000_0208ee00 kind:function(arm,size=0x4c) addr:0x208ee00 +_ZN4AABB12ContainsInXYEP5Vec3p kind:function(arm,size=0x44) addr:0x208e7e8 +_ZN4AABB14IntersectsCubeEP4Cube kind:function(arm,size=0x50) addr:0x208e82c +_ZN4AABB19func_ov000_0208e87cEP4CubeP5Vec3pPj kind:function(arm,size=0x4f8) addr:0x208e87c +_ZN4AABB11GrowToPointEP5Vec3p kind:function(arm,size=0x64) addr:0x208ed74 +_ZN4AABB4GrowEP5Vec3p kind:function(arm,size=0x28) addr:0x208edd8 +_ZN4AABB10GrowScalarEi kind:function(arm,size=0x4c) addr:0x208ee00 func_ov000_0208ee4c kind:function(arm,size=0x44) addr:0x208ee4c func_ov000_0208ee90 kind:function(arm,size=0x1a0) addr:0x208ee90 func_ov000_0208f030 kind:function(arm,size=0x170) addr:0x208f030 diff --git a/config/eur/arm9/symbols.txt b/config/eur/arm9/symbols.txt index f25e3eee..83011477 100644 --- a/config/eur/arm9/symbols.txt +++ b/config/eur/arm9/symbols.txt @@ -2264,8 +2264,8 @@ func_02043464 kind:function(arm,size=0x14) addr:0x2043464 func_02043478 kind:function(arm,size=0x1c) addr:0x2043478 func_02043494 kind:function(arm,size=0x88) addr:0x2043494 func_0204351c kind:function(arm,size=0x78) addr:0x204351c -func_02043594 kind:function(arm,size=0x20) addr:0x2043594 -func_020435b4 kind:function(arm,size=0x4c) addr:0x20435b4 +memcpy kind:function(arm,size=0x20) addr:0x2043594 +memmove kind:function(arm,size=0x4c) addr:0x20435b4 memset kind:function(arm,size=0x14) addr:0x2043600 memchr kind:function(arm,size=0x2c) addr:0x2043614 memrchr kind:function(arm,size=0x2c) addr:0x2043640 @@ -2401,7 +2401,7 @@ func_0204f544 kind:function(arm,size=0x14) addr:0x204f544 func_0204f558 kind:function(arm,size=0xbc) addr:0x204f558 ForEach kind:function(arm,size=0xb0) addr:0x204f614 func_0204f6c4 kind:function(arm,size=0x90) addr:0x204f6c4 -ForEachReversed kind:function(arm,size=0x5c) addr:0x204f754 +__cxa_vec_cleanup kind:function(arm,size=0x5c) addr:0x204f754 func_0204f7b0 kind:function(arm,size=0x34) addr:0x204f7b0 func_0204f7e4 kind:function(arm,size=0x4) addr:0x204f7e4 func_0204f7e8 kind:function(arm,size=0x30) addr:0x204f7e8 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index b8a5116b..30c0205c 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -79,9 +79,9 @@ func_ov000_0207896c kind:function(thumb,size=0x128) addr:0x207890c func_ov000_02078a94 kind:function(thumb,size=0x40) addr:0x2078a34 func_ov000_02078ad4 kind:function(thumb,size=0x38) addr:0x2078a74 func_ov000_02078b0c kind:function(thumb,size=0x34) addr:0x2078aac -func_ov000_02078b40 kind:function(arm,size=0x24) addr:0x2078ae0 -func_ov000_02078b64 kind:function(arm,size=0x24) addr:0x2078b04 -func_ov000_02078b88 kind:function(arm,size=0x3c) addr:0x2078b28 +_ZN18UnkStruct_027e0d3819func_ov000_02078b40Ev kind:function(arm,size=0x24) addr:0x2078ae0 +_ZN18UnkStruct_027e0d3819func_ov000_02078b64Ev kind:function(arm,size=0x24) addr:0x2078b04 +_ZN18UnkStruct_027e0d3819func_ov000_02078b88Ev kind:function(arm,size=0x3c) addr:0x2078b28 func_ov000_02078bc4 kind:function(thumb,size=0x2c) addr:0x2078b64 func_ov000_02078bf0 kind:function(thumb,size=0x11c) addr:0x2078b90 func_ov000_02078d0c kind:function(thumb,size=0x24) addr:0x2078cac @@ -141,7 +141,7 @@ func_ov000_02079ed8 kind:function(thumb,size=0x24) addr:0x2079e78 func_ov000_02079efc kind:function(thumb,size=0x40) addr:0x2079e9c func_ov000_02079f3c kind:function(thumb,size=0x20) addr:0x2079edc func_ov000_02079f5c kind:function(thumb,size=0xa0) addr:0x2079efc -func_ov000_02079ffc kind:function(thumb,size=0x3c) addr:0x2079f9c +LoadNsbTexturedModel kind:function(thumb,size=0x3c) addr:0x2079f9c func_ov000_0207a038 kind:function(thumb,size=0x104) addr:0x2079fd8 _ZN19Actor_UnkStruct_012C1Ev kind:function(arm,size=0x4c) addr:0x207a0dc _ZN19Actor_UnkStruct_0a4C1Eiiii kind:function(thumb,size=0x1c) addr:0x207a128 @@ -152,7 +152,7 @@ func_ov000_0207a2d8 kind:function(arm,size=0x10) addr:0x207a278 func_ov000_0207a2e8 kind:function(thumb,size=0x14) addr:0x207a288 func_ov000_0207a2fc kind:function(arm,size=0x4) addr:0x207a29c func_ov000_0207a300 kind:function(thumb,size=0x8c) addr:0x207a2a0 -func_ov000_0207a38c kind:function(thumb,size=0x58) addr:0x207a32c +_ZN15SaveItemManagerC1Ev kind:function(thumb,size=0x58) addr:0x207a32c func_ov000_0207a3e4 kind:function(thumb,size=0x34) addr:0x207a384 func_ov000_0207a418 kind:function(thumb,size=0xbc) addr:0x207a3b8 func_ov000_0207a4d4 kind:function(thumb,size=0x1c) addr:0x207a474 @@ -428,26 +428,26 @@ _ZN11TriggerBase8vfunc_10Ev kind:function(arm,size=0x8) addr:0x2080d7c _ZN7MapBase18func_ov00_02080de4Ev kind:function(arm,size=0x4) addr:0x2080d84 _ZN7MapBase18func_ov00_02080de8Ei kind:function(arm,size=0xf4) addr:0x2080d88 _ZN7MapBase18func_ov00_02080edcEv kind:function(arm,size=0x44) addr:0x2080e7c -func_ov000_02080f20 kind:function(arm,size=0x44) addr:0x2080ec0 -func_ov000_02080f64 kind:function(arm,size=0x30) addr:0x2080f04 -func_ov000_02080f94 kind:function(arm,size=0x64) addr:0x2080f34 -func_ov000_02080ff8 kind:function(arm,size=0x48) addr:0x2080f98 -func_ov000_02081040 kind:function(arm,size=0x30) addr:0x2080fe0 -func_ov000_02081070 kind:function(arm,size=0x48) addr:0x2081010 -func_ov000_020810b8 kind:function(arm,size=0x30) addr:0x2081058 -func_ov000_020810e8 kind:function(arm,size=0x48) addr:0x2081088 -func_ov000_02081130 kind:function(arm,size=0x30) addr:0x20810d0 -func_ov000_02081160 kind:function(arm,size=0x15c) addr:0x2081100 -func_ov000_020812bc kind:function(arm,size=0xcc) addr:0x208125c -func_ov000_02081388 kind:function(arm,size=0x10) addr:0x2081328 -func_ov000_02081398 kind:function(arm,size=0x18c) addr:0x2081338 -func_ov000_02081524 kind:function(arm,size=0xd0) addr:0x20814c4 -func_ov000_020815f4 kind:function(arm,size=0x10) addr:0x2081594 -func_ov000_02081604 kind:function(arm,size=0x1d8) addr:0x20815a4 -func_ov000_020817dc kind:function(arm,size=0xd0) addr:0x208177c -func_ov000_020818ac kind:function(arm,size=0x10) addr:0x208184c -func_ov000_020818bc kind:function(arm,size=0x1d4) addr:0x208185c -func_ov000_02081a90 kind:function(arm,size=0xd0) addr:0x2081a30 +_ZNSt6vectorIP11TriggerBaseED1Ev kind:function(arm,size=0x44) addr:0x2080ec0 +_ZNSt6vectorIP11TriggerBaseE9push_backERS1_ kind:function(arm,size=0x30) addr:0x2080f04 +_ZNSt6vectorIP11TriggerBaseE5eraseEPS1_S3_ kind:function(arm,size=0x64) addr:0x2080f34 +_ZNSt6vectorI8EntranceED1Ev kind:function(arm,size=0x48) addr:0x2080f98 +_ZNSt6vectorI8EntranceE9push_backERS0_ kind:function(arm,size=0x30) addr:0x2080fe0 +_ZNSt6vectorI4ExitED1Ev kind:function(arm,size=0x48) addr:0x2081010 +_ZNSt6vectorI4ExitE9push_backERS0_ kind:function(arm,size=0x30) addr:0x2081058 +_ZNSt6vectorI15CameraViewpointED1Ev kind:function(arm,size=0x48) addr:0x2081088 +_ZNSt6vectorI15CameraViewpointE9push_backERS0_ kind:function(arm,size=0x30) addr:0x20810d0 +_ZNSt6vectorIP11TriggerBaseE11append_backEiPS1_ kind:function(arm,size=0x15c) addr:0x2081100 +_ZNSt6vectorIP11TriggerBaseE16get_new_capacityEi kind:function(arm,size=0xcc) addr:0x208125c +_ZNSt6vectorI8EntranceE13decrease_sizeEi kind:function(arm,size=0x10) addr:0x2081328 +_ZNSt6vectorI8EntranceE11append_backEiPS0_ kind:function(arm,size=0x18c) addr:0x2081338 +_ZNSt6vectorI8EntranceE16get_new_capacityEi kind:function(arm,size=0xd0) addr:0x20814c4 +_ZNSt6vectorI4ExitE13decrease_sizeEi kind:function(arm,size=0x10) addr:0x2081594 +_ZNSt6vectorI4ExitE11append_backEiPS0_ kind:function(arm,size=0x1d8) addr:0x20815a4 +_ZNSt6vectorI4ExitE16get_new_capacityEi kind:function(arm,size=0xd0) addr:0x208177c +_ZNSt6vectorI15CameraViewpointE13decrease_sizeEi kind:function(arm,size=0x10) addr:0x208184c +_ZNSt6vectorI15CameraViewpointE11append_backEiPS0_ kind:function(arm,size=0x1d4) addr:0x208185c +_ZNSt6vectorI15CameraViewpointE16get_new_capacityEi kind:function(arm,size=0xd0) addr:0x2081a30 func_ov000_02081b60 kind:function(arm,size=0x1c) addr:0x2081b00 func_ov000_02081b7c kind:function(arm,size=0x1c) addr:0x2081b1c func_ov000_02081b98 kind:function(arm,size=0x1c) addr:0x2081b38 @@ -620,7 +620,7 @@ _ZN10MapManager18func_ov00_02083f44EP5Vec3p kind:function(arm,size=0x3c) addr:0x _ZN10MapManager16MapData_vfunc_6cEv kind:function(arm,size=0x18) addr:0x2083f20 _ZN10MapManager16MapData_vfunc_70Ev kind:function(arm,size=0x18) addr:0x2083f38 _ZN10MapManager18func_ov00_02083fb0EPjPS_P5Vec3p kind:function(arm,size=0x74) addr:0x2083f50 -_ZN10MapManager18func_ov00_02084024EiP4AABB kind:function(arm,size=0x64) addr:0x2083fc4 +_ZN10MapManager18GetTileWorldBoundsEP5Vec2bP4AABB kind:function(arm,size=0x64) addr:0x2083fc4 _ZN10MapManager16MapData_vfunc_54Ev kind:function(arm,size=0x18) addr:0x2084028 _ZN10MapManager18func_ov00_020840a0Ecci kind:function(arm,size=0x24) addr:0x2084040 _ZN10MapManager16MapData_vfunc_78Ev kind:function(arm,size=0x18) addr:0x2084064 @@ -909,19 +909,19 @@ func_ov000_0208e420 kind:function(arm,size=0xd4) addr:0x208e3c0 func_ov000_0208e4f4 kind:function(arm,size=0x4) addr:0x208e494 func_ov000_0208e4f8 kind:function(arm,size=0x1c) addr:0x208e498 func_ov000_0208e514 kind:function(arm,size=0x16c) addr:0x208e4b4 -func_ov000_0208e680 kind:function(arm,size=0x30) addr:0x208e620 -func_ov000_0208e6b0 kind:function(arm,size=0x40) addr:0x208e650 -func_ov000_0208e6f0 kind:function(arm,size=0x14) addr:0x208e690 -func_ov000_0208e704 kind:function(arm,size=0x14) addr:0x208e6a4 -func_ov000_0208e718 kind:function(arm,size=0x14) addr:0x208e6b8 +_ZN4AABB19func_ov000_0208e680Ev kind:function(arm,size=0x30) addr:0x208e620 +_ZN4AABB9GetCenterEP5Vec3p kind:function(arm,size=0x40) addr:0x208e650 +_ZN4AABB8GetSizeXEv kind:function(arm,size=0x14) addr:0x208e690 +_ZN4AABB8GetSizeZEv kind:function(arm,size=0x14) addr:0x208e6a4 +_ZN4AABB8GetSizeYEv kind:function(arm,size=0x14) addr:0x208e6b8 _ZN4AABB8ContainsEP5Vec3p kind:function(arm,size=0x78) addr:0x208e6cc _ZN4AABB12ContainsInXZEP5Vec3p kind:function(arm,size=0x44) addr:0x208e744 -func_ov000_0208e7e8 kind:function(arm,size=0x44) addr:0x208e788 -func_ov000_0208e82c kind:function(arm,size=0x50) addr:0x208e7cc -func_ov000_0208e87c kind:function(arm,size=0x4f8) addr:0x208e81c -func_ov000_0208ed74 kind:function(arm,size=0x64) addr:0x208ed14 -func_ov000_0208edd8 kind:function(arm,size=0x28) addr:0x208ed78 -func_ov000_0208ee00 kind:function(arm,size=0x4c) addr:0x208eda0 +_ZN4AABB12ContainsInXYEP5Vec3p kind:function(arm,size=0x44) addr:0x208e788 +_ZN4AABB14IntersectsCubeEP4Cube kind:function(arm,size=0x50) addr:0x208e7cc +_ZN4AABB19func_ov000_0208e87cEP4CubeP5Vec3pPj kind:function(arm,size=0x4f8) addr:0x208e81c +_ZN4AABB11GrowToPointEP5Vec3p kind:function(arm,size=0x64) addr:0x208ed14 +_ZN4AABB4GrowEP5Vec3p kind:function(arm,size=0x28) addr:0x208ed78 +_ZN4AABB10GrowScalarEi kind:function(arm,size=0x4c) addr:0x208eda0 func_ov000_0208ee4c kind:function(arm,size=0x44) addr:0x208edec func_ov000_0208ee90 kind:function(arm,size=0x1a0) addr:0x208ee30 func_ov000_0208f030 kind:function(arm,size=0x170) addr:0x208efd0 diff --git a/config/usa/arm9/symbols.txt b/config/usa/arm9/symbols.txt index cd7b2422..f48835e1 100644 --- a/config/usa/arm9/symbols.txt +++ b/config/usa/arm9/symbols.txt @@ -2264,8 +2264,8 @@ func_02043464 kind:function(arm,size=0x14) addr:0x2043420 func_02043478 kind:function(arm,size=0x1c) addr:0x2043434 func_02043494 kind:function(arm,size=0x88) addr:0x2043450 func_0204351c kind:function(arm,size=0x78) addr:0x20434d8 -func_02043594 kind:function(arm,size=0x20) addr:0x2043550 -func_020435b4 kind:function(arm,size=0x4c) addr:0x2043570 +memcpy kind:function(arm,size=0x20) addr:0x2043550 +memmove kind:function(arm,size=0x4c) addr:0x2043570 memset kind:function(arm,size=0x14) addr:0x20435bc memchr kind:function(arm,size=0x2c) addr:0x20435d0 memrchr kind:function(arm,size=0x2c) addr:0x20435fc @@ -2401,7 +2401,7 @@ func_0204f544 kind:function(arm,size=0x14) addr:0x204f500 func_0204f558 kind:function(arm,size=0xbc) addr:0x204f514 ForEach kind:function(arm,size=0xb0) addr:0x204f5d0 func_0204f6c4 kind:function(arm,size=0x90) addr:0x204f680 -ForEachReversed kind:function(arm,size=0x5c) addr:0x204f710 +__cxa_vec_cleanup kind:function(arm,size=0x5c) addr:0x204f710 func_0204f7b0 kind:function(arm,size=0x34) addr:0x204f76c func_0204f7e4 kind:function(arm,size=0x4) addr:0x204f7a0 func_0204f7e8 kind:function(arm,size=0x30) addr:0x204f7a4 diff --git a/include/DTCM/UnkStruct_027e0d38.hpp b/include/DTCM/UnkStruct_027e0d38.hpp new file mode 100644 index 00000000..a36af0fe --- /dev/null +++ b/include/DTCM/UnkStruct_027e0d38.hpp @@ -0,0 +1,30 @@ +#pragma once + +#include "global.h" +#include "types.h" + +struct UnkStruct_027e0d38 { + /* 00 */ unk8 mUnk_00; + /* 01 */ unk8 mUnk_01[3]; // padding? + /* 04 */ unk32 mUnk_04; + /* 08 */ unk32 mUnk_08; + /* 0c */ unk32 mUnk_0c; + /* 10 */ unk32 mUnk_10; + /* 14 */ unk32 mUnk_14; + /* 18 */ unk32 mUnk_18; + /* 1c */ unk16 mUnk_1c; + /* 1e */ unk8 mUnk_1e; + /* 1f */ unk8 mUnk_1f; + /* 20 */ unk8 mUnk_20; + /* 21 */ unk8 mUnk_21; + /* 22 */ unk8 mUnk_22[2]; // padding? + /* 24 */ void *mUnk_24; + /* 28 */ void *mUnk_28; + /* 2c */ + + unk32 func_ov000_02078b40(); + unk8 func_ov000_02078b64(); + bool func_ov000_02078b88(); +}; + +extern UnkStruct_027e0d38 *data_027e0d38; diff --git a/include/Item/Item.hpp b/include/Item/Item.hpp index 1b67ada3..4d70c9f1 100644 --- a/include/Item/Item.hpp +++ b/include/Item/Item.hpp @@ -2,6 +2,8 @@ #include "types.h" +#define MAX_POTIONS 2 + typedef s32 ItemFlag; enum ItemFlag_ { ItemFlag_None = -1, @@ -233,6 +235,77 @@ enum ItemId_ { /* 0x88 */ ItemId_Unk_136 = 136, }; +enum Gem { + Gem_Courage, + Gem_Power, + Gem_Wisdom, + Gem_COUNT, +}; + +typedef u32 ShipPart; +enum ShipPart_ { + ShipPart_Anchor, + ShipPart_Prow, + ShipPart_Hull, + ShipPart_Cannon, + ShipPart_Handrail, + ShipPart_Wheel, + ShipPart_Chimney, + ShipPart_Bridge, + ShipPart_COUNT, +}; + +typedef u32 ShipType; +enum ShipType_ { + ShipType_Linebeck, + ShipType_Bright, + ShipType_Iron, + ShipType_Stone, + ShipType_Vintage, + ShipType_Demon, + ShipType_Tropical, + ShipType_Dignified, + ShipType_Golden, + ShipType_COUNT, +}; + +typedef u32 ShipItem; +#define SHIP_ITEM(part, ship) (ShipPart_##part * ShipPart_COUNT + ShipType_##type) +#define ShipItem_COUNT (ShipPart_COUNT * ShipType_COUNT) + +typedef u32 Treasure; +enum Treasure_ { + Treasure_PinkCoral, + Treasure_WhitePearlLoop, + Treasure_DarkPearlLoop, + Treasure_ZoraScale, + Treasure_GoronAmber, + Treasure_RutoCrown, + Treasure_HelmarocPlume, + Treasure_RegalRing, + + Treasure_COUNT, +}; + +typedef u8 Potion; +enum Potion_ { + Potion_None, + Potion_Red, + Potion_Purple, + Potion_Yellow, + Potion_COUNT, +}; + +struct ItemFlags { + /* 00 */ u32 flags[CEIL_DIV(ItemFlag_COUNT, 32)]; + /* 10 */ +}; + +struct ShipPartPricesShown { + /* 0 */ u32 flags[CEIL_DIV(ShipItem_COUNT, 32)]; + /* c */ +}; + namespace Item { bool func_ov00_020ad020(ItemId item); bool func_ov00_020ad068(ItemId item); diff --git a/include/Item/ItemManager.hpp b/include/Item/ItemManager.hpp index 1fcabe31..813b0e0f 100644 --- a/include/Item/ItemManager.hpp +++ b/include/Item/ItemManager.hpp @@ -9,21 +9,16 @@ extern "C" { #include "types.h" #include "Actor/ActorNavi.hpp" -#include "DTCM/UnkStruct_027e0f78.hpp" #include "Item/Item.hpp" -#include "Map/MapManager.hpp" #include "Player/EquipItem.hpp" -#include "Player/HealthManager.hpp" #include "Render/ModelRender.hpp" -#include "Save/AdventureFlags.hpp" +#include "Save/SaveItemManager.hpp" #include "Sound/Sfx.hpp" -#include "System/OverlayManager.hpp" #include "System/SysNew.hpp" #define MAX_HOURGLASS_SECONDS 1500 // 25 minutes #define MAX_AMMO_UPGRADE 2 #define MAX_UNK_0BA 9 -#define MAX_POTIONS 2 typedef s32 FairyId; enum FairyId_ { @@ -34,98 +29,6 @@ enum FairyId_ { FairyId_COUNT = 3, }; -enum Gem { - Gem_Courage, - Gem_Power, - Gem_Wisdom, - Gem_COUNT, -}; - -typedef u32 ShipPart; -enum ShipPart_ { - ShipPart_Anchor, - ShipPart_Prow, - ShipPart_Hull, - ShipPart_Cannon, - ShipPart_Handrail, - ShipPart_Wheel, - ShipPart_Chimney, - ShipPart_Bridge, - ShipPart_COUNT, -}; - -typedef u32 ShipType; -enum ShipType_ { - ShipType_Linebeck, - ShipType_Bright, - ShipType_Iron, - ShipType_Stone, - ShipType_Vintage, - ShipType_Demon, - ShipType_Tropical, - ShipType_Dignified, - ShipType_Golden, - ShipType_COUNT, -}; - -typedef u32 ShipItem; -#define SHIP_ITEM(part, ship) (ShipPart_##part * ShipPart_COUNT + ShipType_##type) -#define ShipItem_COUNT (ShipPart_COUNT * ShipType_COUNT) - -typedef u32 Treasure; -enum Treasure_ { - Treasure_PinkCoral, - Treasure_WhitePearlLoop, - Treasure_DarkPearlLoop, - Treasure_ZoraScale, - Treasure_GoronAmber, - Treasure_RutoCrown, - Treasure_HelmarocPlume, - Treasure_RegalRing, - - Treasure_COUNT, -}; - -#define NUM_POTIONS 2 -typedef u8 Potion; -enum Potion_ { - Potion_None, - Potion_Red, - Potion_Purple, - Potion_Yellow, - Potion_COUNT, -}; - -struct ItemFlags { - /* 00 */ u32 flags[CEIL_DIV(ItemFlag_COUNT, 32)]; - /* 10 */ -}; - -struct ShipPartPricesShown { - /* 0 */ u32 flags[CEIL_DIV(ShipItem_COUNT, 32)]; - /* c */ -}; - -struct UnkStruct_027e0d38 { - /* 00 */ unk8 mUnk_00; - /* 01 */ unk8 mUnk_01[3]; // padding? - /* 04 */ unk32 mUnk_04; - /* 08 */ unk32 mUnk_08; - /* 0c */ unk32 mUnk_0c; - /* 10 */ unk32 mUnk_10; - /* 14 */ unk32 mUnk_14; - /* 18 */ unk32 mUnk_18; - /* 1c */ unk16 mUnk_1c; - /* 1e */ unk8 mUnk_1e; - /* 1f */ unk8 mUnk_1f; - /* 20 */ unk8 mUnk_20; - /* 21 */ unk8 mUnk_21; - /* 22 */ unk8 mUnk_22[2]; // padding? - /* 24 */ void *mUnk_24; - /* 28 */ void *mUnk_28; - /* 2c */ -}; - typedef u32 ItemModelId; enum ItemModelId_ { ItemModelId_OshusSword, // swA @@ -156,35 +59,6 @@ enum DungeonItemModelId_ { DungeonItemModelId_COUNT, }; -struct SaveItemManager { - /* 00 */ ItemFlags itemFlags; - /* 10 */ u32 salvagedTreasureFlags; - /* 14 */ ShipPartPricesShown shipPartPricesShown; - /* 20 */ u32 treasurePriceShownFlags[CEIL_DIV(Treasure_COUNT, 32)]; - /* 24 */ u8 equippedShipParts[ShipPart_COUNT]; - /* 2c */ s8 shipParts[ShipPart_COUNT][ShipType_COUNT]; - /* 74 */ s8 treasure[Treasure_COUNT]; - /* 7c */ unk8 unk_7c[4]; - /* 80 */ u16 hourglassSeconds; - /* 82 */ u16 unk_82[6]; - /* 8e */ u16 numRupees; - /* 90 */ unk8 unk_90; - /* 91 */ unk8 unk_91; - /* 92 */ unk8 unk_92; - /* 93 */ u8 numBombs; - /* 94 */ u8 numBombchus; - /* 95 */ u8 numArrows; - /* 96 */ s8 equippedItem; - /* 97 */ Potion potions[NUM_POTIONS]; - /* 99 */ u8 numGems[Gem_COUNT]; - /* 9c */ u8 quiverSize; - /* 9d */ u8 bombBagSize; - /* 9e */ u8 bombchuBagSize; - /* 9f */ u8 unk_9f[6]; - /* a5 */ u8 equippedFairy; - /* a6 */ -}; - class ItemManager : public SysObject { private: /* 000 */ ItemFlag mEquippedItem; diff --git a/include/Map/MapManager.hpp b/include/Map/MapManager.hpp index de53ebe9..0cfa7479 100644 --- a/include/Map/MapManager.hpp +++ b/include/Map/MapManager.hpp @@ -177,7 +177,7 @@ public: unk8 MapData_vfunc_6c(); unk8 MapData_vfunc_70(); static unk8 func_ov00_02083fb0(u32 *param_1, MapManager *param_2, Vec3p *param_3); - void func_ov00_02084024(unk32 param_2, AABB *param_3); + void GetTileWorldBounds(Vec2b *tile, AABB *tileBounds); unk8 MapData_vfunc_54(); unk8 func_ov00_020840a0(unk8 param_2, unk8 param_3, unk32 param_4); unk8 MapData_vfunc_78(); diff --git a/include/Physics/AABB.hpp b/include/Physics/AABB.hpp index 19ce9f38..25a7f34b 100644 --- a/include/Physics/AABB.hpp +++ b/include/Physics/AABB.hpp @@ -5,10 +5,23 @@ #include "nds/math.h" +#include "Physics/Cube.hpp" + struct AABB { Vec3p min; Vec3p max; + bool func_ov000_0208e680(); + void GetCenter(Vec3p *center); + q20 GetSizeX(); + q20 GetSizeZ(); + q20 GetSizeY(); bool Contains(Vec3p *vec); bool ContainsInXZ(Vec3p *vec); + bool ContainsInXY(Vec3p *vec); + bool IntersectsCube(Cube *cube); + bool func_ov000_0208e87c(Cube *cube, Vec3p *vec, u32 *out); + void GrowToPoint(Vec3p *point); + void Grow(Vec3p *dimensions); + void GrowScalar(q20 amount); }; diff --git a/include/Physics/Cube.hpp b/include/Physics/Cube.hpp new file mode 100644 index 00000000..b16ac97f --- /dev/null +++ b/include/Physics/Cube.hpp @@ -0,0 +1,11 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "nds/math.h" + +struct Cube { + Vec3p center; + q20 size; +}; diff --git a/include/Save/SaveItemManager.hpp b/include/Save/SaveItemManager.hpp new file mode 100644 index 00000000..0f0142f8 --- /dev/null +++ b/include/Save/SaveItemManager.hpp @@ -0,0 +1,37 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "../Item/Item.hpp" + +struct SaveItemManager { + /* 00 */ ItemFlags itemFlags; + /* 10 */ u32 salvagedTreasureFlags; + /* 14 */ ShipPartPricesShown shipPartPricesShown; + /* 20 */ u32 treasurePriceShownFlags[CEIL_DIV(Treasure_COUNT, 32)]; + /* 24 */ u8 equippedShipParts[ShipPart_COUNT]; + /* 2c */ s8 shipParts[ShipPart_COUNT][ShipType_COUNT]; + /* 74 */ s8 treasure[Treasure_COUNT]; + /* 7c */ unk8 unk_7c[4]; + /* 80 */ u16 hourglassSeconds; + /* 82 */ u16 unk_82[6]; + /* 8e */ u16 numRupees; + /* 90 */ unk8 unk_90; + /* 91 */ unk8 unk_91; + /* 92 */ unk8 unk_92; + /* 93 */ u8 numBombs; + /* 94 */ u8 numBombchus; + /* 95 */ u8 numArrows; + /* 96 */ s8 equippedItem; + /* 97 */ Potion potions[MAX_POTIONS]; + /* 99 */ u8 numGems[Gem_COUNT]; + /* 9c */ u8 quiverSize; + /* 9d */ u8 bombBagSize; + /* 9e */ u8 bombchuBagSize; + /* 9f */ u8 unk_9f[6]; + /* a5 */ u8 equippedFairy; + /* a6 */ + + SaveItemManager(); +}; diff --git a/include/global.h b/include/global.h index 617f672f..593c720b 100644 --- a/include/global.h +++ b/include/global.h @@ -1,8 +1,6 @@ #ifndef PH_GLOBAL_H #define PH_GLOBAL_H -#define NULL 0 - #define GET_FLAG(arr, pos) (((1 << ((pos) & 0x1f)) & (arr)[((u32) (pos)) >> 5]) != 0) #define SET_FLAG(arr, pos) ((arr)[((u32) (pos)) >> 5] |= 1 << ((pos) & 0x1f)) #define RESET_FLAG(arr, pos) ((arr)[((u32) (pos)) >> 5] &= ~(1 << ((pos) & 0x1f))) diff --git a/include/types.h b/include/types.h index 0dd5ecf5..03e8352f 100644 --- a/include/types.h +++ b/include/types.h @@ -1,6 +1,8 @@ #ifndef PH_TYPES_H #define PH_TYPES_H +#include + typedef unsigned long long u64; typedef unsigned int u32; typedef unsigned short u16; diff --git a/libs/c/include/stddef.h b/libs/c/include/stddef.h new file mode 100644 index 00000000..4986043a --- /dev/null +++ b/libs/c/include/stddef.h @@ -0,0 +1,8 @@ +#ifndef _C_STDDEF_H +#define _C_STDDEF_H + +#define NULL 0 + +typedef unsigned int size_t; + +#endif diff --git a/libs/c/include/string.h b/libs/c/include/string.h index 61fde219..bd27c855 100644 --- a/libs/c/include/string.h +++ b/libs/c/include/string.h @@ -1,8 +1,10 @@ #ifndef _C_STRING_H #define _C_STRING_H -typedef unsigned int size_t; +#include +void memcpy(void *dest, void *src, size_t count); +void memmove(void *dest, void *src, size_t count); void memset(void *dest, int ch, size_t count); void *memchr(const void *ptr, int ch, size_t count); void *memrchr(const void *ptr, int ch, size_t count); diff --git a/libs/cpp/include/cxxabi.h b/libs/cpp/include/cxxabi.h new file mode 100644 index 00000000..be49baba --- /dev/null +++ b/libs/cpp/include/cxxabi.h @@ -0,0 +1,11 @@ +#pragma once + +#include + +namespace __cxxabiv1 { + extern "C" { + typedef void (*__cxa_cdtor_type)(void *); + + void __cxa_vec_cleanup(void *array, size_t count, size_t elementSize, __cxa_cdtor_type dtor); + } +} // namespace __cxxabiv1 diff --git a/libs/cpp/include/vector b/libs/cpp/include/vector index 7d78e50c..37e7a4d8 100644 --- a/libs/cpp/include/vector +++ b/libs/cpp/include/vector @@ -1,10 +1,40 @@ #pragma once +#include + namespace std { template class vector { public: - T *elements; - int size; - int capacity; + T *mElements; + int mSize; + int mCapacity; + + ~vector() { + if (mElements != NULL) { + decrease_size(mSize); + delete mElements; + } + } + + void push_back(T &value) { + get_new_capacity(1); + append_back(1, &value); + } + + T *erase(T *first, T *last) { + if (first != last) { + int bytesToMove = (int) mElements + mSize * sizeof(T) - (int) last; + memmove(first, last, bytesToMove); + mSize -= (int) last - (int) first; + } + return first; + } + + private: + void decrease_size(int amount); + + int get_new_capacity(int growth); + + void append_back(int length, T *items); }; } // namespace std diff --git a/src/00_Core/DTCM/UnkStruct_027e0d38.cpp b/src/00_Core/DTCM/UnkStruct_027e0d38.cpp new file mode 100644 index 00000000..c9d66183 --- /dev/null +++ b/src/00_Core/DTCM/UnkStruct_027e0d38.cpp @@ -0,0 +1,5 @@ +#include "DTCM/UnkStruct_027e0d38.hpp" + +unk32 UnkStruct_027e0d38::func_ov000_02078b40() {} +unk8 UnkStruct_027e0d38::func_ov000_02078b64() {} +bool UnkStruct_027e0d38::func_ov000_02078b88() {} diff --git a/src/00_Core/Item/ItemManager.cpp b/src/00_Core/Item/ItemManager.cpp index c9088647..8b7ddde1 100644 --- a/src/00_Core/Item/ItemManager.cpp +++ b/src/00_Core/Item/ItemManager.cpp @@ -1,5 +1,11 @@ #include "Item/ItemManager.hpp" +#include "DTCM/UnkStruct_027e0d38.hpp" +#include "DTCM/UnkStruct_027e0f78.hpp" +#include "Map/MapManager.hpp" +#include "Player/HealthManager.hpp" #include "Player/PlayerLinkBase.hpp" +#include "Save/AdventureFlags.hpp" +#include "System/OverlayManager.hpp" static const char *sShipPartTypes[] = {"anc", "bow", "hul", "can", "dco", "pdl", "fnl", "brg"}; @@ -21,7 +27,7 @@ THUMB void ItemManager::ClearPrevEquippedItem() { THUMB void ItemManager::Save(SaveItemManager *save) { save->itemFlags = mItemFlags; save->numRupees = mNumRupees; - for (s32 i = 0; i < NUM_POTIONS; ++i) { + for (s32 i = 0; i < MAX_POTIONS; ++i) { save->potions[i] = mPotions[i]; } save->numBombs = (u8) (*mAmmo)[ItemFlag_BombBag]; @@ -71,7 +77,7 @@ THUMB void ItemManager::Load(const SaveItemManager *save) { (*mAmmo)[ItemFlag_BombBag] = save->numBombs; (*mAmmo)[ItemFlag_BombchuBag] = save->numBombchus; (*mAmmo)[ItemFlag_Bow] = save->numArrows; - for (s32 i = 0; i < NUM_POTIONS; ++i) { + for (s32 i = 0; i < MAX_POTIONS; ++i) { mPotions[i] = save->potions[i]; } mEquippedItem = save->equippedItem; @@ -124,7 +130,6 @@ ARM ActorNavi *ItemManager::GetFairy(FairyId id) const { return mFairies[id]; } -extern UnkStruct_027e0d38 *data_027e0d38; extern unk32 gPlayerAnimHandler; extern "C" void LoadEquipItemModel(unk32 param1, ItemFlag param2); extern "C" void _ZNK11ItemManager15GetEquippedItemEv(); diff --git a/src/00_Core/Map/MapManager.cpp b/src/00_Core/Map/MapManager.cpp index 69be3117..9c23a95b 100644 --- a/src/00_Core/Map/MapManager.cpp +++ b/src/00_Core/Map/MapManager.cpp @@ -132,7 +132,7 @@ void MapManager::func_ov00_02083f44(Vec3p *param_2) {} unk8 MapManager::MapData_vfunc_6c() {} unk8 MapManager::MapData_vfunc_70() {} unk8 MapManager::func_ov00_02083fb0(u32 *param_1, MapManager *param_2, Vec3p *param_3) {} -void MapManager::func_ov00_02084024(unk32 param_2, AABB *param_3) {} +void MapManager::GetTileWorldBounds(Vec2b *tile, AABB *tileBounds) {} unk8 MapManager::MapData_vfunc_54() {} unk8 MapManager::func_ov00_020840a0(unk8 param_2, unk8 param_3, unk32 param_4) {} unk8 MapManager::MapData_vfunc_78() {} diff --git a/src/00_Core/Physics/AABB.cpp b/src/00_Core/Physics/AABB.cpp new file mode 100644 index 00000000..c3d6b2e0 --- /dev/null +++ b/src/00_Core/Physics/AABB.cpp @@ -0,0 +1,15 @@ +#include "Physics/AABB.hpp" + +bool AABB::func_ov000_0208e680() {} +void AABB::GetCenter(Vec3p *center) {} +q20 AABB::GetSizeX() {} +q20 AABB::GetSizeZ() {} +q20 AABB::GetSizeY() {} +bool AABB::Contains(Vec3p *vec) {} +bool AABB::ContainsInXZ(Vec3p *vec) {} +bool AABB::ContainsInXY(Vec3p *vec) {} +bool AABB::IntersectsCube(Cube *cube) {} +bool AABB::func_ov000_0208e87c(Cube *cube, Vec3p *vec, u32 *out) {} +void AABB::GrowToPoint(Vec3p *point) {} +void AABB::Grow(Vec3p *dimensions) {} +void AABB::GrowScalar(q20 amount) {} diff --git a/src/00_Core/Save/SaveItemManager.cpp b/src/00_Core/Save/SaveItemManager.cpp new file mode 100644 index 00000000..8fdf2cef --- /dev/null +++ b/src/00_Core/Save/SaveItemManager.cpp @@ -0,0 +1,3 @@ +#include "Save/SaveItemManager.hpp" + +SaveItemManager::SaveItemManager() {} diff --git a/tools/configure.py b/tools/configure.py index 2a8d77ee..26f7e86e 100644 --- a/tools/configure.py +++ b/tools/configure.py @@ -27,7 +27,7 @@ CC_FLAGS = " ".join([ "-proc arm946e", # Target processor "-gccext,on", # Enable GCC extensions "-fp soft", # Compute float operations in software - "-inline on,noauto", # Inline only functions marked with 'inline' + "-inline noauto", # Inline only functions marked with 'inline' "-lang=c++", # Set language to C++ "-Cpp_exceptions off", # Disable C++ exceptions "-RTTI off", # Disable runtime type information diff --git a/tools/mangle.py b/tools/mangle.py index 17a69c76..e4cf872c 100644 --- a/tools/mangle.py +++ b/tools/mangle.py @@ -28,7 +28,7 @@ cc.extend([ '-proc', 'arm946e', '-gccext,on', '-fp', 'soft', - '-inline', 'on,noauto', + '-inline', 'noauto', '-Cpp_exceptions', 'off', '-RTTI', 'off', '-interworking',