diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..ab144e57 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,36 @@ +name: Build + +on: + push: + pull_request: + +jobs: + build: + container: ghcr.io/zeldaret/ph-build:main + + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + version: [eur, usa] + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Prepare + run: | + mv /extract/* ./extract + + - name: Build + run: | + python tools/configure.py ${{ matrix.version }} -w wibo --compiler /mwccarm --no-extract + ninja arm9 report check + + - name: Upload report + uses: actions/upload-artifact@v4 + with: + name: ${{ matrix.version }}_report + path: build/${{ matrix.version }}/report.json diff --git a/.gitignore b/.gitignore index 337d78bd..8681601b 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,8 @@ ph_*/ *.sav *.xMAP objdiff.json +/objdiff-cli +/objdiff-cli.exe /dsd /dsd.exe /dsd.pdb diff --git a/INSTALL.md b/INSTALL.md index 91c4a96c..525f22f6 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -24,23 +24,19 @@ python -m pip install -r tools/requirements.txt ```shell pre-commit install ``` -5. Run the setup script: -```shell -python tools/setup.py -``` -6. Run the Ninja configure script: +5. Run the Ninja configure script: ```shell python tools/configure.py ``` +6. Put one or more base ROMs in the [`/extract/`](/extract/README.md) directory of this repository. + +Now you can run `ninja` to build a ROM for the chosen version. > [!IMPORTANT] > Rerun `configure.py` often to ensure that all C/C++ code gets compiled. > [!NOTE] > For Linux users: Wibo is used by default. If you want to use Wine instead, run `configure.py` with `-w `. -7. Put one or more base ROMs in the [`/extract/`](/extract/README.md) directory of this repository. - -Now you can run `ninja` to build a ROM for the chosen version. ### Matching the base ROM diff --git a/config/eur/arm9/delinks.txt b/config/eur/arm9/delinks.txt index 97a31c17..bea20dd6 100644 --- a/config/eur/arm9/delinks.txt +++ b/config/eur/arm9/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02000000 end:0x02050ca0 kind:code align:32 .init start:0x02050ca0 end:0x02050f54 kind:code align:4 - .rodata start:0x02050f54 end:0x0205725c kind:data align:4 - .ctor start:0x0205725c end:0x020572c4 kind:data align:4 + .rodata start:0x02050f54 end:0x0205725c kind:rodata align:4 + .ctor start:0x0205725c end:0x020572c4 kind:rodata align:4 .data start:0x020572e0 end:0x02058e20 kind:data align:32 .bss start:0x02058e20 end:0x020773c0 kind:bss align:32 @@ -10,6 +10,9 @@ src/Main/Actor/ActorType.cpp: .text start:0x0203e784 end:0x0203e8a0 .bss start:0x02069180 end:0x02069188 +src/Main/System/OverlayManager.cpp: + .text start:0x0202ff44 end:0x0203003c + libs/cpp/src/__register_global_object.cpp: complete .text start:0x0204f8d4 end:0x0204f8f4 diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 78534402..558720d1 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020773c0 end:0x020d8770 kind:code align:32 - .rodata start:0x020d8770 end:0x020df338 kind:data align:4 + .rodata start:0x020d8770 end:0x020df338 kind:rodata align:4 .init start:0x020df338 end:0x020e1e88 kind:code align:4 - .ctor start:0x020e1e88 end:0x020e1f6c kind:data align:4 + .ctor start:0x020e1e88 end:0x020e1f6c kind:rodata align:4 .data start:0x020e1f80 end:0x020e9320 kind:data align:32 .bss start:0x020e9320 end:0x020ec81c kind:bss align:32 .sbss start:0x020ec81c end:0x020eed40 kind:bss align:4 @@ -16,6 +16,56 @@ src/00_Core/Actor/ActorManager.cpp: .text start:0x020c33d4 end:0x020c3e54 .data start:0x020e72a8 end:0x020e72f4 +src/00_Core/Actor/Dungeon/ActorSwitchObject.cpp: + .text start:0x0208fa70 end:0x020903a8 + .init start:0x020df678 end:0x020df6b8 + .ctor start:0x020e1ec4 end:0x020e1ec8 + .data start:0x020e2928 end:0x020e29e4 + .sbss start:0x020ecd64 end:0x020ecd84 + +src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: + .text start:0x020904f4 end:0x020908f8 + .init start:0x020df6f8 end:0x020df738 + .ctor start:0x020e1ecc end:0x020e1ed0 + .data start:0x020e2aa0 end:0x020e2b5c + .sbss start:0x020ecda4 end:0x020ecdc4 + +src/00_Core/Actor/Navi/ActorNavi.cpp: + .text start:0x020b80e0 end:0x020b85d8 + .init start:0x020e12d8 end:0x020e133c + .ctor start:0x020e1f08 end:0x020e1f0c + .data start:0x020e6514 end:0x020e6674 + .sbss start:0x020ee1a0 end:0x020ee1d8 + +src/00_Core/Actor/Navi/ActorForceNavi.cpp: + complete + .text start:0x020b862c end:0x020b86a4 + .init start:0x020e133c end:0x020e137c + .ctor start:0x020e1f0c end:0x020e1f10 + .data start:0x020e6674 end:0x020e676c + .sbss start:0x020ee1d8 end:0x020ee1f8 + +src/00_Core/Actor/Navi/ActorNaviBase.cpp: + .text start:0x020b885c end:0x020bb118 + .rodata start:0x020dc81c end:0x020dc858 + .data start:0x020e676c end:0x020e68d4 + .sbss start:0x020ee1f8 end:0x020ee1fc + +src/00_Core/Actor/Dungeon/ActorActionObject.cpp: + .text start:0x020be198 end:0x020be418 + .init start:0x020e1b14 end:0x020e1b54 + .ctor start:0x020e1f14 end:0x020e1f18 + .data start:0x020e6d3c end:0x020e6df8 + .sbss start:0x020ee55c end:0x020ee57c + +src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: + complete + .text start:0x020c0b64 end:0x020c0bdc + .init start:0x020e1b54 end:0x020e1b94 + .ctor start:0x020e1f18 end:0x020e1f1c + .data start:0x020e7098 end:0x020e7190 + .sbss start:0x020ee590 end:0x020ee5b0 + src/00_Core/Item/Item.cpp: .text start:0x020ad020 end:0x020ad090 .rodata start:0x020dc574 end:0x020dc6c4 diff --git a/config/eur/arm9/overlays/ov000/relocs.txt b/config/eur/arm9/overlays/ov000/relocs.txt index 6ec33322..5513c2e0 100644 --- a/config/eur/arm9/overlays/ov000/relocs.txt +++ b/config/eur/arm9/overlays/ov000/relocs.txt @@ -6526,7 +6526,7 @@ from:0x020b8628 kind:load to:0x020dc7f8 module:overlay(0) from:0x020b8644 kind:arm_call to:0x0202e9dc module:main from:0x020b8650 kind:arm_call_thumb to:0x02107810 module:overlay(4) from:0x020b8664 kind:load to:0x027e0fe0 module:dtcm -from:0x020b8668 kind:load to:0x020e667c module:overlay(0) +from:0x020b8668 kind:load to:0x020e6674 add:8 module:overlay(0) from:0x020b867c kind:arm_call_thumb to:0x02107994 module:overlay(4) from:0x020b8684 kind:arm_call to:0x0202ea0c module:main from:0x020b8698 kind:arm_call_thumb to:0x02107994 module:overlay(4) @@ -7436,7 +7436,7 @@ from:0x020c0b5c kind:load to:0x02050f54 module:main from:0x020c0b7c kind:arm_call to:0x0202e9dc module:main from:0x020c0b88 kind:arm_call_thumb to:0x02107810 module:overlay(4) from:0x020c0b9c kind:load to:0x027e0fe0 module:dtcm -from:0x020c0ba0 kind:load to:0x020e70a0 module:overlay(0) +from:0x020c0ba0 kind:load to:0x020e7098 add:8 module:overlay(0) from:0x020c0bb4 kind:arm_call_thumb to:0x02107994 module:overlay(4) from:0x020c0bbc kind:arm_call to:0x0202ea0c module:main from:0x020c0bd0 kind:arm_call_thumb to:0x02107994 module:overlay(4) diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 137aa6ad..4a84f67e 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -965,7 +965,7 @@ _ZN14ActorEventIcon8vfunc_08Ev kind:function(arm,size=0xb0) addr:0x2090580 _ZN14ActorEventIcon8vfunc_14Ej kind:function(arm,size=0xc) addr:0x2090630 _ZN14ActorEventIcon8vfunc_18Ej kind:function(arm,size=0xc) addr:0x209063c _ZN14ActorEventIcon19func_ov000_02090648Ej kind:function(arm,size=0x12c) addr:0x2090648 -_Z19func_ov000_02090774j kind:function(arm,size=0x2c) addr:0x2090774 +_ZN14ActorEventIcon19func_ov000_02090774Ej kind:function(arm,size=0x2c) addr:0x2090774 _ZN14ActorEventIcon8vfunc_1cEPt kind:function(arm,size=0x110) addr:0x20907a0 _ZN14ActorEventIconD1Ev kind:function(arm,size=0x20) addr:0x20908b0 _ZN14ActorEventIconD0Ev kind:function(arm,size=0x28) addr:0x20908d0 @@ -2397,40 +2397,40 @@ func_ov000_020b7fe8 kind:function(arm,size=0x14) addr:0x20b7fe8 _ZN13PlayerManager4SaveEP15SaveItemManager kind:function(thumb,size=0x50) addr:0x20b7ffc _ZN13PlayerManager17IncreaseMaxHealthEs kind:function(thumb,size=0x14) addr:0x20b804c _ZN13PlayerManager19UpdateShipMaxHealthEv kind:function(thumb,size=0x80) addr:0x20b8060 -func_ov000_020b80e0 kind:function(arm,size=0x30) addr:0x20b80e0 -func_ov000_020b8110 kind:function(arm,size=0x24) addr:0x20b8110 -func_ov000_020b8134 kind:function(arm,size=0x14) addr:0x20b8134 -func_ov000_020b8148 kind:function(arm,size=0x1c) addr:0x20b8148 -func_ov000_020b8164 kind:function(arm,size=0x50) addr:0x20b8164 -func_ov000_020b81b4 kind:function(arm,size=0x40) addr:0x20b81b4 -func_ov000_020b81f4 kind:function(arm,size=0xc) addr:0x20b81f4 -func_ov000_020b8200 kind:function(arm,size=0x10) addr:0x20b8200 -func_ov000_020b8210 kind:function(arm,size=0x38) addr:0x20b8210 -func_ov000_020b8248 kind:function(arm,size=0x38) addr:0x20b8248 -func_ov000_020b8280 kind:function(arm,size=0x8) addr:0x20b8280 -func_ov000_020b8288 kind:function(arm,size=0x8) addr:0x20b8288 -func_ov000_020b8290 kind:function(arm,size=0x2c) addr:0x20b8290 -func_ov000_020b82bc kind:function(arm,size=0x2c) addr:0x20b82bc -func_ov000_020b82e8 kind:function(arm,size=0x58) addr:0x20b82e8 -func_ov000_020b8340 kind:function(arm,size=0xb8) addr:0x20b8340 -func_ov000_020b83f8 kind:function(arm,size=0x20) addr:0x20b83f8 -func_ov000_020b8418 kind:function(arm,size=0x3c) addr:0x20b8418 -func_ov000_020b8454 kind:function(arm,size=0x24) addr:0x20b8454 -func_ov000_020b8478 kind:function(arm,size=0x24) addr:0x20b8478 -func_ov000_020b849c kind:function(arm,size=0x34) addr:0x20b849c -func_ov000_020b84d0 kind:function(arm,size=0x8) addr:0x20b84d0 -func_ov000_020b84d8 kind:function(arm,size=0x54) addr:0x20b84d8 -func_ov000_020b852c kind:function(arm,size=0x10) addr:0x20b852c -func_ov000_020b853c kind:function(arm,size=0x14) addr:0x20b853c -func_ov000_020b8550 kind:function(arm,size=0x48) addr:0x20b8550 -func_ov000_020b8598 kind:function(arm,size=0x40) addr:0x20b8598 +_ZN9ActorNavi6CreateEv kind:function(arm,size=0x30) addr:0x20b80e0 +_ZN24UnkStruct_ov000_020b8110C2Ev kind:function(arm,size=0x24) addr:0x20b8110 +_ZN24UnkStruct_ov000_020b8110D1Ev kind:function(arm,size=0x14) addr:0x20b8134 +_ZN24UnkStruct_ov000_020b8110D0Ev kind:function(arm,size=0x1c) addr:0x20b8148 +_ZN24UnkStruct_ov000_020b81108vfunc_08EPs kind:function(arm,size=0x50) addr:0x20b8164 +_ZN24UnkStruct_ov000_020b81108vfunc_18EPi kind:function(arm,size=0x40) addr:0x20b81b4 +_ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b81f4 +_ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b8200 +_ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b8210 +_ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b8248 +_ZN9ActorNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b8280 +_ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8288 +_ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8290 +_ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b82bc +_ZN9ActorNavi9SetActiveEb kind:function(arm,size=0x58) addr:0x20b82e8 +_ZN9ActorNavi8vfunc_e0Ev kind:function(arm,size=0xb8) addr:0x20b8340 +_ZN9ActorNavi8vfunc_d8Ev kind:function(arm,size=0x20) addr:0x20b83f8 +_ZN9ActorNavi8vfunc_20Eb kind:function(arm,size=0x3c) addr:0x20b8418 +_ZN9ActorNavi8vfunc_ccEPi kind:function(arm,size=0x24) addr:0x20b8454 +_ZN9ActorNavi8vfunc_c0EP5Vec3p kind:function(arm,size=0x24) addr:0x20b8478 +_ZN9ActorNavi8vfunc_e8Ev kind:function(arm,size=0x34) addr:0x20b849c +_ZN9ActorNavi8vfunc_8cEv kind:function(arm,size=0x8) addr:0x20b84d0 +_ZN9ActorNavi8vfunc_ecEv kind:function(arm,size=0x54) addr:0x20b84d8 +_Z14GetEquipHammerv kind:function(arm,size=0x10) addr:0x20b852c local +_ZN9ActorNavi19func_ov000_020b853cEv kind:function(arm,size=0x14) addr:0x20b853c +_ZN9ActorNaviD1Ev kind:function(arm,size=0x48) addr:0x20b8550 +_ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8598 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b85d8 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b8600 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b8610 -func_ov000_020b862c kind:function(arm,size=0x40) addr:0x20b862c -func_ov000_020b866c kind:function(arm,size=0x8) addr:0x20b866c -func_ov000_020b8674 kind:function(arm,size=0x1c) addr:0x20b8674 -func_ov000_020b8690 kind:function(arm,size=0x14) addr:0x20b8690 +_ZN14ActorForceNavi6CreateEv kind:function(arm,size=0x40) addr:0x20b862c +_ZN14ActorForceNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b866c +_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x1c) addr:0x20b8674 +_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x14) addr:0x20b8690 func_ov000_020b86a4 kind:function(arm,size=0x44) addr:0x20b86a4 func_ov000_020b86e8 kind:function(arm,size=0x30) addr:0x20b86e8 func_ov000_020b8718 kind:function(arm,size=0x8) addr:0x20b8718 @@ -2502,104 +2502,6 @@ _ZN15ItemModelLoader19func_ov000_020bb3f4EPc kind:function(thumb,size=0x20) addr _ZN15ItemModelLoader19func_ov000_020bb414Ei kind:function(thumb,size=0xc) addr:0x20bb414 _ZN15ItemModelLoader19func_ov000_020bb420Ei kind:function(thumb,size=0xc) addr:0x20bb420 _ZN15ItemModelLoader19func_ov000_020bb42cEi kind:function(thumb,size=0x20) addr:0x20bb42c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - _ZN14PlayerLinkBase12GetMaxHealthEv kind:function(arm,size=0x20) addr:0x20bb44c _ZN14PlayerLinkBase8vfunc_10EP8Cylinder kind:function(arm,size=0x70) addr:0x20bb46c _ZN14PlayerLinkBase8vfunc_14EP8Cylinder kind:function(arm,size=0x30) addr:0x20bb4dc @@ -2715,13 +2617,13 @@ func_ov000_020bd958 kind:function(arm,size=0x4fc) addr:0x20bd958 func_ov000_020bde54 kind:function(arm,size=0x60) addr:0x20bde54 func_ov000_020bdeb4 kind:function(arm,size=0x10c) addr:0x20bdeb4 func_ov000_020bdfc0 kind:function(arm,size=0x1d8) addr:0x20bdfc0 -func_ov000_020be198 kind:function(arm,size=0x30) addr:0x20be198 -func_ov000_020be1c8 kind:function(arm,size=0x20) addr:0x20be1c8 -func_ov000_020be1e8 kind:function(arm,size=0x14) addr:0x20be1e8 -func_ov000_020be1fc kind:function(arm,size=0x1c) addr:0x20be1fc -func_ov000_020be218 kind:function(arm,size=0x7c) addr:0x20be218 -func_ov000_020be294 kind:function(arm,size=0x178) addr:0x20be294 -func_ov000_020be40c kind:function(arm,size=0xc) addr:0x20be40c +_ZN17ActorActionObject6CreateEv kind:function(arm,size=0x30) addr:0x20be198 +_ZN17ActorActionObjectC1Ev kind:function(arm,size=0x20) addr:0x20be1c8 +_ZN17ActorActionObjectD1Ev kind:function(arm,size=0x14) addr:0x20be1e8 +_ZN17ActorActionObjectD0Ev kind:function(arm,size=0x1c) addr:0x20be1fc +_ZN17ActorActionObject8vfunc_08Ev kind:function(arm,size=0x7c) addr:0x20be218 +_ZN17ActorActionObject8vfunc_14Ej kind:function(arm,size=0x178) addr:0x20be294 +_ZN17ActorActionObject8vfunc_18Ej kind:function(arm,size=0xc) addr:0x20be40c func_ov000_020be418 kind:function(arm,size=0x4c) addr:0x20be418 func_ov000_020be464 kind:function(arm,size=0x78) addr:0x20be464 func_ov000_020be4dc kind:function(arm,size=0x64) addr:0x20be4dc @@ -2794,10 +2696,10 @@ _ZN11EquipShield8vfunc_1cEv kind:function(arm,size=0xc) addr:0x20c07f8 _ZN11EquipShield8vfunc_30Ev kind:function(arm,size=0x68) addr:0x20c0804 _ZN11EquipShield8vfunc_38Ei kind:function(arm,size=0x21c) addr:0x20c086c _ZNK11EquipShield9GetHitboxEP8Cylinder kind:function(arm,size=0xdc) addr:0x20c0a88 -func_ov000_020c0b64 kind:function(arm,size=0x40) addr:0x20c0b64 -func_ov000_020c0ba4 kind:function(arm,size=0x8) addr:0x20c0ba4 -func_ov000_020c0bac kind:function(arm,size=0x1c) addr:0x20c0bac -func_ov000_020c0bc8 kind:function(arm,size=0x14) addr:0x20c0bc8 +_ZN15ActorWisdomNavi6CreateEv kind:function(arm,size=0x40) addr:0x20c0b64 +_ZN15ActorWisdomNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20c0ba4 +_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x1c) addr:0x20c0bac +_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x14) addr:0x20c0bc8 func_ov000_020c0bdc kind:function(arm,size=0x2c) addr:0x20c0bdc func_ov000_020c0c08 kind:function(thumb,size=0x28) addr:0x20c0c08 func_ov000_020c0c30 kind:function(thumb,size=0x4) addr:0x20c0c30 @@ -2843,7 +2745,7 @@ _ZN5Actor8vfunc_30Ev kind:function(arm,size=0x8) addr:0x20c17b0 _ZN5Actor8vfunc_14Ej kind:function(arm,size=0x4) addr:0x20c17b8 _ZN5Actor8vfunc_18Ej kind:function(arm,size=0x18) addr:0x20c17bc _ZN5Actor8vfunc_1cEPt kind:function(arm,size=0xc0) addr:0x20c17d4 -_ZN5Actor8vfunc_20Ei kind:function(arm,size=0x4) addr:0x20c1894 +_ZN5Actor8vfunc_20Eb kind:function(arm,size=0x4) addr:0x20c1894 _ZN5Actor10SetUnk_129Eb kind:function(arm,size=0x10) addr:0x20c1898 _ZN5Actor10SetUnk_11bEv kind:function(arm,size=0x1c) addr:0x20c18a8 _ZN5Actor11SetVelocityEP5Vec3p kind:function(arm,size=0x38) addr:0x20c18c4 @@ -2871,7 +2773,7 @@ _ZN5Actor20KillPickupItemActorsEv kind:function(arm,size=0x54) addr:0x20c1b18 _ZN5Actor15TrySetTransformEP9Transform kind:function(arm,size=0x48) addr:0x20c1b6c _ZN5Actor12SetTransformEP9Transform kind:function(arm,size=0x44) addr:0x20c1bb4 _ZN5Actor8vfunc_a8Ev kind:function(arm,size=0x4) addr:0x20c1bf8 -_ZN5Actor18func_Ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1bfc +_ZN5Actor18func_ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1bfc _ZN5Actor18func_ov00_020c1c20Eii kind:function(arm,size=0x28) addr:0x20c1c20 _ZN5Actor8vfunc_48EP9Knockback kind:function(arm,size=0x8) addr:0x20c1c48 _ZN5Actor8vfunc_4cEPi kind:function(arm,size=0x44) addr:0x20c1c50 @@ -4038,7 +3940,7 @@ __sinit_ov000_020df4cc kind:function(arm,size=0x174) addr:0x20df4cc __sinit_ov000_020df640 kind:function(arm,size=0x38) addr:0x20df640 __sinit_ActorSwitchObject.cpp kind:function(arm,size=0x40) addr:0x20df678 __sinit_ov000_020df6b8 kind:function(arm,size=0x40) addr:0x20df6b8 -__sinit_ov000_020df6f8 kind:function(arm,size=0x40) addr:0x20df6f8 +__sinit_ActorEventIcon.cpp kind:function(arm,size=0x40) addr:0x20df6f8 __sinit_ov000_020df738 kind:function(arm,size=0x38) addr:0x20df738 __sinit_ov000_020df770 kind:function(arm,size=0x20) addr:0x20df770 __sinit_ov000_020df790 kind:function(arm,size=0x1718) addr:0x20df790 @@ -4053,11 +3955,11 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e11d8 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e120c __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e1250 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1290 -__sinit_ov000_020e12d8 kind:function(arm,size=0x64) addr:0x20e12d8 -__sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e133c +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 local +__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e133c local __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c -__sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1b14 -__sinit_ov000_020e1b54 kind:function(arm,size=0x40) addr:0x20e1b54 +__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1b14 local +__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1b54 local __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b94 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1bd4 __sinit_ov000_020e1c14 kind:function(arm,size=0x40) addr:0x20e1c14 @@ -4866,7 +4768,7 @@ data_ov000_020e59fc kind:data(any) addr:0x20e59fc data_ov000_020e5a0c kind:data(any) addr:0x20e5a0c data_ov000_020e5a20 kind:data(any) addr:0x20e5a20 data_ov000_020e5a34 kind:data(any) addr:0x20e5a34 -_ZTV13LinkStateItem kind:data(any) addr:0x20e5a48 +_ZTV13LinkStateItem kind:data(any) addr:0x20e5a40 data_ov000_020e5a8c kind:data(any) addr:0x20e5a8c data_ov000_020e5a90 kind:data(any) addr:0x20e5a90 data_ov000_020e5a94 kind:data(any) addr:0x20e5a94 @@ -5054,9 +4956,9 @@ data_ov000_020e6528 kind:data(any) addr:0x20e6528 data_ov000_020e652c kind:data(any) addr:0x20e652c data_ov000_020e6530 kind:data(any) addr:0x20e6530 data_ov000_020e6534 kind:data(any) addr:0x20e6534 -data_ov000_020e6560 kind:data(any) addr:0x20e6560 -data_ov000_020e6658 kind:data(any) addr:0x20e6658 -data_ov000_020e667c kind:data(any) addr:0x20e667c +_ZTV9ActorNavi kind:data(any) addr:0x20e6560 +_ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e6658 +_ZTV14ActorForceNavi kind:data(any) addr:0x20e6674 data_ov000_020e676c kind:data(any) addr:0x20e676c data_ov000_020e6770 kind:data(any) addr:0x20e6770 data_ov000_020e6774 kind:data(any) addr:0x20e6774 @@ -5115,7 +5017,7 @@ data_ov000_020e6c58 kind:data(any) addr:0x20e6c58 data_ov000_020e6c5c kind:data(any) addr:0x20e6c5c _ZTV14PlayerLinkBase kind:data(any) addr:0x20e6c88 data_ov000_020e6d18 kind:data(any) addr:0x20e6d18 -data_ov000_020e6d44 kind:data(any) addr:0x20e6d44 +_ZTV17ActorActionObject kind:data(any) addr:0x20e6d44 data_ov000_020e6df8 kind:data(any) addr:0x20e6df8 data_ov000_020e6dfc kind:data(any) addr:0x20e6dfc data_ov000_020e6e08 kind:data(any) addr:0x20e6e08 @@ -5155,7 +5057,7 @@ data_ov000_020e7014 kind:data(any) addr:0x20e7014 data_ov000_020e7018 kind:data(any) addr:0x20e7018 data_ov000_020e701c kind:data(any) addr:0x20e701c data_ov000_020e7048 kind:data(any) addr:0x20e7048 -data_ov000_020e70a0 kind:data(any) addr:0x20e70a0 +_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e7098 data_ov000_020e7198 kind:data(any) addr:0x20e7198 data_ov000_020e71a0 kind:data(any) addr:0x20e71a0 data_ov000_020e71a4 kind:data(any) addr:0x20e71a4 @@ -5168,14 +5070,14 @@ data_ov000_020e71bc kind:data(any) addr:0x20e71bc sShipTypes kind:data(any) addr:0x20e71c0 _ZTV17KillPickupsFilter kind:data(any) addr:0x20e71e8 _ZTV5Actor kind:data(any) addr:0x20e71f4 -data_ov000_020e72a8 kind:data(any) addr:0x20e72a8 -data_ov000_020e72ac kind:data(any) addr:0x20e72ac -data_ov000_020e72b0 kind:data(any) addr:0x20e72b0 -data_ov000_020e72b4 kind:data(any) addr:0x20e72b4 -data_ov000_020e72b8 kind:data(any) addr:0x20e72b8 -data_ov000_020e72bc kind:data(any) addr:0x20e72bc -data_ov000_020e72c0 kind:data(any) addr:0x20e72c0 -data_ov000_020e72c4 kind:data(any) addr:0x20e72c4 +@965 kind:data(any) addr:0x20e72a8 local +@964 kind:data(any) addr:0x20e72ac local +@963 kind:data(any) addr:0x20e72b0 local +@962 kind:data(any) addr:0x20e72b4 local +@961 kind:data(any) addr:0x20e72b8 local +@960 kind:data(any) addr:0x20e72bc local +@959 kind:data(any) addr:0x20e72c0 local +@958 kind:data(any) addr:0x20e72c4 local _ZTV11FilterActor kind:data(any) addr:0x20e72e8 data_ov000_020e72fc kind:data(any) addr:0x20e72fc data_ov000_020e7300 kind:data(any) addr:0x20e7300 @@ -5973,12 +5875,12 @@ data_ov000_020ee16c kind:bss addr:0x20ee16c data_ov000_020ee178 kind:bss addr:0x20ee178 data_ov000_020ee184 kind:bss addr:0x20ee184 data_ov000_020ee198 kind:bss addr:0x20ee198 -data_ov000_020ee1a0 kind:bss addr:0x20ee1a0 -data_ov000_020ee1ac kind:bss addr:0x20ee1ac -data_ov000_020ee1c0 kind:bss addr:0x20ee1c0 +@418 kind:bss addr:0x20ee1a0 local +_ZN9ActorNavi5gTypeE kind:bss addr:0x20ee1ac +@419 kind:bss addr:0x20ee1c0 local data_ov000_020ee1cc kind:bss addr:0x20ee1cc -data_ov000_020ee1d8 kind:bss addr:0x20ee1d8 -data_ov000_020ee1e4 kind:bss addr:0x20ee1e4 +@403 kind:bss addr:0x20ee1d8 local +_ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee1e4 data_ov000_020ee1f8 kind:bss addr:0x20ee1f8 data_ov000_020ee1fc kind:bss addr:0x20ee1fc data_ov000_020ee208 kind:bss addr:0x20ee208 @@ -6037,12 +5939,12 @@ data_ov000_020ee50c kind:bss addr:0x20ee50c data_ov000_020ee520 kind:bss addr:0x20ee520 data_ov000_020ee534 kind:bss addr:0x20ee534 data_ov000_020ee548 kind:bss addr:0x20ee548 -data_ov000_020ee55c kind:bss addr:0x20ee55c -data_ov000_020ee568 kind:bss addr:0x20ee568 +@360 kind:bss addr:0x20ee55c local +_ZN17ActorActionObject5gTypeE kind:bss addr:0x20ee568 gPlayerAnimHandler kind:bss addr:0x20ee57c data_ov000_020ee588 kind:bss addr:0x20ee588 -data_ov000_020ee590 kind:bss addr:0x20ee590 -data_ov000_020ee59c kind:bss addr:0x20ee59c +@403 kind:bss addr:0x20ee590 local +_ZN15ActorWisdomNavi5gTypeE kind:bss addr:0x20ee59c data_ov000_020ee5b0 kind:bss addr:0x20ee5b0 data_ov000_020ee5bc kind:bss addr:0x20ee5bc data_ov000_020ee5d0 kind:bss addr:0x20ee5d0 diff --git a/config/eur/arm9/overlays/ov001/delinks.txt b/config/eur/arm9/overlays/ov001/delinks.txt index 40006dbe..020be41c 100644 --- a/config/eur/arm9/overlays/ov001/delinks.txt +++ b/config/eur/arm9/overlays/ov001/delinks.txt @@ -1,6 +1,6 @@ .text start:0x020eed40 end:0x020f86b4 kind:code align:32 - .rodata start:0x020f86b4 end:0x020f88f4 kind:data align:4 - .ctor start:0x020f88f4 end:0x020f88f8 kind:data align:4 + .rodata start:0x020f86b4 end:0x020f88f4 kind:rodata align:4 + .ctor start:0x020f88f4 end:0x020f88f8 kind:rodata align:4 .data start:0x020f8900 end:0x020f8b60 kind:data align:32 .bss start:0x020f8b60 end:0x020ff1a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov002/delinks.txt b/config/eur/arm9/overlays/ov002/delinks.txt index 884d78b3..f533848b 100644 --- a/config/eur/arm9/overlays/ov002/delinks.txt +++ b/config/eur/arm9/overlays/ov002/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eed40 end:0x020f672c kind:code align:32 - .rodata start:0x020f672c end:0x020f6978 kind:data align:4 + .rodata start:0x020f672c end:0x020f6978 kind:rodata align:4 .init start:0x020f6978 end:0x020f69a4 kind:code align:4 - .ctor start:0x020f69a4 end:0x020f69ac kind:data align:4 + .ctor start:0x020f69a4 end:0x020f69ac kind:rodata align:4 .data start:0x020f69c0 end:0x020f7160 kind:data align:32 .bss start:0x020f7160 end:0x02100180 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov003/delinks.txt b/config/eur/arm9/overlays/ov003/delinks.txt index a7c88d15..7016907a 100644 --- a/config/eur/arm9/overlays/ov003/delinks.txt +++ b/config/eur/arm9/overlays/ov003/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eed40 end:0x020fc454 kind:code align:32 - .rodata start:0x020fc454 end:0x020ffe28 kind:data align:4 + .rodata start:0x020fc454 end:0x020ffe28 kind:rodata align:4 .init start:0x020ffe28 end:0x020fffcc kind:code align:4 - .ctor start:0x020fffcc end:0x020ffff4 kind:data align:4 + .ctor start:0x020fffcc end:0x020ffff4 kind:rodata align:4 .data start:0x02100000 end:0x02100a80 kind:data align:32 .bss start:0x02100a80 end:0x02100ae0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov004/delinks.txt b/config/eur/arm9/overlays/ov004/delinks.txt index 3df0adbc..7d3bb7ad 100644 --- a/config/eur/arm9/overlays/ov004/delinks.txt +++ b/config/eur/arm9/overlays/ov004/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100ae0 end:0x0210f824 kind:code align:32 - .rodata start:0x0210f824 end:0x0210fd58 kind:data align:4 + .rodata start:0x0210f824 end:0x0210fd58 kind:rodata align:4 .init start:0x0210fd58 end:0x0210fd90 kind:code align:4 - .ctor start:0x0210fd90 end:0x0210fd9c kind:data align:4 + .ctor start:0x0210fd90 end:0x0210fd9c kind:rodata align:4 .data start:0x0210fda0 end:0x021113e0 kind:data align:32 .bss start:0x021113e0 end:0x021113e0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov004/relocs.txt b/config/eur/arm9/overlays/ov004/relocs.txt index ce85e811..d277363f 100644 --- a/config/eur/arm9/overlays/ov004/relocs.txt +++ b/config/eur/arm9/overlays/ov004/relocs.txt @@ -1960,7 +1960,7 @@ from:0x02109a4c kind:thumb_call_arm to:0x020d0530 module:overlay(0) from:0x02109a52 kind:thumb_call to:0x021099b0 module:overlay(4) from:0x02109a5e kind:thumb_call to:0x0210add4 module:overlay(4) from:0x02109aba kind:thumb_call_arm to:0x0204f614 module:main -from:0x02109ad8 kind:load to:0x020e5a48 add:8 module:overlay(0) +from:0x02109ad8 kind:load to:0x020e5a40 add:8 module:overlay(0) from:0x02109adc kind:load to:0x021079d5 module:overlay(4) from:0x02109ae0 kind:load to:0x02057200 module:main from:0x02109ae4 kind:load to:0x020b7d74 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov005/delinks.txt b/config/eur/arm9/overlays/ov005/delinks.txt index 37358df1..cd744ee4 100644 --- a/config/eur/arm9/overlays/ov005/delinks.txt +++ b/config/eur/arm9/overlays/ov005/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100ae0 end:0x021122a0 kind:code align:32 - .rodata start:0x021122a0 end:0x021123bc kind:data align:4 + .rodata start:0x021122a0 end:0x021123bc kind:rodata align:4 .init start:0x021123bc end:0x02112464 kind:code align:4 - .ctor start:0x02112464 end:0x02112478 kind:data align:4 + .ctor start:0x02112464 end:0x02112478 kind:rodata align:4 .data start:0x02112480 end:0x02112c20 kind:data align:32 .bss start:0x02112c20 end:0x02112c20 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov006/delinks.txt b/config/eur/arm9/overlays/ov006/delinks.txt index 4d3863bd..bcf568d7 100644 --- a/config/eur/arm9/overlays/ov006/delinks.txt +++ b/config/eur/arm9/overlays/ov006/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100ae0 end:0x02102ffc kind:code align:32 - .rodata start:0x02102ffc end:0x021039ac kind:data align:4 - .ctor start:0x021039ac end:0x021039b0 kind:data align:4 + .rodata start:0x02102ffc end:0x021039ac kind:rodata align:4 + .ctor start:0x021039ac end:0x021039b0 kind:rodata align:4 .data start:0x021039c0 end:0x02104000 kind:data align:32 .bss start:0x02104000 end:0x02104020 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov007/delinks.txt b/config/eur/arm9/overlays/ov007/delinks.txt index 5de92741..48eb7448 100644 --- a/config/eur/arm9/overlays/ov007/delinks.txt +++ b/config/eur/arm9/overlays/ov007/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100ae0 end:0x021028c8 kind:code align:32 - .rodata start:0x021028c8 end:0x02102938 kind:data align:4 - .ctor start:0x02102938 end:0x0210293c kind:data align:4 + .rodata start:0x021028c8 end:0x02102938 kind:rodata align:4 + .ctor start:0x02102938 end:0x0210293c kind:rodata align:4 .data start:0x02102940 end:0x02102aa0 kind:data align:32 .bss start:0x02102aa0 end:0x0210eb40 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov008/delinks.txt b/config/eur/arm9/overlays/ov008/delinks.txt index 84cf4871..0abc0500 100644 --- a/config/eur/arm9/overlays/ov008/delinks.txt +++ b/config/eur/arm9/overlays/ov008/delinks.txt @@ -1,5 +1,5 @@ .text start:0x02112c20 end:0x02113af4 kind:code align:32 - .ctor start:0x02113af4 end:0x02113af8 kind:data align:4 + .ctor start:0x02113af4 end:0x02113af8 kind:rodata align:4 .data start:0x02113b00 end:0x02113b80 kind:data align:32 .bss start:0x02113b80 end:0x02113b80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov009/delinks.txt b/config/eur/arm9/overlays/ov009/delinks.txt index be6e1916..9ed9eb3f 100644 --- a/config/eur/arm9/overlays/ov009/delinks.txt +++ b/config/eur/arm9/overlays/ov009/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112c20 end:0x0211d98c kind:code align:32 - .rodata start:0x0211d98c end:0x0211e4a4 kind:data align:4 + .rodata start:0x0211d98c end:0x0211e4a4 kind:rodata align:4 .init start:0x0211e4a4 end:0x0211e660 kind:code align:4 - .ctor start:0x0211e660 end:0x0211e680 kind:data align:4 + .ctor start:0x0211e660 end:0x0211e680 kind:rodata align:4 .data start:0x0211e680 end:0x0211f520 kind:data align:32 .bss start:0x0211f520 end:0x0211f640 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov010/delinks.txt b/config/eur/arm9/overlays/ov010/delinks.txt index db92de38..885e1605 100644 --- a/config/eur/arm9/overlays/ov010/delinks.txt +++ b/config/eur/arm9/overlays/ov010/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112c20 end:0x0211e750 kind:code align:32 - .rodata start:0x0211e750 end:0x0211ea18 kind:data align:4 - .ctor start:0x0211ea18 end:0x0211ea1c kind:data align:4 + .rodata start:0x0211e750 end:0x0211ea18 kind:rodata align:4 + .ctor start:0x0211ea18 end:0x0211ea1c kind:rodata align:4 .data start:0x0211ea20 end:0x0211f400 kind:data align:32 .bss start:0x0211f400 end:0x0211f460 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov011/delinks.txt b/config/eur/arm9/overlays/ov011/delinks.txt index 7b8a3367..f15ef98a 100644 --- a/config/eur/arm9/overlays/ov011/delinks.txt +++ b/config/eur/arm9/overlays/ov011/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112c20 end:0x0212ba0c kind:code align:32 - .rodata start:0x0212ba0c end:0x0212ed00 kind:data align:4 - .ctor start:0x0212ed00 end:0x0212ed04 kind:data align:4 + .rodata start:0x0212ba0c end:0x0212ed00 kind:rodata align:4 + .ctor start:0x0212ed00 end:0x0212ed04 kind:rodata align:4 .data start:0x0212ed20 end:0x02130820 kind:data align:32 .bss start:0x02130820 end:0x02132ee0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov012/delinks.txt b/config/eur/arm9/overlays/ov012/delinks.txt index 33d2d934..756c7714 100644 --- a/config/eur/arm9/overlays/ov012/delinks.txt +++ b/config/eur/arm9/overlays/ov012/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112c20 end:0x021344ac kind:code align:32 - .rodata start:0x021344ac end:0x021354cc kind:data align:4 + .rodata start:0x021344ac end:0x021354cc kind:rodata align:4 .init start:0x021354cc end:0x021358f4 kind:code align:4 - .ctor start:0x021358f4 end:0x02135920 kind:data align:4 + .ctor start:0x021358f4 end:0x02135920 kind:rodata align:4 .data start:0x02135920 end:0x02137c60 kind:data align:32 .bss start:0x02137c60 end:0x0213dec0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov013/delinks.txt b/config/eur/arm9/overlays/ov013/delinks.txt index 7d9da21e..8731e1f2 100644 --- a/config/eur/arm9/overlays/ov013/delinks.txt +++ b/config/eur/arm9/overlays/ov013/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112c20 end:0x02116004 kind:code align:32 - .rodata start:0x02116004 end:0x021160ec kind:data align:4 - .ctor start:0x021160ec end:0x021160f4 kind:data align:4 + .rodata start:0x02116004 end:0x021160ec kind:rodata align:4 + .ctor start:0x021160ec end:0x021160f4 kind:rodata align:4 .data start:0x02116100 end:0x02116200 kind:data align:32 .bss start:0x02116200 end:0x021163a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov014/delinks.txt b/config/eur/arm9/overlays/ov014/delinks.txt index 07c0b3f4..60aa7fc6 100644 --- a/config/eur/arm9/overlays/ov014/delinks.txt +++ b/config/eur/arm9/overlays/ov014/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f640 end:0x02153b50 kind:code align:32 - .rodata start:0x02153b50 end:0x021541ec kind:data align:4 + .rodata start:0x02153b50 end:0x021541ec kind:rodata align:4 .init start:0x021541ec end:0x0215584c kind:code align:4 - .ctor start:0x0215584c end:0x0215598c kind:data align:4 + .ctor start:0x0215584c end:0x0215598c kind:rodata align:4 .data start:0x021559a0 end:0x0215abc0 kind:data align:32 .bss start:0x0215abc0 end:0x0215b4a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov015/delinks.txt b/config/eur/arm9/overlays/ov015/delinks.txt index 67672a0b..60df5596 100644 --- a/config/eur/arm9/overlays/ov015/delinks.txt +++ b/config/eur/arm9/overlays/ov015/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f640 end:0x02185b1c kind:code align:32 - .rodata start:0x02185b1c end:0x02187384 kind:data align:4 + .rodata start:0x02185b1c end:0x02187384 kind:rodata align:4 .init start:0x02187384 end:0x021892d0 kind:code align:4 - .ctor start:0x021892d0 end:0x02189420 kind:data align:4 + .ctor start:0x021892d0 end:0x02189420 kind:rodata align:4 .data start:0x02189420 end:0x0218ebe0 kind:data align:32 .bss start:0x0218ebe0 end:0x021904a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov016/delinks.txt b/config/eur/arm9/overlays/ov016/delinks.txt index 8c4b2e68..5ab20a36 100644 --- a/config/eur/arm9/overlays/ov016/delinks.txt +++ b/config/eur/arm9/overlays/ov016/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0211f640 end:0x02120134 kind:code align:32 - .rodata start:0x02120134 end:0x02120150 kind:data align:4 - .ctor start:0x02120150 end:0x02120154 kind:data align:4 + .rodata start:0x02120134 end:0x02120150 kind:rodata align:4 + .ctor start:0x02120150 end:0x02120154 kind:rodata align:4 .data start:0x02120160 end:0x021201a0 kind:data align:32 .bss start:0x021201a0 end:0x021201a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov017/delinks.txt b/config/eur/arm9/overlays/ov017/delinks.txt index b91c64bb..4c6e3c89 100644 --- a/config/eur/arm9/overlays/ov017/delinks.txt +++ b/config/eur/arm9/overlays/ov017/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b4a0 end:0x0216b098 kind:code align:32 - .rodata start:0x0216b098 end:0x0216b2c4 kind:data align:4 + .rodata start:0x0216b098 end:0x0216b2c4 kind:rodata align:4 .init start:0x0216b2c4 end:0x0216b964 kind:code align:4 - .ctor start:0x0216b964 end:0x0216b9d4 kind:data align:4 + .ctor start:0x0216b964 end:0x0216b9d4 kind:rodata align:4 .data start:0x0216b9e0 end:0x0216cea0 kind:data align:32 .bss start:0x0216cea0 end:0x0216d120 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov018/delinks.txt b/config/eur/arm9/overlays/ov018/delinks.txt index 7c6e4a27..cd18e2d7 100644 --- a/config/eur/arm9/overlays/ov018/delinks.txt +++ b/config/eur/arm9/overlays/ov018/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b4a0 end:0x0216b42c kind:code align:32 - .rodata start:0x0216b42c end:0x0216b780 kind:data align:4 + .rodata start:0x0216b42c end:0x0216b780 kind:rodata align:4 .init start:0x0216b780 end:0x0216c04c kind:code align:4 - .ctor start:0x0216c04c end:0x0216c0ac kind:data align:4 + .ctor start:0x0216c04c end:0x0216c0ac kind:rodata align:4 .data start:0x0216c0c0 end:0x0216d440 kind:data align:32 .bss start:0x0216d440 end:0x0216d6a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov018/symbols.txt b/config/eur/arm9/overlays/ov018/symbols.txt index e5840916..605800d5 100644 --- a/config/eur/arm9/overlays/ov018/symbols.txt +++ b/config/eur/arm9/overlays/ov018/symbols.txt @@ -1,39 +1,39 @@ -func_ov018_0215b4a0 kind:function(arm,size=0x1ac) addr:0x215b4a0 -func_ov018_0215b64c kind:function(arm,size=0x10c) addr:0x215b64c -func_ov018_0215b758 kind:function(arm,size=0x114) addr:0x215b758 -func_ov018_0215b86c kind:function(arm,size=0x518) addr:0x215b86c -func_ov018_0215bd84 kind:function(arm,size=0x134) addr:0x215bd84 -func_ov018_0215beb8 kind:function(arm,size=0x110) addr:0x215beb8 -func_ov018_0215bfc8 kind:function(arm,size=0x17c) addr:0x215bfc8 -func_ov018_0215c144 kind:function(arm,size=0x84) addr:0x215c144 -func_ov018_0215c1c8 kind:function(arm,size=0xb4) addr:0x215c1c8 -func_ov018_0215c27c kind:function(arm,size=0x8) addr:0x215c27c -func_ov018_0215c284 kind:function(arm,size=0xc) addr:0x215c284 -func_ov018_0215c290 kind:function(arm,size=0x20) addr:0x215c290 -func_ov018_0215c2b0 kind:function(arm,size=0x30) addr:0x215c2b0 -func_ov018_0215c2e0 kind:function(arm,size=0x20) addr:0x215c2e0 -func_ov018_0215c300 kind:function(arm,size=0x2c) addr:0x215c300 -func_ov018_0215c32c kind:function(arm,size=0x20) addr:0x215c32c -func_ov018_0215c34c kind:function(arm,size=0x1c) addr:0x215c34c -func_ov018_0215c368 kind:function(arm,size=0x18) addr:0x215c368 -func_ov018_0215c380 kind:function(arm,size=0x20) addr:0x215c380 -func_ov018_0215c3a0 kind:function(arm,size=0x20) addr:0x215c3a0 -func_ov018_0215c3c0 kind:function(arm,size=0x68) addr:0x215c3c0 -func_ov018_0215c428 kind:function(arm,size=0x20) addr:0x215c428 -func_ov018_0215c448 kind:function(arm,size=0x18) addr:0x215c448 -func_ov018_0215c460 kind:function(arm,size=0x164) addr:0x215c460 -func_ov018_0215c5c4 kind:function(arm,size=0x44) addr:0x215c5c4 -func_ov018_0215c608 kind:function(arm,size=0x48) addr:0x215c608 -func_ov018_0215c650 kind:function(arm,size=0x5c) addr:0x215c650 -func_ov018_0215c6ac kind:function(arm,size=0x24) addr:0x215c6ac -func_ov018_0215c6d0 kind:function(arm,size=0x24c) addr:0x215c6d0 -func_ov018_0215c91c kind:function(arm,size=0x48) addr:0x215c91c -func_ov018_0215c964 kind:function(arm,size=0x48) addr:0x215c964 -func_ov018_0215c9ac kind:function(arm,size=0x78) addr:0x215c9ac -func_ov018_0215ca24 kind:function(arm,size=0x18) addr:0x215ca24 -func_ov018_0215ca3c kind:function(arm,size=0x50) addr:0x215ca3c -func_ov018_0215ca8c kind:function(arm,size=0x18) addr:0x215ca8c -func_ov018_0215caa4 kind:function(arm,size=0x8) addr:0x215caa4 +_ZN12MapOverworldC2Ejj kind:function(arm,size=0x1ac) addr:0x215b4a0 +_ZN12MapOverworldD1Ev kind:function(arm,size=0x10c) addr:0x215b64c +_ZN12MapOverworldD0Ev kind:function(arm,size=0x114) addr:0x215b758 +_ZN12MapOverworld8vfunc_08EjjP6Course kind:function(arm,size=0x518) addr:0x215b86c +_ZN12MapOverworld8vfunc_14Ev kind:function(arm,size=0x134) addr:0x215bd84 +_ZN12MapOverworld8vfunc_1cEb kind:function(arm,size=0x110) addr:0x215beb8 +_ZN12MapOverworld19func_ov018_0215bfc8Ev kind:function(arm,size=0x17c) addr:0x215bfc8 +_ZN12MapOverworld8vfunc_20Ei kind:function(arm,size=0x84) addr:0x215c144 +_ZN12MapOverworld8vfunc_2cEv kind:function(arm,size=0xb4) addr:0x215c1c8 +_ZN12MapOverworld8vfunc_94Ev kind:function(arm,size=0x8) addr:0x215c27c +_ZN12MapOverworld8vfunc_a4Ev kind:function(arm,size=0xc) addr:0x215c284 +_ZN12MapOverworld8vfunc_54Ev kind:function(arm,size=0x20) addr:0x215c290 +_ZN12MapOverworld8vfunc_58Ev kind:function(arm,size=0x30) addr:0x215c2b0 +_ZN12MapOverworld8vfunc_5cEv kind:function(arm,size=0x20) addr:0x215c2e0 +_ZN12MapOverworld8vfunc_60Ev kind:function(arm,size=0x2c) addr:0x215c300 +_ZN12MapOverworld8vfunc_64Ev kind:function(arm,size=0x20) addr:0x215c32c +_ZN12MapOverworld19func_ov018_0215c34cEv kind:function(arm,size=0x1c) addr:0x215c34c +_ZN12MapOverworld19func_ov018_0215c368Ev kind:function(arm,size=0x18) addr:0x215c368 +_ZN12MapOverworld19func_ov018_0215c380EPh kind:function(arm,size=0x20) addr:0x215c380 +_ZN12MapOverworld8vfunc_bcEv kind:function(arm,size=0x20) addr:0x215c3a0 +_ZN12MapOverworld8vfunc_98Ev kind:function(arm,size=0x68) addr:0x215c3c0 +_ZN12MapOverworld8vfunc_c0Ev kind:function(arm,size=0x20) addr:0x215c428 +_ZN12MapOverworld8vfunc_78Ev kind:function(arm,size=0x18) addr:0x215c448 +_ZN12MapOverworld8vfunc_7cEv kind:function(arm,size=0x164) addr:0x215c460 +_ZN12MapOverworld8vfunc_80Ev kind:function(arm,size=0x44) addr:0x215c5c4 +_ZN12MapOverworld8vfunc_b0Eii kind:function(arm,size=0x48) addr:0x215c608 +_ZN12MapOverworld19func_ov018_0215c650Ev kind:function(arm,size=0x5c) addr:0x215c650 +_ZN12MapOverworld19func_ov018_0215c6acEv kind:function(arm,size=0x24) addr:0x215c6ac +_ZN12MapOverworld19func_ov018_0215c6d0Ev kind:function(arm,size=0x24c) addr:0x215c6d0 +_ZN17MapOverworld_Unk1C2EjPhi kind:function(arm,size=0x48) addr:0x215c91c +_ZN17MapOverworld_Unk1C1EjPhi kind:function(arm,size=0x48) addr:0x215c964 +_ZN12MapOverworld19func_ov018_0215c9acEv kind:function(arm,size=0x78) addr:0x215c9ac +_Z19func_ov018_0215ca24i kind:function(arm,size=0x18) addr:0x215ca24 +_Z19func_ov018_0215ca3ciiii kind:function(arm,size=0x50) addr:0x215ca3c +_Z19func_ov018_0215ca8ci kind:function(arm,size=0x18) addr:0x215ca8c +_ZN12MapOverworld8vfunc_4cEv kind:function(arm,size=0x8) addr:0x215caa4 func_ov018_0215caac kind:function(arm,size=0x7c) addr:0x215caac func_ov018_0215cb28 kind:function(arm,size=0x4c) addr:0x215cb28 func_ov018_0215cb74 kind:function(arm,size=0xcc) addr:0x215cb74 @@ -514,7 +514,7 @@ __sinit_ov018_0216bf54 kind:function(arm,size=0x38) addr:0x216bf54 __sinit_ov018_0216bf8c kind:function(arm,size=0x80) addr:0x216bf8c __sinit_ov018_0216c00c kind:function(arm,size=0x40) addr:0x216c00c data_ov018_0216c0c0 kind:data(any) addr:0x216c0c0 -data_ov018_0216c0e0 kind:data(any) addr:0x216c0e0 +_ZTV12MapOverworld kind:data(any) addr:0x216c0e0 data_ov018_0216c1a4 kind:data(any) addr:0x216c1a4 data_ov018_0216c1a8 kind:data(any) addr:0x216c1a8 data_ov018_0216c1bc kind:data(any) addr:0x216c1bc diff --git a/config/eur/arm9/overlays/ov019/delinks.txt b/config/eur/arm9/overlays/ov019/delinks.txt index c5693aaa..d8d542da 100644 --- a/config/eur/arm9/overlays/ov019/delinks.txt +++ b/config/eur/arm9/overlays/ov019/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02175c50 kind:code align:32 - .rodata start:0x02175c50 end:0x02175f04 kind:data align:4 + .rodata start:0x02175c50 end:0x02175f04 kind:rodata align:4 .init start:0x02175f04 end:0x021762d4 kind:code align:4 - .ctor start:0x021762d4 end:0x021762fc kind:data align:4 + .ctor start:0x021762d4 end:0x021762fc kind:rodata align:4 .data start:0x02176300 end:0x02176e80 kind:data align:32 .bss start:0x02176e80 end:0x02177680 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov020/delinks.txt b/config/eur/arm9/overlays/ov020/delinks.txt index 10bd7e54..3d4742f0 100644 --- a/config/eur/arm9/overlays/ov020/delinks.txt +++ b/config/eur/arm9/overlays/ov020/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02177868 kind:code align:32 - .rodata start:0x02177868 end:0x02177af4 kind:data align:4 + .rodata start:0x02177868 end:0x02177af4 kind:rodata align:4 .init start:0x02177af4 end:0x02178298 kind:code align:4 - .ctor start:0x02178298 end:0x021782e0 kind:data align:4 + .ctor start:0x02178298 end:0x021782e0 kind:rodata align:4 .data start:0x021782e0 end:0x02179500 kind:data align:32 .bss start:0x02179500 end:0x02179740 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov021/delinks.txt b/config/eur/arm9/overlays/ov021/delinks.txt index 6402c9ca..3eb325b9 100644 --- a/config/eur/arm9/overlays/ov021/delinks.txt +++ b/config/eur/arm9/overlays/ov021/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02170bd4 kind:code align:32 - .rodata start:0x02170bd4 end:0x02170cec kind:data align:4 + .rodata start:0x02170bd4 end:0x02170cec kind:rodata align:4 .init start:0x02170cec end:0x02170f64 kind:code align:4 - .ctor start:0x02170f64 end:0x02170f84 kind:data align:4 + .ctor start:0x02170f64 end:0x02170f84 kind:rodata align:4 .data start:0x02170fa0 end:0x02171ae0 kind:data align:32 .bss start:0x02171ae0 end:0x02171cc0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov022/delinks.txt b/config/eur/arm9/overlays/ov022/delinks.txt index cde2c294..58ef429a 100644 --- a/config/eur/arm9/overlays/ov022/delinks.txt +++ b/config/eur/arm9/overlays/ov022/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x021785b8 kind:code align:32 - .rodata start:0x021785b8 end:0x021789c8 kind:data align:4 + .rodata start:0x021785b8 end:0x021789c8 kind:rodata align:4 .init start:0x021789c8 end:0x02178ff4 kind:code align:4 - .ctor start:0x02178ff4 end:0x0217903c kind:data align:4 + .ctor start:0x02178ff4 end:0x0217903c kind:rodata align:4 .data start:0x02179040 end:0x0217a400 kind:data align:32 .bss start:0x0217a400 end:0x0217a640 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov023/delinks.txt b/config/eur/arm9/overlays/ov023/delinks.txt index ad04c7fa..5edf281b 100644 --- a/config/eur/arm9/overlays/ov023/delinks.txt +++ b/config/eur/arm9/overlays/ov023/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02179030 kind:code align:32 - .rodata start:0x02179030 end:0x02179698 kind:data align:4 + .rodata start:0x02179030 end:0x02179698 kind:rodata align:4 .init start:0x02179698 end:0x02179ce0 kind:code align:4 - .ctor start:0x02179ce0 end:0x02179d18 kind:data align:4 + .ctor start:0x02179ce0 end:0x02179d18 kind:rodata align:4 .data start:0x02179d20 end:0x0217ab60 kind:data align:32 .bss start:0x0217ab60 end:0x0217ad80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov024/delinks.txt b/config/eur/arm9/overlays/ov024/delinks.txt index ed85c2d1..68d1e512 100644 --- a/config/eur/arm9/overlays/ov024/delinks.txt +++ b/config/eur/arm9/overlays/ov024/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x021791d4 kind:code align:32 - .rodata start:0x021791d4 end:0x021795d0 kind:data align:4 + .rodata start:0x021791d4 end:0x021795d0 kind:rodata align:4 .init start:0x021795d0 end:0x02179e1c kind:code align:4 - .ctor start:0x02179e1c end:0x02179e5c kind:data align:4 + .ctor start:0x02179e1c end:0x02179e5c kind:rodata align:4 .data start:0x02179e60 end:0x0217af60 kind:data align:32 .bss start:0x0217af60 end:0x0217b160 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov025/delinks.txt b/config/eur/arm9/overlays/ov025/delinks.txt index 4426b815..df4aadeb 100644 --- a/config/eur/arm9/overlays/ov025/delinks.txt +++ b/config/eur/arm9/overlays/ov025/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x0217933c kind:code align:32 - .rodata start:0x0217933c end:0x02179680 kind:data align:4 + .rodata start:0x0217933c end:0x02179680 kind:rodata align:4 .init start:0x02179680 end:0x02179b98 kind:code align:4 - .ctor start:0x02179b98 end:0x02179bc8 kind:data align:4 + .ctor start:0x02179b98 end:0x02179bc8 kind:rodata align:4 .data start:0x02179be0 end:0x0217a880 kind:data align:32 .bss start:0x0217a880 end:0x0217aa20 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov026/delinks.txt b/config/eur/arm9/overlays/ov026/delinks.txt index fcbc09d6..fe99e306 100644 --- a/config/eur/arm9/overlays/ov026/delinks.txt +++ b/config/eur/arm9/overlays/ov026/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02179260 kind:code align:32 - .rodata start:0x02179260 end:0x021797dc kind:data align:4 + .rodata start:0x02179260 end:0x021797dc kind:rodata align:4 .init start:0x021797dc end:0x0217a020 kind:code align:4 - .ctor start:0x0217a020 end:0x0217a060 kind:data align:4 + .ctor start:0x0217a020 end:0x0217a060 kind:rodata align:4 .data start:0x0217a060 end:0x0217b2c0 kind:data align:32 .bss start:0x0217b2c0 end:0x0217b5c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov027/delinks.txt b/config/eur/arm9/overlays/ov027/delinks.txt index 7cdc16db..3bd15fdf 100644 --- a/config/eur/arm9/overlays/ov027/delinks.txt +++ b/config/eur/arm9/overlays/ov027/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02178cfc kind:code align:32 - .rodata start:0x02178cfc end:0x0217913c kind:data align:4 + .rodata start:0x02178cfc end:0x0217913c kind:rodata align:4 .init start:0x0217913c end:0x02179474 kind:code align:4 - .ctor start:0x02179474 end:0x02179498 kind:data align:4 + .ctor start:0x02179474 end:0x02179498 kind:rodata align:4 .data start:0x021794a0 end:0x0217a0c0 kind:data align:32 .bss start:0x0217a0c0 end:0x0217a1c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov028/delinks.txt b/config/eur/arm9/overlays/ov028/delinks.txt index c82b0263..7a4401e4 100644 --- a/config/eur/arm9/overlays/ov028/delinks.txt +++ b/config/eur/arm9/overlays/ov028/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x0217807c kind:code align:32 - .rodata start:0x0217807c end:0x02178504 kind:data align:4 + .rodata start:0x0217807c end:0x02178504 kind:rodata align:4 .init start:0x02178504 end:0x02178894 kind:code align:4 - .ctor start:0x02178894 end:0x021788c8 kind:data align:4 + .ctor start:0x02178894 end:0x021788c8 kind:rodata align:4 .data start:0x021788e0 end:0x02179b00 kind:data align:32 .bss start:0x02179b00 end:0x02179ce0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov029/delinks.txt b/config/eur/arm9/overlays/ov029/delinks.txt index 4d29edf6..f067ea1b 100644 --- a/config/eur/arm9/overlays/ov029/delinks.txt +++ b/config/eur/arm9/overlays/ov029/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d6a0 end:0x02179298 kind:code align:32 - .rodata start:0x02179298 end:0x021794b0 kind:data align:4 + .rodata start:0x02179298 end:0x021794b0 kind:rodata align:4 .init start:0x021794b0 end:0x02179824 kind:code align:4 - .ctor start:0x02179824 end:0x0217985c kind:data align:4 + .ctor start:0x02179824 end:0x0217985c kind:rodata align:4 .data start:0x02179860 end:0x0217a4a0 kind:data align:32 .bss start:0x0217a4a0 end:0x0217bd80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov030/delinks.txt b/config/eur/arm9/overlays/ov030/delinks.txt index 1f43f935..4ab40a5e 100644 --- a/config/eur/arm9/overlays/ov030/delinks.txt +++ b/config/eur/arm9/overlays/ov030/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x021885d4 kind:code align:32 - .rodata start:0x021885d4 end:0x02188824 kind:data align:4 + .rodata start:0x021885d4 end:0x02188824 kind:rodata align:4 .init start:0x02188824 end:0x02188a2c kind:code align:4 - .ctor start:0x02188a2c end:0x02188a38 kind:data align:4 + .ctor start:0x02188a2c end:0x02188a38 kind:rodata align:4 .data start:0x02188a40 end:0x021894a0 kind:data align:32 .bss start:0x021894a0 end:0x02189560 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov031/delinks.txt b/config/eur/arm9/overlays/ov031/delinks.txt index 4f9880d0..6e0c2bbe 100644 --- a/config/eur/arm9/overlays/ov031/delinks.txt +++ b/config/eur/arm9/overlays/ov031/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x021818a0 kind:code align:32 - .rodata start:0x021818a0 end:0x02181b6c kind:data align:4 + .rodata start:0x021818a0 end:0x02181b6c kind:rodata align:4 .init start:0x02181b6c end:0x02182080 kind:code align:4 - .ctor start:0x02182080 end:0x02182094 kind:data align:4 + .ctor start:0x02182080 end:0x02182094 kind:rodata align:4 .data start:0x021820a0 end:0x02183e80 kind:data align:32 .bss start:0x02183e80 end:0x02184200 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov032/delinks.txt b/config/eur/arm9/overlays/ov032/delinks.txt index 2ca78f8f..4937f85c 100644 --- a/config/eur/arm9/overlays/ov032/delinks.txt +++ b/config/eur/arm9/overlays/ov032/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02184ba8 kind:code align:32 - .rodata start:0x02184ba8 end:0x02184d3c kind:data align:4 + .rodata start:0x02184ba8 end:0x02184d3c kind:rodata align:4 .init start:0x02184d3c end:0x021853c8 kind:code align:4 - .ctor start:0x021853c8 end:0x021853ec kind:data align:4 + .ctor start:0x021853c8 end:0x021853ec kind:rodata align:4 .data start:0x02185400 end:0x021861e0 kind:data align:32 .bss start:0x021861e0 end:0x02186320 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov033/delinks.txt b/config/eur/arm9/overlays/ov033/delinks.txt index c8391dfd..5c38ed26 100644 --- a/config/eur/arm9/overlays/ov033/delinks.txt +++ b/config/eur/arm9/overlays/ov033/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x0217facc kind:code align:32 - .rodata start:0x0217facc end:0x0217fb90 kind:data align:4 + .rodata start:0x0217facc end:0x0217fb90 kind:rodata align:4 .init start:0x0217fb90 end:0x0217fe94 kind:code align:4 - .ctor start:0x0217fe94 end:0x0217feac kind:data align:4 + .ctor start:0x0217fe94 end:0x0217feac kind:rodata align:4 .data start:0x0217fec0 end:0x02180580 kind:data align:32 .bss start:0x02180580 end:0x02180640 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov034/delinks.txt b/config/eur/arm9/overlays/ov034/delinks.txt index 3ea2d481..d1364a8b 100644 --- a/config/eur/arm9/overlays/ov034/delinks.txt +++ b/config/eur/arm9/overlays/ov034/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02185740 kind:code align:32 - .rodata start:0x02185740 end:0x02185818 kind:data align:4 + .rodata start:0x02185740 end:0x02185818 kind:rodata align:4 .init start:0x02185818 end:0x02185a64 kind:code align:4 - .ctor start:0x02185a64 end:0x02185a74 kind:data align:4 + .ctor start:0x02185a64 end:0x02185a74 kind:rodata align:4 .data start:0x02185a80 end:0x021861a0 kind:data align:32 .bss start:0x021861a0 end:0x021863c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov035/delinks.txt b/config/eur/arm9/overlays/ov035/delinks.txt index 4fcb63a7..776671d5 100644 --- a/config/eur/arm9/overlays/ov035/delinks.txt +++ b/config/eur/arm9/overlays/ov035/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x0218512c kind:code align:32 - .rodata start:0x0218512c end:0x02185668 kind:data align:4 + .rodata start:0x0218512c end:0x02185668 kind:rodata align:4 .init start:0x02185668 end:0x02185900 kind:code align:4 - .ctor start:0x02185900 end:0x02185914 kind:data align:4 + .ctor start:0x02185900 end:0x02185914 kind:rodata align:4 .data start:0x02185920 end:0x02185ec0 kind:data align:32 .bss start:0x02185ec0 end:0x02187020 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov036/delinks.txt b/config/eur/arm9/overlays/ov036/delinks.txt index 3d0a7186..c310fd44 100644 --- a/config/eur/arm9/overlays/ov036/delinks.txt +++ b/config/eur/arm9/overlays/ov036/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02186698 kind:code align:32 - .rodata start:0x02186698 end:0x02186bb4 kind:data align:4 + .rodata start:0x02186698 end:0x02186bb4 kind:rodata align:4 .init start:0x02186bb4 end:0x02186c34 kind:code align:4 - .ctor start:0x02186c34 end:0x02186c40 kind:data align:4 + .ctor start:0x02186c34 end:0x02186c40 kind:rodata align:4 .data start:0x02186c40 end:0x02186fa0 kind:data align:32 .bss start:0x02186fa0 end:0x02186fe0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov037/delinks.txt b/config/eur/arm9/overlays/ov037/delinks.txt index a679b136..62529715 100644 --- a/config/eur/arm9/overlays/ov037/delinks.txt +++ b/config/eur/arm9/overlays/ov037/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02187dc8 kind:code align:32 - .rodata start:0x02187dc8 end:0x02188690 kind:data align:4 + .rodata start:0x02187dc8 end:0x02188690 kind:rodata align:4 .init start:0x02188690 end:0x021889b4 kind:code align:4 - .ctor start:0x021889b4 end:0x021889cc kind:data align:4 + .ctor start:0x021889b4 end:0x021889cc kind:rodata align:4 .data start:0x021889e0 end:0x02189160 kind:data align:32 .bss start:0x02189160 end:0x02189240 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov038/delinks.txt b/config/eur/arm9/overlays/ov038/delinks.txt index 5cca0d2c..44c4aca1 100644 --- a/config/eur/arm9/overlays/ov038/delinks.txt +++ b/config/eur/arm9/overlays/ov038/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02188908 kind:code align:32 - .rodata start:0x02188908 end:0x02188ae4 kind:data align:4 + .rodata start:0x02188908 end:0x02188ae4 kind:rodata align:4 .init start:0x02188ae4 end:0x02188c60 kind:code align:4 - .ctor start:0x02188c60 end:0x02188c6c kind:data align:4 + .ctor start:0x02188c60 end:0x02188c6c kind:rodata align:4 .data start:0x02188c80 end:0x021891e0 kind:data align:32 .bss start:0x021891e0 end:0x021894a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov039/delinks.txt b/config/eur/arm9/overlays/ov039/delinks.txt index 87fd8241..9463b213 100644 --- a/config/eur/arm9/overlays/ov039/delinks.txt +++ b/config/eur/arm9/overlays/ov039/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02186124 kind:code align:32 - .rodata start:0x02186124 end:0x02186968 kind:data align:4 + .rodata start:0x02186124 end:0x02186968 kind:rodata align:4 .init start:0x02186968 end:0x021869bc kind:code align:4 - .ctor start:0x021869bc end:0x021869c4 kind:data align:4 + .ctor start:0x021869bc end:0x021869c4 kind:rodata align:4 .data start:0x021869e0 end:0x02186cc0 kind:data align:32 .bss start:0x02186cc0 end:0x02186d00 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov040/delinks.txt b/config/eur/arm9/overlays/ov040/delinks.txt index d716794f..0d19381b 100644 --- a/config/eur/arm9/overlays/ov040/delinks.txt +++ b/config/eur/arm9/overlays/ov040/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bd80 end:0x02187ffc kind:code align:32 - .rodata start:0x02187ffc end:0x02188360 kind:data align:4 + .rodata start:0x02187ffc end:0x02188360 kind:rodata align:4 .init start:0x02188360 end:0x02188604 kind:code align:4 - .ctor start:0x02188604 end:0x02188630 kind:data align:4 + .ctor start:0x02188604 end:0x02188630 kind:rodata align:4 .data start:0x02188640 end:0x02189ac0 kind:data align:32 .bss start:0x02189ac0 end:0x0219a1a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov041/delinks.txt b/config/eur/arm9/overlays/ov041/delinks.txt index b4d097d7..b3c949d8 100644 --- a/config/eur/arm9/overlays/ov041/delinks.txt +++ b/config/eur/arm9/overlays/ov041/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218dec4 kind:code align:32 - .rodata start:0x0218dec4 end:0x0218e098 kind:data align:4 + .rodata start:0x0218dec4 end:0x0218e098 kind:rodata align:4 .init start:0x0218e098 end:0x0218e30c kind:code align:4 - .ctor start:0x0218e30c end:0x0218e328 kind:data align:4 + .ctor start:0x0218e30c end:0x0218e328 kind:rodata align:4 .data start:0x0218e340 end:0x0218ea80 kind:data align:32 .bss start:0x0218ea80 end:0x0218eb60 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov042/delinks.txt b/config/eur/arm9/overlays/ov042/delinks.txt index 07530a75..744eb0ca 100644 --- a/config/eur/arm9/overlays/ov042/delinks.txt +++ b/config/eur/arm9/overlays/ov042/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218c6f4 kind:code align:32 - .rodata start:0x0218c6f4 end:0x0218c744 kind:data align:4 + .rodata start:0x0218c6f4 end:0x0218c744 kind:rodata align:4 .init start:0x0218c744 end:0x0218c7f8 kind:code align:4 - .ctor start:0x0218c7f8 end:0x0218c804 kind:data align:4 + .ctor start:0x0218c7f8 end:0x0218c804 kind:rodata align:4 .data start:0x0218c820 end:0x0218cd20 kind:data align:32 .bss start:0x0218cd20 end:0x0218cda0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov043/delinks.txt b/config/eur/arm9/overlays/ov043/delinks.txt index 7ddd6d6d..69562b42 100644 --- a/config/eur/arm9/overlays/ov043/delinks.txt +++ b/config/eur/arm9/overlays/ov043/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218d340 kind:code align:32 - .rodata start:0x0218d340 end:0x0218d414 kind:data align:4 + .rodata start:0x0218d340 end:0x0218d414 kind:rodata align:4 .init start:0x0218d414 end:0x0218d5c0 kind:code align:4 - .ctor start:0x0218d5c0 end:0x0218d5cc kind:data align:4 + .ctor start:0x0218d5c0 end:0x0218d5cc kind:rodata align:4 .data start:0x0218d5e0 end:0x0218db00 kind:data align:32 .bss start:0x0218db00 end:0x0218db80 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov044/delinks.txt b/config/eur/arm9/overlays/ov044/delinks.txt index 1f307847..188fb140 100644 --- a/config/eur/arm9/overlays/ov044/delinks.txt +++ b/config/eur/arm9/overlays/ov044/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218e984 kind:code align:32 - .rodata start:0x0218e984 end:0x0218ea9c kind:data align:4 + .rodata start:0x0218e984 end:0x0218ea9c kind:rodata align:4 .init start:0x0218ea9c end:0x0218f1cc kind:code align:4 - .ctor start:0x0218f1cc end:0x0218f1f0 kind:data align:4 + .ctor start:0x0218f1cc end:0x0218f1f0 kind:rodata align:4 .data start:0x0218f200 end:0x0218fee0 kind:data align:32 .bss start:0x0218fee0 end:0x02190040 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov045/delinks.txt b/config/eur/arm9/overlays/ov045/delinks.txt index 266968cc..359004dd 100644 --- a/config/eur/arm9/overlays/ov045/delinks.txt +++ b/config/eur/arm9/overlays/ov045/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02189560 end:0x0218e278 kind:code align:32 - .rodata start:0x0218e278 end:0x0218e3e8 kind:data align:4 + .rodata start:0x0218e278 end:0x0218e3e8 kind:rodata align:4 .init start:0x0218e3e8 end:0x0218e4a8 kind:code align:4 - .ctor start:0x0218e4a8 end:0x0218e4b8 kind:data align:4 + .ctor start:0x0218e4a8 end:0x0218e4b8 kind:rodata align:4 .data start:0x0218e4c0 end:0x0218ed80 kind:data align:32 .bss start:0x0218ed80 end:0x0218ee00 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov046/delinks.txt b/config/eur/arm9/overlays/ov046/delinks.txt index df810b40..aeeafe31 100644 --- a/config/eur/arm9/overlays/ov046/delinks.txt +++ b/config/eur/arm9/overlays/ov046/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02190040 end:0x021942f4 kind:code align:32 - .rodata start:0x021942f4 end:0x021944ac kind:data align:4 + .rodata start:0x021942f4 end:0x021944ac kind:rodata align:4 .init start:0x021944ac end:0x0219463c kind:code align:4 - .ctor start:0x0219463c end:0x02194650 kind:data align:4 + .ctor start:0x0219463c end:0x02194650 kind:rodata align:4 .data start:0x02194660 end:0x02194ba0 kind:data align:32 .bss start:0x02194ba0 end:0x02194ca0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov047/delinks.txt b/config/eur/arm9/overlays/ov047/delinks.txt index 19a45f1c..608eaf50 100644 --- a/config/eur/arm9/overlays/ov047/delinks.txt +++ b/config/eur/arm9/overlays/ov047/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02190040 end:0x021941f0 kind:code align:32 - .rodata start:0x021941f0 end:0x021942f0 kind:data align:4 + .rodata start:0x021941f0 end:0x021942f0 kind:rodata align:4 .init start:0x021942f0 end:0x021944e8 kind:code align:4 - .ctor start:0x021944e8 end:0x021944fc kind:data align:4 + .ctor start:0x021944e8 end:0x021944fc kind:rodata align:4 .data start:0x02194500 end:0x02194a00 kind:data align:32 .bss start:0x02194a00 end:0x02194aa0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov048/delinks.txt b/config/eur/arm9/overlays/ov048/delinks.txt index e267f969..bc429bc7 100644 --- a/config/eur/arm9/overlays/ov048/delinks.txt +++ b/config/eur/arm9/overlays/ov048/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02190040 end:0x0219465c kind:code align:32 - .rodata start:0x0219465c end:0x021946c0 kind:data align:4 + .rodata start:0x0219465c end:0x021946c0 kind:rodata align:4 .init start:0x021946c0 end:0x02194ad4 kind:code align:4 - .ctor start:0x02194ad4 end:0x02194af0 kind:data align:4 + .ctor start:0x02194ad4 end:0x02194af0 kind:rodata align:4 .data start:0x02194b00 end:0x02195400 kind:data align:32 .bss start:0x02195400 end:0x02195500 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov049/delinks.txt b/config/eur/arm9/overlays/ov049/delinks.txt index b4fdabac..f15c743c 100644 --- a/config/eur/arm9/overlays/ov049/delinks.txt +++ b/config/eur/arm9/overlays/ov049/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x021981e0 kind:code align:32 - .rodata start:0x021981e0 end:0x021982c8 kind:data align:4 + .rodata start:0x021981e0 end:0x021982c8 kind:rodata align:4 .init start:0x021982c8 end:0x02198474 kind:code align:4 - .ctor start:0x02198474 end:0x02198484 kind:data align:4 + .ctor start:0x02198474 end:0x02198484 kind:rodata align:4 .data start:0x021984a0 end:0x02198920 kind:data align:32 .bss start:0x02198920 end:0x021989a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov050/delinks.txt b/config/eur/arm9/overlays/ov050/delinks.txt index 7f715155..c2053033 100644 --- a/config/eur/arm9/overlays/ov050/delinks.txt +++ b/config/eur/arm9/overlays/ov050/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x021987cc kind:code align:32 - .rodata start:0x021987cc end:0x0219882c kind:data align:4 + .rodata start:0x021987cc end:0x0219882c kind:rodata align:4 .init start:0x0219882c end:0x021989a8 kind:code align:4 - .ctor start:0x021989a8 end:0x021989b4 kind:data align:4 + .ctor start:0x021989a8 end:0x021989b4 kind:rodata align:4 .data start:0x021989c0 end:0x02198ca0 kind:data align:32 .bss start:0x02198ca0 end:0x02198d00 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov051/delinks.txt b/config/eur/arm9/overlays/ov051/delinks.txt index d870fbf0..52689ec7 100644 --- a/config/eur/arm9/overlays/ov051/delinks.txt +++ b/config/eur/arm9/overlays/ov051/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x02198268 kind:code align:32 - .rodata start:0x02198268 end:0x021982a0 kind:data align:4 + .rodata start:0x02198268 end:0x021982a0 kind:rodata align:4 .init start:0x021982a0 end:0x021984b0 kind:code align:4 - .ctor start:0x021984b0 end:0x021984c8 kind:data align:4 + .ctor start:0x021984b0 end:0x021984c8 kind:rodata align:4 .data start:0x021984e0 end:0x02198a60 kind:data align:32 .bss start:0x02198a60 end:0x02198b20 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov052/delinks.txt b/config/eur/arm9/overlays/ov052/delinks.txt index 88e1edf0..6614fab2 100644 --- a/config/eur/arm9/overlays/ov052/delinks.txt +++ b/config/eur/arm9/overlays/ov052/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195500 end:0x02197888 kind:code align:32 - .rodata start:0x02197888 end:0x021978d4 kind:data align:4 + .rodata start:0x02197888 end:0x021978d4 kind:rodata align:4 .init start:0x021978d4 end:0x02197954 kind:code align:4 - .ctor start:0x02197954 end:0x02197960 kind:data align:4 + .ctor start:0x02197954 end:0x02197960 kind:rodata align:4 .data start:0x02197960 end:0x02197c40 kind:data align:32 .bss start:0x02197c40 end:0x02197ca0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov053/delinks.txt b/config/eur/arm9/overlays/ov053/delinks.txt index 0852c01d..4bc4c519 100644 --- a/config/eur/arm9/overlays/ov053/delinks.txt +++ b/config/eur/arm9/overlays/ov053/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x02199fb8 kind:code align:32 - .rodata start:0x02199fb8 end:0x02199fc4 kind:data align:4 + .rodata start:0x02199fb8 end:0x02199fc4 kind:rodata align:4 .init start:0x02199fc4 end:0x0219a070 kind:code align:4 - .ctor start:0x0219a070 end:0x0219a078 kind:data align:4 + .ctor start:0x0219a070 end:0x0219a078 kind:rodata align:4 .data start:0x0219a080 end:0x0219a180 kind:data align:32 .bss start:0x0219a180 end:0x0219a6a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov054/delinks.txt b/config/eur/arm9/overlays/ov054/delinks.txt index 00b36bb6..2f7ed216 100644 --- a/config/eur/arm9/overlays/ov054/delinks.txt +++ b/config/eur/arm9/overlays/ov054/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x02199914 kind:code align:32 - .rodata start:0x02199914 end:0x02199924 kind:data align:4 + .rodata start:0x02199914 end:0x02199924 kind:rodata align:4 .init start:0x02199924 end:0x02199954 kind:code align:4 - .ctor start:0x02199954 end:0x0219995c kind:data align:4 + .ctor start:0x02199954 end:0x0219995c kind:rodata align:4 .data start:0x02199960 end:0x02199a20 kind:data align:32 .bss start:0x02199a20 end:0x02199aa0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov055/delinks.txt b/config/eur/arm9/overlays/ov055/delinks.txt index 815d5a56..8eeb83ee 100644 --- a/config/eur/arm9/overlays/ov055/delinks.txt +++ b/config/eur/arm9/overlays/ov055/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x021997b0 kind:code align:32 - .rodata start:0x021997b0 end:0x021997ec kind:data align:4 + .rodata start:0x021997b0 end:0x021997ec kind:rodata align:4 .init start:0x021997ec end:0x0219981c kind:code align:4 - .ctor start:0x0219981c end:0x02199824 kind:data align:4 + .ctor start:0x0219981c end:0x02199824 kind:rodata align:4 .data start:0x02199840 end:0x021998a0 kind:data align:32 .bss start:0x021998a0 end:0x02199920 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov056/delinks.txt b/config/eur/arm9/overlays/ov056/delinks.txt index 04bb0a92..20159d47 100644 --- a/config/eur/arm9/overlays/ov056/delinks.txt +++ b/config/eur/arm9/overlays/ov056/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x0219931c kind:code align:32 - .rodata start:0x0219931c end:0x02199328 kind:data align:4 + .rodata start:0x0219931c end:0x02199328 kind:rodata align:4 .init start:0x02199328 end:0x0219937c kind:code align:4 - .ctor start:0x0219937c end:0x02199384 kind:data align:4 + .ctor start:0x0219937c end:0x02199384 kind:rodata align:4 .data start:0x021993a0 end:0x02199400 kind:data align:32 .bss start:0x02199400 end:0x02199500 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov057/delinks.txt b/config/eur/arm9/overlays/ov057/delinks.txt index 71435e87..a6315de5 100644 --- a/config/eur/arm9/overlays/ov057/delinks.txt +++ b/config/eur/arm9/overlays/ov057/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x0219a994 kind:code align:32 - .rodata start:0x0219a994 end:0x0219a9a0 kind:data align:4 + .rodata start:0x0219a994 end:0x0219a9a0 kind:rodata align:4 .init start:0x0219a9a0 end:0x0219aa10 kind:code align:4 - .ctor start:0x0219aa10 end:0x0219aa1c kind:data align:4 + .ctor start:0x0219aa10 end:0x0219aa1c kind:rodata align:4 .data start:0x0219aa20 end:0x0219ab00 kind:data align:32 .bss start:0x0219ab00 end:0x0219ab40 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov058/delinks.txt b/config/eur/arm9/overlays/ov058/delinks.txt index fe87a28e..f53e0902 100644 --- a/config/eur/arm9/overlays/ov058/delinks.txt +++ b/config/eur/arm9/overlays/ov058/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198d00 end:0x0219ad68 kind:code align:32 - .rodata start:0x0219ad68 end:0x0219ad80 kind:data align:4 + .rodata start:0x0219ad68 end:0x0219ad80 kind:rodata align:4 .init start:0x0219ad80 end:0x0219ae7c kind:code align:4 - .ctor start:0x0219ae7c end:0x0219ae84 kind:data align:4 + .ctor start:0x0219ae7c end:0x0219ae84 kind:rodata align:4 .data start:0x0219aea0 end:0x0219afc0 kind:data align:32 .bss start:0x0219afc0 end:0x0219b120 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov059/delinks.txt b/config/eur/arm9/overlays/ov059/delinks.txt index 4554202b..ff7e5c38 100644 --- a/config/eur/arm9/overlays/ov059/delinks.txt +++ b/config/eur/arm9/overlays/ov059/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02198d00 end:0x0219b110 kind:code align:32 - .rodata start:0x0219b110 end:0x0219b124 kind:data align:4 - .ctor start:0x0219b124 end:0x0219b128 kind:data align:4 + .rodata start:0x0219b110 end:0x0219b124 kind:rodata align:4 + .ctor start:0x0219b124 end:0x0219b128 kind:rodata align:4 .data start:0x0219b140 end:0x0219b1c0 kind:data align:32 .bss start:0x0219b1c0 end:0x0219b1c0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov060/delinks.txt b/config/eur/arm9/overlays/ov060/delinks.txt index 6b3ab4cc..ffeee978 100644 --- a/config/eur/arm9/overlays/ov060/delinks.txt +++ b/config/eur/arm9/overlays/ov060/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213dec0 end:0x021476b8 kind:code align:32 - .rodata start:0x021476b8 end:0x021476ec kind:data align:4 - .ctor start:0x021476ec end:0x021476f0 kind:data align:4 + .rodata start:0x021476b8 end:0x021476ec kind:rodata align:4 + .ctor start:0x021476ec end:0x021476f0 kind:rodata align:4 .data start:0x02147700 end:0x021477e0 kind:data align:32 .bss start:0x021477e0 end:0x021485a0 kind:bss align:32 diff --git a/config/eur/arm9/overlays/ov061/delinks.txt b/config/eur/arm9/overlays/ov061/delinks.txt index ee44ae97..8903a646 100644 --- a/config/eur/arm9/overlays/ov061/delinks.txt +++ b/config/eur/arm9/overlays/ov061/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213dec0 end:0x0217a210 kind:code align:32 - .rodata start:0x0217a210 end:0x0217a608 kind:data align:4 - .ctor start:0x0217a608 end:0x0217a60c kind:data align:4 + .rodata start:0x0217a210 end:0x0217a608 kind:rodata align:4 + .ctor start:0x0217a608 end:0x0217a60c kind:rodata align:4 .data start:0x0217a620 end:0x0217ea20 kind:data align:32 .bss start:0x0217ea20 end:0x021819e0 kind:bss align:32 diff --git a/config/usa/arm9/delinks.txt b/config/usa/arm9/delinks.txt index 5c30acbc..d3ab3589 100644 --- a/config/usa/arm9/delinks.txt +++ b/config/usa/arm9/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02000000 end:0x02050c5c kind:code align:32 .init start:0x02050c5c end:0x02050f10 kind:code align:4 - .rodata start:0x02050f10 end:0x02057214 kind:data align:4 - .ctor start:0x02057214 end:0x0205727c kind:data align:4 + .rodata start:0x02050f10 end:0x02057214 kind:rodata align:4 + .ctor start:0x02057214 end:0x0205727c kind:rodata align:4 .data start:0x02057280 end:0x02058dc0 kind:data align:32 .bss start:0x02058dc0 end:0x02077360 kind:bss align:32 @@ -10,6 +10,9 @@ src/Main/Actor/ActorType.cpp: .text start:0x0203e740 end:0x0203e85c .bss start:0x02069120 end:0x02069128 +src/Main/System/OverlayManager.cpp: + .text start:0x0202ff40 end:0x02030038 + libs/cpp/src/__register_global_object.cpp: complete .text start:0x0204f890 end:0x0204f8b0 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index 356452b7..442437bd 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02077360 end:0x020d8710 kind:code align:32 - .rodata start:0x020d8710 end:0x020df2d8 kind:data align:4 + .rodata start:0x020d8710 end:0x020df2d8 kind:rodata align:4 .init start:0x020df2d8 end:0x020e1e28 kind:code align:4 - .ctor start:0x020e1e28 end:0x020e1f0c kind:data align:4 + .ctor start:0x020e1e28 end:0x020e1f0c kind:rodata align:4 .data start:0x020e1f20 end:0x020e92c0 kind:data align:32 .bss start:0x020e92c0 end:0x020ec718 kind:bss align:32 .sbss start:0x020ec718 end:0x020eece0 kind:bss align:4 @@ -16,6 +16,56 @@ src/00_Core/Actor/ActorManager.cpp: .text start:0x020c3374 end:0x020c3df4 .data start:0x020e7248 end:0x020e7294 +src/00_Core/Actor/Dungeon/ActorSwitchObject.cpp: + .text start:0x0208fa10 end:0x02090348 + .init start:0x020df618 end:0x020df658 + .ctor start:0x020e1e64 end:0x020e1e68 + .data start:0x020e28c8 end:0x020e2984 + .sbss start:0x020ecd04 end:0x020ecd24 + +src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: + .text start:0x02090494 end:0x02090898 + .init start:0x020df698 end:0x020df6d8 + .ctor start:0x020e1e6c end:0x020e1e70 + .data start:0x020e2a40 end:0x020e2afc + .sbss start:0x020ecd44 end:0x020ecd64 + +src/00_Core/Actor/Navi/ActorNavi.cpp: + .text start:0x020b8080 end:0x020b8578 + .init start:0x020e1278 end:0x020e12dc + .ctor start:0x020e1ea8 end:0x020e1eac + .data start:0x020e64b4 end:0x020e6614 + .sbss start:0x020ee140 end:0x020ee178 + +src/00_Core/Actor/Navi/ActorForceNavi.cpp: + complete + .text start:0x020b85cc end:0x020b8644 + .init start:0x020e12dc end:0x020e131c + .ctor start:0x020e1eac end:0x020e1eb0 + .data start:0x020e6614 end:0x020e670c + .sbss start:0x020ee178 end:0x020ee198 + +src/00_Core/Actor/Navi/ActorNaviBase.cpp: + .text start:0x020b87fc end:0x020bb0b8 + .rodata start:0x020dc7bc end:0x020dc7f8 + .data start:0x020e670c end:0x020e6874 + .sbss start:0x020ee198 end:0x020ee19c + +src/00_Core/Actor/Dungeon/ActorActionObject.cpp: + .text start:0x020be138 end:0x020be3b8 + .init start:0x020e1ab4 end:0x020e1af4 + .ctor start:0x020e1eb4 end:0x020e1eb8 + .data start:0x020e6cdc end:0x020e6d98 + .sbss start:0x020ee4fc end:0x020ee51c + +src/00_Core/Actor/Navi/ActorWisdomNavi.cpp: + complete + .text start:0x020c0b04 end:0x020c0b7c + .init start:0x020e1af4 end:0x020e1b34 + .ctor start:0x020e1eb8 end:0x020e1ebc + .data start:0x020e7038 end:0x020e7130 + .sbss start:0x020ee530 end:0x020ee550 + src/00_Core/Item/Item.cpp: .text start:0x020acfc0 end:0x020ad030 .rodata start:0x020dc514 end:0x020dc664 diff --git a/config/usa/arm9/overlays/ov000/relocs.txt b/config/usa/arm9/overlays/ov000/relocs.txt index eb606487..5ae92103 100644 --- a/config/usa/arm9/overlays/ov000/relocs.txt +++ b/config/usa/arm9/overlays/ov000/relocs.txt @@ -6526,7 +6526,7 @@ from:0x020b85c8 kind:load to:0x020dc798 module:overlay(0) from:0x020b85e4 kind:arm_call to:0x0202e9d8 module:main from:0x020b85f0 kind:arm_call_thumb to:0x02107790 module:overlay(4) from:0x020b8604 kind:load to:0x027e0fe0 module:dtcm -from:0x020b8608 kind:load to:0x020e661c module:overlay(0) +from:0x020b8608 kind:load to:0x020e6614 add:8 module:overlay(0) from:0x020b861c kind:arm_call_thumb to:0x02107914 module:overlay(4) from:0x020b8624 kind:arm_call to:0x0202ea08 module:main from:0x020b8638 kind:arm_call_thumb to:0x02107914 module:overlay(4) @@ -7436,7 +7436,7 @@ from:0x020c0afc kind:load to:0x02050f10 module:main from:0x020c0b1c kind:arm_call to:0x0202e9d8 module:main from:0x020c0b28 kind:arm_call_thumb to:0x02107790 module:overlay(4) from:0x020c0b3c kind:load to:0x027e0fe0 module:dtcm -from:0x020c0b40 kind:load to:0x020e7040 module:overlay(0) +from:0x020c0b40 kind:load to:0x020e7038 add:8 module:overlay(0) from:0x020c0b54 kind:arm_call_thumb to:0x02107914 module:overlay(4) from:0x020c0b5c kind:arm_call to:0x0202ea08 module:main from:0x020c0b70 kind:arm_call_thumb to:0x02107914 module:overlay(4) diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index f22f0ea2..46c2987c 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -965,7 +965,7 @@ _ZN14ActorEventIcon8vfunc_08Ev kind:function(arm,size=0xb0) addr:0x2090520 _ZN14ActorEventIcon8vfunc_14Ej kind:function(arm,size=0xc) addr:0x20905d0 _ZN14ActorEventIcon8vfunc_18Ej kind:function(arm,size=0xc) addr:0x20905dc _ZN14ActorEventIcon19func_ov000_02090648Ej kind:function(arm,size=0x12c) addr:0x20905e8 -_Z19func_ov000_02090774j kind:function(arm,size=0x2c) addr:0x2090714 +_ZN14ActorEventIcon19func_ov000_02090774Ej kind:function(arm,size=0x2c) addr:0x2090714 _ZN14ActorEventIcon8vfunc_1cEPt kind:function(arm,size=0x110) addr:0x2090740 _ZN14ActorEventIconD1Ev kind:function(arm,size=0x20) addr:0x2090850 _ZN14ActorEventIconD0Ev kind:function(arm,size=0x28) addr:0x2090870 @@ -2397,40 +2397,40 @@ func_ov000_020b7fe8 kind:function(arm,size=0x14) addr:0x20b7f88 _ZN13PlayerManager4SaveEP15SaveItemManager kind:function(thumb,size=0x50) addr:0x20b7f9c _ZN13PlayerManager17IncreaseMaxHealthEs kind:function(thumb,size=0x14) addr:0x20b7fec _ZN13PlayerManager19UpdateShipMaxHealthEv kind:function(thumb,size=0x80) addr:0x20b8000 -func_ov000_020b80e0 kind:function(arm,size=0x30) addr:0x20b8080 -func_ov000_020b8110 kind:function(arm,size=0x24) addr:0x20b80b0 -func_ov000_020b8134 kind:function(arm,size=0x14) addr:0x20b80d4 -func_ov000_020b8148 kind:function(arm,size=0x1c) addr:0x20b80e8 -func_ov000_020b8164 kind:function(arm,size=0x50) addr:0x20b8104 -func_ov000_020b81b4 kind:function(arm,size=0x40) addr:0x20b8154 -func_ov000_020b81f4 kind:function(arm,size=0xc) addr:0x20b8194 -func_ov000_020b8200 kind:function(arm,size=0x10) addr:0x20b81a0 -func_ov000_020b8210 kind:function(arm,size=0x38) addr:0x20b81b0 -func_ov000_020b8248 kind:function(arm,size=0x38) addr:0x20b81e8 -func_ov000_020b8280 kind:function(arm,size=0x8) addr:0x20b8220 -func_ov000_020b8288 kind:function(arm,size=0x8) addr:0x20b8228 -func_ov000_020b8290 kind:function(arm,size=0x2c) addr:0x20b8230 -func_ov000_020b82bc kind:function(arm,size=0x2c) addr:0x20b825c -func_ov000_020b82e8 kind:function(arm,size=0x58) addr:0x20b8288 -func_ov000_020b8340 kind:function(arm,size=0xb8) addr:0x20b82e0 -func_ov000_020b83f8 kind:function(arm,size=0x20) addr:0x20b8398 -func_ov000_020b8418 kind:function(arm,size=0x3c) addr:0x20b83b8 -func_ov000_020b8454 kind:function(arm,size=0x24) addr:0x20b83f4 -func_ov000_020b8478 kind:function(arm,size=0x24) addr:0x20b8418 -func_ov000_020b849c kind:function(arm,size=0x34) addr:0x20b843c -func_ov000_020b84d0 kind:function(arm,size=0x8) addr:0x20b8470 -func_ov000_020b84d8 kind:function(arm,size=0x54) addr:0x20b8478 -func_ov000_020b852c kind:function(arm,size=0x10) addr:0x20b84cc -func_ov000_020b853c kind:function(arm,size=0x14) addr:0x20b84dc -func_ov000_020b8550 kind:function(arm,size=0x48) addr:0x20b84f0 -func_ov000_020b8598 kind:function(arm,size=0x40) addr:0x20b8538 +_ZN9ActorNavi6CreateEv kind:function(arm,size=0x30) addr:0x20b8080 +_ZN24UnkStruct_ov000_020b8110C2Ev kind:function(arm,size=0x24) addr:0x20b80b0 +_ZN24UnkStruct_ov000_020b8110D1Ev kind:function(arm,size=0x14) addr:0x20b80d4 +_ZN24UnkStruct_ov000_020b8110D0Ev kind:function(arm,size=0x1c) addr:0x20b80e8 +_ZN24UnkStruct_ov000_020b81108vfunc_08EPs kind:function(arm,size=0x50) addr:0x20b8104 +_ZN24UnkStruct_ov000_020b81108vfunc_18EPi kind:function(arm,size=0x40) addr:0x20b8154 +_ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b8194 +_ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b81a0 +_ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b81b0 +_ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b81e8 +_ZN9ActorNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b8220 +_ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8228 +_ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8230 +_ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b825c +_ZN9ActorNavi9SetActiveEb kind:function(arm,size=0x58) addr:0x20b8288 +_ZN9ActorNavi8vfunc_e0Ev kind:function(arm,size=0xb8) addr:0x20b82e0 +_ZN9ActorNavi8vfunc_d8Ev kind:function(arm,size=0x20) addr:0x20b8398 +_ZN9ActorNavi8vfunc_20Eb kind:function(arm,size=0x3c) addr:0x20b83b8 +_ZN9ActorNavi8vfunc_ccEPi kind:function(arm,size=0x24) addr:0x20b83f4 +_ZN9ActorNavi8vfunc_c0EP5Vec3p kind:function(arm,size=0x24) addr:0x20b8418 +_ZN9ActorNavi8vfunc_e8Ev kind:function(arm,size=0x34) addr:0x20b843c +_ZN9ActorNavi8vfunc_8cEv kind:function(arm,size=0x8) addr:0x20b8470 +_ZN9ActorNavi8vfunc_ecEv kind:function(arm,size=0x54) addr:0x20b8478 +_Z14GetEquipHammerv kind:function(arm,size=0x10) addr:0x20b84cc local +_ZN9ActorNavi19func_ov000_020b853cEv kind:function(arm,size=0x14) addr:0x20b84dc +_ZN9ActorNaviD1Ev kind:function(arm,size=0x48) addr:0x20b84f0 +_ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8538 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b8578 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b85a0 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b85b0 -func_ov000_020b862c kind:function(arm,size=0x40) addr:0x20b85cc -func_ov000_020b866c kind:function(arm,size=0x8) addr:0x20b860c -func_ov000_020b8674 kind:function(arm,size=0x1c) addr:0x20b8614 -func_ov000_020b8690 kind:function(arm,size=0x14) addr:0x20b8630 +_ZN14ActorForceNavi6CreateEv kind:function(arm,size=0x40) addr:0x20b85cc +_ZN14ActorForceNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20b860c +_ZN14ActorForceNaviD0Ev kind:function(arm,size=0x1c) addr:0x20b8614 +_ZN14ActorForceNaviD1Ev kind:function(arm,size=0x14) addr:0x20b8630 func_ov000_020b86a4 kind:function(arm,size=0x44) addr:0x20b8644 func_ov000_020b86e8 kind:function(arm,size=0x30) addr:0x20b8688 func_ov000_020b8718 kind:function(arm,size=0x8) addr:0x20b86b8 @@ -2617,13 +2617,13 @@ func_ov000_020bd958 kind:function(arm,size=0x4fc) addr:0x20bd8f8 func_ov000_020bde54 kind:function(arm,size=0x60) addr:0x20bddf4 func_ov000_020bdeb4 kind:function(arm,size=0x10c) addr:0x20bde54 func_ov000_020bdfc0 kind:function(arm,size=0x1d8) addr:0x20bdf60 -func_ov000_020be198 kind:function(arm,size=0x30) addr:0x20be138 -func_ov000_020be1c8 kind:function(arm,size=0x20) addr:0x20be168 -func_ov000_020be1e8 kind:function(arm,size=0x14) addr:0x20be188 -func_ov000_020be1fc kind:function(arm,size=0x1c) addr:0x20be19c -func_ov000_020be218 kind:function(arm,size=0x7c) addr:0x20be1b8 -func_ov000_020be294 kind:function(arm,size=0x178) addr:0x20be234 -func_ov000_020be40c kind:function(arm,size=0xc) addr:0x20be3ac +_ZN17ActorActionObject6CreateEv kind:function(arm,size=0x30) addr:0x20be138 +_ZN17ActorActionObjectC1Ev kind:function(arm,size=0x20) addr:0x20be168 +_ZN17ActorActionObjectD1Ev kind:function(arm,size=0x14) addr:0x20be188 +_ZN17ActorActionObjectD0Ev kind:function(arm,size=0x1c) addr:0x20be19c +_ZN17ActorActionObject8vfunc_08Ev kind:function(arm,size=0x7c) addr:0x20be1b8 +_ZN17ActorActionObject8vfunc_14Ej kind:function(arm,size=0x178) addr:0x20be234 +_ZN17ActorActionObject8vfunc_18Ej kind:function(arm,size=0xc) addr:0x20be3ac func_ov000_020be418 kind:function(arm,size=0x4c) addr:0x20be3b8 func_ov000_020be464 kind:function(arm,size=0x78) addr:0x20be404 func_ov000_020be4dc kind:function(arm,size=0x64) addr:0x20be47c @@ -2696,10 +2696,10 @@ _ZN11EquipShield8vfunc_1cEv kind:function(arm,size=0xc) addr:0x20c0798 _ZN11EquipShield8vfunc_30Ev kind:function(arm,size=0x68) addr:0x20c07a4 _ZN11EquipShield8vfunc_38Ei kind:function(arm,size=0x21c) addr:0x20c080c _ZNK11EquipShield9GetHitboxEP8Cylinder kind:function(arm,size=0xdc) addr:0x20c0a28 -func_ov000_020c0b64 kind:function(arm,size=0x40) addr:0x20c0b04 -func_ov000_020c0ba4 kind:function(arm,size=0x8) addr:0x20c0b44 -func_ov000_020c0bac kind:function(arm,size=0x1c) addr:0x20c0b4c -func_ov000_020c0bc8 kind:function(arm,size=0x14) addr:0x20c0b68 +_ZN15ActorWisdomNavi6CreateEv kind:function(arm,size=0x40) addr:0x20c0b04 +_ZN15ActorWisdomNavi10GetFairyIdEv kind:function(arm,size=0x8) addr:0x20c0b44 +_ZN15ActorWisdomNaviD0Ev kind:function(arm,size=0x1c) addr:0x20c0b4c +_ZN15ActorWisdomNaviD1Ev kind:function(arm,size=0x14) addr:0x20c0b68 func_ov000_020c0bdc kind:function(arm,size=0x2c) addr:0x20c0b7c func_ov000_020c0c08 kind:function(thumb,size=0x28) addr:0x20c0ba8 func_ov000_020c0c30 kind:function(thumb,size=0x4) addr:0x20c0bd0 @@ -2745,7 +2745,7 @@ _ZN5Actor8vfunc_30Ev kind:function(arm,size=0x8) addr:0x20c1750 _ZN5Actor8vfunc_14Ej kind:function(arm,size=0x4) addr:0x20c1758 _ZN5Actor8vfunc_18Ej kind:function(arm,size=0x18) addr:0x20c175c _ZN5Actor8vfunc_1cEPt kind:function(arm,size=0xc0) addr:0x20c1774 -_ZN5Actor8vfunc_20Ei kind:function(arm,size=0x4) addr:0x20c1834 +_ZN5Actor8vfunc_20Eb kind:function(arm,size=0x4) addr:0x20c1834 _ZN5Actor10SetUnk_129Eb kind:function(arm,size=0x10) addr:0x20c1838 _ZN5Actor10SetUnk_11bEv kind:function(arm,size=0x1c) addr:0x20c1848 _ZN5Actor11SetVelocityEP5Vec3p kind:function(arm,size=0x38) addr:0x20c1864 @@ -2773,7 +2773,7 @@ _ZN5Actor20KillPickupItemActorsEv kind:function(arm,size=0x54) addr:0x20c1ab8 _ZN5Actor15TrySetTransformEP9Transform kind:function(arm,size=0x48) addr:0x20c1b0c _ZN5Actor12SetTransformEP9Transform kind:function(arm,size=0x44) addr:0x20c1b54 _ZN5Actor8vfunc_a8Ev kind:function(arm,size=0x4) addr:0x20c1b98 -_ZN5Actor18func_Ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1b9c +_ZN5Actor18func_ov00_020c1bfcEi kind:function(arm,size=0x24) addr:0x20c1b9c _ZN5Actor18func_ov00_020c1c20Eii kind:function(arm,size=0x28) addr:0x20c1bc0 _ZN5Actor8vfunc_48EP9Knockback kind:function(arm,size=0x8) addr:0x20c1be8 _ZN5Actor8vfunc_4cEPi kind:function(arm,size=0x44) addr:0x20c1bf0 @@ -3940,7 +3940,7 @@ __sinit_ov000_020df4cc kind:function(arm,size=0x174) addr:0x20df46c __sinit_ov000_020df640 kind:function(arm,size=0x38) addr:0x20df5e0 __sinit_ActorSwitchObject.cpp kind:function(arm,size=0x40) addr:0x20df618 __sinit_ov000_020df6b8 kind:function(arm,size=0x40) addr:0x20df658 -__sinit_ov000_020df6f8 kind:function(arm,size=0x40) addr:0x20df698 +__sinit_ActorEventIcon.cpp kind:function(arm,size=0x40) addr:0x20df698 __sinit_ov000_020df738 kind:function(arm,size=0x38) addr:0x20df6d8 __sinit_ov000_020df770 kind:function(arm,size=0x20) addr:0x20df710 __sinit_ov000_020df790 kind:function(arm,size=0x1718) addr:0x20df730 @@ -3955,11 +3955,11 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e1178 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e11ac __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e11f0 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1230 -__sinit_ov000_020e12d8 kind:function(arm,size=0x64) addr:0x20e1278 -__sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e12dc +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 local +__sinit_ActorForceNavi.cpp kind:function(arm,size=0x40) addr:0x20e12dc local __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c -__sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1ab4 -__sinit_ov000_020e1b54 kind:function(arm,size=0x40) addr:0x20e1af4 +__sinit_ActorActionObject.cpp kind:function(arm,size=0x40) addr:0x20e1ab4 local +__sinit_ActorWisdomNavi.cpp kind:function(arm,size=0x40) addr:0x20e1af4 local __sinit_ov000_020e1b94 kind:function(arm,size=0x40) addr:0x20e1b34 __sinit_ov000_020e1bd4 kind:function(arm,size=0x40) addr:0x20e1b74 __sinit_ov000_020e1c14 kind:function(arm,size=0x40) addr:0x20e1bb4 @@ -4768,7 +4768,7 @@ data_ov000_020e59fc kind:data(any) addr:0x20e599c data_ov000_020e5a0c kind:data(any) addr:0x20e59ac data_ov000_020e5a20 kind:data(any) addr:0x20e59c0 data_ov000_020e5a34 kind:data(any) addr:0x20e59d4 -_ZTV13LinkStateItem kind:data(any) addr:0x20e59e8 +_ZTV13LinkStateItem kind:data(any) addr:0x20e59e0 data_ov000_020e5a8c kind:data(any) addr:0x20e5a2c data_ov000_020e5a90 kind:data(any) addr:0x20e5a30 data_ov000_020e5a94 kind:data(any) addr:0x20e5a34 @@ -4956,9 +4956,9 @@ data_ov000_020e6528 kind:data(any) addr:0x20e64c8 data_ov000_020e652c kind:data(any) addr:0x20e64cc data_ov000_020e6530 kind:data(any) addr:0x20e64d0 data_ov000_020e6534 kind:data(any) addr:0x20e64d4 -data_ov000_020e6560 kind:data(any) addr:0x20e6500 -data_ov000_020e6658 kind:data(any) addr:0x20e65f8 -data_ov000_020e667c kind:data(any) addr:0x20e661c +_ZTV9ActorNavi kind:data(any) addr:0x20e6500 +_ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e65f8 +_ZTV14ActorForceNavi kind:data(any) addr:0x20e6614 data_ov000_020e676c kind:data(any) addr:0x20e670c data_ov000_020e6770 kind:data(any) addr:0x20e6710 data_ov000_020e6774 kind:data(any) addr:0x20e6714 @@ -5017,7 +5017,7 @@ data_ov000_020e6c58 kind:data(any) addr:0x20e6bf8 data_ov000_020e6c5c kind:data(any) addr:0x20e6bfc _ZTV14PlayerLinkBase kind:data(any) addr:0x20e6c28 data_ov000_020e6d18 kind:data(any) addr:0x20e6cb8 -data_ov000_020e6d44 kind:data(any) addr:0x20e6ce4 +_ZTV17ActorActionObject kind:data(any) addr:0x20e6ce4 data_ov000_020e6df8 kind:data(any) addr:0x20e6d98 data_ov000_020e6dfc kind:data(any) addr:0x20e6d9c data_ov000_020e6e08 kind:data(any) addr:0x20e6da8 @@ -5057,7 +5057,7 @@ data_ov000_020e7014 kind:data(any) addr:0x20e6fb4 data_ov000_020e7018 kind:data(any) addr:0x20e6fb8 data_ov000_020e701c kind:data(any) addr:0x20e6fbc data_ov000_020e7048 kind:data(any) addr:0x20e6fe8 -data_ov000_020e70a0 kind:data(any) addr:0x20e7040 +_ZTV15ActorWisdomNavi kind:data(any) addr:0x20e7038 data_ov000_020e7198 kind:data(any) addr:0x20e7138 data_ov000_020e71a0 kind:data(any) addr:0x20e7140 data_ov000_020e71a4 kind:data(any) addr:0x20e7144 @@ -5070,14 +5070,14 @@ data_ov000_020e71bc kind:data(any) addr:0x20e715c sShipTypes kind:data(any) addr:0x20e7160 _ZTV17KillPickupsFilter kind:data(any) addr:0x20e7188 _ZTV5Actor kind:data(any) addr:0x20e7194 -data_ov000_020e72a8 kind:data(any) addr:0x20e7248 -data_ov000_020e72ac kind:data(any) addr:0x20e724c -data_ov000_020e72b0 kind:data(any) addr:0x20e7250 -data_ov000_020e72b4 kind:data(any) addr:0x20e7254 -data_ov000_020e72b8 kind:data(any) addr:0x20e7258 -data_ov000_020e72bc kind:data(any) addr:0x20e725c -data_ov000_020e72c0 kind:data(any) addr:0x20e7260 -data_ov000_020e72c4 kind:data(any) addr:0x20e7264 +@965 kind:data(any) addr:0x20e7248 local +@964 kind:data(any) addr:0x20e724c local +@963 kind:data(any) addr:0x20e7250 local +@962 kind:data(any) addr:0x20e7254 local +@961 kind:data(any) addr:0x20e7258 local +@960 kind:data(any) addr:0x20e725c local +@959 kind:data(any) addr:0x20e7260 local +@958 kind:data(any) addr:0x20e7264 local _ZTV11FilterActor kind:data(any) addr:0x20e7288 data_ov000_020e72fc kind:data(any) addr:0x20e729c data_ov000_020e7300 kind:data(any) addr:0x20e72a0 @@ -5875,12 +5875,12 @@ data_ov000_020ee16c kind:bss addr:0x20ee10c data_ov000_020ee178 kind:bss addr:0x20ee118 data_ov000_020ee184 kind:bss addr:0x20ee124 data_ov000_020ee198 kind:bss addr:0x20ee138 -data_ov000_020ee1a0 kind:bss addr:0x20ee140 -data_ov000_020ee1ac kind:bss addr:0x20ee14c -data_ov000_020ee1c0 kind:bss addr:0x20ee160 +@418 kind:bss addr:0x20ee140 local +_ZN9ActorNavi5gTypeE kind:bss addr:0x20ee14c +@419 kind:bss addr:0x20ee160 local data_ov000_020ee1cc kind:bss addr:0x20ee16c -data_ov000_020ee1d8 kind:bss addr:0x20ee178 -data_ov000_020ee1e4 kind:bss addr:0x20ee184 +@403 kind:bss addr:0x20ee178 local +_ZN14ActorForceNavi5gTypeE kind:bss addr:0x20ee184 data_ov000_020ee1f8 kind:bss addr:0x20ee198 data_ov000_020ee1fc kind:bss addr:0x20ee19c data_ov000_020ee208 kind:bss addr:0x20ee1a8 @@ -5939,12 +5939,12 @@ data_ov000_020ee50c kind:bss addr:0x20ee4ac data_ov000_020ee520 kind:bss addr:0x20ee4c0 data_ov000_020ee534 kind:bss addr:0x20ee4d4 data_ov000_020ee548 kind:bss addr:0x20ee4e8 -data_ov000_020ee55c kind:bss addr:0x20ee4fc -data_ov000_020ee568 kind:bss addr:0x20ee508 +@360 kind:bss addr:0x20ee4fc local +_ZN17ActorActionObject5gTypeE kind:bss addr:0x20ee508 gPlayerAnimHandler kind:bss addr:0x20ee51c data_ov000_020ee588 kind:bss addr:0x20ee528 -data_ov000_020ee590 kind:bss addr:0x20ee530 -data_ov000_020ee59c kind:bss addr:0x20ee53c +@403 kind:bss addr:0x20ee530 local +_ZN15ActorWisdomNavi5gTypeE kind:bss addr:0x20ee53c data_ov000_020ee5b0 kind:bss addr:0x20ee550 data_ov000_020ee5bc kind:bss addr:0x20ee55c data_ov000_020ee5d0 kind:bss addr:0x20ee570 diff --git a/config/usa/arm9/overlays/ov001/delinks.txt b/config/usa/arm9/overlays/ov001/delinks.txt index 24709b61..12545356 100644 --- a/config/usa/arm9/overlays/ov001/delinks.txt +++ b/config/usa/arm9/overlays/ov001/delinks.txt @@ -1,6 +1,6 @@ .text start:0x020eece0 end:0x020f8654 kind:code align:32 - .rodata start:0x020f8654 end:0x020f8894 kind:data align:4 - .ctor start:0x020f8894 end:0x020f8898 kind:data align:4 + .rodata start:0x020f8654 end:0x020f8894 kind:rodata align:4 + .ctor start:0x020f8894 end:0x020f8898 kind:rodata align:4 .data start:0x020f88a0 end:0x020f8b00 kind:data align:32 .bss start:0x020f8b00 end:0x020ff140 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov002/delinks.txt b/config/usa/arm9/overlays/ov002/delinks.txt index 539058e7..bb08ad8c 100644 --- a/config/usa/arm9/overlays/ov002/delinks.txt +++ b/config/usa/arm9/overlays/ov002/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eece0 end:0x020f66cc kind:code align:32 - .rodata start:0x020f66cc end:0x020f6918 kind:data align:4 + .rodata start:0x020f66cc end:0x020f6918 kind:rodata align:4 .init start:0x020f6918 end:0x020f6944 kind:code align:4 - .ctor start:0x020f6944 end:0x020f694c kind:data align:4 + .ctor start:0x020f6944 end:0x020f694c kind:rodata align:4 .data start:0x020f6960 end:0x020f7100 kind:data align:32 .bss start:0x020f7100 end:0x02100120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov003/delinks.txt b/config/usa/arm9/overlays/ov003/delinks.txt index fc653fb6..a19cf6ed 100644 --- a/config/usa/arm9/overlays/ov003/delinks.txt +++ b/config/usa/arm9/overlays/ov003/delinks.txt @@ -1,7 +1,7 @@ .text start:0x020eece0 end:0x020fc3c8 kind:code align:32 - .rodata start:0x020fc3c8 end:0x020ffd9c kind:data align:4 + .rodata start:0x020fc3c8 end:0x020ffd9c kind:rodata align:4 .init start:0x020ffd9c end:0x020fff40 kind:code align:4 - .ctor start:0x020fff40 end:0x020fff68 kind:data align:4 + .ctor start:0x020fff40 end:0x020fff68 kind:rodata align:4 .data start:0x020fff80 end:0x02100a00 kind:data align:32 .bss start:0x02100a00 end:0x02100a60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov004/delinks.txt b/config/usa/arm9/overlays/ov004/delinks.txt index 4d0af9ea..70de7a14 100644 --- a/config/usa/arm9/overlays/ov004/delinks.txt +++ b/config/usa/arm9/overlays/ov004/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100a60 end:0x0210f7a4 kind:code align:32 - .rodata start:0x0210f7a4 end:0x0210fcd8 kind:data align:4 + .rodata start:0x0210f7a4 end:0x0210fcd8 kind:rodata align:4 .init start:0x0210fcd8 end:0x0210fd10 kind:code align:4 - .ctor start:0x0210fd10 end:0x0210fd1c kind:data align:4 + .ctor start:0x0210fd10 end:0x0210fd1c kind:rodata align:4 .data start:0x0210fd20 end:0x02111360 kind:data align:32 .bss start:0x02111360 end:0x02111360 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov004/relocs.txt b/config/usa/arm9/overlays/ov004/relocs.txt index 76d78e03..13a0063b 100644 --- a/config/usa/arm9/overlays/ov004/relocs.txt +++ b/config/usa/arm9/overlays/ov004/relocs.txt @@ -1960,7 +1960,7 @@ from:0x021099cc kind:thumb_call_arm to:0x020d04d0 module:overlay(0) from:0x021099d2 kind:thumb_call to:0x02109930 module:overlay(4) from:0x021099de kind:thumb_call to:0x0210ad54 module:overlay(4) from:0x02109a3a kind:thumb_call_arm to:0x0204f5d0 module:main -from:0x02109a58 kind:load to:0x020e59e8 add:8 module:overlay(0) +from:0x02109a58 kind:load to:0x020e59e0 add:8 module:overlay(0) from:0x02109a5c kind:load to:0x02107955 module:overlay(4) from:0x02109a60 kind:load to:0x020571b8 module:main from:0x02109a64 kind:load to:0x020b7d14 module:overlay(0) diff --git a/config/usa/arm9/overlays/ov005/delinks.txt b/config/usa/arm9/overlays/ov005/delinks.txt index 6183b59c..54366dda 100644 --- a/config/usa/arm9/overlays/ov005/delinks.txt +++ b/config/usa/arm9/overlays/ov005/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02100a60 end:0x02112220 kind:code align:32 - .rodata start:0x02112220 end:0x0211233c kind:data align:4 + .rodata start:0x02112220 end:0x0211233c kind:rodata align:4 .init start:0x0211233c end:0x021123e4 kind:code align:4 - .ctor start:0x021123e4 end:0x021123f8 kind:data align:4 + .ctor start:0x021123e4 end:0x021123f8 kind:rodata align:4 .data start:0x02112400 end:0x02112ba0 kind:data align:32 .bss start:0x02112ba0 end:0x02112ba0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov006/delinks.txt b/config/usa/arm9/overlays/ov006/delinks.txt index ac21294c..09230c08 100644 --- a/config/usa/arm9/overlays/ov006/delinks.txt +++ b/config/usa/arm9/overlays/ov006/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100a60 end:0x02102f7c kind:code align:32 - .rodata start:0x02102f7c end:0x0210392c kind:data align:4 - .ctor start:0x0210392c end:0x02103930 kind:data align:4 + .rodata start:0x02102f7c end:0x0210392c kind:rodata align:4 + .ctor start:0x0210392c end:0x02103930 kind:rodata align:4 .data start:0x02103940 end:0x02103f80 kind:data align:32 .bss start:0x02103f80 end:0x02103fa0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov007/delinks.txt b/config/usa/arm9/overlays/ov007/delinks.txt index 53c6f3e7..3b0f2764 100644 --- a/config/usa/arm9/overlays/ov007/delinks.txt +++ b/config/usa/arm9/overlays/ov007/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02100a60 end:0x02102848 kind:code align:32 - .rodata start:0x02102848 end:0x021028b8 kind:data align:4 - .ctor start:0x021028b8 end:0x021028bc kind:data align:4 + .rodata start:0x02102848 end:0x021028b8 kind:rodata align:4 + .ctor start:0x021028b8 end:0x021028bc kind:rodata align:4 .data start:0x021028c0 end:0x02102a20 kind:data align:32 .bss start:0x02102a20 end:0x0210eac0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov008/delinks.txt b/config/usa/arm9/overlays/ov008/delinks.txt index 9ab2fc95..2dcabb64 100644 --- a/config/usa/arm9/overlays/ov008/delinks.txt +++ b/config/usa/arm9/overlays/ov008/delinks.txt @@ -1,5 +1,5 @@ .text start:0x02112ba0 end:0x02113a74 kind:code align:32 - .ctor start:0x02113a74 end:0x02113a78 kind:data align:4 + .ctor start:0x02113a74 end:0x02113a78 kind:rodata align:4 .data start:0x02113a80 end:0x02113b00 kind:data align:32 .bss start:0x02113b00 end:0x02113b00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov009/delinks.txt b/config/usa/arm9/overlays/ov009/delinks.txt index 96d38eb9..0c4bafd7 100644 --- a/config/usa/arm9/overlays/ov009/delinks.txt +++ b/config/usa/arm9/overlays/ov009/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112ba0 end:0x0211d90c kind:code align:32 - .rodata start:0x0211d90c end:0x0211e424 kind:data align:4 + .rodata start:0x0211d90c end:0x0211e424 kind:rodata align:4 .init start:0x0211e424 end:0x0211e5e0 kind:code align:4 - .ctor start:0x0211e5e0 end:0x0211e600 kind:data align:4 + .ctor start:0x0211e5e0 end:0x0211e600 kind:rodata align:4 .data start:0x0211e600 end:0x0211f4a0 kind:data align:32 .bss start:0x0211f4a0 end:0x0211f5c0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov010/delinks.txt b/config/usa/arm9/overlays/ov010/delinks.txt index 6b71d392..f715f316 100644 --- a/config/usa/arm9/overlays/ov010/delinks.txt +++ b/config/usa/arm9/overlays/ov010/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112ba0 end:0x0211e6d0 kind:code align:32 - .rodata start:0x0211e6d0 end:0x0211e998 kind:data align:4 - .ctor start:0x0211e998 end:0x0211e99c kind:data align:4 + .rodata start:0x0211e6d0 end:0x0211e998 kind:rodata align:4 + .ctor start:0x0211e998 end:0x0211e99c kind:rodata align:4 .data start:0x0211e9a0 end:0x0211f380 kind:data align:32 .bss start:0x0211f380 end:0x0211f3e0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov011/delinks.txt b/config/usa/arm9/overlays/ov011/delinks.txt index 6a3b17a5..3d3d51db 100644 --- a/config/usa/arm9/overlays/ov011/delinks.txt +++ b/config/usa/arm9/overlays/ov011/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112ba0 end:0x0212b98c kind:code align:32 - .rodata start:0x0212b98c end:0x0212ec80 kind:data align:4 - .ctor start:0x0212ec80 end:0x0212ec84 kind:data align:4 + .rodata start:0x0212b98c end:0x0212ec80 kind:rodata align:4 + .ctor start:0x0212ec80 end:0x0212ec84 kind:rodata align:4 .data start:0x0212eca0 end:0x021307a0 kind:data align:32 .bss start:0x021307a0 end:0x02132e60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov012/delinks.txt b/config/usa/arm9/overlays/ov012/delinks.txt index c056e809..42eb8bf6 100644 --- a/config/usa/arm9/overlays/ov012/delinks.txt +++ b/config/usa/arm9/overlays/ov012/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02112ba0 end:0x0213442c kind:code align:32 - .rodata start:0x0213442c end:0x0213544c kind:data align:4 + .rodata start:0x0213442c end:0x0213544c kind:rodata align:4 .init start:0x0213544c end:0x02135874 kind:code align:4 - .ctor start:0x02135874 end:0x021358a0 kind:data align:4 + .ctor start:0x02135874 end:0x021358a0 kind:rodata align:4 .data start:0x021358a0 end:0x02137be0 kind:data align:32 .bss start:0x02137be0 end:0x0213de40 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov013/delinks.txt b/config/usa/arm9/overlays/ov013/delinks.txt index ac1c6866..47b516c9 100644 --- a/config/usa/arm9/overlays/ov013/delinks.txt +++ b/config/usa/arm9/overlays/ov013/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02112ba0 end:0x02115f84 kind:code align:32 - .rodata start:0x02115f84 end:0x0211606c kind:data align:4 - .ctor start:0x0211606c end:0x02116074 kind:data align:4 + .rodata start:0x02115f84 end:0x0211606c kind:rodata align:4 + .ctor start:0x0211606c end:0x02116074 kind:rodata align:4 .data start:0x02116080 end:0x02116180 kind:data align:32 .bss start:0x02116180 end:0x02116320 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov014/delinks.txt b/config/usa/arm9/overlays/ov014/delinks.txt index 744a0f4e..c0472e4a 100644 --- a/config/usa/arm9/overlays/ov014/delinks.txt +++ b/config/usa/arm9/overlays/ov014/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f5c0 end:0x02153aac kind:code align:32 - .rodata start:0x02153aac end:0x02154148 kind:data align:4 + .rodata start:0x02153aac end:0x02154148 kind:rodata align:4 .init start:0x02154148 end:0x021557a8 kind:code align:4 - .ctor start:0x021557a8 end:0x021558e8 kind:data align:4 + .ctor start:0x021557a8 end:0x021558e8 kind:rodata align:4 .data start:0x02155900 end:0x0215ab20 kind:data align:32 .bss start:0x0215ab20 end:0x0215b400 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov015/delinks.txt b/config/usa/arm9/overlays/ov015/delinks.txt index 615e2e60..29a20f05 100644 --- a/config/usa/arm9/overlays/ov015/delinks.txt +++ b/config/usa/arm9/overlays/ov015/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0211f5c0 end:0x02185a9c kind:code align:32 - .rodata start:0x02185a9c end:0x02187304 kind:data align:4 + .rodata start:0x02185a9c end:0x02187304 kind:rodata align:4 .init start:0x02187304 end:0x02189250 kind:code align:4 - .ctor start:0x02189250 end:0x021893a0 kind:data align:4 + .ctor start:0x02189250 end:0x021893a0 kind:rodata align:4 .data start:0x021893a0 end:0x0218eb60 kind:data align:32 .bss start:0x0218eb60 end:0x02190420 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov016/delinks.txt b/config/usa/arm9/overlays/ov016/delinks.txt index 92145fbe..9eb4dec8 100644 --- a/config/usa/arm9/overlays/ov016/delinks.txt +++ b/config/usa/arm9/overlays/ov016/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0211f5c0 end:0x021200b4 kind:code align:32 - .rodata start:0x021200b4 end:0x021200d0 kind:data align:4 - .ctor start:0x021200d0 end:0x021200d4 kind:data align:4 + .rodata start:0x021200b4 end:0x021200d0 kind:rodata align:4 + .ctor start:0x021200d0 end:0x021200d4 kind:rodata align:4 .data start:0x021200e0 end:0x02120120 kind:data align:32 .bss start:0x02120120 end:0x02120120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov017/delinks.txt b/config/usa/arm9/overlays/ov017/delinks.txt index f83b6084..639891ca 100644 --- a/config/usa/arm9/overlays/ov017/delinks.txt +++ b/config/usa/arm9/overlays/ov017/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b400 end:0x0216aff8 kind:code align:32 - .rodata start:0x0216aff8 end:0x0216b224 kind:data align:4 + .rodata start:0x0216aff8 end:0x0216b224 kind:rodata align:4 .init start:0x0216b224 end:0x0216b8c4 kind:code align:4 - .ctor start:0x0216b8c4 end:0x0216b934 kind:data align:4 + .ctor start:0x0216b8c4 end:0x0216b934 kind:rodata align:4 .data start:0x0216b940 end:0x0216ce00 kind:data align:32 .bss start:0x0216ce00 end:0x0216d080 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov018/delinks.txt b/config/usa/arm9/overlays/ov018/delinks.txt index fe52c01c..31547a43 100644 --- a/config/usa/arm9/overlays/ov018/delinks.txt +++ b/config/usa/arm9/overlays/ov018/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0215b400 end:0x0216b38c kind:code align:32 - .rodata start:0x0216b38c end:0x0216b6e0 kind:data align:4 + .rodata start:0x0216b38c end:0x0216b6e0 kind:rodata align:4 .init start:0x0216b6e0 end:0x0216bfac kind:code align:4 - .ctor start:0x0216bfac end:0x0216c00c kind:data align:4 + .ctor start:0x0216bfac end:0x0216c00c kind:rodata align:4 .data start:0x0216c020 end:0x0216d3a0 kind:data align:32 .bss start:0x0216d3a0 end:0x0216d600 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov018/symbols.txt b/config/usa/arm9/overlays/ov018/symbols.txt index 69fde2ee..d16200b2 100644 --- a/config/usa/arm9/overlays/ov018/symbols.txt +++ b/config/usa/arm9/overlays/ov018/symbols.txt @@ -1,39 +1,39 @@ -func_ov018_0215b4a0 kind:function(arm,size=0x1ac) addr:0x215b400 -func_ov018_0215b64c kind:function(arm,size=0x10c) addr:0x215b5ac -func_ov018_0215b758 kind:function(arm,size=0x114) addr:0x215b6b8 -func_ov018_0215b86c kind:function(arm,size=0x518) addr:0x215b7cc -func_ov018_0215bd84 kind:function(arm,size=0x134) addr:0x215bce4 -func_ov018_0215beb8 kind:function(arm,size=0x110) addr:0x215be18 -func_ov018_0215bfc8 kind:function(arm,size=0x17c) addr:0x215bf28 -func_ov018_0215c144 kind:function(arm,size=0x84) addr:0x215c0a4 -func_ov018_0215c1c8 kind:function(arm,size=0xb4) addr:0x215c128 -func_ov018_0215c27c kind:function(arm,size=0x8) addr:0x215c1dc -func_ov018_0215c284 kind:function(arm,size=0xc) addr:0x215c1e4 -func_ov018_0215c290 kind:function(arm,size=0x20) addr:0x215c1f0 -func_ov018_0215c2b0 kind:function(arm,size=0x30) addr:0x215c210 -func_ov018_0215c2e0 kind:function(arm,size=0x20) addr:0x215c240 -func_ov018_0215c300 kind:function(arm,size=0x2c) addr:0x215c260 -func_ov018_0215c32c kind:function(arm,size=0x20) addr:0x215c28c -func_ov018_0215c34c kind:function(arm,size=0x1c) addr:0x215c2ac -func_ov018_0215c368 kind:function(arm,size=0x18) addr:0x215c2c8 -func_ov018_0215c380 kind:function(arm,size=0x20) addr:0x215c2e0 -func_ov018_0215c3a0 kind:function(arm,size=0x20) addr:0x215c300 -func_ov018_0215c3c0 kind:function(arm,size=0x68) addr:0x215c320 -func_ov018_0215c428 kind:function(arm,size=0x20) addr:0x215c388 -func_ov018_0215c448 kind:function(arm,size=0x18) addr:0x215c3a8 -func_ov018_0215c460 kind:function(arm,size=0x164) addr:0x215c3c0 -func_ov018_0215c5c4 kind:function(arm,size=0x44) addr:0x215c524 -func_ov018_0215c608 kind:function(arm,size=0x48) addr:0x215c568 -func_ov018_0215c650 kind:function(arm,size=0x5c) addr:0x215c5b0 -func_ov018_0215c6ac kind:function(arm,size=0x24) addr:0x215c60c -func_ov018_0215c6d0 kind:function(arm,size=0x24c) addr:0x215c630 -func_ov018_0215c91c kind:function(arm,size=0x48) addr:0x215c87c -func_ov018_0215c964 kind:function(arm,size=0x48) addr:0x215c8c4 -func_ov018_0215c9ac kind:function(arm,size=0x78) addr:0x215c90c -func_ov018_0215ca24 kind:function(arm,size=0x18) addr:0x215c984 -func_ov018_0215ca3c kind:function(arm,size=0x50) addr:0x215c99c -func_ov018_0215ca8c kind:function(arm,size=0x18) addr:0x215c9ec -func_ov018_0215caa4 kind:function(arm,size=0x8) addr:0x215ca04 +_ZN12MapOverworldC2Ejj kind:function(arm,size=0x1ac) addr:0x215b400 +_ZN12MapOverworldD1Ev kind:function(arm,size=0x10c) addr:0x215b5ac +_ZN12MapOverworldD0Ev kind:function(arm,size=0x114) addr:0x215b6b8 +_ZN12MapOverworld8vfunc_08EjjP6Course kind:function(arm,size=0x518) addr:0x215b7cc +_ZN12MapOverworld8vfunc_14Ev kind:function(arm,size=0x134) addr:0x215bce4 +_ZN12MapOverworld8vfunc_1cEb kind:function(arm,size=0x110) addr:0x215be18 +_ZN12MapOverworld19func_ov018_0215bfc8Ev kind:function(arm,size=0x17c) addr:0x215bf28 +_ZN12MapOverworld8vfunc_20Ei kind:function(arm,size=0x84) addr:0x215c0a4 +_ZN12MapOverworld8vfunc_2cEv kind:function(arm,size=0xb4) addr:0x215c128 +_ZN12MapOverworld8vfunc_94Ev kind:function(arm,size=0x8) addr:0x215c1dc +_ZN12MapOverworld8vfunc_a4Ev kind:function(arm,size=0xc) addr:0x215c1e4 +_ZN12MapOverworld8vfunc_54Ev kind:function(arm,size=0x20) addr:0x215c1f0 +_ZN12MapOverworld8vfunc_58Ev kind:function(arm,size=0x30) addr:0x215c210 +_ZN12MapOverworld8vfunc_5cEv kind:function(arm,size=0x20) addr:0x215c240 +_ZN12MapOverworld8vfunc_60Ev kind:function(arm,size=0x2c) addr:0x215c260 +_ZN12MapOverworld8vfunc_64Ev kind:function(arm,size=0x20) addr:0x215c28c +_ZN12MapOverworld19func_ov018_0215c34cEv kind:function(arm,size=0x1c) addr:0x215c2ac +_ZN12MapOverworld19func_ov018_0215c368Ev kind:function(arm,size=0x18) addr:0x215c2c8 +_ZN12MapOverworld19func_ov018_0215c380EPh kind:function(arm,size=0x20) addr:0x215c2e0 +_ZN12MapOverworld8vfunc_bcEv kind:function(arm,size=0x20) addr:0x215c300 +_ZN12MapOverworld8vfunc_98Ev kind:function(arm,size=0x68) addr:0x215c320 +_ZN12MapOverworld8vfunc_c0Ev kind:function(arm,size=0x20) addr:0x215c388 +_ZN12MapOverworld8vfunc_78Ev kind:function(arm,size=0x18) addr:0x215c3a8 +_ZN12MapOverworld8vfunc_7cEv kind:function(arm,size=0x164) addr:0x215c3c0 +_ZN12MapOverworld8vfunc_80Ev kind:function(arm,size=0x44) addr:0x215c524 +_ZN12MapOverworld8vfunc_b0Eii kind:function(arm,size=0x48) addr:0x215c568 +_ZN12MapOverworld19func_ov018_0215c650Ev kind:function(arm,size=0x5c) addr:0x215c5b0 +_ZN12MapOverworld19func_ov018_0215c6acEv kind:function(arm,size=0x24) addr:0x215c60c +_ZN12MapOverworld19func_ov018_0215c6d0Ev kind:function(arm,size=0x24c) addr:0x215c630 +_ZN17MapOverworld_Unk1C2EjPhi kind:function(arm,size=0x48) addr:0x215c87c +_ZN17MapOverworld_Unk1C1EjPhi kind:function(arm,size=0x48) addr:0x215c8c4 +_ZN12MapOverworld19func_ov018_0215c9acEv kind:function(arm,size=0x78) addr:0x215c90c +_Z19func_ov018_0215ca24i kind:function(arm,size=0x18) addr:0x215c984 +_Z19func_ov018_0215ca3ciiii kind:function(arm,size=0x50) addr:0x215c99c +_Z19func_ov018_0215ca8ci kind:function(arm,size=0x18) addr:0x215c9ec +_ZN12MapOverworld8vfunc_4cEv kind:function(arm,size=0x8) addr:0x215ca04 func_ov018_0215caac kind:function(arm,size=0x7c) addr:0x215ca0c func_ov018_0215cb28 kind:function(arm,size=0x4c) addr:0x215ca88 func_ov018_0215cb74 kind:function(arm,size=0xcc) addr:0x215cad4 @@ -514,7 +514,7 @@ __sinit_ov018_0216bf54 kind:function(arm,size=0x38) addr:0x216beb4 __sinit_ov018_0216bf8c kind:function(arm,size=0x80) addr:0x216beec __sinit_ov018_0216c00c kind:function(arm,size=0x40) addr:0x216bf6c data_ov018_0216c0c0 kind:data(any) addr:0x216c020 -data_ov018_0216c0e0 kind:data(any) addr:0x216c040 +_ZTV12MapOverworld kind:data(any) addr:0x216c040 data_ov018_0216c1a4 kind:data(any) addr:0x216c104 data_ov018_0216c1a8 kind:data(any) addr:0x216c108 data_ov018_0216c1bc kind:data(any) addr:0x216c11c diff --git a/config/usa/arm9/overlays/ov019/delinks.txt b/config/usa/arm9/overlays/ov019/delinks.txt index ae33a171..130697bc 100644 --- a/config/usa/arm9/overlays/ov019/delinks.txt +++ b/config/usa/arm9/overlays/ov019/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02175bb0 kind:code align:32 - .rodata start:0x02175bb0 end:0x02175e64 kind:data align:4 + .rodata start:0x02175bb0 end:0x02175e64 kind:rodata align:4 .init start:0x02175e64 end:0x02176234 kind:code align:4 - .ctor start:0x02176234 end:0x0217625c kind:data align:4 + .ctor start:0x02176234 end:0x0217625c kind:rodata align:4 .data start:0x02176260 end:0x02176de0 kind:data align:32 .bss start:0x02176de0 end:0x021775e0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov020/delinks.txt b/config/usa/arm9/overlays/ov020/delinks.txt index 1bb412ab..4c659bc5 100644 --- a/config/usa/arm9/overlays/ov020/delinks.txt +++ b/config/usa/arm9/overlays/ov020/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x021777c8 kind:code align:32 - .rodata start:0x021777c8 end:0x02177a54 kind:data align:4 + .rodata start:0x021777c8 end:0x02177a54 kind:rodata align:4 .init start:0x02177a54 end:0x021781f8 kind:code align:4 - .ctor start:0x021781f8 end:0x02178240 kind:data align:4 + .ctor start:0x021781f8 end:0x02178240 kind:rodata align:4 .data start:0x02178240 end:0x02179460 kind:data align:32 .bss start:0x02179460 end:0x021796a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov021/delinks.txt b/config/usa/arm9/overlays/ov021/delinks.txt index f309a1f4..e5d6d72e 100644 --- a/config/usa/arm9/overlays/ov021/delinks.txt +++ b/config/usa/arm9/overlays/ov021/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02170b34 kind:code align:32 - .rodata start:0x02170b34 end:0x02170c4c kind:data align:4 + .rodata start:0x02170b34 end:0x02170c4c kind:rodata align:4 .init start:0x02170c4c end:0x02170ec4 kind:code align:4 - .ctor start:0x02170ec4 end:0x02170ee4 kind:data align:4 + .ctor start:0x02170ec4 end:0x02170ee4 kind:rodata align:4 .data start:0x02170f00 end:0x02171a40 kind:data align:32 .bss start:0x02171a40 end:0x02171c20 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov022/delinks.txt b/config/usa/arm9/overlays/ov022/delinks.txt index 459a705a..9d1dd8ac 100644 --- a/config/usa/arm9/overlays/ov022/delinks.txt +++ b/config/usa/arm9/overlays/ov022/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02178518 kind:code align:32 - .rodata start:0x02178518 end:0x02178928 kind:data align:4 + .rodata start:0x02178518 end:0x02178928 kind:rodata align:4 .init start:0x02178928 end:0x02178f54 kind:code align:4 - .ctor start:0x02178f54 end:0x02178f9c kind:data align:4 + .ctor start:0x02178f54 end:0x02178f9c kind:rodata align:4 .data start:0x02178fa0 end:0x0217a360 kind:data align:32 .bss start:0x0217a360 end:0x0217a5a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov023/delinks.txt b/config/usa/arm9/overlays/ov023/delinks.txt index fe652033..fccccda0 100644 --- a/config/usa/arm9/overlays/ov023/delinks.txt +++ b/config/usa/arm9/overlays/ov023/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02178f90 kind:code align:32 - .rodata start:0x02178f90 end:0x021795f8 kind:data align:4 + .rodata start:0x02178f90 end:0x021795f8 kind:rodata align:4 .init start:0x021795f8 end:0x02179c40 kind:code align:4 - .ctor start:0x02179c40 end:0x02179c78 kind:data align:4 + .ctor start:0x02179c40 end:0x02179c78 kind:rodata align:4 .data start:0x02179c80 end:0x0217aac0 kind:data align:32 .bss start:0x0217aac0 end:0x0217ace0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov024/delinks.txt b/config/usa/arm9/overlays/ov024/delinks.txt index d4a712de..4e11395e 100644 --- a/config/usa/arm9/overlays/ov024/delinks.txt +++ b/config/usa/arm9/overlays/ov024/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02179134 kind:code align:32 - .rodata start:0x02179134 end:0x02179530 kind:data align:4 + .rodata start:0x02179134 end:0x02179530 kind:rodata align:4 .init start:0x02179530 end:0x02179d7c kind:code align:4 - .ctor start:0x02179d7c end:0x02179dbc kind:data align:4 + .ctor start:0x02179d7c end:0x02179dbc kind:rodata align:4 .data start:0x02179dc0 end:0x0217aec0 kind:data align:32 .bss start:0x0217aec0 end:0x0217b0c0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov025/delinks.txt b/config/usa/arm9/overlays/ov025/delinks.txt index e367a3e8..e0aac9bd 100644 --- a/config/usa/arm9/overlays/ov025/delinks.txt +++ b/config/usa/arm9/overlays/ov025/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x0217929c kind:code align:32 - .rodata start:0x0217929c end:0x021795e0 kind:data align:4 + .rodata start:0x0217929c end:0x021795e0 kind:rodata align:4 .init start:0x021795e0 end:0x02179af8 kind:code align:4 - .ctor start:0x02179af8 end:0x02179b28 kind:data align:4 + .ctor start:0x02179af8 end:0x02179b28 kind:rodata align:4 .data start:0x02179b40 end:0x0217a7e0 kind:data align:32 .bss start:0x0217a7e0 end:0x0217a980 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov026/delinks.txt b/config/usa/arm9/overlays/ov026/delinks.txt index 3ab32f34..f8a4ba5e 100644 --- a/config/usa/arm9/overlays/ov026/delinks.txt +++ b/config/usa/arm9/overlays/ov026/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x021791c0 kind:code align:32 - .rodata start:0x021791c0 end:0x0217973c kind:data align:4 + .rodata start:0x021791c0 end:0x0217973c kind:rodata align:4 .init start:0x0217973c end:0x02179f80 kind:code align:4 - .ctor start:0x02179f80 end:0x02179fc0 kind:data align:4 + .ctor start:0x02179f80 end:0x02179fc0 kind:rodata align:4 .data start:0x02179fc0 end:0x0217b220 kind:data align:32 .bss start:0x0217b220 end:0x0217b520 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov027/delinks.txt b/config/usa/arm9/overlays/ov027/delinks.txt index 8d117180..8e317728 100644 --- a/config/usa/arm9/overlays/ov027/delinks.txt +++ b/config/usa/arm9/overlays/ov027/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02178c5c kind:code align:32 - .rodata start:0x02178c5c end:0x0217909c kind:data align:4 + .rodata start:0x02178c5c end:0x0217909c kind:rodata align:4 .init start:0x0217909c end:0x021793d4 kind:code align:4 - .ctor start:0x021793d4 end:0x021793f8 kind:data align:4 + .ctor start:0x021793d4 end:0x021793f8 kind:rodata align:4 .data start:0x02179400 end:0x0217a020 kind:data align:32 .bss start:0x0217a020 end:0x0217a120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov028/delinks.txt b/config/usa/arm9/overlays/ov028/delinks.txt index dfc678ce..100044c6 100644 --- a/config/usa/arm9/overlays/ov028/delinks.txt +++ b/config/usa/arm9/overlays/ov028/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x02177fdc kind:code align:32 - .rodata start:0x02177fdc end:0x02178464 kind:data align:4 + .rodata start:0x02177fdc end:0x02178464 kind:rodata align:4 .init start:0x02178464 end:0x021787f4 kind:code align:4 - .ctor start:0x021787f4 end:0x02178828 kind:data align:4 + .ctor start:0x021787f4 end:0x02178828 kind:rodata align:4 .data start:0x02178840 end:0x02179a60 kind:data align:32 .bss start:0x02179a60 end:0x02179c40 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov029/delinks.txt b/config/usa/arm9/overlays/ov029/delinks.txt index 54da6f6c..e72660a5 100644 --- a/config/usa/arm9/overlays/ov029/delinks.txt +++ b/config/usa/arm9/overlays/ov029/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0216d600 end:0x021791f8 kind:code align:32 - .rodata start:0x021791f8 end:0x02179410 kind:data align:4 + .rodata start:0x021791f8 end:0x02179410 kind:rodata align:4 .init start:0x02179410 end:0x02179784 kind:code align:4 - .ctor start:0x02179784 end:0x021797bc kind:data align:4 + .ctor start:0x02179784 end:0x021797bc kind:rodata align:4 .data start:0x021797c0 end:0x0217a400 kind:data align:32 .bss start:0x0217a400 end:0x0217bce0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov030/delinks.txt b/config/usa/arm9/overlays/ov030/delinks.txt index 779c0b53..9319f307 100644 --- a/config/usa/arm9/overlays/ov030/delinks.txt +++ b/config/usa/arm9/overlays/ov030/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02188534 kind:code align:32 - .rodata start:0x02188534 end:0x02188784 kind:data align:4 + .rodata start:0x02188534 end:0x02188784 kind:rodata align:4 .init start:0x02188784 end:0x0218898c kind:code align:4 - .ctor start:0x0218898c end:0x02188998 kind:data align:4 + .ctor start:0x0218898c end:0x02188998 kind:rodata align:4 .data start:0x021889a0 end:0x02189400 kind:data align:32 .bss start:0x02189400 end:0x021894c0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov031/delinks.txt b/config/usa/arm9/overlays/ov031/delinks.txt index f2a4b933..525b38b1 100644 --- a/config/usa/arm9/overlays/ov031/delinks.txt +++ b/config/usa/arm9/overlays/ov031/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02181800 kind:code align:32 - .rodata start:0x02181800 end:0x02181acc kind:data align:4 + .rodata start:0x02181800 end:0x02181acc kind:rodata align:4 .init start:0x02181acc end:0x02181fe0 kind:code align:4 - .ctor start:0x02181fe0 end:0x02181ff4 kind:data align:4 + .ctor start:0x02181fe0 end:0x02181ff4 kind:rodata align:4 .data start:0x02182000 end:0x02183de0 kind:data align:32 .bss start:0x02183de0 end:0x02184160 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov032/delinks.txt b/config/usa/arm9/overlays/ov032/delinks.txt index a93059a7..198ebf1e 100644 --- a/config/usa/arm9/overlays/ov032/delinks.txt +++ b/config/usa/arm9/overlays/ov032/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02184b08 kind:code align:32 - .rodata start:0x02184b08 end:0x02184c9c kind:data align:4 + .rodata start:0x02184b08 end:0x02184c9c kind:rodata align:4 .init start:0x02184c9c end:0x02185328 kind:code align:4 - .ctor start:0x02185328 end:0x0218534c kind:data align:4 + .ctor start:0x02185328 end:0x0218534c kind:rodata align:4 .data start:0x02185360 end:0x02186140 kind:data align:32 .bss start:0x02186140 end:0x02186280 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov033/delinks.txt b/config/usa/arm9/overlays/ov033/delinks.txt index 287e400c..7e5a59a7 100644 --- a/config/usa/arm9/overlays/ov033/delinks.txt +++ b/config/usa/arm9/overlays/ov033/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x0217fa2c kind:code align:32 - .rodata start:0x0217fa2c end:0x0217faf0 kind:data align:4 + .rodata start:0x0217fa2c end:0x0217faf0 kind:rodata align:4 .init start:0x0217faf0 end:0x0217fdf4 kind:code align:4 - .ctor start:0x0217fdf4 end:0x0217fe0c kind:data align:4 + .ctor start:0x0217fdf4 end:0x0217fe0c kind:rodata align:4 .data start:0x0217fe20 end:0x021804e0 kind:data align:32 .bss start:0x021804e0 end:0x021805a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov034/delinks.txt b/config/usa/arm9/overlays/ov034/delinks.txt index 6e5e7169..173a34b0 100644 --- a/config/usa/arm9/overlays/ov034/delinks.txt +++ b/config/usa/arm9/overlays/ov034/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x021856a0 kind:code align:32 - .rodata start:0x021856a0 end:0x02185778 kind:data align:4 + .rodata start:0x021856a0 end:0x02185778 kind:rodata align:4 .init start:0x02185778 end:0x021859c4 kind:code align:4 - .ctor start:0x021859c4 end:0x021859d4 kind:data align:4 + .ctor start:0x021859c4 end:0x021859d4 kind:rodata align:4 .data start:0x021859e0 end:0x02186100 kind:data align:32 .bss start:0x02186100 end:0x02186320 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov035/delinks.txt b/config/usa/arm9/overlays/ov035/delinks.txt index c34458f0..38d572bf 100644 --- a/config/usa/arm9/overlays/ov035/delinks.txt +++ b/config/usa/arm9/overlays/ov035/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x0218508c kind:code align:32 - .rodata start:0x0218508c end:0x021855c8 kind:data align:4 + .rodata start:0x0218508c end:0x021855c8 kind:rodata align:4 .init start:0x021855c8 end:0x02185860 kind:code align:4 - .ctor start:0x02185860 end:0x02185874 kind:data align:4 + .ctor start:0x02185860 end:0x02185874 kind:rodata align:4 .data start:0x02185880 end:0x02185e20 kind:data align:32 .bss start:0x02185e20 end:0x02186f80 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov036/delinks.txt b/config/usa/arm9/overlays/ov036/delinks.txt index 7a26caf3..59ce0b05 100644 --- a/config/usa/arm9/overlays/ov036/delinks.txt +++ b/config/usa/arm9/overlays/ov036/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x021865f8 kind:code align:32 - .rodata start:0x021865f8 end:0x02186b14 kind:data align:4 + .rodata start:0x021865f8 end:0x02186b14 kind:rodata align:4 .init start:0x02186b14 end:0x02186b94 kind:code align:4 - .ctor start:0x02186b94 end:0x02186ba0 kind:data align:4 + .ctor start:0x02186b94 end:0x02186ba0 kind:rodata align:4 .data start:0x02186ba0 end:0x02186f00 kind:data align:32 .bss start:0x02186f00 end:0x02186f40 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov037/delinks.txt b/config/usa/arm9/overlays/ov037/delinks.txt index f21a1cd1..41bbe760 100644 --- a/config/usa/arm9/overlays/ov037/delinks.txt +++ b/config/usa/arm9/overlays/ov037/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02187d28 kind:code align:32 - .rodata start:0x02187d28 end:0x021885f0 kind:data align:4 + .rodata start:0x02187d28 end:0x021885f0 kind:rodata align:4 .init start:0x021885f0 end:0x02188914 kind:code align:4 - .ctor start:0x02188914 end:0x0218892c kind:data align:4 + .ctor start:0x02188914 end:0x0218892c kind:rodata align:4 .data start:0x02188940 end:0x021890c0 kind:data align:32 .bss start:0x021890c0 end:0x021891a0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov038/delinks.txt b/config/usa/arm9/overlays/ov038/delinks.txt index cbee1e6a..4a6f1167 100644 --- a/config/usa/arm9/overlays/ov038/delinks.txt +++ b/config/usa/arm9/overlays/ov038/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02188868 kind:code align:32 - .rodata start:0x02188868 end:0x02188a44 kind:data align:4 + .rodata start:0x02188868 end:0x02188a44 kind:rodata align:4 .init start:0x02188a44 end:0x02188bc0 kind:code align:4 - .ctor start:0x02188bc0 end:0x02188bcc kind:data align:4 + .ctor start:0x02188bc0 end:0x02188bcc kind:rodata align:4 .data start:0x02188be0 end:0x02189140 kind:data align:32 .bss start:0x02189140 end:0x02189400 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov039/delinks.txt b/config/usa/arm9/overlays/ov039/delinks.txt index cb44cebd..247c76cf 100644 --- a/config/usa/arm9/overlays/ov039/delinks.txt +++ b/config/usa/arm9/overlays/ov039/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02186084 kind:code align:32 - .rodata start:0x02186084 end:0x021868c8 kind:data align:4 + .rodata start:0x02186084 end:0x021868c8 kind:rodata align:4 .init start:0x021868c8 end:0x0218691c kind:code align:4 - .ctor start:0x0218691c end:0x02186924 kind:data align:4 + .ctor start:0x0218691c end:0x02186924 kind:rodata align:4 .data start:0x02186940 end:0x02186c20 kind:data align:32 .bss start:0x02186c20 end:0x02186c60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov040/delinks.txt b/config/usa/arm9/overlays/ov040/delinks.txt index 61f0dac7..53cef88b 100644 --- a/config/usa/arm9/overlays/ov040/delinks.txt +++ b/config/usa/arm9/overlays/ov040/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0217bce0 end:0x02187f5c kind:code align:32 - .rodata start:0x02187f5c end:0x021882c0 kind:data align:4 + .rodata start:0x02187f5c end:0x021882c0 kind:rodata align:4 .init start:0x021882c0 end:0x02188594 kind:code align:4 - .ctor start:0x02188594 end:0x021885c0 kind:data align:4 + .ctor start:0x02188594 end:0x021885c0 kind:rodata align:4 .data start:0x021885c0 end:0x02189a40 kind:data align:32 .bss start:0x02189a40 end:0x0219a120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov041/delinks.txt b/config/usa/arm9/overlays/ov041/delinks.txt index d643a3a0..80f119c9 100644 --- a/config/usa/arm9/overlays/ov041/delinks.txt +++ b/config/usa/arm9/overlays/ov041/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218de24 kind:code align:32 - .rodata start:0x0218de24 end:0x0218dff8 kind:data align:4 + .rodata start:0x0218de24 end:0x0218dff8 kind:rodata align:4 .init start:0x0218dff8 end:0x0218e26c kind:code align:4 - .ctor start:0x0218e26c end:0x0218e288 kind:data align:4 + .ctor start:0x0218e26c end:0x0218e288 kind:rodata align:4 .data start:0x0218e2a0 end:0x0218e9e0 kind:data align:32 .bss start:0x0218e9e0 end:0x0218eac0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov042/delinks.txt b/config/usa/arm9/overlays/ov042/delinks.txt index 513b4174..07142e34 100644 --- a/config/usa/arm9/overlays/ov042/delinks.txt +++ b/config/usa/arm9/overlays/ov042/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218c654 kind:code align:32 - .rodata start:0x0218c654 end:0x0218c6a4 kind:data align:4 + .rodata start:0x0218c654 end:0x0218c6a4 kind:rodata align:4 .init start:0x0218c6a4 end:0x0218c758 kind:code align:4 - .ctor start:0x0218c758 end:0x0218c764 kind:data align:4 + .ctor start:0x0218c758 end:0x0218c764 kind:rodata align:4 .data start:0x0218c780 end:0x0218cc80 kind:data align:32 .bss start:0x0218cc80 end:0x0218cd00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov043/delinks.txt b/config/usa/arm9/overlays/ov043/delinks.txt index 8abf85b1..4fb4329b 100644 --- a/config/usa/arm9/overlays/ov043/delinks.txt +++ b/config/usa/arm9/overlays/ov043/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218d2a0 kind:code align:32 - .rodata start:0x0218d2a0 end:0x0218d374 kind:data align:4 + .rodata start:0x0218d2a0 end:0x0218d374 kind:rodata align:4 .init start:0x0218d374 end:0x0218d520 kind:code align:4 - .ctor start:0x0218d520 end:0x0218d52c kind:data align:4 + .ctor start:0x0218d520 end:0x0218d52c kind:rodata align:4 .data start:0x0218d540 end:0x0218da60 kind:data align:32 .bss start:0x0218da60 end:0x0218dae0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov044/delinks.txt b/config/usa/arm9/overlays/ov044/delinks.txt index 583e6963..c219ce27 100644 --- a/config/usa/arm9/overlays/ov044/delinks.txt +++ b/config/usa/arm9/overlays/ov044/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218e8e4 kind:code align:32 - .rodata start:0x0218e8e4 end:0x0218e9fc kind:data align:4 + .rodata start:0x0218e8e4 end:0x0218e9fc kind:rodata align:4 .init start:0x0218e9fc end:0x0218f12c kind:code align:4 - .ctor start:0x0218f12c end:0x0218f150 kind:data align:4 + .ctor start:0x0218f12c end:0x0218f150 kind:rodata align:4 .data start:0x0218f160 end:0x0218fe40 kind:data align:32 .bss start:0x0218fe40 end:0x0218ffa0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov045/delinks.txt b/config/usa/arm9/overlays/ov045/delinks.txt index 9b23c36f..4caa3734 100644 --- a/config/usa/arm9/overlays/ov045/delinks.txt +++ b/config/usa/arm9/overlays/ov045/delinks.txt @@ -1,7 +1,7 @@ .text start:0x021894c0 end:0x0218e1d8 kind:code align:32 - .rodata start:0x0218e1d8 end:0x0218e348 kind:data align:4 + .rodata start:0x0218e1d8 end:0x0218e348 kind:rodata align:4 .init start:0x0218e348 end:0x0218e408 kind:code align:4 - .ctor start:0x0218e408 end:0x0218e418 kind:data align:4 + .ctor start:0x0218e408 end:0x0218e418 kind:rodata align:4 .data start:0x0218e420 end:0x0218ece0 kind:data align:32 .bss start:0x0218ece0 end:0x0218ed60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov046/delinks.txt b/config/usa/arm9/overlays/ov046/delinks.txt index fe75cf88..58f28a71 100644 --- a/config/usa/arm9/overlays/ov046/delinks.txt +++ b/config/usa/arm9/overlays/ov046/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0218ffa0 end:0x02194254 kind:code align:32 - .rodata start:0x02194254 end:0x0219440c kind:data align:4 + .rodata start:0x02194254 end:0x0219440c kind:rodata align:4 .init start:0x0219440c end:0x0219459c kind:code align:4 - .ctor start:0x0219459c end:0x021945b0 kind:data align:4 + .ctor start:0x0219459c end:0x021945b0 kind:rodata align:4 .data start:0x021945c0 end:0x02194b00 kind:data align:32 .bss start:0x02194b00 end:0x02194c00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov047/delinks.txt b/config/usa/arm9/overlays/ov047/delinks.txt index 547aa996..522e4e82 100644 --- a/config/usa/arm9/overlays/ov047/delinks.txt +++ b/config/usa/arm9/overlays/ov047/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0218ffa0 end:0x02194150 kind:code align:32 - .rodata start:0x02194150 end:0x02194250 kind:data align:4 + .rodata start:0x02194150 end:0x02194250 kind:rodata align:4 .init start:0x02194250 end:0x02194448 kind:code align:4 - .ctor start:0x02194448 end:0x0219445c kind:data align:4 + .ctor start:0x02194448 end:0x0219445c kind:rodata align:4 .data start:0x02194460 end:0x02194960 kind:data align:32 .bss start:0x02194960 end:0x02194a00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov048/delinks.txt b/config/usa/arm9/overlays/ov048/delinks.txt index 5543605f..e4997ce2 100644 --- a/config/usa/arm9/overlays/ov048/delinks.txt +++ b/config/usa/arm9/overlays/ov048/delinks.txt @@ -1,7 +1,7 @@ .text start:0x0218ffa0 end:0x021945bc kind:code align:32 - .rodata start:0x021945bc end:0x02194620 kind:data align:4 + .rodata start:0x021945bc end:0x02194620 kind:rodata align:4 .init start:0x02194620 end:0x02194a34 kind:code align:4 - .ctor start:0x02194a34 end:0x02194a50 kind:data align:4 + .ctor start:0x02194a34 end:0x02194a50 kind:rodata align:4 .data start:0x02194a60 end:0x02195360 kind:data align:32 .bss start:0x02195360 end:0x02195460 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov049/delinks.txt b/config/usa/arm9/overlays/ov049/delinks.txt index d91a80f4..850dc935 100644 --- a/config/usa/arm9/overlays/ov049/delinks.txt +++ b/config/usa/arm9/overlays/ov049/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x02198140 kind:code align:32 - .rodata start:0x02198140 end:0x02198228 kind:data align:4 + .rodata start:0x02198140 end:0x02198228 kind:rodata align:4 .init start:0x02198228 end:0x021983d4 kind:code align:4 - .ctor start:0x021983d4 end:0x021983e4 kind:data align:4 + .ctor start:0x021983d4 end:0x021983e4 kind:rodata align:4 .data start:0x02198400 end:0x02198880 kind:data align:32 .bss start:0x02198880 end:0x02198900 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov050/delinks.txt b/config/usa/arm9/overlays/ov050/delinks.txt index 82f413d7..8a3e5fe9 100644 --- a/config/usa/arm9/overlays/ov050/delinks.txt +++ b/config/usa/arm9/overlays/ov050/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x0219872c kind:code align:32 - .rodata start:0x0219872c end:0x0219878c kind:data align:4 + .rodata start:0x0219872c end:0x0219878c kind:rodata align:4 .init start:0x0219878c end:0x02198908 kind:code align:4 - .ctor start:0x02198908 end:0x02198914 kind:data align:4 + .ctor start:0x02198908 end:0x02198914 kind:rodata align:4 .data start:0x02198920 end:0x02198c00 kind:data align:32 .bss start:0x02198c00 end:0x02198c60 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov051/delinks.txt b/config/usa/arm9/overlays/ov051/delinks.txt index 78f849f8..92d82868 100644 --- a/config/usa/arm9/overlays/ov051/delinks.txt +++ b/config/usa/arm9/overlays/ov051/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x021981c8 kind:code align:32 - .rodata start:0x021981c8 end:0x02198200 kind:data align:4 + .rodata start:0x021981c8 end:0x02198200 kind:rodata align:4 .init start:0x02198200 end:0x02198410 kind:code align:4 - .ctor start:0x02198410 end:0x02198428 kind:data align:4 + .ctor start:0x02198410 end:0x02198428 kind:rodata align:4 .data start:0x02198440 end:0x021989c0 kind:data align:32 .bss start:0x021989c0 end:0x02198a80 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov052/delinks.txt b/config/usa/arm9/overlays/ov052/delinks.txt index 80cbd4fb..29cd027a 100644 --- a/config/usa/arm9/overlays/ov052/delinks.txt +++ b/config/usa/arm9/overlays/ov052/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02195460 end:0x021977e8 kind:code align:32 - .rodata start:0x021977e8 end:0x02197834 kind:data align:4 + .rodata start:0x021977e8 end:0x02197834 kind:rodata align:4 .init start:0x02197834 end:0x021978b4 kind:code align:4 - .ctor start:0x021978b4 end:0x021978c0 kind:data align:4 + .ctor start:0x021978b4 end:0x021978c0 kind:rodata align:4 .data start:0x021978c0 end:0x02197ba0 kind:data align:32 .bss start:0x02197ba0 end:0x02197c00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov053/delinks.txt b/config/usa/arm9/overlays/ov053/delinks.txt index 3101bdcd..8573e183 100644 --- a/config/usa/arm9/overlays/ov053/delinks.txt +++ b/config/usa/arm9/overlays/ov053/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x02199f18 kind:code align:32 - .rodata start:0x02199f18 end:0x02199f24 kind:data align:4 + .rodata start:0x02199f18 end:0x02199f24 kind:rodata align:4 .init start:0x02199f24 end:0x02199fd0 kind:code align:4 - .ctor start:0x02199fd0 end:0x02199fd8 kind:data align:4 + .ctor start:0x02199fd0 end:0x02199fd8 kind:rodata align:4 .data start:0x02199fe0 end:0x0219a0e0 kind:data align:32 .bss start:0x0219a0e0 end:0x0219a600 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov054/delinks.txt b/config/usa/arm9/overlays/ov054/delinks.txt index 46bcf150..7c33369b 100644 --- a/config/usa/arm9/overlays/ov054/delinks.txt +++ b/config/usa/arm9/overlays/ov054/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x02199874 kind:code align:32 - .rodata start:0x02199874 end:0x02199884 kind:data align:4 + .rodata start:0x02199874 end:0x02199884 kind:rodata align:4 .init start:0x02199884 end:0x021998b4 kind:code align:4 - .ctor start:0x021998b4 end:0x021998bc kind:data align:4 + .ctor start:0x021998b4 end:0x021998bc kind:rodata align:4 .data start:0x021998c0 end:0x02199980 kind:data align:32 .bss start:0x02199980 end:0x02199a00 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov055/delinks.txt b/config/usa/arm9/overlays/ov055/delinks.txt index 561f1408..14fc782b 100644 --- a/config/usa/arm9/overlays/ov055/delinks.txt +++ b/config/usa/arm9/overlays/ov055/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x02199710 kind:code align:32 - .rodata start:0x02199710 end:0x0219974c kind:data align:4 + .rodata start:0x02199710 end:0x0219974c kind:rodata align:4 .init start:0x0219974c end:0x0219977c kind:code align:4 - .ctor start:0x0219977c end:0x02199784 kind:data align:4 + .ctor start:0x0219977c end:0x02199784 kind:rodata align:4 .data start:0x021997a0 end:0x02199800 kind:data align:32 .bss start:0x02199800 end:0x02199880 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov056/delinks.txt b/config/usa/arm9/overlays/ov056/delinks.txt index 95d4a142..e9189783 100644 --- a/config/usa/arm9/overlays/ov056/delinks.txt +++ b/config/usa/arm9/overlays/ov056/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x0219927c kind:code align:32 - .rodata start:0x0219927c end:0x02199288 kind:data align:4 + .rodata start:0x0219927c end:0x02199288 kind:rodata align:4 .init start:0x02199288 end:0x021992dc kind:code align:4 - .ctor start:0x021992dc end:0x021992e4 kind:data align:4 + .ctor start:0x021992dc end:0x021992e4 kind:rodata align:4 .data start:0x02199300 end:0x02199360 kind:data align:32 .bss start:0x02199360 end:0x02199460 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov057/delinks.txt b/config/usa/arm9/overlays/ov057/delinks.txt index a7639a2b..5c6d006d 100644 --- a/config/usa/arm9/overlays/ov057/delinks.txt +++ b/config/usa/arm9/overlays/ov057/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x0219a8f4 kind:code align:32 - .rodata start:0x0219a8f4 end:0x0219a900 kind:data align:4 + .rodata start:0x0219a8f4 end:0x0219a900 kind:rodata align:4 .init start:0x0219a900 end:0x0219a970 kind:code align:4 - .ctor start:0x0219a970 end:0x0219a97c kind:data align:4 + .ctor start:0x0219a970 end:0x0219a97c kind:rodata align:4 .data start:0x0219a980 end:0x0219aa60 kind:data align:32 .bss start:0x0219aa60 end:0x0219aaa0 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov058/delinks.txt b/config/usa/arm9/overlays/ov058/delinks.txt index 5ac60591..d3d63fe3 100644 --- a/config/usa/arm9/overlays/ov058/delinks.txt +++ b/config/usa/arm9/overlays/ov058/delinks.txt @@ -1,7 +1,7 @@ .text start:0x02198c60 end:0x0219acc8 kind:code align:32 - .rodata start:0x0219acc8 end:0x0219ace0 kind:data align:4 + .rodata start:0x0219acc8 end:0x0219ace0 kind:rodata align:4 .init start:0x0219ace0 end:0x0219addc kind:code align:4 - .ctor start:0x0219addc end:0x0219ade4 kind:data align:4 + .ctor start:0x0219addc end:0x0219ade4 kind:rodata align:4 .data start:0x0219ae00 end:0x0219af20 kind:data align:32 .bss start:0x0219af20 end:0x0219b080 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov059/delinks.txt b/config/usa/arm9/overlays/ov059/delinks.txt index 1dd419d1..10677e25 100644 --- a/config/usa/arm9/overlays/ov059/delinks.txt +++ b/config/usa/arm9/overlays/ov059/delinks.txt @@ -1,6 +1,6 @@ .text start:0x02198c60 end:0x0219b070 kind:code align:32 - .rodata start:0x0219b070 end:0x0219b084 kind:data align:4 - .ctor start:0x0219b084 end:0x0219b088 kind:data align:4 + .rodata start:0x0219b070 end:0x0219b084 kind:rodata align:4 + .ctor start:0x0219b084 end:0x0219b088 kind:rodata align:4 .data start:0x0219b0a0 end:0x0219b120 kind:data align:32 .bss start:0x0219b120 end:0x0219b120 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov060/delinks.txt b/config/usa/arm9/overlays/ov060/delinks.txt index e07d6eaa..36114eea 100644 --- a/config/usa/arm9/overlays/ov060/delinks.txt +++ b/config/usa/arm9/overlays/ov060/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213de40 end:0x02147638 kind:code align:32 - .rodata start:0x02147638 end:0x0214766c kind:data align:4 - .ctor start:0x0214766c end:0x02147670 kind:data align:4 + .rodata start:0x02147638 end:0x0214766c kind:rodata align:4 + .ctor start:0x0214766c end:0x02147670 kind:rodata align:4 .data start:0x02147680 end:0x02147760 kind:data align:32 .bss start:0x02147760 end:0x02148520 kind:bss align:32 diff --git a/config/usa/arm9/overlays/ov061/delinks.txt b/config/usa/arm9/overlays/ov061/delinks.txt index 199936f3..1293bb6a 100644 --- a/config/usa/arm9/overlays/ov061/delinks.txt +++ b/config/usa/arm9/overlays/ov061/delinks.txt @@ -1,6 +1,6 @@ .text start:0x0213de40 end:0x0217a190 kind:code align:32 - .rodata start:0x0217a190 end:0x0217a588 kind:data align:4 - .ctor start:0x0217a588 end:0x0217a58c kind:data align:4 + .rodata start:0x0217a190 end:0x0217a588 kind:rodata align:4 + .ctor start:0x0217a588 end:0x0217a58c kind:rodata align:4 .data start:0x0217a5a0 end:0x0217e9a0 kind:data align:32 .bss start:0x0217e9a0 end:0x02181960 kind:bss align:32 diff --git a/docs/decompiling.md b/docs/decompiling.md index 3ec8f682..e9f9c3b1 100644 --- a/docs/decompiling.md +++ b/docs/decompiling.md @@ -8,7 +8,7 @@ stuck or need assistance. - [The Ghidra project](#the-ghidra-project) ## Pick a source file -See the `decomp` tag in the [issue tracker](https://github.com/AetiasHax/ph/issues?q=is%3Aopen+is%3Aissue+label%3Adecomp) for +See the `decomp` tag in the [issue tracker](https://github.com/zeldaret/ph/issues?q=is%3Aopen+is%3Aissue+label%3Adecomp) for a list of delinked source files that are ready to be decompiled. This list grows as more source files are delinked from the rest of the base ROM. diff --git a/docs/overlays.md b/docs/overlays.md index d966dd91..00eecb0d 100644 --- a/docs/overlays.md +++ b/docs/overlays.md @@ -18,11 +18,11 @@ contribute to this list! `11` | --- | 3 | `12` | Battle | 3 | Handles battle mode. `13` | --- | 3 | -`14` | Land | 4 | Link and essential land-based actors -`15` | --- | 4 | +`14` | Land | 4 | Link and essential land-based actors. +`15` | Sea | 4 | Handles the sea, Linebeck's ship, and sea-based actors. `16` | Startup | N/A | Exists briefly on game startup. Initializes RNG, messages, and more. -`17` | --- | 5 | -`18` | --- | 5 | +`17` | Dungeon | 5 | Handles courses for caves and dungeons. +`18` | Overworld | 5 | Handles overworld courses on land. `19` | --- | 6 | `20` | --- | 6 | `21` | --- | 6 | diff --git a/include/Actor/Actor.hpp b/include/Actor/Actor.hpp index 2a30a7c1..c22f086e 100644 --- a/include/Actor/Actor.hpp +++ b/include/Actor/Actor.hpp @@ -227,7 +227,7 @@ public: bool func_ov00_020c195c(); bool func_ov00_020c198c(); void KillPickupItemActors(); - void func_Ov00_020c1bfc(s32 param1); + bool func_ov00_020c1bfc(s32 param1); void func_ov00_020c1c20(s32 param1, unk32 param2); bool IsNearLink(); void func_ov00_020c1cf8(); diff --git a/include/Actor/ActorType.hpp b/include/Actor/ActorType.hpp index 092d8549..fe7b2cc6 100644 --- a/include/Actor/ActorType.hpp +++ b/include/Actor/ActorType.hpp @@ -41,6 +41,7 @@ enum ActorTypeId_ { ActorTypeId_SmallKey = 'NKEY', ActorTypeId_SwitchObject = 'SWOB', ActorTypeId_EventIcon = 'EVIC', + ActorTypeId_ActionObject = 'ACOB', ActorTypeId_Sandworm = 'MLDW', ActorTypeId_Tektite = 'TEKT', diff --git a/include/Actor/Dungeon/ActorActionObject.hpp b/include/Actor/Dungeon/ActorActionObject.hpp new file mode 100644 index 00000000..0bf35dfb --- /dev/null +++ b/include/Actor/Dungeon/ActorActionObject.hpp @@ -0,0 +1,20 @@ +#pragma once + +#include "Actor/Actor.hpp" + +class ActorActionObject : public Actor { +public: + static ActorType gType; + + /* 000 (base) */ + /* 158 */ + + /* 00 */ virtual ~ActorActionObject() override; + /* 08 */ virtual bool vfunc_08() override; + /* 14 */ virtual void vfunc_14(u32 param1) override; + /* 18 */ virtual void vfunc_18(u32 param1) override; + /* b4 */ + + static ActorActionObject *Create(); + ActorActionObject(); +}; diff --git a/include/Actor/Navi/ActorForceNavi.hpp b/include/Actor/Navi/ActorForceNavi.hpp new file mode 100644 index 00000000..18a124f4 --- /dev/null +++ b/include/Actor/Navi/ActorForceNavi.hpp @@ -0,0 +1,15 @@ +#pragma once + +#include "Actor/Navi/ActorNaviBase.hpp" + +class ActorForceNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ + + /* b4 */ virtual FairyId GetFairyId() override; + + static ActorForceNavi *Create(); +}; diff --git a/include/Actor/Navi/ActorNavi.hpp b/include/Actor/Navi/ActorNavi.hpp index 98ebcf51..86774de4 100644 --- a/include/Actor/Navi/ActorNavi.hpp +++ b/include/Actor/Navi/ActorNavi.hpp @@ -1,3 +1,65 @@ #pragma once -class ActorNavi; +#include "Actor/Navi/ActorNaviBase.hpp" +#include "Unknown/UnkStruct_ov000_020beba8.hpp" + +class UnkStruct_ov000_020b8110 : public UnkStruct_ov000_020beba8 { +public: + /* 0 (base) */ + /* c */ + + /* 00 */ virtual ~UnkStruct_ov000_020b8110() override; + /* 08 */ virtual void vfunc_08(unk16 *param1) override; + /* 14 */ virtual void vfunc_14(u16 *param1) override; + /* 18 */ virtual void vfunc_18(s32 *param1) override; + /* 1c */ + + UnkStruct_ov000_020b8110(); +}; + +class ActorNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ ModelRender mUnk_294; + /* 2f0 */ void *mUnk_2f0; + /* 2f4 */ unk8 mUnk_2f4[0x40]; + /* 334 */ unk32 mUnk_334; + /* 338 */ unk32 mUnk_338; + /* 33c */ unk32 mUnk_33c; + /* 340 */ unk16 mUnk_340; + /* 342 */ unk8 mUnk_342[0x2]; + /* 344 */ unk32 mUnk_344; + /* 348 */ unk32 mUnk_348; + /* 34c */ unk8 mUnk_34c[0x68]; + /* 3b4 */ EquipHammer *mHammer; + /* 3b8 */ unk32 mUnk_3b8; + /* 3bc */ unk32 mUnk_3bc; + /* 3c0 */ unk8 mUnk_3c0[0x8]; + /* 3c8 */ + + /* 00 */ virtual ~ActorNavi() override; + /* 08 */ virtual bool vfunc_08() override; + /* 20 */ virtual void vfunc_20(bool param1) override; + /* 8c */ virtual bool vfunc_8c() override; + /* b4 */ virtual FairyId GetFairyId() override; + /* b8 */ virtual s32 vfunc_b8() override; + /* c0 */ virtual bool vfunc_c0(Vec3p *param1) override; + /* c4 */ virtual void vfunc_c4() override; + /* c8 */ virtual void vfunc_c8() override; + /* cc */ virtual bool vfunc_cc(unk32 *param1) override; + /* d0 */ virtual void vfunc_d0() override; + /* d4 */ virtual void vfunc_d4() override; + /* d8 */ virtual void vfunc_d8() override; + /* dc */ virtual void SetActive(bool active) override; + /* e0 */ virtual void vfunc_e0() override; + /* e8 */ virtual void vfunc_e8() override; + /* ec */ virtual void vfunc_ec() override; + + static ActorNavi *Create(); + void func_ov000_020b8200(); + void func_ov000_020b853c(); + + ActorNavi(); +}; diff --git a/include/Actor/Navi/ActorNaviBase.hpp b/include/Actor/Navi/ActorNaviBase.hpp index f3a45e8a..4c2a20cf 100644 --- a/include/Actor/Navi/ActorNaviBase.hpp +++ b/include/Actor/Navi/ActorNaviBase.hpp @@ -7,20 +7,30 @@ #include "Player/EquipHammer.hpp" #include "Render/ModelRender.hpp" +typedef s32 FairyId; +enum FairyId_ { + FairyId_None = -1, + FairyId_Courage = 0, + FairyId_Power = 1, + FairyId_Wisdom = 2, + FairyId_COUNT = 3, +}; + class ActorNaviBase_Unk1 {}; class ActorNaviBase : public Actor { +public: /* 000 (base) */ /* 158 */ Vec3p mUnk_158; /* 164 */ unk32 mUnk_164; /* 168 */ ModelRender mUnk_168; /* 1c4 */ unk8 mUnk_1c4[0xc]; - /* 1d0 */ void *mUnk_1d0; - /* 1d4 */ unk8 mUnk_1d4[0x30]; + /* 1d0 */ unk8 mUnk_1d0[0x24]; + /* 1f4 */ unk8 mUnk_1f4[0x20]; /* 214 */ unk16 mUnk_214; /* 216 */ unk8 mUnk_216[0xc]; /* 222 */ unk16 mUnk_222; - /* 224 */ unk8 mUnk_224[0x18]; + /* 224 */ unk8 mUnk_224[0x28]; /* 24c */ unk32 mUnk_24c; /* 250 */ unk32 mUnk_250; /* 254 */ unk32 mUnk_254; @@ -33,22 +43,7 @@ class ActorNaviBase : public Actor { /* 288 */ unk8 mUnk_288[0x2]; /* 28a */ unk16 mUnk_28a; /* 28c */ unk8 mUnk_28c[0x8]; - /* 294 */ ModelRender mUnk_294; - /* 2f0 */ void *mUnk_2f0; - /* 2f4 */ unk8 mUnk_2f4[0x40]; - /* 334 */ unk32 mUnk_334; - /* 338 */ unk32 mUnk_338; - /* 33c */ unk32 mUnk_33c; - /* 340 */ unk16 mUnk_340; - /* 342 */ unk8 mUnk_342[0x2]; - /* 344 */ unk32 mUnk_344; - /* 348 */ unk32 mUnk_348; - /* 34c */ unk8 mUnk_34c[0x68]; - /* 3b4 */ EquipHammer *mHammer; - /* 3b8 */ unk32 mUnk_3b8; - /* 3bc */ unk32 mUnk_3bc; - /* 3c0 */ unk8 mUnk_3c0[0x8]; - /* 3c8 */ + /* 294 */ /* 00 */ virtual ~ActorNaviBase() override; /* 08 */ virtual bool vfunc_08() override; @@ -65,9 +60,7 @@ class ActorNaviBase : public Actor { /* 84 */ virtual void vfunc_84() override; /* 90 */ virtual bool vfunc_90() override; /* 94 */ virtual void vfunc_94() override; - /* a0 */ virtual bool TrySetTransform(Transform *transform) override; - /* b0 */ virtual void SetTransform(Transform *transform) override; - /* b4 */ virtual void vfunc_b4() = 0; + /* b4 */ virtual FairyId GetFairyId() = 0; /* b8 */ virtual s32 vfunc_b8(); /* bc */ virtual bool vfunc_bc(unk32 param1, unk8 param2, s32 param3); /* c0 */ virtual bool vfunc_c0(Vec3p *param1); diff --git a/include/Actor/Navi/ActorWisdomNavi.hpp b/include/Actor/Navi/ActorWisdomNavi.hpp new file mode 100644 index 00000000..fb6d2641 --- /dev/null +++ b/include/Actor/Navi/ActorWisdomNavi.hpp @@ -0,0 +1,15 @@ +#pragma once + +#include "Actor/Navi/ActorNaviBase.hpp" + +class ActorWisdomNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ + + /* b4 */ virtual FairyId GetFairyId() override; + + static ActorWisdomNavi *Create(); +}; diff --git a/include/Item/ItemManager.hpp b/include/Item/ItemManager.hpp index c0a84aa7..9e473fc2 100644 --- a/include/Item/ItemManager.hpp +++ b/include/Item/ItemManager.hpp @@ -8,7 +8,7 @@ extern "C" { #include "nds/math.h" #include "types.h" -#include "Actor/Navi/ActorNavi.hpp" +#include "Actor/Navi/ActorNaviBase.hpp" #include "Item/Item.hpp" #include "Player/EquipItem.hpp" #include "Render/ModelRender.hpp" @@ -20,15 +20,6 @@ extern "C" { #define MAX_AMMO_UPGRADE 2 #define MAX_UNK_0BA 9 -typedef s32 FairyId; -enum FairyId_ { - FairyId_None = -1, - FairyId_Courage = 0, - FairyId_Power = 1, - FairyId_Wisdom = 2, - FairyId_COUNT = 3, -}; - typedef u32 ItemModelId; enum ItemModelId_ { ItemModelId_OshusSword, // swA @@ -66,7 +57,7 @@ private: /* 008 */ ItemFlag mForcedItem; // game crashes when any item besides this one is equipped /* 00c */ u32 mHourglassSandFrames; /* 010 */ FairyId mEquippedFairy; - /* 014 */ ActorNavi *mFairies[FairyId_COUNT]; + /* 014 */ ActorNaviBase *mFairies[FairyId_COUNT]; /* 020 */ u16 mEquipLoadTimer; /* 022 */ u16 mNumRupees; /* 024 */ u8 mNumGems[Gem_COUNT]; @@ -114,7 +105,7 @@ public: // Fairy FairyId GetEquippedFairy() const; - ActorNavi *GetFairy(FairyId id) const; + ActorNaviBase *GetFairy(FairyId id) const; u32 GetActiveFairyLevel(FairyId id) const; u32 GetFairyLevel(FairyId id) const; void SpawnFairies(); diff --git a/include/Map/MapOverworld.hpp b/include/Map/MapOverworld.hpp new file mode 100644 index 00000000..482b3ad1 --- /dev/null +++ b/include/Map/MapOverworld.hpp @@ -0,0 +1,75 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Map/MapBase.hpp" +#include "Render/ModelRender.hpp" +#include "Unknown/UnkStruct_ov000_020c0c08.hpp" + +class MapOverworld_Unk1 : public UnkStruct_ov000_020c0c08 { +public: + /* 00 (base) */ + /* 24 */ + + MapOverworld_Unk1(u32 param1, u8 *param2, unk32 param3); +}; + +class MapOverworld : public MapBase { +public: + /* 000 (base) */ + /* 1b0 */ void *mUnk_1b0; + /* 1b4 */ unk8 mUnk_1b4; + /* 1b5 */ unk8 mUnk_1b5; + /* 1b6 */ unk8 mUnk_1b6; + /* 1b7 */ unk8 mUnk_1b7; + /* 1b8 */ u8 mUnk_1b8; + /* 1b9 */ unk8 mUnk_1b9; + /* 1ba */ unk8 mUnk_1ba; + /* 1bb */ unk8 mUnk_1bb; + /* 1bc */ s32 mUnk_1bc; + /* 1c0 */ ModelRender *mUnk_1c0; + /* 1c4 */ void *mUnk_1c4; + /* 1c8 */ void *mUnk_1c8; + /* 1cc */ unk8 mUnk_1cc; + /* 1cd */ unk8 mUnk_1cd; + /* 1ce */ unk8 mUnk_1ce[0x2]; + /* 1d0 */ unk32 mUnk_1d0; + /* 1d4 */ unk32 mUnk_1d4; + /* 1d8 */ s16 mUnk_1d8; + /* 1da */ s16 mUnk_1da; + /* 1dc */ + + /* 00 */ virtual ~MapOverworld() override; + /* 08 */ virtual void vfunc_08(u32 param_2, u32 param_3, Course *param_4) override; + /* 14 */ virtual void vfunc_14() override; + /* 1c */ virtual void vfunc_1c(bool param_2) override; + /* 20 */ virtual void vfunc_20(s32 param_2) override; + /* 2c */ virtual void vfunc_2c() override; + /* 4c */ virtual void vfunc_4c() override; + /* 54 */ virtual unk32 vfunc_54() override; + /* 58 */ virtual unk32 vfunc_58() override; + /* 5c */ virtual unk32 vfunc_5c() override; + /* 60 */ virtual unk32 vfunc_60() override; + /* 64 */ virtual unk32 vfunc_64() override; + /* 78 */ virtual unk32 vfunc_78() override; + /* 7c */ virtual unk32 vfunc_7c() override; + /* 80 */ virtual unk32 vfunc_80() override; + /* 94 */ virtual void vfunc_94() override; + /* 98 */ virtual void vfunc_98() override; + /* a4 */ virtual unk32 vfunc_a4() override; + /* b0 */ virtual unk8 vfunc_b0(unk32 param_2, unk32 param_3) override; + /* bc */ virtual void vfunc_bc() override; + /* c0 */ virtual void vfunc_c0() override; + /* c4 */ + + MapOverworld(u32 width, u32 height); + void func_ov018_0215bfc8(); + u32 func_ov018_0215c34c(); + u32 func_ov018_0215c368(); + s32 func_ov018_0215c380(u8 *param1); + void func_ov018_0215c650(); + void func_ov018_0215c6ac(); + void func_ov018_0215c6d0(); + void func_ov018_0215c9ac(); +}; diff --git a/include/Player/PlayerBase.hpp b/include/Player/PlayerBase.hpp index f813d770..f7caf604 100644 --- a/include/Player/PlayerBase.hpp +++ b/include/Player/PlayerBase.hpp @@ -29,7 +29,7 @@ public: /* 0c */ virtual bool CanMove(); /* 10 */ virtual void vfunc_10(Cylinder *param1) = 0; /* 14 */ virtual void vfunc_14(Cylinder *param1) = 0; - /* 18 */ virtual void vfunc_18() = 0; + /* 18 */ virtual bool vfunc_18(s32 param1) = 0; /* 1c */ virtual void Init() = 0; /* 20 */ virtual void vfunc_20() = 0; /* 24 */ virtual void UpdatePos() = 0; diff --git a/include/Player/PlayerLinkBase.hpp b/include/Player/PlayerLinkBase.hpp index 2a208365..b5bf77ed 100644 --- a/include/Player/PlayerLinkBase.hpp +++ b/include/Player/PlayerLinkBase.hpp @@ -50,7 +50,7 @@ public: /* 0c */ virtual bool CanMove() override; /* 10 */ virtual void vfunc_10(Cylinder *param1) override; /* 14 */ virtual void vfunc_14(Cylinder *param1) override; - /* 18 */ virtual void vfunc_18(s32 param1) override; + /* 18 */ virtual bool vfunc_18(s32 param1) override; /* 1c */ virtual void Init() override; /* 20 */ virtual void vfunc_20() override; /* 24 */ virtual void UpdatePos() override; diff --git a/include/System/OverlayManager.hpp b/include/System/OverlayManager.hpp index 636208fc..4c83bbe4 100644 --- a/include/System/OverlayManager.hpp +++ b/include/System/OverlayManager.hpp @@ -6,6 +6,7 @@ typedef u32 OverlayId; enum OverlayId_ { + OverlayId_None = -1, OverlayId_Core, OverlayId_01, OverlayId_02, diff --git a/include/Unknown/UnkStruct_ov000_020c0c08.hpp b/include/Unknown/UnkStruct_ov000_020c0c08.hpp new file mode 100644 index 00000000..69054538 --- /dev/null +++ b/include/Unknown/UnkStruct_ov000_020c0c08.hpp @@ -0,0 +1,21 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "System/SysNew.hpp" +#include "Unknown/UnkStruct_0202e1a0.hpp" + +class UnkStruct_ov000_020c0c08 : public SysObject { +public: + /* 00 (vtable) */ + /* 04 */ unk32 mUnk_04; + /* 08 */ u8 *mUnk_08; + /* 0c */ UnkStruct_0202e1a0 mUnk_0c; + /* 24 */ + + /* 00 */ virtual ~UnkStruct_ov000_020c0c08(); + /* 08 */ + + UnkStruct_ov000_020c0c08(unk32 param1, u8 *param2); +}; diff --git a/libs/c/include/stddef.h b/libs/c/include/stddef.h index 4986043a..4858fe46 100644 --- a/libs/c/include/stddef.h +++ b/libs/c/include/stddef.h @@ -5,4 +5,6 @@ typedef unsigned int size_t; +#define offsetof(type, member) ((size_t) &((type *) NULL)->member) + #endif diff --git a/libs/nds/include/nds/Overlay.h b/libs/nds/include/nds/Overlay.h index 7a8c6fa9..5339a9d7 100644 --- a/libs/nds/include/nds/Overlay.h +++ b/libs/nds/include/nds/Overlay.h @@ -1,6 +1,10 @@ #ifndef _NDS_OVERLAY_H #define _NDS_OVERLAY_H +#ifdef __cplusplus +extern "C" { +#endif + typedef struct Overlay { /* 00 */ unk32 mId; /* 04 */ void *mBaseAddress; @@ -27,4 +31,8 @@ bool Overlay_Destroy(Overlay *overlay); bool Overlay_Load(Overlay *overlay, unk32 param2); bool Overlay_Unload(Overlay *overlay, unk32 param2); +#ifdef __cplusplus +} +#endif + #endif diff --git a/src/00_Core/Actor/Actor.cpp b/src/00_Core/Actor/Actor.cpp index d35b77c8..b865c39e 100644 --- a/src/00_Core/Actor/Actor.cpp +++ b/src/00_Core/Actor/Actor.cpp @@ -318,8 +318,8 @@ ARM void Actor::SetTransform(Transform *transform) { ARM void Actor::vfunc_a8() {} -ARM void Actor::func_Ov00_020c1bfc(s32 param1) { - gMapManager->func_ov00_02084be0(mUnk_020.mUnk_0a[param1], mUnk_020.mUnk_08[param1]); +ARM bool Actor::func_ov00_020c1bfc(s32 param1) { + return gMapManager->func_ov00_02084be0(mUnk_020.mUnk_0a[param1], mUnk_020.mUnk_08[param1]); } ARM void Actor::func_ov00_020c1c20(s32 param1, unk32 param2) { diff --git a/src/00_Core/Actor/Dungeon/ActorActionObject.cpp b/src/00_Core/Actor/Dungeon/ActorActionObject.cpp new file mode 100644 index 00000000..0a2c3970 --- /dev/null +++ b/src/00_Core/Actor/Dungeon/ActorActionObject.cpp @@ -0,0 +1,85 @@ +#include "Actor/Dungeon/ActorActionObject.hpp" +#include "Map/MapManager.hpp" +#include "Player/LinkStateBase.hpp" +#include "Player/PlayerLinkBase.hpp" +#include "Save/AdventureFlags.hpp" + +#pragma section sbss begin +ActorType ActorActionObject::gType = ActorType(ActorTypeId_ActionObject, (ActorCreateFunc) ActorActionObject::Create, NULL); +#pragma section sbss end + +extern u32 **data_027e0fe0[]; +ARM ActorActionObject *ActorActionObject::Create() { + return new(*data_027e0fe0[0], 4) ActorActionObject(); +} + +ARM ActorActionObject::ActorActionObject() {} + +ARM ActorActionObject::~ActorActionObject() {} + +// non-matching +ARM bool ActorActionObject::vfunc_08() { + mGravity = 0; + mHitbox.pos = gVec3p_ZERO; + mHitbox.size = -1; + mUnk_08c.pos = mHitbox.pos; + mUnk_08c.size = mHitbox.size; + mUnk_0a4.mUnk_04 = gVec3p_ZERO; + mUnk_0a4.mUnk_10 = -1; + mVisible = false; + mUnk_130 = 0; + return true; +} + +ARM void ActorActionObject::vfunc_14(u32 param1) { + if (!this->func_ov00_020c313c(param1)) { + return; + } + + u32 flag = mUnk_020.mUnk_00[2]; + bool bVar3; + switch (mUnk_020.mUnk_00[0]) { + case 0: bVar3 = true; break; + case 1: + if (gPlayerLink->mGrabActor.id != -1 && gPlayerLink->GetStateId() == LinkStateId_Move) { + bVar3 = true; + } else { + bVar3 = false; + } + break; + case 2: + if (gPlayerLink->mGrabActor.id == -1 && gPlayerLink->GetStateId() == LinkStateId_Move) { + bVar3 = true; + } else { + bVar3 = false; + } + break; + default: bVar3 = false; break; + } + + if (!bVar3) { + return; + } + if (!gMapManager->func_ov00_020836dc((u32) mUnk_020.mUnk_00[1], 0)) { + return; + } + if (mUnk_020.mUnk_0a[0] != 0 && !this->func_ov00_020c1bfc(0)) { + return; + } + if (flag != 0 && !gAdventureFlags->Get(flag)) { + return; + } + + PlayerLinkBase *link = gPlayerLink; + if (link != NULL && link->vfunc_18(7)) { + if (mUnk_020.mUnk_00[3] == 1) { + link->func_ov000_020bcf50(&mPos, 0x800); + } + this->func_ov00_020c1c20(1, 1); + this->Kill(); + } +} + +ARM void ActorActionObject::vfunc_18(u32 param1) { + this->func_ov00_020c313c(param1); +} diff --git a/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp b/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp index 8e943095..94e7381d 100644 --- a/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp +++ b/src/00_Core/Actor/Dungeon/ActorEventIcon.cpp @@ -8,6 +8,6 @@ bool ActorEventIcon::vfunc_08() {} void ActorEventIcon::vfunc_14(u32 param1) {} void ActorEventIcon::vfunc_18(u32 param1) {} u32 ActorEventIcon::func_ov000_02090648(u32 param1) {} -bool func_ov000_02090774(u32 param1) {} +bool ActorEventIcon::func_ov000_02090774(u32 param1) {} void ActorEventIcon::vfunc_1c(u16 *param1) {} ActorEventIcon::~ActorEventIcon() {} diff --git a/src/00_Core/Actor/Navi/ActorForceNavi.cpp b/src/00_Core/Actor/Navi/ActorForceNavi.cpp new file mode 100644 index 00000000..04b83c13 --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorForceNavi.cpp @@ -0,0 +1,14 @@ +#include "Actor/Navi/ActorForceNavi.hpp" + +#pragma section sbss begin +ActorType ActorForceNavi::gType = ActorType(ActorTypeId_ForceNavi, (ActorCreateFunc) ActorForceNavi::Create, NULL); +#pragma section sbss end + +extern u32 **data_027e0fe0[]; +ActorForceNavi *ActorForceNavi::Create() { + return new(*data_027e0fe0[0], 4) ActorForceNavi(); +} + +ARM FairyId ActorForceNavi::GetFairyId() { + return FairyId_Power; +} diff --git a/src/00_Core/Actor/Navi/ActorNavi.cpp b/src/00_Core/Actor/Navi/ActorNavi.cpp new file mode 100644 index 00000000..7c195178 --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorNavi.cpp @@ -0,0 +1,32 @@ +#include "Actor/Navi/ActorNavi.hpp" +#include "Player/EquipHammer.hpp" + +ActorType ActorNavi::gType = ActorType(ActorTypeId_Navi, (ActorCreateFunc) ActorNavi::Create, NULL); +UnkStruct_ov000_020b8110 data_ov000_020ee1cc; + +ActorNavi *ActorNavi::Create() {} +UnkStruct_ov000_020b8110::UnkStruct_ov000_020b8110() : + UnkStruct_ov000_020beba8(7) {} +UnkStruct_ov000_020b8110::~UnkStruct_ov000_020b8110() {} +void UnkStruct_ov000_020b8110::vfunc_08(unk16 *param1) {} +void UnkStruct_ov000_020b8110::vfunc_18(s32 *param1) {} +void UnkStruct_ov000_020b8110::vfunc_14(u16 *param1) {} +void ActorNavi::func_ov000_020b8200() {} +void ActorNavi::vfunc_c4() {} +void ActorNavi::vfunc_c8() {} +FairyId ActorNavi::GetFairyId() {} +s32 ActorNavi::vfunc_b8() {} +void ActorNavi::vfunc_d4() {} +void ActorNavi::vfunc_d0() {} +void ActorNavi::SetActive(bool active) {} +void ActorNavi::vfunc_e0() {} +void ActorNavi::vfunc_d8() {} +void ActorNavi::vfunc_20(bool param1) {} +bool ActorNavi::vfunc_cc(unk32 *param1) {} +bool ActorNavi::vfunc_c0(Vec3p *param1) {} +void ActorNavi::vfunc_e8() {} +bool ActorNavi::vfunc_8c() {} +void ActorNavi::vfunc_ec() {} +EquipHammer *GetEquipHammer() {} +void ActorNavi::func_ov000_020b853c() {} +ActorNavi::~ActorNavi() {} diff --git a/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp b/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp new file mode 100644 index 00000000..84c02e33 --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorWisdomNavi.cpp @@ -0,0 +1,14 @@ +#include "Actor/Navi/ActorWisdomNavi.hpp" + +#pragma section sbss begin +ActorType ActorWisdomNavi::gType = ActorType(ActorTypeId_WisdomNavi, (ActorCreateFunc) ActorWisdomNavi::Create, NULL); +#pragma section sbss end + +extern u32 **data_027e0fe0[]; +ARM ActorWisdomNavi *ActorWisdomNavi::Create() { + return new(*data_027e0fe0[0], 4) ActorWisdomNavi(); +} + +ARM FairyId ActorWisdomNavi::GetFairyId() { + return FairyId_Wisdom; +} diff --git a/src/00_Core/Item/ItemManager.cpp b/src/00_Core/Item/ItemManager.cpp index 06122703..05e88182 100644 --- a/src/00_Core/Item/ItemManager.cpp +++ b/src/00_Core/Item/ItemManager.cpp @@ -126,7 +126,7 @@ ARM FairyId ItemManager::GetEquippedFairy() const { return fairy; } -ARM ActorNavi *ItemManager::GetFairy(FairyId id) const { +ARM ActorNaviBase *ItemManager::GetFairy(FairyId id) const { return mFairies[id]; } diff --git a/src/00_Core/Player/PlayerLinkBase.cpp b/src/00_Core/Player/PlayerLinkBase.cpp index 897932c8..bc248044 100644 --- a/src/00_Core/Player/PlayerLinkBase.cpp +++ b/src/00_Core/Player/PlayerLinkBase.cpp @@ -20,7 +20,7 @@ bool PlayerLinkBase::func_ov000_020bba00() {} bool PlayerLinkBase::func_ov000_020bba14() {} bool PlayerLinkBase::func_ov000_020bba28() {} void PlayerLinkBase::func_ov000_020bba48() {} -void PlayerLinkBase::vfunc_18(s32 param1) {} +bool PlayerLinkBase::vfunc_18(s32 param1) {} bool PlayerLinkBase::CanMove() {} bool PlayerLinkBase::vfunc_58() {} bool PlayerLinkBase::vfunc_5c() {} diff --git a/src/04_Load/Actor/Navi/ActorNavi.cpp b/src/04_Load/Actor/Navi/ActorNavi.cpp new file mode 100644 index 00000000..12939c04 --- /dev/null +++ b/src/04_Load/Actor/Navi/ActorNavi.cpp @@ -0,0 +1,3 @@ +#include "Actor/Navi/ActorNavi.hpp" + +ActorNavi::ActorNavi() {} diff --git a/src/18_Overworld/Map/MapOverworld.cpp b/src/18_Overworld/Map/MapOverworld.cpp new file mode 100644 index 00000000..5737ea54 --- /dev/null +++ b/src/18_Overworld/Map/MapOverworld.cpp @@ -0,0 +1,38 @@ +#include "Map/MapOverworld.hpp" + +MapOverworld::MapOverworld(u32 width, u32 height) : + MapBase(width, height) {} +MapOverworld::~MapOverworld() {} +void MapOverworld::vfunc_08(u32 param_2, u32 param_3, Course *param_4) {} +void MapOverworld::vfunc_14() {} +void MapOverworld::vfunc_1c(bool param_2) {} +void MapOverworld::func_ov018_0215bfc8() {} +void MapOverworld::vfunc_20(s32 param_2) {} +void MapOverworld::vfunc_2c() {} +void MapOverworld::vfunc_94() {} +unk32 MapOverworld::vfunc_a4() {} +unk32 MapOverworld::vfunc_54() {} +unk32 MapOverworld::vfunc_58() {} +unk32 MapOverworld::vfunc_5c() {} +unk32 MapOverworld::vfunc_60() {} +unk32 MapOverworld::vfunc_64() {} +u32 MapOverworld::func_ov018_0215c34c() {} +u32 MapOverworld::func_ov018_0215c368() {} +s32 MapOverworld::func_ov018_0215c380(u8 *param1) {} +void MapOverworld::vfunc_bc() {} +void MapOverworld::vfunc_98() {} +void MapOverworld::vfunc_c0() {} +unk32 MapOverworld::vfunc_78() {} +unk32 MapOverworld::vfunc_7c() {} +unk32 MapOverworld::vfunc_80() {} +unk8 MapOverworld::vfunc_b0(unk32 param_2, unk32 param_3) {} +void MapOverworld::func_ov018_0215c650() {} +void MapOverworld::func_ov018_0215c6ac() {} +void MapOverworld::func_ov018_0215c6d0() {} +MapOverworld_Unk1::MapOverworld_Unk1(u32 param1, u8 *param2, unk32 param3) : + UnkStruct_ov000_020c0c08(0, param2) {} +void MapOverworld::func_ov018_0215c9ac() {} +void func_ov018_0215ca24(s32 param1) {} +void func_ov018_0215ca3c(s32 param1, s32 param2, unk32 param3, unk32 param4) {} +void func_ov018_0215ca8c(s32 param1) {} +void MapOverworld::vfunc_4c() {} diff --git a/src/Main/System/OverlayManager.cpp b/src/Main/System/OverlayManager.cpp index 9c50ebb6..8fff1fc6 100644 --- a/src/Main/System/OverlayManager.cpp +++ b/src/Main/System/OverlayManager.cpp @@ -1,7 +1,88 @@ #include "System/OverlayManager.hpp" +#include "global.h" +#include "nds/Overlay.h" -void OverlayManager::Load(OverlayIndex index, OverlayId id) {} -void OverlayManager::LoadIfNotLoaded(OverlayIndex index, OverlayId id) {} -void OverlayManager::Unload(OverlayIndex index) {} -void OverlayManager::LoadOverlaySetup(s32 index) {} -void OverlayManager::UnloadOverlaySetup() {} +struct UnkStruct_020ee698 { + /* 00 */ unk8 mUnk_00[0x2C]; + /* 2c */ unk32 mUnk_2c; + /* 30 */ +}; +extern UnkStruct_020ee698 data_ov000_020ee698; + +struct OverlaySetup { + /* 00 */ unk8 mUnk_00; + /* 01 */ unk8 mUnk_01; + /* 02 */ unk8 mUnk_02; + /* 03 */ unk8 mUnk_03; + /* 04 */ OverlayId slot1Overlay; + /* 08 */ OverlayId slot2Overlay; + /* 0c */ OverlayId slot3Overlay; + /* 10 */ OverlayId slot12Overlay; + /* 14 */ void *mUnk_14; + /* 18 */ void *mUnk_18; + /* 1c */ +}; +extern OverlaySetup gOverlaySetups[]; + +extern u32 *data_027e0ce0[]; +extern "C" void func_ov007_02102850(u32 **); +extern "C" void func_ov007_021028a0(u32 **); + +THUMB void OverlayManager::Load(OverlayIndex index, OverlayId id) { + if (id != OverlayId_None) { + Overlay_Load(NULL, id); + } + + this->mLoadedOverlays[index] = id; +} + +THUMB void OverlayManager::LoadIfNotLoaded(OverlayIndex index, OverlayId id) { + OverlayId loadedId = this->mLoadedOverlays[index]; + + if (loadedId != id) { + this->Unload(index); + this->Load(index, id); + } +} + +THUMB void OverlayManager::Unload(OverlayIndex index) { + if (this->mLoadedOverlays[index] != OverlayId_None) { + Overlay_Unload(NULL, this->mLoadedOverlays[index]); + this->mLoadedOverlays[index] = OverlayId_None; + } +} + +//! TODO: solve the .word issue with the overlay IDs +//! both functions should match otherwise +THUMB void OverlayManager::LoadOverlaySetup(s32 index) { + OverlayId overlayId; + OverlaySetup *pSetup; + + pSetup = &gOverlaySetups[index]; + + this->LoadIfNotLoaded(OverlayIndex_1, pSetup->slot1Overlay); + this->LoadIfNotLoaded(OverlayIndex_2, pSetup->slot2Overlay); + + if (index == 5) { + func_ov007_02102850(data_027e0ce0); + } else { + overlayId = pSetup->slot12Overlay; + + if (index == 6 && data_ov000_020ee698.mUnk_2c == 2) { + overlayId = OverlayId_61; + } + + this->Load(OverlayIndex_3, pSetup->slot3Overlay); + this->Load(OverlayIndex_12, overlayId); + } +} + +THUMB void OverlayManager::UnloadOverlaySetup() { + this->Unload(OverlayIndex_12); + this->Unload(OverlayIndex_3); + + if (this->mLoadedOverlays[2] == OverlayId_07) { + func_ov007_021028a0(data_027e0ce0); + this->Unload(OverlayIndex_2); + } +} diff --git a/tools/configure.py b/tools/configure.py old mode 100644 new mode 100755 index f3c34311..3ae6286c --- a/tools/configure.py +++ b/tools/configure.py @@ -1,22 +1,31 @@ -#!/usr/bin/python3 +#!/usr/bin/env python3 import os from pathlib import Path -import platform import argparse import sys import ninja_syntax +from get_platform import get_platform + + +DEFAULT_WIBO_PATH = "./wibo" parser = argparse.ArgumentParser(description="Generates build.ninja") -parser.add_argument('-w', type=str, default="./wibo", dest="wine", required=False, help="Path to Wine/Wibo (linux only)") +parser.add_argument('-w', type=str, default=DEFAULT_WIBO_PATH, dest="wine", required=False, help="Path to Wine/Wibo (linux only)") +parser.add_argument("--compiler", type=Path, required=False, help="Path to pre-installed compiler root directory") +parser.add_argument("--no-extract", action="store_true", help="Skip extract step") +parser.add_argument("--dsd", type=Path, required=False, help="Path to pre-installed dsd CLI") parser.add_argument('version', help='Game version') args = parser.parse_args() # Config GAME = "ph" +DSD_VERSION = 'v0.6.0' +WIBO_VERSION = '0.6.16' +OBJDIFF_VERSION = 'v2.7.1' MWCC_VERSION = "2.0/sp1p5" DECOMP_ME_COMPILER = "mwcc_30_131" CC_FLAGS = " ".join([ @@ -65,7 +74,8 @@ src_path = root_path / "src" libs_path = root_path / "libs" extract_path = root_path / "extract" tools_path = root_path / "tools" -mwcc_path = tools_path / "mwccarm" / MWCC_VERSION +mwcc_root = args.compiler or tools_path / "mwccarm" +mwcc_path = mwcc_root / MWCC_VERSION # Includes @@ -80,38 +90,96 @@ CC_INCLUDES = " ".join(f"-i {include}" for include in includes) # Platform info -EXE = "" -WINE = "" -system = platform.system() -if system == "Windows": - system = "windows" - EXE = ".exe" -elif system == "Linux": - system = "linux" - WINE = args.wine -else: - print(f"Unknown system '{system}'") +platform = get_platform() +if platform is None: exit(1) -match platform.machine().lower(): - case "amd64" | "x86_64": machine = "x86_64" - case machine: - print(f"Unknown machine: {machine}") - exit(1) - - +EXE = platform.exe +WINE = args.wine if platform.system != "windows" else "" +DSD = str(args.dsd or os.path.join('.', str(root_path / f"dsd{EXE}"))) +OBJDIFF = os.path.join('.', str(root_path / f"objdiff-cli{EXE}")) +CC = os.path.join('.', str(mwcc_path / "mwccarm.exe")) +LD = os.path.join('.', str(mwcc_path / "mwldarm.exe")) PYTHON = sys.executable +class Project: + def __init__(self, game_version: str): + self.game_version = game_version + '''Version of the game''' + self.game_config = config_path / game_version + '''Root directory for dsd configs''' + + if not self.game_config.is_dir(): + print(f"Version '{game_version}' not recognized") + exit(1) + + self.game_build = build_path / game_version + '''Path to build directory''' + self.game_extract = extract_path / game_version + '''Path to extract directory''' + + self.delinks_files = get_config_files(self.game_config, "delinks.txt") + '''Paths to every delinks.txt file''' + self.relocs_files = get_config_files(self.game_config, "relocs.txt") + '''Paths to every relocs.txt file''' + self.symbols_files = get_config_files(self.game_config, "symbols.txt") + '''Paths to every symbols.txt file''' + + def dsd_configs(self) -> list[str]: + return self.delinks_files + self.relocs_files + self.symbols_files + + def arm9_config_yaml(self) -> Path: + return self.game_config / "arm9" / "config.yaml" + + def baserom(self) -> Path: + return extract_path / f'baserom_{GAME}_{self.game_version}.nds' + + def build_rom(self) -> str: + return f"{GAME}_{self.game_version}.nds" + + def baserom_config(self) -> Path: + return self.game_extract / 'config.yaml' + + def build_rom_config(self) -> Path: + return self.game_build / "build" / "rom_config.yaml" + + def source_object_files(self) -> list[str]: + return [ + str(self.game_build / source_file.with_suffix(".o")) + for source_file in get_c_cpp_files([src_path, libs_path]) + ] + + def arm9_lcf(self) -> Path: + return self.game_build / "linker_script.lcf" + + def arm9_objects_txt(self) -> Path: + return self.game_build / "objects.txt" + + def arm9_delink_yaml(self) -> Path: + return self.game_build / "delinks" / "delink.yaml" + + def arm9_o(self) -> Path: + return self.game_build / "arm9.o" + + def arm9_delinks(self) -> Path: + return self.game_build / "delinks" + + def objdiff_report(self) -> Path: + return self.game_build / "report.json" + + def main(): - game_version: str = args.version - game_config = config_path / game_version - if not game_config.is_dir(): - print(f"Version '{game_version}' not recognized") - return + project = Project(args.version) with build_ninja_path.open("w") as file: n = ninja_syntax.Writer(file) + n.rule( + name="download_tool", + command=f'{PYTHON} tools/download_tool.py $tool $tag --path $path' + ) + n.newline() + if arm7_bios_path.is_file(): n.variable("arm7_bios_flag", f"--arm7-bios {arm7_bios_path.relative_to(root_path)}") else: @@ -120,20 +188,20 @@ def main(): n.rule( name="extract", - command="./dsd rom extract --rom $in --output-path $output_path $arm7_bios_flag" + command=f"{DSD} rom extract --rom $in --output-path $output_path $arm7_bios_flag" ) n.newline() n.rule( name="delink", - command="./dsd delink --config-path $config_path" + command=f"{DSD} delink --config-path $config_path" ) n.newline() # -MMD excludes all includes instead of just system includes for some reason, so use -MD instead. - mwcc_cmd = f'{WINE} "{mwcc_path}/mwccarm.exe" {CC_FLAGS} {CC_INCLUDES} $cc_flags -d $game_version -MD -c $in -o $basedir' - mwcc_implicit = [] - if system != "windows": + mwcc_cmd = f'{WINE} "{CC}" {CC_FLAGS} {CC_INCLUDES} $cc_flags -d $game_version -MD -c $in -o $basedir' + mwcc_implicit = [CC] + if platform.system != "windows": transform_dep = "tools/transform_dep.py" mwcc_cmd += f" && $python {transform_dep} $basefile.d $basefile.d" mwcc_implicit.append(transform_dep) @@ -146,31 +214,37 @@ def main(): n.rule( name="lcf", - command="./dsd lcf -c $config_path --lcf-file $lcf_file --objects-file $objects_file" + command=f"{DSD} lcf -c $config_path --lcf-file $lcf_file --objects-file $objects_file" ) n.newline() n.rule( name="mwld", - command=f'{WINE} "{mwcc_path}/mwldarm.exe" {LD_FLAGS} @$objects_file $lcf_file -o $out' + command=f'{WINE} "{LD}" {LD_FLAGS} @$objects_file $lcf_file -o $out' ) n.newline() n.rule( name="rom_config", - command="./dsd rom config --elf $in --config $config_path" + command=f"{DSD} rom config --elf $in --config $config_path" ) n.newline() n.rule( name="rom_build", - command="./dsd rom build --config $in --rom $out $arm7_bios_flag" + command=f"{DSD} rom build --config $in --rom $out $arm7_bios_flag" ) n.newline() n.rule( name="objdiff", - command=f"./dsd objdiff --config-path $config_path {DSD_OBJDIFF_ARGS}" + command=f"{DSD} objdiff --config-path $config_path {DSD_OBJDIFF_ARGS}" + ) + n.newline() + + n.rule( + name="objdiff_report", + command=f"{OBJDIFF} report generate -o $out" ) n.newline() @@ -180,70 +254,137 @@ def main(): ) n.newline() + n.rule( + name="check_modules", + command=f"{DSD} check modules --config-path $config_path --fail" + ) + n.newline() + + n.rule( + name="check_symbols", + command=f"{DSD} check symbols --config-path $config_path --elf-path $elf_path --fail" + ) + n.newline() + n.rule( name="sha1", command=f"{PYTHON} tools/sha1.py $in -c $sha1_file" ) n.newline() - game_build = build_path / game_version - game_extract = extract_path / game_version - - add_extract_build(n, game_extract, game_version) - add_delink_and_lcf_builds(n, game_config, game_build, game_extract) - add_mwcc_builds(n, game_version, game_build, mwcc_implicit) - add_mwld_and_rom_builds(n, game_build, game_config, game_version) + add_download_tool_builds(n) + add_extract_build(n, project) + add_delink_and_lcf_builds(n, project) + add_mwcc_builds(n, project, mwcc_implicit) + add_mwld_and_rom_builds(n, project) + add_check_builds(n, project) + add_objdiff_builds(n, project) -def add_extract_build(n: ninja_syntax.Writer, game_extract: Path, game_version: str): - rom_path = extract_path / f'baserom_{GAME}_{game_version}.nds' - rom_config = game_extract / 'config.yaml' +def add_download_tool_builds(n: ninja_syntax.Writer): + if args.dsd is None: + n.build( + rule="download_tool", + outputs=DSD, + variables={ + "tool": "dsd", + "tag": DSD_VERSION, + "path": DSD, + }, + ) + n.newline() + n.build( - inputs=str(rom_path), - rule="extract", - outputs=str(rom_config), + rule="download_tool", + outputs=OBJDIFF, variables={ - "output_path": str(game_extract) + "tool": "objdiff", + "tag": OBJDIFF_VERSION, + "path": OBJDIFF, } ) n.newline() + if args.compiler is None: + n.build( + rule="download_tool", + outputs=[CC, LD], + variables={ + "tool": "mwccarm", + "tag": "latest", + "path": tools_path, + }, + ) + n.newline() -def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_config: Path, game_version: str): - source_object_files = [ - str(game_build / source_file.with_suffix(".o")) - for source_file in get_c_cpp_files([src_path, libs_path]) - ] - lcf_file = str(game_build / "linker_script.lcf") - objects_file = str(game_build / "objects.txt") - delink_file = str(game_build / "delinks" / "delink.yaml") - elf_file = str(game_build / "arm9.o") + if platform.system != "windows" and WINE == DEFAULT_WIBO_PATH: + n.build( + rule="download_tool", + outputs=WINE, + variables={ + "tool": "wibo", + "tag": WIBO_VERSION, + "path": WINE, + }, + ) + n.newline() + + +def add_extract_build(n: ninja_syntax.Writer, project: Project): + if not args.no_extract: + n.build( + inputs=str(project.baserom()), + implicit=DSD, + rule="extract", + outputs=str(project.baserom_config()), + variables={ + "output_path": str(project.game_extract) + } + ) + n.newline() + + +def add_mwld_and_rom_builds(n: ninja_syntax.Writer, project: Project): + lcf_file = str(project.arm9_lcf()) + objects_file = str(project.arm9_objects_txt()) + delink_file = str(project.arm9_delink_yaml()) + elf_file = str(project.arm9_o()) n.build( - inputs=source_object_files + [lcf_file, objects_file, delink_file], + inputs=project.source_object_files() + [lcf_file, objects_file, delink_file], + implicit=LD, rule="mwld", outputs=elf_file, variables={ - "target_dir": game_build, + "target_dir": project.game_build, "objects_file": objects_file, "lcf_file": lcf_file, } ) n.newline() - rom_config_file = str(game_build / "build" / "rom_config.yaml") n.build( inputs=elf_file, + rule="phony", + outputs="arm9", + ) + n.newline() + + rom_config_file = str(project.build_rom_config()) + n.build( + inputs=elf_file, + implicit=DSD, rule="rom_config", outputs=rom_config_file, variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), } ) n.newline() - rom_file = f"{GAME}_{game_version}.nds" + rom_file = project.build_rom() n.build( - inputs=[rom_config_file], + inputs=rom_config_file, + implicit=DSD, rule="rom_build", outputs=rom_file, ) @@ -267,28 +408,28 @@ def add_mwld_and_rom_builds(n: ninja_syntax.Writer, game_build: Path, game_confi n.newline() -def add_mwcc_builds(n: ninja_syntax.Writer, game_version: str, game_build: Path, mwcc_implicit: list[Path]): +def add_mwcc_builds(n: ninja_syntax.Writer, project: Project, mwcc_implicit: list[Path]): for source_file in get_c_cpp_files([src_path, libs_path]): - src_obj_path = game_build / source_file + src_obj_path = project.game_build / source_file cc_flags = [] if is_cpp(source_file): cc_flags.append("-lang=c++") elif is_c(source_file): cc_flags.append("-lang=c") n.build( inputs=str(source_file), + implicit=mwcc_implicit, rule="mwcc", outputs=str(src_obj_path.with_suffix(".o")), variables={ - "game_version": game_version, + "game_version": project.game_version, "cc_flags": " ".join(cc_flags), "basedir": os.path.dirname(src_obj_path), "basefile": str(src_obj_path.with_suffix("")), }, - implicit=mwcc_implicit, ) n.newline() extension = source_file.suffix - ctx_file = str(game_build / source_file.with_suffix(f".ctx{extension}")) + ctx_file = str(project.game_build / source_file.with_suffix(f".ctx{extension}")) n.build( inputs=str(source_file), rule="m2ctx", @@ -314,19 +455,17 @@ def is_c(name: str): return Path(name).suffix in [".c"] -def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_build: Path, game_extract: Path): +def add_delink_and_lcf_builds(n: ninja_syntax.Writer, project: Project): n.comment("Delink ELF binaries when any delinks.txt file is modified") - delinks_files = get_config_files(game_config, "delinks.txt") - relocs_files = get_config_files(game_config, "relocs.txt") - symbols_files = get_config_files(game_config, "symbols.txt") - rom_config = str(game_extract / 'config.yaml') - delinks_path = game_build / "delinks" + rom_config = str(project.baserom_config()) + delinks_path = project.arm9_delinks() n.build( - inputs=delinks_files + relocs_files + symbols_files + [rom_config], + inputs=project.dsd_configs() + [rom_config], + implicit=DSD, rule="delink", outputs=str(delinks_path / "delink.yaml"), variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), } ) n.newline() @@ -338,26 +477,60 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu ) n.newline() - lcf_file = game_build / "linker_script.lcf" - objects_file = game_build / "objects.txt" + lcf_file = project.arm9_lcf() + objects_file = project.arm9_objects_txt() n.build( - inputs=delinks_files + [str(rom_config)], + inputs=project.delinks_files + [str(rom_config)], + implicit=DSD, rule="lcf", outputs=[str(lcf_file), str(objects_file)], variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), "lcf_file": lcf_file, "objects_file": objects_file, } ) n.newline() + +def add_check_builds(n: ninja_syntax.Writer, project: Project): n.build( - inputs=delinks_files + relocs_files + symbols_files, + inputs=str(project.arm9_o()), + rule="check_modules", + outputs="check_modules", + variables={ + "config_path": project.arm9_config_yaml(), + }, + ) + n.newline() + + n.build( + inputs=str(project.arm9_o()), + rule="check_symbols", + outputs="check_symbols", + variables={ + "config_path": project.arm9_config_yaml(), + "elf_path": project.arm9_o(), + }, + ) + n.newline() + + n.build( + inputs=["check_modules", "check_symbols"], + rule="phony", + outputs="check", + ) + n.newline() + + +def add_objdiff_builds(n: ninja_syntax.Writer, project: Project): + n.build( + inputs=project.dsd_configs(), + implicit=DSD, rule="objdiff", outputs="objdiff.json", variables={ - "config_path": game_config / "arm9" / "config.yaml", + "config_path": project.arm9_config_yaml(), } ) n.newline() @@ -369,8 +542,23 @@ def add_delink_and_lcf_builds(n: ninja_syntax.Writer, game_config: Path, game_bu ) n.newline() + n.build( + inputs=["objdiff.json"], + implicit=[OBJDIFF] + project.source_object_files(), + rule="objdiff_report", + outputs=str(project.objdiff_report()), + ) + n.newline() -def get_config_files(game_config: Path, name: str): + n.build( + inputs=str(project.objdiff_report()), + rule="phony", + outputs="report", + ) + n.newline() + + +def get_config_files(game_config: Path, name: str) -> list[str]: return [ f"{root}/{file}" for root, _, files in os.walk(game_config) diff --git a/tools/download_tool.py b/tools/download_tool.py new file mode 100644 index 00000000..755acd8f --- /dev/null +++ b/tools/download_tool.py @@ -0,0 +1,53 @@ +import argparse +from pathlib import Path +from get_platform import get_platform +import zipfile +import io +import requests +import stat + +root_path = Path(__file__).parent.parent + + +platform = get_platform() +if platform is None: + exit(1) + +parser = argparse.ArgumentParser() +parser.add_argument("tool") +parser.add_argument("tag") +parser.add_argument("--path", type=Path, required=True) +args = parser.parse_args() + + +def dsd_url(tag: str) -> str: + return f'https://github.com/AetiasHax/ds-decomp/releases/download/{tag}/dsd-{platform.system}-{platform.machine}{platform.exe}' + +def mwccarm_url(tag: str) -> str: + return 'http://decomp.aetias.com/files/mwccarm.zip' + +def wibo_url(tag: str) -> str: + return f'https://github.com/decompals/wibo/releases/download/{tag}/wibo' + +def objdiff_url(tag: str) -> str: + return f'https://github.com/encounter/objdiff/releases/download/{tag}/objdiff-cli-{platform.system}-{platform.machine}{platform.exe}' + +TOOLS = { + "dsd": dsd_url, + "mwccarm": mwccarm_url, + "wibo": wibo_url, + "objdiff": objdiff_url, +} + + +download_url = TOOLS[args.tool](args.tag) +print(f'\nDownloading {args.tool} {args.tag}...') +response = requests.get(download_url) +if download_url.endswith('.zip'): + zip_file = zipfile.ZipFile(io.BytesIO(response.content)) + zip_file.extractall(args.path) +else: + out_path: Path = args.path + with out_path.open('wb') as f: + f.write(response.content) + out_path.chmod(out_path.stat().st_mode | stat.S_IEXEC) diff --git a/tools/get_platform.py b/tools/get_platform.py new file mode 100644 index 00000000..a4fe40d8 --- /dev/null +++ b/tools/get_platform.py @@ -0,0 +1,31 @@ +import platform + + +class Platform: + def __init__(self, *, system: str, machine: str, exe: str): + self.system = system + '''Name of operating system: "windows" or "linux"''' + self.machine = machine + '''Name of machine architecture: "x86_64"''' + self.exe = exe + '''Executable file extension: ".exe" for Windows, "" otherwise''' + + +def get_platform() -> Platform | None: + exe = "" + system = platform.system() + if system == "Windows": + system = "windows" + exe = ".exe" + elif system == "Linux": + system = "linux" + else: + print(f"Unknown system '{system}'") + return None + match platform.machine().lower(): + case "amd64" | "x86_64": machine = "x86_64" + case machine: + print(f"Unknown machine: {machine}") + return None + + return Platform(system=system, machine=machine, exe=exe) diff --git a/tools/m2ctx.py b/tools/m2ctx.py index f2275e33..7c20c34a 100755 --- a/tools/m2ctx.py +++ b/tools/m2ctx.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import sys import pyperclip diff --git a/tools/ninja_syntax.py b/tools/ninja_syntax.py index 2aa8456e..e0716e8a 100644 --- a/tools/ninja_syntax.py +++ b/tools/ninja_syntax.py @@ -1,5 +1,3 @@ -#!/usr/bin/python - # Copyright 2011 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/tools/setup.py b/tools/setup.py deleted file mode 100644 index f81ca25d..00000000 --- a/tools/setup.py +++ /dev/null @@ -1,54 +0,0 @@ -import requests -import zipfile -import io -from pathlib import Path -import platform -import stat - -DSD_VERSION = 'v0.4.0' -WIBO_VERSION = '0.6.16' - - -tools_path = Path(__file__).parent -root_path = tools_path.parent - - -EXE = "" -system = platform.system() -if system == "Windows": - system = "windows" - EXE = ".exe" -elif system == "Linux": - system = "linux" -else: - print(f"Unknown system '{system}'") - exit(1) -match platform.machine().lower(): - case 'amd64' | 'x86_64': machine = 'x86_64' - case machine: - print(f'Unknown machine: {machine}') - exit(1) - - -print('\nInstalling dsd...') -response = requests.get(f'https://github.com/AetiasHax/ds-decomp/releases/download/{DSD_VERSION}/dsd-{system}-{machine}{EXE}') -dsd_path = root_path / f'dsd{EXE}' -with open(dsd_path, 'wb') as f: - f.write(response.content) -dsd_path.chmod(dsd_path.stat().st_mode | stat.S_IEXEC) - - -print('\nInstalling toolchain...') -response = requests.get('http://decomp.aetias.com/files/mwccarm.zip') -zip_file = zipfile.ZipFile(io.BytesIO(response.content)) -zip_file.extractall(tools_path) - - -if system == "linux": - print('\nInstalling wibo...') - response = requests.get(f'https://github.com/decompals/wibo/releases/download/{WIBO_VERSION}/wibo') - wibo_path = root_path / 'wibo' - with open(wibo_path, 'wb') as f: - f.write(response.content) - wibo_path.chmod(wibo_path.stat().st_mode | stat.S_IEXEC) - diff --git a/tools/sha1.py b/tools/sha1.py old mode 100644 new mode 100755 index 8cd6edd8..fd1cbda8 --- a/tools/sha1.py +++ b/tools/sha1.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from pathlib import Path import argparse