summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeki <treeki@gmail.com>2012-07-08 02:46:59 +0200
committerTreeki <treeki@gmail.com>2012-07-08 02:46:59 +0200
commit613e30a894cddcdc11c8da140bae35090247c8ec (patch)
tree274cbfccc9e1795d13e1f2fe69d172d4b469877a
parent1c3e5a0b1c62829d78960c4d99e4928ccf73625f (diff)
downloadkamek-613e30a894cddcdc11c8da140bae35090247c8ec.tar.gz
kamek-613e30a894cddcdc11c8da140bae35090247c8ec.zip
added PALv2, made Kamek link all regions at the same time
Diffstat (limited to '')
-rw-r--r--.gitignore2
-rwxr-xr-xhacksToDropbox20
-rwxr-xr-xhacksToDropboxKP20
-rw-r--r--kamek_configs.yaml50
-rw-r--r--kamek_jpn.x1529
-rwxr-xr-xmakeAnother10
-rwxr-xr-xmakeAnotherAll8
-rwxr-xr-xmakeNewer19
-rwxr-xr-xmakeNewerAll20
-rwxr-xr-xmakeNewerAllCodehandler15
-rwxr-xr-xmakeNewerKP19
-rwxr-xr-xmakeNewerKPAll20
-rwxr-xr-xmakeSummerSun52
-rwxr-xr-xtools/hooks.py24
-rw-r--r--tools/kamek.py128
-rwxr-xr-xtools/mapfile_tool.py14
16 files changed, 208 insertions, 1742 deletions
diff --git a/.gitignore b/.gitignore
index b71bdf0..d07ae7d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,6 +4,8 @@ NewerASM
kamek_pal2.x
kamek_ntsc.x
kamek_ntsc2.x
+kamek_jpn.x
+kamek_jpn2.x
tools/*.pyc
*.pyc
.DS_Store
diff --git a/hacksToDropbox b/hacksToDropbox
index 5077946..d23228a 100755
--- a/hacksToDropbox
+++ b/hacksToDropbox
@@ -1,11 +1,13 @@
path=/home/me/Dropbox/NEWERsmbw/Test\ Pack/NewerTestPack/SysSelect
-cp NewerASM/pal_loader.bin "$path/SystemEU_1.bin"
-cp NewerASM/pal_dlcode.bin "$path/DLCodeEU_1.bin"
-cp NewerASM/pal_dlrelocs.bin "$path/DLRelocsEU_1.bin"
-cp NewerASM/ntsc_loader.bin "$path/SystemUS_1.bin"
-cp NewerASM/ntsc_dlcode.bin "$path/DLCodeUS_1.bin"
-cp NewerASM/ntsc_dlrelocs.bin "$path/DLRelocsUS_1.bin"
-cp NewerASM/ntsc2_loader.bin "$path/SystemUS_2.bin"
-cp NewerASM/ntsc2_dlcode.bin "$path/DLCodeUS_2.bin"
-cp NewerASM/ntsc2_dlrelocs.bin "$path/DLRelocsUS_2.bin"
+copy_files() {
+ cp NewerASM/n_$1_loader.bin $path/System$2.bin
+ cp NewerASM/n_$1_dlcode.bin $path/DLCode$2.bin
+ cp NewerASM/n_$1_dlrelocs.bin $path/DLRelocs$2.bin
+}
+
+copy_files pal EU_1
+copy_files pal2 EU_2
+copy_files ntsc US_1
+copy_files ntsc2 US_2
+copy_files jpn JP_1
diff --git a/hacksToDropboxKP b/hacksToDropboxKP
index 419de5b..9a60715 100755
--- a/hacksToDropboxKP
+++ b/hacksToDropboxKP
@@ -1,11 +1,13 @@
path=/home/me/Dropbox/NEWERsmbw/Test\ Pack/NewerTestPack/SysMap
-cp NewerASM/pal_loader.bin "$path/SystemEU_1.bin"
-cp NewerASM/pal_dlcode.bin "$path/DLCodeEU_1.bin"
-cp NewerASM/pal_dlrelocs.bin "$path/DLRelocsEU_1.bin"
-cp NewerASM/ntsc_loader.bin "$path/SystemUS_1.bin"
-cp NewerASM/ntsc_dlcode.bin "$path/DLCodeUS_1.bin"
-cp NewerASM/ntsc_dlrelocs.bin "$path/DLRelocsUS_1.bin"
-cp NewerASM/ntsc2_loader.bin "$path/SystemUS_2.bin"
-cp NewerASM/ntsc2_dlcode.bin "$path/DLCodeUS_2.bin"
-cp NewerASM/ntsc2_dlrelocs.bin "$path/DLRelocsUS_2.bin"
+copy_files() {
+ cp NewerASM/n_$1_loader.bin $path/System$2.bin
+ cp NewerASM/n_$1_dlcode.bin $path/DLCode$2.bin
+ cp NewerASM/n_$1_dlrelocs.bin $path/DLRelocs$2.bin
+}
+
+copy_files pal EU_1
+copy_files pal2 EU_2
+copy_files ntsc US_1
+copy_files ntsc2 US_2
+copy_files jpn JP_1
diff --git a/kamek_configs.yaml b/kamek_configs.yaml
index 94bbccc..33dd868 100644
--- a/kamek_configs.yaml
+++ b/kamek_configs.yaml
@@ -1,45 +1,15 @@
---
-- friendly_name: "New Super Mario Bros. PAL v1"
- short_name: 'pal'
- defines: [REGION_PAL, VERSION_1]
+- friendly_name: "New Super Mario Bros. Wii"
+ short_name: 'n'
include_dirs: ['include', 'src']
- linker_script: kamek_pal.x
+ multi_build: {
+ pal: 'kamek_pal.x',
+ pal2: 'kamek_pal2.x',
+ ntsc: 'kamek_ntsc.x',
+ ntsc2: 'kamek_ntsc2.x',
+ jpn: 'kamek_jpn.x'
+ }
dynamic_link: true
- rel_area_start: 0x807684C0
- rel_area_end: 0x80B75CA8
-
-- friendly_name: "New Super Mario Bros. NTSC v1"
- short_name: 'ntsc'
- defines: [REGION_NTSC, VERSION_1]
- include_dirs: ['include', 'src']
- linker_script: kamek_ntsc.x
- dynamic_link: true
- rel_area_start: 0x807684C0
- rel_area_end: 0x80B8E33C
-
-- friendly_name: "New Super Mario Bros. NTSC v2"
- short_name: 'ntsc2'
- defines: [REGION_NTSC, VERSION_2]
- include_dirs: ['include', 'src']
- linker_script: kamek_ntsc2.x
- dynamic_link: true
- rel_area_start: 0x807684C0
- rel_area_end: 0x80B8E33C
-
-- friendly_name: "New Super Mario Bros. JPN v1"
- short_name: 'jpn'
- defines: [REGION_JPN, VERSION_1]
- include_dirs: ['include', 'src']
- dynamic_link: true
- linker_script: kamek_jpn.x
- rel_area_start: 0x807684C0
- rel_area_end: 0x80B8E33C
-
-#- friendly_name: "New Super Mario Bros. PAL v2"
-# short_name: 'pal2'
-# defines: [REGION_PAL, VERSION_2]
-# include_dirs: ['include']
-# linker_script: kamek_pal2.x
# rel_area_start: 0x807684C0
# rel_area_end: 0x80B75CA8
-
+
diff --git a/kamek_jpn.x b/kamek_jpn.x
deleted file mode 100644
index 955a496..0000000
--- a/kamek_jpn.x
+++ /dev/null
@@ -1,1529 +0,0 @@
-SECTIONS {
-
-/* Scrolling is annoying, clown car goes here! */
-
- __ct__20daJrClownForPlayer_cFv = 0x80810210;
- __dt__20daJrClownForPlayer_cFv = 0x808102D0; /* Beans indeed. */
-
- PClownCarExecute = 0x800A3600;
- PClownCarAfterCreate = 0x800951D0;
- PClownCarDraw = 0x80810920;
- PClownCarMove = 0x80811C00;
-
- sAllocatorFunc__FrmHeap = 0x8042DFF0;
-
- GetActivePlayerCount = 0x8005FFB0;
- getEffectiveScreenLeft__19ClassWithCameraInfoFv = 0x80082240;
- instance__19ClassWithCameraInfo = 0x80429B20;
-
- BowserExitDemoState = 0x8005B5D0;
- MagicEnd = 0x807CCBA0;
-
-/* Back to other shit I didn't want to scroll for */
-
- GlobalTickCount = 0x8042A088;
-
- GetSpecificPlayerActor = 0x8005F900;
- Actor_SearchByID = 0x80162B10;
- TimeStopFlag = 0x80429A1A;
- TimerBranch = 0x800E3948;
- MarioDescentRate = 0x8042B584;
- MarioJumpArc = 0x802F543C;
- MarioJumpMax = 0x8042B568;
- MiniMarioJumpArc = 0x802F5484;
- MarioSize = 0x8042B594;
- AlwaysDrawFlag = 0x80064540;
- AlwaysDrawBranch = 0x80064544;
- GenerateRandomNumber = 0x800B2EE0;
- OneofManySoundPlayers = 0x800CE840;
- BombExplodeState = 0x80B12348;
- NoFreezie = 0x800A0B08;
-
- DoSceneChange__FUsUiUi = 0x800E1DE0;
-
- SinFIdx__Q24nw4r4mathFf = 0x802379E0;
- CosFIdx__Q24nw4r4mathFf = 0x80237A50;
- SinCosFIdx__Q24nw4r4mathFPfPff = 0x80237AB0;
-
- archiveHeap__5mHeap = 0x8042A16C;
- commandHeap__5mHeap = 0x8042A170;
- dylinkHeap__5mHeap = 0x8042A174;
- assertHeap__5mHeap = 0x8042A178;
- gameHeaps__5mHeap = 0x803779C8;
-
- init__18StandOnTopColliderFP13dStageActor_cfffffsUcP7Point2d = 0x800DB100;
- __ct__18StandOnTopColliderFv = 0x800DB0B0;
- __dt__18StandOnTopColliderFv = 0x80044400;
-
-
- __dt__13BasicColliderFv = 0x800DAD80;
-
- addToList__13BasicColliderFv = 0x800DAE00;
-
- __ct__21RideableActorColliderFv = 0x800DB3D0;
- init__21RideableActorColliderFP13dStageActor_cP7Point2dP7Point2d = 0x800DB420;
- init__21RideableActorColliderFP13dStageActor_cffff = 0x800DB4B0;
- setPosition__21RideableActorColliderFP7Point2dP7Point2d = 0x800DB510;
- setPosition__21RideableActorColliderFffff = 0x800DB570;
-
- drawWithMatrix__21SomethingAboutShroomsFfP4mMtx = 0x800BC630;
-
- original_onCreate__13daObjKinoko_cFv = 0x8087F660;
-
- instance__13dCourseFull_c = 0x80429BB8;
- getRectByID__9dCourse_cFUcP5mRect = 0x8008E890;
-
- modifyPlayerPropertiesWithRollingObject = 0x80057820;
- EN_LandbarrelPlayerCollision = 0x80A57BA0;
- GetCountofActivePlayers = 0x8005FFB0;
-
-/* Boss Related */
-
- StartBGMMusic = 0x807DB1B0;
- StopBGMMusic = 0x807DB1C0;
- instance__11dStage32C_c = 0x80429C30;
- instance__7WLClass = 0x804299B4;
-
- ShakeScreen = 0x800D8BE0;
- StageScreen = 0x80429D28;
-
- createChild__13dStageActor_cF6ActorsP13dStageActor_cUiP7Point3dP6S16VecUc = 0x80064680;
- GameMgrBossEndFunc = 0x8001CDB0;
- MakeMarioEnterDemoMode = 0x807C7CE0;
- MakeMarioExitDemoMode = 0x8005CA50;
- ForceMarioExitDemoMode = 0x8005CA50;
-
- ResetPlayerState = 0x80052170;
- UpdateGameMgr = 0x8001CDB0;
- UnsetShit = 0x80056CB0;
-
- StateID_DemoSt2__12daKameckDemo = 0x809998D4;
- StateID_DemoSt__12daKameckDemo = 0x80999914;
- StateID_DemoWait__12daKameckDemo = 0x80999954;
-
- StateID_DemoWait__9daNeedles = 0x8099CC5C;
- StateID_DemoAwake__9daNeedles = 0x8099CCA0;
- StateID_Idle__9daNeedles = 0x8099CCE0;
- StateID_Die__9daNeedles = 0x8099CD20;
-
- StateID_None__7dPlayer = 0x80353F9C;
- StateID_Walk__7dPlayer = 0x80353FDC;
- StateID_Jump__7dPlayer = 0x8035401C;
- StateID_DemoNone__7dPlayer = 0x8035441C;
- StateID_DemoWait__7dPlayer = 0x8035449C;
- StateID_DemoGoal__7dPlayer = 0x8035485C;
- StateID_DemoControl__7dPlayer = 0x8035489C;
-
- PlayWrenchSound = 0x808A9250;
- WaterManager = 0x80429E20;
- CheckforLiquid = 0x800EB8B0;
-
-/* Mr Sun Related */
-
- ActivePhysics_InitWithStruct = 0x8008C3E0;
- ActivePhysics_AddToList = 0x8008C330;
- __ct__13ActivePhysicsFv = 0x8008C200;
- __dt__13ActivePhysicsFv = 0x8008C260;
- HandleXSpeed = 0x8006CD90;
- HandleYSpeed = 0x8006CDE0;
- UpdateObjectPosBasedOnSpeedValues_real = 0x8006CD40;
- dSprite_c__getXDirectionOfFurthestPlayerRelativeToVEC3 = 0x80096240;
- CalculateDistanceFromActorsNextPosToFurthestPlayer = 0x80064740;
-
- doSpriteMovement = 0x800955F0;
-
-
- instance__17dEffectBreakMgr_c = 0x80429C08;
- spawnTile__17dEffectBreakMgr_cFP7Point3dUic = 0x800925F0;
-
- CollidedWithTile = 0x80070CB0;
- SomeStrangeModification = 0x80096E60;
-
-
- Actor_GetVec3WithValuesAdded = 0x8006CED0;
- ConvertStagePositionIntoScreenPosition__Maybe = 0x8006A4B0;
- AnotherSoundRelatedFunction = 0x80197D10;
- YetAnotherSoundPlayer = 0x80198DD0;
- CheckIfPlayingSound = 0x80196410;
- RelatedToPlayingSoundsAlongsideAnims = 0x801051C0;
-
- SoundRelatedClass = 0x8042A1A8;
-
- ConvertStagePositionToScreenPosition__FP7Point2dP7Point3d = 0x8006A4B0;
-
- PlaySoundAtPosition__17SoundPlayingClassFiP7Point2dUi = 0x80198A40;
- instance2__17SoundPlayingClass = 0x80429A80;
-
- ExitStage__Fiiii = 0x801021E0;
-
-
- zero__4mMtxFv = 0x8016EF60;
- rotationX__4mMtxFPs = 0x8016EA00;
- applyRotationX__4mMtxFPs = 0x8016EAC0;
- rotationY__4mMtxFPs = 0x8016EB20;
- applyRotationY__4mMtxFPs = 0x8016EBE0;
- rotationZ__4mMtxFPs = 0x8016EC40;
- applyRotationZ__4mMtxFPs = 0x8016ED00;
- applyRotationYXZ__4mMtxFPsPsPs = 0x8016ED60;
- applyRotationZYX__4mMtxFPsPsPs = 0x8016EDE0;
-
- _savefpr_14 = 0x802DCAB8;
- _savefpr_15 = 0x802DCABC;
- _savefpr_16 = 0x802DCAC0;
- _savefpr_17 = 0x802DCAC4;
- _savefpr_18 = 0x802DCAC8;
- _savefpr_19 = 0x802DCACC;
- _savefpr_20 = 0x802DCAD0;
- _savefpr_21 = 0x802DCAD4;
- _savefpr_22 = 0x802DCAD8;
- _savefpr_23 = 0x802DCADC;
- _savefpr_24 = 0x802DCAE0;
- _savefpr_25 = 0x802DCAE4;
- _savefpr_26 = 0x802DCAE8;
- _savefpr_27 = 0x802DCAEC;
- _savefpr_28 = 0x802DCAF0;
- _savefpr_29 = 0x802DCAF4;
- _savefpr_30 = 0x802DCAF8;
- _savefpr_31 = 0x802DCAFC;
-
- _restfpr_14 = 0x802DCB04;
- _restfpr_15 = 0x802DCB08;
- _restfpr_16 = 0x802DCB0C;
- _restfpr_17 = 0x802DCB10;
- _restfpr_18 = 0x802DCB14;
- _restfpr_19 = 0x802DCB18;
- _restfpr_20 = 0x802DCB1C;
- _restfpr_21 = 0x802DCB20;
- _restfpr_22 = 0x802DCB24;
- _restfpr_23 = 0x802DCB28;
- _restfpr_24 = 0x802DCB2C;
- _restfpr_25 = 0x802DCB30;
- _restfpr_26 = 0x802DCB34;
- _restfpr_27 = 0x802DCB38;
- _restfpr_28 = 0x802DCB3C;
- _restfpr_29 = 0x802DCB40;
- _restfpr_30 = 0x802DCB44;
- _restfpr_31 = 0x802DCB48;
-
- _savegpr_14 = 0x802DCB50;
- _savegpr_15 = 0x802DCB54;
- _savegpr_16 = 0x802DCB58;
- _savegpr_17 = 0x802DCB5C;
- _savegpr_18 = 0x802DCB60;
- _savegpr_19 = 0x802DCB64;
- _savegpr_20 = 0x802DCB68;
- _savegpr_21 = 0x802DCB6C;
- _savegpr_22 = 0x802DCB70;
- _savegpr_23 = 0x802DCB74;
- _savegpr_24 = 0x802DCB78;
- _savegpr_25 = 0x802DCB7C;
- _savegpr_26 = 0x802DCB80;
- _savegpr_27 = 0x802DCB84;
- _savegpr_28 = 0x802DCB88;
- _savegpr_29 = 0x802DCB8C;
- _savegpr_30 = 0x802DCB90;
- _savegpr_31 = 0x802DCB94;
-
- _restgpr_14 = 0x802DCB9C;
- _restgpr_15 = 0x802DCBA0;
- _restgpr_16 = 0x802DCBA4;
- _restgpr_17 = 0x802DCBA8;
- _restgpr_18 = 0x802DCBAC;
- _restgpr_19 = 0x802DCBB0;
- _restgpr_20 = 0x802DCBB4;
- _restgpr_21 = 0x802DCBB8;
- _restgpr_22 = 0x802DCBBC;
- _restgpr_23 = 0x802DCBC0;
- _restgpr_24 = 0x802DCBC4;
- _restgpr_25 = 0x802DCBC8;
- _restgpr_26 = 0x802DCBCC;
- _restgpr_27 = 0x802DCBD0;
- _restgpr_28 = 0x802DCBD4;
- _restgpr_29 = 0x802DCBD8;
- _restgpr_30 = 0x802DCBDC;
- _restgpr_31 = 0x802DCBE0;
-
- __shl2i = 0x802DCFFC;
-
- __nw__FUl = 0x802B9020;
- __dl__FPv = 0x802B9090;
-
- __construct_new_array = 0x802DC5F0;
- __destroy_new_array = 0x802DC920;
- __destroy_arr = 0x802DC8A8;
- sub_80024C20 = 0x80024C20;
-
- __register_global_object = 0x802DC590;
- __ptmf_scall = 0x802DCA0C;
-
-
- setup__13FunctionChainFPPFPv_bUs = 0x8015F410;
-
- /* collisionMgr_c */
- __ct__14collisionMgr_c = 0x8006CF40;
- __dt__14collisionMgr_c = 0x8006CF40;
- Clear1__14collisionMgr_cFv = 0x8006CFE0;
- Clear2__14collisionMgr_cFv = 0x8006D000;
- Init__14collisionMgr_cFP13dStageActor_cPCUcPCUcPCUc = 0x8006D090;
- Clear3__14collisionMgr_cFv = 0x8006D440;
- CollidedWithTile__14collisionMgr_cFv = 0x80070CB0;
- SomethingSemiImportant__14collisionMgr_cFUi = 0x8006EF40;
- execute__14collisionMgr_cFv = 0x80072BC0;
- s_8006FA40__14collisionMgr_cFPv = 0x8006FA40;
- s_80070760__14collisionMgr_cFv = 0x80070760;
- s_800707E0__14collisionMgr_cFv = 0x800707E0;
-
- /* freezeMgr_c */
- __ct_11freezeMgr_c = 0x800B83C0;
- __dt__11freezeMgr_cFv = 0x800B8460;
- doSomethingCool1__11freezeMgr_c = 0x800B84D0;
- doSomethingCool2__11freezeMgr_c = 0x800B85A0;
- setSomething__11freezeMgr_cFUiUiUi = 0x800B8670;
- Create_ICEACTORs__11freezeMgr_cFPvi = 0x800B8680;
- Delete_ICEACTORs__11freezeMgr_c = 0x800B87D0;
- SetIceTimer_pt1__11freezeMgr_c = 0x800B8850;
- SetIceTimer_pt2__11freezeMgr_c = 0x800B88B0;
- CheckIceTimer_lte_Value__11freezeMgr_c = 0x800B8930;
- doSomethingCool3__11freezeMgr_c = 0x800B89A0;
- doSomethingCool4__11freezeMgr_c = 0x800B8A30;
- doSomethingCool5__11freezeMgr_c = 0x800B8AB0;
- doSomethingCool6__11freezeMgr_c = 0x800B8B30;
- DoMeltNormal__11freezeMgr_c = 0x800B8BB0;
- doSomethingCool7__11freezeMgr_c = 0x800B8C70;
- CheckCountdownTimer__11freezeMgr_c = 0x800B8E60;
-
- __vt__7fBase_c = 0x80329178;
- onCreate__7fBase_cFv = 0x80161B90;
- onDelete__7fBase_cFv = 0x80161C40;
- onExecute__7fBase_cFv = 0x80161EE0;
- willBeDeleted__7fBase_cFv = 0x801620E0;
- moreHeapShit__7fBase_cFUiPv = 0x80162400;
- createHeap__7fBase_cFUiPv = 0x80162600;
- heapCreated__7fBase_cFv = 0x801626C0;
- Delete__7fBase_cFv = 0x80162320;
- findNextUninitialisedProcess__7fBase_cFv = 0x801627C0;
- hasUninitialisedProcesses__7fBase_cFv = 0x80162830;
- onDraw__7fBase_cFv = 0x80161FE0;
- _Z15fBase_c__DeletePv = 0x80162320;
- fBase_c__Delete__FPv = 0x80162320;
-
- __vt__15StageActorLight = 0x80317680;
- init__15StageActorLight_FPvi = 0x800CCA00;
- update__15StageActorLight = 0x800CCAC0;
- draw__15StageActorLight = 0x800CCB70;
- __dt__15StageActorLight = 0x800414A0;
-
- GetExplanationString__7dBase_cFv = 0x8006C660;
-
- __vt__15daEnBlockMain_c = 0x80301CC8;
- __dt__15daEnBlockMain_cFv = 0x80023340;
- calledWhenUpMoveBegins__15daEnBlockMain_cFv = 0x80022E80;
- calledWhenDownMoveBegins__15daEnBlockMain_cFv = 0x80022F60;
- calledWhenUpMoveExecutes__15daEnBlockMain_cFv = 0x80022F30;
- calledWhenUpMoveDiffExecutes__15daEnBlockMain_cFv = 0x800231A0;
- calledWhenDownMoveExecutes__15daEnBlockMain_cFv = 0x80023010;
- calledWhenDownMoveEndExecutes__15daEnBlockMain_cFv = 0x80023080;
- calledWhenDownMoveDiffExecutes__15daEnBlockMain_cFv = 0x800232C0;
- calledWhenDownMoveDiffEndExecutes__15daEnBlockMain_cFv = 0x80023330;
- updateScale__15daEnBlockMain_cFb = 0x80022DC0;
- upMove_Begin__15daEnBlockMain_cFv = 0x80022E60;
- upMove_Execute__15daEnBlockMain_cFv = 0x80022EA0;
- upMove_End__15daEnBlockMain_cFv = 0x80022E90;
- downMove_Begin__15daEnBlockMain_cFv = 0x80022F40;
- downMove_Execute__15daEnBlockMain_cFv = 0x80022F80;
- downMove_End__15daEnBlockMain_cFv = 0x80022F70;
- downMoveEnd_Begin__15daEnBlockMain_cFv = 0x80023020;
- downMoveEnd_Execute__15daEnBlockMain_cFv = 0x80023040;
- downMoveEnd_End__15daEnBlockMain_cFv = 0x80023030;
- upMove_Diff_Begin__15daEnBlockMain_cFv = 0x80023090;
- upMove_Diff_Execute__15daEnBlockMain_cFv = 0x800230D0;
- upMove_Diff_End__15daEnBlockMain_cFv = 0x800230C0;
- downMove_Diff_Begin__15daEnBlockMain_cFv = 0x800231B0;
- downMove_Diff_Execute__15daEnBlockMain_cFv = 0x800231F0;
- downMove_Diff_End__15daEnBlockMain_cFv = 0x800231E0;
- downMove_DiffEnd_Begin__15daEnBlockMain_cFv = 0x800232D0;
- downMove_DiffEnd_Execute__15daEnBlockMain_cFv = 0x800232F0;
- downMove_DiffEnd_End__15daEnBlockMain_cFv = 0x800232E0;
- blockInit__15daEnBlockMain_cFf = 0x80021690;
- blockUpdate__15daEnBlockMain_cFv = 0x800217B0;
- blockResult__15daEnBlockMain_cFv = 0x800212C0;
- PhysicsCallback1__15daEnBlockMain_c = 0x80021180;
- g = 0x80021170;
- PhysicsCallback3__15daEnBlockMain_c = 0x800211A0;
- OPhysicsCallback1__15daEnBlockMain_c = 0x80020BF0;
- OPhysicsCallback2__15daEnBlockMain_c = 0x80020E70;
- OPhysicsCallback3__15daEnBlockMain_c = 0x80021010;
- StateID_UpMove__15daEnBlockMain_c = 0x803527B4;
- StateID_DownMove__15daEnBlockMain_c = 0x803527F4;
- StateID_DownMoveEnd__15daEnBlockMain_c = 0x80352834;
- StateID_UpMove_Diff__15daEnBlockMain_c = 0x80352874;
- StateID_DownMove_Diff__15daEnBlockMain_c = 0x803528B4;
- StateID_DownMove_DiffEnd__15daEnBlockMain_c = 0x803528F4;
-
- __ct__5dEn_cFv = 0x80094E80;
- __dt__5dEn_cFv = 0x80095130;
- afterCreate__5dEn_cFi = 0x800951D0;
- afterExecute__5dEn_cFi = 0x80095480;
- kill__5dEn_cFv = 0x80097F70;
- eatIn__5dEn_cFv = 0x80097C40;
- disableEatIn__5dEn_cFv = 0x80097CB0;
- _vf8C__5dEn_cFPv = 0x80097D30;
- _vfCC__5dEn_cFP7Point2df = 0x800973F0;
- _vfD0__5dEn_cFP7Point2df = 0x800974F0;
- doStateChange__5dEn_cFP12dStateBase_c = 0x800A7DF0;
- collisionCallback__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095950;
- preSpriteCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095CE0;
- prePlayerCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095D30;
- preYoshiCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095F50;
- stageActorCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80096060;
- spriteCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095C10;
- playerCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095C20;
- yoshiCollision__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x80095C80;
- collisionCat3_StarPower__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009F840;
- collisionCat5_Mario__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FB50;
- _vf108__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FE40;
- collisionCatD_GroundPound__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FFD0;
- _vf110__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FFC0;
- collisionCat8_FencePunch__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FCE0;
- collisionCat7_WMWaggleWater__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A0150;
- collisionCat7_WMWaggleWaterYoshi__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A02D0;
- _vf120__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FCD0;
- collisionCatA_PenguinMario__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009FCC0;
- collisionCat11_PipeCannon__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x8009F9D0;
- collisionCat9_RollingObject__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A0700;
- collisionCat1_Fireball_E_Explosion__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A08D0;
- collisionCat2_IceBall_15_YoshiIce__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A0A30;
- collisionCat13_Hammer__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A03C0;
- collisionCat14_YoshiFire__5dEn_cFP13ActivePhysicsP13ActivePhysics = 0x800A0550;
- _vf140__5dEn_cFP13dStageActor_c = 0x800A10B0;
- _vf144__5dEn_cFi = 0x800A0C70;
- _vf148__5dEn_cFv = 0x800A12A0;
- _vf14C__5dEn_cFv = 0x800A1370;
- _vf150__5dEn_cFv = 0x800206D0;
- eatenByYoshiProbably__5dEn_cFv = 0x80096230;
- playHpdpSound1__5dEn_cFv = 0x800A1C00;
- playEnemyDownSound1__5dEn_cFv = 0x800A1BB0;
- playEnemyDownComboSound__5dEn_cFPv = 0x800A1C80;
- playHpdpSound2__5dEn_cFv = 0x800A1D90;
- _vf168__5dEn_cFv = 0x800A1E10;
- dieFumi_Begin__5dEn_cFv = 0x800A1470;
- dieFumi_Execute__5dEn_cFv = 0x800A1600;
- dieFumi_End__5dEn_cFv = 0x800A1820;
- dieFall_Begin__5dEn_cFv = 0x800A16A0;
- dieFall_Execute__5dEn_cFv = 0x800A1830;
- dieFall_End__5dEn_cFv = 0x800A1820;
- dieBigFall_Begin__5dEn_cFv = 0x800A1910;
- dieBigFall_Execute__5dEn_cFv = 0x800A1930;
- dieBigFall_End__5dEn_cFv = 0x800A1920;
- dieSmoke_Begin__5dEn_cFv = 0x800A1980;
- dieSmoke_Execute__5dEn_cFv = 0x800A1A00;
- dieSmoke_End__5dEn_cFv = 0x800A19F0;
- dieYoshiFumi_Begin__5dEn_cFv = 0x800A1AC0;
- dieYoshiFumi_Execute__5dEn_cFv = 0x800A1B40;
- dieYoshiFumi_End__5dEn_cFv = 0x800A1B30;
- dieIceVanish_Begin__5dEn_cFv = 0x800A1A10;
- dieIceVanish_Execute__5dEn_cFv = 0x800A1AB0;
- dieIceVanish_End__5dEn_cFv = 0x800A1AA0;
- dieGoal_Begin__5dEn_cFv = 0x800A1B50;
- dieGoal_Execute__5dEn_cFv = 0x800A1B70;
- dieGoal_End__5dEn_cFv = 0x800A1B60;
- dieOther_Begin__5dEn_cFv = 0x800A1B80;
- dieOther_Execute__5dEn_cFv = 0x800A1BA0;
- dieOther_End__5dEn_cFv = 0x800A1B90;
- eatIn_Begin__5dEn_cFv = 0x800A81C0;
- eatIn_Execute__5dEn_cFv = 0x800A81E0;
- eatIn_End__5dEn_cFv = 0x800A81D0;
- eatNow_Begin__5dEn_cFv = 0x800A8260;
- eatNow_Execute__5dEn_cFv = 0x800A8280;
- eatNow_End__5dEn_cFv = 0x800A8270;
- eatOut_Begin__5dEn_cFv = 0x800A8290;
- eatOut_Execute__5dEn_cFv = 0x800A82B0;
- eatOut_End__5dEn_cFv = 0x800A82A0;
- hitSpin_Begin__5dEn_cFv = 0x800A8190;
- hitSpin_Execute__5dEn_cFv = 0x800A81B0;
- hitSpin_End__5dEn_cFv = 0x800A81A0;
- ice_Begin__5dEn_cFv = 0x800A7E90;
- ice_Execute__5dEn_cFv = 0x800A7F40;
- ice_End__5dEn_cFv = 0x800A7F30;
- spawnHitEffectAtPosition__5dEn_cF7Point2d = 0x80095520;
- doSomethingWithHardHitAndSoftHitEffects__5dEn_cF7Point3d = 0x80095530;
- playEnemyDownSound2__5dEn_cFv = 0x80095580;
- add2ToYSpeed__5dEn_cFv = 0x800955D0;
- _vf218__5dEn_cFv = 0x80095890;
- _vf21C__5dEn_cFv = 0x80097770;
- _vf220__5dEn_cFPv = 0x80097F20;
- _vf224__5dEn_cFv = 0x80097F60;
- _vf228__5dEn_cFv = 0x800206C0;
- CreateIceActors__5dEn_cFv = 0x800A8060;
- _vf230__5dEn_cFv = 0x800A8150;
- _vf234__5dEn_cFv = 0x800A8160;
- _vf238__5dEn_cFv = 0x800A8180;
- _vf23C__5dEn_cFv = 0x800206B0;
- _vf240__5dEn_cFv = 0x800206A0;
- _vf244__5dEn_cFv = 0x80020690;
- _vf248__5dEn_cFi = 0x800968E0;
- _vf24C__5dEn_cFPv = 0x80096710;
- addScoreWhenHit__5dEn_cFPv = 0x80096700;
- _vf254__5dEn_cFPv = 0x80096720;
- _vf258__5dEn_cFPv = 0x80096760;
- _vf25C__5dEn_cFPv = 0x80096770;
- _vf260__5dEn_cFPv = 0x80096910;
- _vf264__5dEn_cFP13dStageActor_c = 0x80096D60;
- _vf268__5dEn_cFPv = 0x80096A20;
- spawnHitEffectAtPositionAgain__5dEn_cF7Point2d = 0x80096DF0;
- playMameStepSound__5dEn_cFv = 0x80096C40;
- _vf274__5dEn_cFv = 0x80096E50;
- _vf278__5dEn_cFPv = 0x80096B30;
- _vf27C__5dEn_cFv = 0x80096E40;
-
- StateID_DieFumi__5dEn_c = 0x80357934;
- StateID_DieFall__5dEn_c = 0x80357974;
- StateID_DieBigFall__5dEn_c = 0x803579B4;
- StateID_DieSmoke__5dEn_c = 0x803579F4;
- StateID_DieIceVanish__5dEn_c = 0x80357A34;
- StateID_DieYoshiFumi__5dEn_c = 0x80357A74;
- StateID_DieGoal__5dEn_c = 0x80357AB4;
- StateID_DieOther__5dEn_c = 0x80357AF4;
-
- doSpriteMovement__5dEn_cFv = 0x800955F0;
- CheckIfPlayerBelow__5dEn_cFff = 0x800978C0;
- stuffRelatingToCollisions__5dEn_cFfff = 0x800957B0;
- checkLiquidImmersion__5dEn_cFP7Point2df = 0x80097250;
-
- _vfD8__18dActorMultiState_cFv = 0x80067590;
- _vfDC__18dActorMultiState_cFv = 0x800675B0;
- _vfE0__18dActorMultiState_cFv = 0x800675A0;
-
- __ct__13dStageActor_cFv = 0x80064110;
- __dt__13dStageActor_cFv = 0x800642B0;
- beforeCreate__13dStageActor_cFv = 0x80064350;
- afterCreate__13dStageActor_cFi = 0x80064380;
- beforeDelete__13dStageActor_cFv = 0x80064390;
- afterDelete__13dStageActor_cFi = 0x800643E0;
- beforeExecute__13dStageActor_cFv = 0x800643F0;
- afterExecute__13dStageActor_cFi = 0x80064490;
- beforeDraw__13dStageActor_cFv = 0x80064540;
- afterDraw__13dStageActor_cFi = 0x800645E0;
- GetExplanationString__13dStageActor_cFv = 0x800645F0;
- _vf60__13dStageActor_cFv = 0x80065080;
- kill__13dStageActor_cFv = 0x80065650;
- _vf68__13dStageActor_cFv = 0x8001D210;
- _vf6C__13dStageActor_cFv = 0x8001D200;
- _vf70__13dStageActor_cFv = 0x80065620;
- _vf74__13dStageActor_cFv = 0x8001D1F0;
- _vf78__13dStageActor_cFv = 0x80065820;
- _vf7C__13dStageActor_cFv = 0x8001D1E0;
- eatIn__13dStageActor_cFv = 0x80065830;
- disableEatIn__13dStageActor_cFv = 0x80065850;
- _vf88__13dStageActor_cFv = 0x80065860;
- _vf8C__13dStageActor_cFPv = 0x80065870;
- _vf90__13dStageActor_cFP13dStageActor_c = 0x80065880;
- _vf94__13dStageActor_cFPv = 0x80065AC0;
- removeMyActivePhysics__13dStageActor_cFv = 0x80066080;
- addMyActivePhysics__13dStageActor_cFv = 0x80066090;
- returnRegularScale__13dStageActor_cFv = 0x80065950;
- _vfA4__13dStageActor_cFPv = 0x80065970;
- _vfA8__13dStageActor_cFPv = 0x80065A00;
- _vfAC__13dStageActor_cFPv = 0x80065A40;
- killedByLevelClear__13dStageActor_cFv = 0x80065660;
- _vfB4__13dStageActor_cFv = 0x80065B40;
- _vfB8__13dStageActor_cFv = 0x8001D1D0;
- _vfBC__13dStageActor_cFv = 0x80065B50;
- _vfC0__13dStageActor_cFv = 0x80065B60;
- _vfC4__13dStageActor_cFv = 0x80065B70;
- _vfC8__13dStageActor_cFP7Point2df = 0x80065CC0;
- _vfCC__13dStageActor_cFP7Point2df = 0x80065DC0;
- _vfD0__13dStageActor_cFP7Point2df = 0x80065EC0;
- outOfZone__13dStageActor_cF7Point3dPfUc = 0x80064DA0;
- checkZoneBoundaries__13dStageActor_cFUi = 0x80064F50;
- create__13dStageActor_cF6ActorsUiP7Point3dP6S16VecUc = 0x80064610;
- Delete__13dStageActor_cFUc = 0x80064D10;
-
- __ct__8dScene_cFv = 0x800E1930;
- __dt__8dScene_cFv = 0x800E19A0;
- beforeCreate__8dScene_cFv = 0x800E1A20;
- afterCreate__8dScene_cFi = 0x800E1A60;
- beforeDelete__8dScene_cFv = 0x800E1AD0;
- afterDelete__8dScene_cFi = 0x800E1B00;
- beforeExecute__8dScene_cFv = 0x800E1B60;
- afterExecute__8dScene_cFi = 0x800E1CA0;
- beforeDraw__8dScene_cFv = 0x800E1CF0;
- afterDraw__8dScene_cFi = 0x800E1D20;
-
- __ct__8dActor_cFv = 0x8006C6D0;
- __dt__8dActor_cFv = 0x8006C7F0;
- UpdateObjectPosBasedOnSpeedValuesReal__8dActor_cFv = 0x8006CD40;
- HandleXSpeed__8dActor_cFv = 0x8006CD90;
- HandleYSpeed__8dActor_cFv = 0x8006CDE0;
-
- __ct__7dBase_cFv = 0x8006C420;
- __dt__7dBase_cFv = 0x8006C490;
- beforeCreate__7dBase_cFv = 0x8006C540;
- afterCreate__7dBase_cFi = 0x8006C570;
- beforeDelete__7dBase_cFv = 0x8006C580;
- afterDelete__7dBase_cFi = 0x8006C5B0;
- beforeExecute__7dBase_cFv = 0x8006C5C0;
- afterExecute__7dBase_cFi = 0x8006C600;
- beforeDraw__7dBase_cFv = 0x8006C610;
- afterDraw__7dBase_cFi = 0x8006C650;
-
-
- specialDraw1__8dActor_cFv = 0x8006CA50;
- specialDraw2__8dActor_cFv = 0x8006CA60;
- _vf58__8dActor_cFv = 0x8001D1C0;
- _vf5C__8dActor_cFv = 0x8001D1B0;
-
- __ct__12dStateBase_cFPCc = 0x8015F5D0;
- __dt__12dStateBase_cFv = 0x8015F610;
- isInvalid__12dStateBase_cFv = 0x8015F650;
- isEqualNotUsedForSomeReason__12dStateBase_cFP12dStateBase_c = 0x8015F660;
- isEqual__12dStateBase_cFP12dStateBase_c = 0x8015F6D0;
- isNotEqual__12dStateBase_cFP12dStateBase_c = 0x8015F6E0;
- getName__12dStateBase_cFv = 0x8015F730;
- getID__12dStateBase_cFv = 0x8015F740;
-
- /* HACK HACK */
- /* These don't actually exist, they're just here to save us some space for newer */
- isSameStateName__12dStateBase_cFPCc = 0x800142A0;
- doBegin__12dStateBase_cFPv = 0x80012970;
- doExecute__12dStateBase_cFPv = 0x80012940;
- doEnd__12dStateBase_cFPv = 0x80012910;
- /* END HACK */
-
- mNoState__12dStateBase_c = 0x80377784;
-
- __dt__15dStateMgrBase_cFv = 0x8015F800;
-
- __ct__11dStateMgr_cFP17dStatePointless_cP20dStateExecutorBase_cP12dStateBase_c = 0x8015FAA0;
-
- __ct__10dFlagMgr_c = 0x800E3A60;
- setup__10dFlagMgr_cFb = 0x800E3B20;
- applyAndClearAllTimedActions__10dFlagMgr_cFv = 0x800E3EA0;
- execute__10dFlagMgr_cFv = 0x800E3F90;
- set__10dFlagMgr_cFUcibbbUi = 0x800E4140;
- findLowestFlagInSet__10dFlagMgr_cFUiUl = 0x800E43F0;
- setSpecial__10dFlagMgr_cFUcffUcUiUl = 0x800E44D0;
- get8__10dFlagMgr_cFUc = 0x800E4510;
- get108__10dFlagMgr_cFUc = 0x800E4520;
- get208__10dFlagMgr_cFUc = 0x800E4530;
- get248__10dFlagMgr_cFUc = 0x800E4540;
- get448__10dFlagMgr_cFUc = 0x800E4560;
- instance__10dFlagMgr_c = 0x80429D98;
-
-
- clear__13ActivePhysicsFv = 0x8008C2C0;
- removeFromList__13ActivePhysicsFv = 0x8008C380;
- addToList__13ActivePhysicsFv = 0x8008C330;
- initWithStruct__13ActivePhysicsFP8dActor_cPCQ213ActivePhysics4Info = 0x8008C3E0;
-
-
- __ct__7PhysicsFv = 0x8007F7A0;
- __dt__7PhysicsFv = 0x8007F810;
- baseSetup__7PhysicsFP8dActor_cPvPvPvUcUc = 0x8007F9B0;
- setup__7PhysicsFP8dActor_cffffPvPvPvUcUcP7Point2d = 0x8007FA40;
- setup__7PhysicsFP8dActor_cPQ27Physics4InfoUcUcP7Point2d = 0x8007FB10;
-
- spinningPhysicsCallback = 0x808A2110;
- /* spinningPhysicsCallback__7Physics = 0x808A2110; */
-
- addToList__7PhysicsFv = 0x8007F900;
- removeFromList__7PhysicsFv = 0x8007F950;
- update__7PhysicsFv = 0x8007FDA0;
-
- getTileRendererList__7dBgGm_cFi = 0x80078520;
-
- getPointerToTile__8BgGmBaseFiiiPib = 0x80077520;
- placeTile__8BgGmBaseFUsUsii = 0x80077860;
-
- add__Q212TileRenderer4ListFP12TileRenderer = 0x80014820;
- remove__Q212TileRenderer4ListFP12TileRenderer = 0x80014860;
-
- __ct__12TileRendererFv = 0x800145B0;
- __dt__12TileRendererFv = 0x800145F0;
- setPosition__12TileRendererFfff = 0x800146B0;
- setVars__12TileRendererFf = 0x800146D0;
-
- __ct__21dPlayerModelHandler_cFUc = 0x800D6C40;
- loadModel__21dPlayerModelHandler_cFUcii = 0x800D6D70;
- setSRT__21dPlayerModelHandler_cF7Point3d6S16Vec7Point3d = 0x800D6EC0;
- callVF20__21dPlayerModelHandler_cFv = 0x800D6F80;
- draw__21dPlayerModelHandler_cFv = 0x800D6FA0;
- update__21dPlayerModelHandler_cFv = 0x800D6E10;
-
- _Z15FindActorByType6ActorsP5Actor = 0x80162B60;
- FindActorByType__F6ActorsP5Actor = 0x80162B60;
- _Z19RetrieveFileFromArcPvPcS0_ = 0x800DF100;
- _Z8OSReportPKcz = 0x8015F540;
- OSReport__FPCce = 0x8015F540;
- _Z7OSFatal7GXColorS_PKc = 0x801AF3E0;
-
- GetSomeSizeRelatedBULLSHIT__Fv = 0x800E2500;
- CalculateSomethingAboutRatio__Fffff = 0x800E2670;
- CalculateSomethingElseAboutRatio__Fv = 0x800E2740;
- DoSomethingCameraRelatedWithEGGScreen__FiPQ23EGG6Screen = 0x80169030;
-
- GlobalScreenWidth = 0x80429E0C;
- GlobalScreenHeight = 0x80429E10;
-
- currentScreenSizeID = 0x8042AC28;
- ScreenSizesAndMultipliers = 0x80350240;
-
- setOrtho__Q23EGG7FrustumFffffff = 0x802C68F0;
-
- __ct__Q23EGG6ScreenFv = 0x802D0AD0;
- __dt__Q23EGG6ScreenFv = 0x802D08B0;
-
- __vt__Q23EGG12LookAtCamera = 0x8034FDD8;
- assignToNW4RCamera__Q23EGG12LookAtCameraFRQ34nw4r3g3d6Camera = 0x802BE690;
-
- __ct__Q23EGG12ProjectOrthoFv = 0x802BF1E0;
- setVolume__Q23EGG12ProjectOrthoFffff = 0x802BF230;
-
- GetCameraByID__Fi = 0x80164930;
- GetCurrentCameraID__Fv = 0x80164950;
- SetCurrentCameraID__Fi = 0x80164960;
-
- LinkScene__Fi = 0x80164A20;
- UnlinkScene__Fi = 0x801649A0;
-
- SceneCalcWorld__Fi = 0x80164AE0;
- SceneCameraStuff__Fi = 0x80164B70;
-
- CalcMaterial__Fv = 0x80164B60;
- DrawOpa__Fv = 0x80164C40;
- DrawXlu__Fv = 0x80164C50;
-
- ChangeAlphaUpdate__Fb = 0x802D2D90;
- ChangeColorUpdate__Fb = 0x802D2D30;
-
- DoSpecialDrawing1__Fv = 0x8006CAE0;
- DoSpecialDrawing2__Fv = 0x8006CB40;
-
- SetupLYTDrawing__Fv = 0x80163030;
- ClearLayoutDrawList__Fv = 0x80162F80;
-
- RenderAllLayouts__Fv = 0x800067A0;
- DrawAllLayoutsBeforeX__Fi = 0x80163110;
- DrawAllLayoutsAfterX__Fi = 0x801631A0;
- DrawAllLayoutsAfterXandBeforeY__Fii = 0x80163230;
-
- findPaneByName__Q23m2d17EmbedLayoutBase_cCFPCc = 0x80007300;
- findTextBoxByName__Q23m2d17EmbedLayoutBase_cCFPCc = 0x80007320;
- findPictureByName__Q23m2d17EmbedLayoutBase_cCFPCc = 0x800073D0;
- findWindowByName__Q23m2d17EmbedLayoutBase_cCFPCc = 0x80007470;
- __ct__Q23m2d13EmbedLayout_cFv = 0x800C88D0;
- __dt__Q23m2d13EmbedLayout_cFv = 0x800C8920;
- loadArc__Q23m2d13EmbedLayout_cFPCcb = 0x800C8C30;
- loadAnimations__Q23m2d13EmbedLayout_cFPPCci = 0x800C8F30;
- loadGroups__Q23m2d13EmbedLayout_cFPPCcPii = 0x800C9070;
- enableNonLoopAnim__Q23m2d13EmbedLayout_cFib = 0x800C9270;
- enableLoopAnim__Q23m2d13EmbedLayout_cFi = 0x800C9300;
- resetAnim__Q23m2d13EmbedLayout_cFib = 0x800C9350;
- disableAllAnimations__Q23m2d13EmbedLayout_cFv = 0x800C9480;
- isAnimOn__Q23m2d13EmbedLayout_cFi = 0x800C9590;
- free__Q23m2d13EmbedLayout_cFv = 0x800C98B0;
- execAnimations__Q23m2d13EmbedLayout_cFv = 0x800C94E0;
- scheduleForDrawing__Q23m2d6Base_cFv = 0x80163660;
-
- RenderEffects__Fii = 0x80093F10;
-
- RemoveAllFromScnRoot__Fv = 0x80164C80;
- Reset3DState__Fv = 0x80164CD0;
-
- GetRenderModeObj__Q34nw4r3g3d8G3DStateFv = 0x8024D3E0;
-
- __ct__Q34nw4r3g3d6CameraFPQ34nw4r3g3d10CameraData = 0x802535E0;
- SetOrtho__Q34nw4r3g3d6CameraFffffff = 0x80253A80;
- SetPerspective__Q34nw4r3g3d6CameraFffff = 0x80253A40;
- SetViewportJitter__Q34nw4r3g3d6CameraFUi = 0x80253C30;
- SetPosture__Q34nw4r3g3d6CameraFRCQ44nw4r3g3d6Camera11PostureInfo = 0x802537D0;
- SetPosition__Q34nw4r3g3d6CameraFRC7Point3d = 0x80253760;
- SetCameraMtxDirectly__Q34nw4r3g3d6CameraFRA3_A4_Cf = 0x802539F0;
- GetCameraMtx__Q34nw4r3g3d6CameraCFPA3_A4_f = 0x80253EC0;
-
- CheckRevision__Q34nw4r3g3d7ResFileCFv = 0x8023A670;
- Init__Q34nw4r3g3d7ResFileFv = 0x8023A3A0;
- Bind__Q34nw4r3g3d7ResFileFQ34nw4r3g3d7ResFile = 0x8023A160;
- GetResMdl__Q34nw4r3g3d7ResFileCFPCc = 0x80239C40;
- GetResTex__Q34nw4r3g3d7ResFileCFPCc = 0x80239D30;
- g3dMemAllocator__Q24nw4r3g3d = 0x8042A0E8;
- __ScnMdl__Construct__Q24nw4r3g3dFPvPUiPvUii = 0x8025C830;
- __ScnMdlSimple__Construct__Q24nw4r3g3dFPvPUiPvi = 0x8025A190;
- InsertIntoScene__Q24nw4r3g3dFPv = 0x80164C60;
-
- GetResMat__Q34nw4r3g3d6ResMdlCFPCc = 0x8023B570;
-
- DisableIndirectTexturing__3m3dFv = 0x80164D60;
- InitTexObjWithResTex__3m3dFP9_GXTexObjPv14_GXTexWrapMode14_GXTexWrapMode12_GXTexFilter12_GXTexFilter = 0x802C7A80;
-
- /* This is preliminary and kinda strange, most of these just point to ScnLeaf for now */
- setup__Q23m3d6proc_cFPvPUi = 0x80164DE0;
- returnUnknown__Q23m3d6proc_cFv = 0x8000F720;
-
- __ct__Q23m3d9scnLeaf_cFv = 0x80169E20;
- __dt__Q23m3d9scnLeaf_cFv = 0x80169E40;
- free__Q23m3d9scnLeaf_cFv = 0x80169EA0;
- scheduleForDrawing__Q23m3d9scnLeaf_cFv = 0x80169EF0;
- getViewMatrix__Q23m3d9scnLeaf_cFPA3_A4_f = 0x80169FA0;
- /* End preliminary section */
-
- __vt__Q23m3d5mdl_c = 0x803293A4;
- __ct__Q23m3d5mdl_cFv = 0x80169AE0;
- __dt__Q23m3d5mdl_cFv = 0x80169B30;
- setup__Q23m3d5mdl_cFQ34nw4r3g3d6ResMdlPvUiiPUi = 0x80169BA0;
- oneSetupType__Q23m3d5mdl_cFv = 0x80064C10;
- sub_80064BF0__Q23m3d5mdl_cFv = 0x80064BF0;
- setDrawMatrix__Q23m3d5mdl_cFPA4_Cf = 0x80169F80;
- setScale__Q23m3d5mdl_cFfff = 0x80169F40;
- setScale__Q23m3d5mdl_cFP7Point3d = 0x80169F60;
- calcWorld__Q23m3d5mdl_cFb = 0x80169FB0;
- bindAnim__Q23m3d5mdl_cFPQ23m3d6banm_cf = 0x80169D90;
- vf1C__Q3m3d5mdl_cFv = 0x80169D50;
-
- SetupTextures_Player__FPQ23m3d5mdl_ci = 0x800B3E50;
- SetupTextures_Map__FPQ23m3d5mdl_ci = 0x800B3F50;
- SetupTextures_Boss__FPQ23m3d5mdl_ci = 0x800B4050;
- SetupTextures_Enemy__FPQ23m3d5mdl_ci = 0x800B4170;
- SetupTextures_MapObj__FPQ23m3d5mdl_ci = 0x800B42B0;
- SetupTextures_Item__FPQ23m3d5mdl_ci = 0x800B43D0;
-
- __ct__16mHeapAllocator_cFv = 0x80069020;
- __dt__16mHeapAllocator_cFv = 0x80069060;
- link__16mHeapAllocator_cFiPvPCci = 0x800690C0;
- unlink__16mHeapAllocator_cFv = 0x800690E0;
-
- __ct__10mTexture_cFUsUs9_GXTexFmt = 0x802C0890;
- load__10mTexture_cF11_GXTexMapID = 0x802C0970;
- flushDC__10mTexture_cFv = 0x802C0A30;
- makeLinearGradient__10mTexture_cFicUsUs8_GXColor8_GXColorb = 0x802C0C40;
- allocateBuffer__10mTexture_cFPv = 0x802C0FF0;
- plotPixel__10mTexture_cFUsUs8_GXColor = 0x802C1090;
-
- SetFontSize__Q34nw4r2ut10CharWriterFff = 0x8022D100;
-
- __ct__Q34nw4r2ut10TextWriterFv = 0x80230590;
- __dt__Q34nw4r2ut10TextWriterFv = 0x802305F0;
- CalcStringWidth__Q34nw4r2ut10TextWriterCFPCwi = 0x80230EE0;
-
- GameHeaps = 0x803779C8;
-
- BGDatClass = 0x80429B10;
- instance__10BGDatClass = 0x80429B10;
- GetTilesetName__FPvii = 0x800813F0;
-
- getTilesetName__10BGDatClassFii = 0x800813F0;
-
- getPointerToTile__12TilemapClassFiiPUib = 0x80083B40;
-
- IsWideScreen__Fv = 0x800B5430;
-
- Player_Active = 0x80354BD0;
- Player_ID = 0x80354BE0;
- Player_Powerup = 0x80354BF0;
- Player_Flags = 0x80354C00;
- Player_Lives = 0x80354C10;
- Player_Coins = 0x80354C20;
-
- AllocateMemoryBlock = 0x801626D0;
- EnsureAllArcsAreLoaded = 0x800DF460;
- FindRotationController = 0x8002AC00;
- GetObjectName = 0x80101730;
- GetObjectParent = 0x801623A0;
- OSReport = 0x8015F540;
-
- StagePtr = 0x80429EE8;
-
- _Z20CreateParentedObjectsPvic = 0x80162910;
- _Z47CheckIfMenuShouldBeCancelledForSpecifiedWiimotei = 0x800B5320;
- _Z21StartTitleScreenStagebi = 0x80101750;
- _Z17CreateChildObjectsPviii = 0x8006CBA0;
-
- CreateParentedObject__FsPvic = 0x80162910;
- CheckIfMenuShouldBeCancelledForSpecifiedWiimote__Fi = 0x800B5320;
- StartTitleScreenStage__Fbi = 0x80101750;
- CreateChildObject__FsPviii = 0x8006CBA0;
-
- ObjCreate1 = 0x80162910;
- ObjCreate2 = 0x80162930;
- RestoreObjectState = 0x800B0FD0;
- QueueArcLoad = 0x800DF7C0;
- RetrieveFileFromArc = 0x800DF100;
- RetrieveFileFromArcAlt = 0x800DF340;
-
- SpawnSprite = 0x80064610;
- StoreObjectState = 0x800B1100;
- TriggerEventFlag = 0x800E49B0;
-
- _ZN8SaveFile14CheckIfWritingEv = 0x800E03D0;
- _Z8SaveGamePvb = 0x8092F330;
-
- CheckIfWriting__8SaveFileFv = 0x800E03D0;
- SaveGame__FPvb = 0x8092F330;
-
- _Z9DVD_Startv = 0x8006A6F0;
- _Z12DVD_LoadFilePvPcS0_S_ = 0x800DF7C0;
- _Z12DVD_FreeFilePvPc = 0x800DF0B0;
- _Z16DVD_StillLoadingPv = 0x800DF460;
- _Z7DVD_Endv = 0x8006A760;
-
- DVD_Start__Fv = 0x8006A6F0;
- DVD_LoadFile__FPvPcPcPv = 0x800DF7C0;
- DVD_FreeFile__FPvPc = 0x800DF0B0;
- DVD_StillLoading__FPv = 0x800DF460;
- DVD_End__Fv = 0x8006A760;
- DVD_GetFile__FPvPCcPCc = 0x800DF100;
- DVD_GetFile__FPvPCcPCcPUi = 0x800DF160;
-
- __ct__12dDvdLoader_cFv = 0x8008F140;
- __dt__12dDvdLoader_cFv = 0x8008F170;
- load__12dDvdLoader_cFPCcUcPv = 0x8008F1B0;
- unload__12dDvdLoader_cFv = 0x8008F310;
-
- SZSDecompClass = 0x80377864;
- LZDecompClass = 0x80377870;
- LHDecompClass = 0x8037787C;
- LRCDecompClass = 0x80377888;
- RLDecompClass = 0x80377894;
- StoreCompressionClassList = 0x8016AEA0;
- DecompBufferPointer = 0x80429190;
-
- TryAndFindCompressedFile = 0x8016B8B0;
-
- _Z22BgTexMng__LoadAnimTilePvisPcS0_c = 0x80087B60; /* same for ntsc */
- BgTexMng__LoadAnimTile__FPvisPcPcc = 0x80087B60; /* same for ntsc */
-
- _Z12ActivateWipei = 0x800B0DB0;
- ActivateWipe__Fi = 0x800B0DB0;
-
- CurrentDrawFunc = 0x80429C78;
-
- currentHeap = 0x8042AB30;
-
- _Z20GameSetup__LoadScenePv = 0x809192A0;
- _Z9FreeScenei = 0x801646C0;
- _Z17GameSetupDrawFuncv = 0x809176D0;
- _Z16WorldMapDrawFuncv = 0x809264B0;
-
- GameSetup__LoadScene__FPv = 0x809192A0;
- FreeScene__Fi = 0x801646C0;
- GameSetupDrawFunc__Fv = 0x809176D0;
- WorldMapDrawFunc__Fv = 0x809264B0;
-
- memcpy = 0x80004364;
- memset = 0x800046B4;
- strncat = 0x802E1878;
- strncpy = 0x802E1808;
- strcmp = 0x802E18C4;
- sprintf = 0x802E15EC;
- strrchr = 0x802E1A50;
-
- wcslen = 0x802E422C;
-
- IOS_Open = 0x80224A80;
- IOS_Close = 0x80224C70;
- IOS_Seek = 0x80225220;
- IOS_Read = 0x80224E20;
- IOS_Write = 0x80225030;
-
- ArchiveHeap = 0x8042A16C;
- DVDClass = 0x80429D58;
- GameMgr = 0x80429C9C;
- SaveFileInstance = 0x80429D60;
- SaveHandlerInstance = 0x80429CD8;
- RemoconMng = 0x80429C70;
- ActiveWiimoteID = 0x8042A184;
- ActiveWiimote = 0x8042A188;
-
- MakeScene = 0x80007610;
- GetRes = 0x800DF100;
- GetSceneLightInfo = 0x80164980;
- GetAnmScn = 0x8023A0F0;
- BindAnmScn = 0x802424E0;
- AssignAnmScnToLightInfo = 0x802C8650;
- LoadBlight = 0x80919630;
- LoadBlmap = 0x80919620;
-
- _Z23QueryPlayerAvailabilityi = 0x800B4690;
- _Z12DoStartLevelPvP10StartLevel = 0x800BB700;
- _Z20SetSomeConditionShitiij = 0x80102650;
- _Z8WpadShiti = 0x8016F450;
- _Z32CheckIfContinueShouldBeActivatedv = 0x800B5270;
- _Z24SearchForIndexOfPlayerIDi = 0x80060110;
-
- QueryPlayerAvailability__Fi = 0x800B4690;
- DoStartLevel__FPvP14StartLevelInfo = 0x800BB700;
- SetSomeConditionShit__FiiUi = 0x80102650;
- WpadShit__Fi = 0x8016F450;
- CheckIfContinueShouldBeActivated__Fv = 0x800B5270;
- SearchForIndexOfPlayerID__Fi = 0x80060110;
-
- _Z18AllocFromGameHeap1j = 0x801626D0;
- _Z17FreeFromGameHeap1Pv = 0x80162730;
-
- AllocFromGameHeap1__FUi = 0x801626D0;
- FreeFromGameHeap1__FPv = 0x80162730;
-
- AllocFromGameHeap1 = 0x801626D0;
-
- _Z19lyt__Layout__LayoutPv = 0x802AC950;
- _Z15lyt__Layout__dtPvi = 0x802AC990;
- _Z18lyt__Layout__BuildPvPKvS_ = 0x802ACAC0;
-
- _Z47nsmbw__ArcResourceAccessor__ArcResourceAccessorPv = 0x802B6430;
- _Z30nsmbw__ArcResourceAccessor__dtPvi = 0x80006930;
- _Z31nsmbw__ArcResourceAccessor__SetPvS_PKc = 0x802B6490;
- _Z39nsmbw__ArcResourceAccessor__GetResourcePvmPKcPm = 0x80006A50;
-
- _Z23lyt__DrawInfo__DrawInfoPv = 0x802B4B40;
- _Z17lyt__DrawInfo__dtPvi = 0x802B4BC0;
-
- _Z15PSMTXTransApplyPA4_fS0_fff = 0x801C0A20;
-
- _Z13NSMBWLoadFileP15NSMBWFileHandlePciPv = 0x8008F1B0;
- _Z13NSMBWFreeFileP15NSMBWFileHandle = 0x8008F310;
-
- _Z16NSMBWBrlan__LoadPvPKcS_S_b = 0x80163C70;
- _Z16NSMBWBrlan__FreePv = 0x80163DC0;
-
- _Z24DVDConvertPathToEntrynumPKc = 0x801CA490;
- _Z11DVDFastOpeniP9DVDHandle = 0x801CA7A0;
- _Z11DVDReadPrioP9DVDHandlePviii = 0x801CA930;
- _Z8DVDCloseP9DVDHandle = 0x801CA810;
-
- DVDConvertPathToEntrynum__FPCc = 0x801CA490;
- DVDFastOpen__FiP9DVDHandle = 0x801CA7A0;
- DVDReadPrio__FP9DVDHandlePviii = 0x801CA930;
- DVDClose__FP9DVDHandle = 0x801CA810;
-
- DVDConvertPathToEntrynum = 0x801CA490;
-
- _ZN8SaveFile8GetBlockEi = 0x800E0300;
- _ZN8SaveFile10GetQSBlockEi = 0x800E0330;
-
- GetBlock__8SaveFileFi = 0x800E0300;
- GetQSBlock__8SaveFileFi = 0x800E0330;
-
- _ZN9SaveBlock17GetLevelConditionEii = 0x800CE320;
-
- GetLevelCondition__9SaveBlockFii = 0x800CE320;
-
- _Z20CheckIfWeCantDoStuffv = 0x8076D860;
- _Z15QueryGlobal5758j = 0x800B3B50;
-
-
-
-
- CheckIfWeCantDoStuff__Fv = 0x8076D860;
- QueryGlobal5758__FUi = 0x800B3B50;
-
- _Z16EGG__Heap__allocmiPv = 0x802B8AD0;
- _Z15EGG__Heap__freePvS_ = 0x802B8D80;
-
- EGG__Heap__alloc__FUliPv = 0x802B8AD0;
- EGG__Heap__free__FPvPv = 0x802B8D80;
-
- _Z5__nwam = 0x802B9060;
- _Z19construct_new_arrayPvS_S_ii = 0x802DC5F0;
- _Z11DeleteArrayPvS_ = 0x802DC920;
-
- _Z8MTXOrthoPA4_fffffff = 0x801C1160;
- _Z15GXSetProjectionPA4_fh = 0x801C9650;
-
- _Z8IOS_OpenPKcj = 0x80224A80;
- _Z9IOS_WriteiPKvi = 0x80225030;
- _Z9IOS_Closei = 0x80224C70;
-
- _Z6strlenPKc = 0x802DC4AC;
- strlen__FPCc = 0x802DC4AC;
- strlen = 0x802DC4AC;
- strcpy = 0x802E1748;
- strncmp = 0x802E19E0;
-
- atan = 0x802E7A24;
- atan2 = 0x802E8420;
- cos = 0x802E7DCC;
- sin = 0x802E82D4;
- ceil = 0x802E7C54;
- floor = 0x802E7E94;
-
- LayoutHelper_Link = 0x80163470;
-
- __nwa__FUl = 0x802B9060;
-
- _Z19EmbeddedLayout_ctorP6Layout = 0x800C88D0;
- _Z19EmbeddedLayout_dtorP6Layoutb = 0x800C8920;
- _Z19EmbeddedLayout_FreeP6Layout = 0x800C98B0;
- _Z25EmbeddedLayout_LoadArcOldP6LayoutPKcb = 0x800C8C30;
- _Z25EmbeddedLayout_LoadBrlansP6LayoutPPKci = 0x800C8F30;
- _Z25EmbeddedLayout_LoadGroupsP6LayoutPPKcPii = 0x800C9070;
- _Z38EmbeddedLayout_ResetAnimToInitialStateP6Layoutib = 0x800C9350;
- _Z22EmbeddedLayout_ProcessP6Layout = 0x800C94E0;
- _Z28EmbeddedLayout_AddToDrawListP6Layout = 0x80163660;
- _Z32EmbeddedLayout_EnableNonLoopAnimP6Layoutib = 0x800C9270;
- _Z29EmbeddedLayout_EnableLoopAnimP6Layouti = 0x800C9300;
- _Z30EmbeddedLayout_DisableAllAnimsP6Layout = 0x800C9480;
- _Z35EmbeddedLayout_CheckIfAnimationIsOnP6Layouti = 0x800C9590;
- _Z29EmbeddedLayout_FindPaneByNameP6LayoutPKc = 0x80007300;
- _Z32EmbeddedLayout_FindTextBoxByNameP6LayoutPKc = 0x80007320;
-
- EmbeddedLayout_ctor__FP6Layout = 0x800C88D0;
- EmbeddedLayout_dtor__FP6Layoutb = 0x800C8920;
- EmbeddedLayout_Free__FP6Layout = 0x800C98B0;
- EmbeddedLayout_LoadArcOld__FP6LayoutPKcb = 0x800C8C30;
- EmbeddedLayout_LoadBrlans__FP6LayoutPPCci = 0x800C8F30;
- EmbeddedLayout_LoadGroups__FP6LayoutPPCcPii = 0x800C9070;
- EmbeddedLayout_ResetAnimToInitialState__FP6Layoutib = 0x800C9350;
- EmbeddedLayout_Process__FP6Layout = 0x800C94E0;
- EmbeddedLayout_AddToDrawList__FP6Layout = 0x80163660;
- EmbeddedLayout_EnableNonLoopAnim__FP6Layoutib = 0x800C9270;
- EmbeddedLayout_EnableLoopAnim__FP6Layouti = 0x800C9300;
- EmbeddedLayout_DisableAllAnims__FP6Layout = 0x800C9480;
- EmbeddedLayout_CheckIfAnimationIsOn__FP6Layouti = 0x800C9590;
- EmbeddedLayout_FindPaneByName__FP6LayoutPCc = 0x80007300;
- EmbeddedLayout_FindTextBoxByName__FP6LayoutPCc = 0x80007320;
-
- _Z6memsetPvij = 0x800046B4;
- _Z7sprintfPcPKcz = 0x802E15EC;
- _Z8snprintfPciPKcz = 0x802E14F8;
- _Z6strcatPKcS0_ = 0x802E184C;
-
- _Z6memsetPvij = 0x800046B4;
- sprintf__FPcPCce = 0x802E15EC;
- snprintf__FPciPCce = 0x802E14F8;
- memcmp__FPCvPCvUi = 0x802DEEA8;
- _Z6strcatPKcS0_ = 0x802E184C;
-
- _Znaj = 0x802B9020;
-
- _Z23Hook_GetGXRenderModeObjv = 0x8024D3E0;
- Hook_GetGXRenderModeObj__Fv = 0x8024D3E0;
-
- _Z3sinf = 0x802E82D4;
- _Z3cosf = 0x802E7DCC;
-
- ARCInitHandle = 0x8019F470;
- ARCOpen = 0x8019F510;
- ARCFastOpen = 0x8019F7C0;
- ARCConvertPathToEntrynum = 0x8019F810;
- ARCGetStartAddrInMem = 0x8019FC60;
- ARCGetStartOffset = 0x8019FC80;
- ARCGetLength = 0x8019FC90;
- ARCClose = 0x8019FCA0;
- ARCChangeDir = 0x8019FCB0;
- ARCOpenDir = 0x8019FD10;
- ARCReadDir = 0x8019FD90;
- ARCCloseDir = 0x8019FE50;
-
- DCStoreRangeNoSync = 0x801AC310;
-
- VIGetNextField = 0x801BDCF0;
-
- PSMTXIdentity = 0x801C02E0;
- PSMTXCopy = 0x801C0310;
- PSMTXConcat = 0x801C0350;
- PSMTXInverse = 0x801C05B0;
- PSMTXRotRad = 0x801C0780;
- PSMTXRotAxisRad = 0x801C0960;
- PSMTXTrans = 0x801C09E0;
- PSMTXTransApply = 0x801C0A20;
- PSMTXScale = 0x801C0A70;
- PSMTXScaleApply = 0x801C0AA0;
- PSMTXMultVec = 0x801C0F70;
-
- PSVECAdd = 0x801C1200;
- PSVECSubtract = 0x801C1230;
- PSVECScale = 0x801C1260;
- PSVECNormalize = 0x801C1280;
- /*PSVECSquareMag*/
- PSVECMag = 0x801C12D0;
- PSVECDotProduct = 0x801C1320;
- PSVECCrossProduct = 0x801C1340;
- PSVECSquareDistance = 0x801C1380;
- PSVECDistance = 0x801C1460;
-
- C_MTXLookAt = 0x801C0BB0;
- C_MTXFrustum = 0x801C0FD0;
- C_MTXPerspective = 0x801C1070;
- C_MTXOrtho = 0x801C1160;
-
- GXSetVtxDesc = 0x801C35D0;
- GXClearVtxDesc = 0x801C3E80;
- GXSetVtxAttrFmt = 0x801C3EC0;
- GXSetArray = 0x801C4590;
- GXInvalidateVtxCache = 0x801C45D0;
- GXSetTexCoordGen2 = 0x801C45E0;
- GXSetNumTexGens = 0x801C4830;
- GXBegin = 0x801C5380;
- GXSetCullMode = 0x801C5670;
- GXInitLightAttn = 0x801C6240;
- GXInitLightSpot = 0x801C6280;
- GXInitLightDistAttn = 0x801C6420;
- GXInitLightPos = 0x801C64F0;
- GXInitLightDir = 0x801C6520;
- GXInitSpecularDir = 0x801C6570;
- GXInitLightColor = 0x801C6680;
- GXLoadLightObjImm = 0x801C6690;
- GXSetChanAmbColor = 0x801C6710;
- GXSetChanMatColor = 0x801C67F0;
- GXSetNumChans = 0x801C68D0;
- GXSetChanCtrl = 0x801C6900;
- GXInitTexObj = 0x801C6BA0;
- GXInitTexObjCI = 0x801C6DB0;
- GXInitTexObjLOD = 0x801C6E00;
- GXInitTexObjTlut = 0x801C6F30;
- GXInitTexObjWrapMode = 0x801C6F10;
- GXLoadTexObj = 0x801C72D0;
- GXInvalidateTexAll = 0x801C74D0;
- GXSetNumIndStages = 0x801C7F20;
- GXSetTevDirect = 0x801C7F40;
- GXSetTevOp = 0x801C8060;
- GXSetTevColorIn = 0x801C8100;
- GXSetTevAlphaIn = 0x801C8140;
- GXSetTevColorOp = 0x801C8180;
- GXSetTevAlphaOp = 0x801C81E0;
- GXSetTevColor = 0x801C8240;
- GXSetTevColorS10 = 0x801C82A0;
- GXSetTevKColor = 0x801C8310;
- GXSetTevKColorSel = 0x801C8370;
- GXSetTevKAlphaSel = 0x801C83C0;
- GXSetTevSwapMode = 0x801C8410;
- GXSetTevSwapModeTable = 0x801C8450;
- GXSetAlphaCompare = 0x801C84D0;
- GXSetTevOrder = 0x801C85A0;
- GXSetNumTevStages = 0x801C8700;
- GXSetFog = 0x801C8730;
- GXSetFogRangeAdj = 0x801C8AC0;
- GXSetBlendMode = 0x801C8BD0;
- GXSetColorUpdate = 0x801C8C20;
- GXSetAlphaUpdate = 0x801C8C50;
- GXSetZMode = 0x801C8C80;
- GXSetZCompLoc = 0x801C8CC0;
- GXSetDither = 0x801C8DA0;
- GXSetDstAlpha = 0x801C8DD0;
- GXCallDisplayList = 0x801C93F0;
- GXSetProjection = 0x801C9650;
- GXLoadPosMtxImm = 0x801C9750;
- GXLoadNrmMtxImm = 0x801C97D0;
- GXSetCurrentMtx = 0x801C9870;
- GXSetViewportJitter = 0x801C99E0;
- GXSetViewport = 0x801C9A20;
- GXDrawDone = 0x801C4CB0;
-
- GXWGFifo = 0xCC008000;
-
- TPLBind = 0x80227FE0;
- TPLGet = 0x80228100;
-
- /* Gakenoko stuff */
- mHeapAllocatorSubclass_Link = 0x800690C0;
- mHeapAllocatorSubclass_UnLink = 0x800690E0;
-
- GetResMdl = 0x80239C40;
- GetResAnmChr = 0x80239EC0;
- GetResAnmVis = 0x80239F30;
- GetResAnmTexPat = 0x8023A010;
- GetResAnmTexSrt = 0x8023A080;
-
- GetResAnmChr__Q34nw4r3g3d7ResFileCFPCc = 0x80239EC0;
- GetResAnmVis__Q34nw4r3g3d7ResFileCFPCc = 0x80239F30;
- GetResAnmTexPat__Q34nw4r3g3d7ResFileCFPCc = 0x8023A010;
- GetResAnmTexSrt__Q34nw4r3g3d7ResFileCFPCc = 0x8023A080;
-
- __vt__Q23EGG9Allocator = 0x8034F9E0;
-
- __ct__12mAllocator_cFv = 0x8016A3F0;
- __vt__12mAllocator_c = 0x80329424;
- __dt__12mAllocator_cFv = 0x8016A440;
- setup__12mAllocator_cFPvi = 0x8016A4A0;
-
- __vt__Q23m3d6banm_c = 0x80329340;
- __dt__Q23m3d6banm_cFv = 0x80167CD0;
- detach__Q23m3d6banm_cFv = 0x80167D40;
- process__Q23m3d6banm_cFv = 0x8002A1F0;
- setupHeap__Q23m3d6banm_cFv = 0x80167DB0;
- testAnmFlag__Q23m3d6banm_cFv = 0x80167E70;
- getCurrentFrame__Q23m3d6banm_cFv = 0x80167E90;
- setCurrentFrame__Q23m3d6banm_cFf = 0x80167EB0;
- getUpdateRate__Q23m3d6banm_cFv = 0x80167ED0;
- setUpdateRate__Q23m3d6banm_cFf = 0x80167EF0;
- __ct__Q23m3d6fanm_cFv = 0x80168B20;
- __vt__Q23m3d6fanm_c = 0x80329388;
- __dt__Q23m3d6fanm_cFv = 0x80168B90;
- process__Q23m3d6fanm_cFv = 0x80168BF0;
- setCurrentFrame__Q23m3d6fanm_cFf = 0x80168DF0;
- isAnimationDone__Q23m3d6fanm_cFv = 0x80168E30;
- querySomething__Q23m3d6fanm_cFv = 0x80168EF0;
-
- __vt__Q23m3d8anmChr_c = 0x80303228;
- __dt__Q23m3d8anmChr_cFv = 0x800260C0;
- vf0C__Q23m3d8anmChr_cFv = 0x8002A210;
- setup__Q23m3d8anmChr_cFQ34nw4r3g3d6ResMdlQ34nw4r3g3d9ResAnmChrP12mAllocator_cPUi = 0x80164EE0;
- bind__Q23m3d8anmChr_cFPQ23m3d5mdl_cQ34nw4r3g3d9ResAnmChri = 0x80165000;
- internalBind__Q23m3d8anmChr_cFv = 0x80165090;
-
- /* m3d::anmVis_c */
- __vt__Q23m3d8anmVis_c = 0x80AD7A58;
- __dt__Q23m3d8anmVis_cFv = 0x809B1990;
- vf0C__Q23m3d8anmVis_cFv = 0x809B3520;
- setup__Q23m3d8anmVis_cFQ34nw4r3g3d6ResMdlQ34nw4r3g3d9ResAnmVisP12mAllocator_cPUi = 0x80167A50;
- bind__Q23m3d8anmVis_cFPQ23m3d5mdl_cQ34nw4r3g3d9ResAnmVisi = 0x80167B70;
- internalBind__Q23m3d8anmVis_cFv = 0x80167C60;
-
- __vt__Q23m3d11anmTexPat_c = 0x803292B0;
- __dt__Q23m3d11anmTexPat_cFv = 0x80166880;
- detach__Q23m3d11anmTexPat_cFv = 0x801668F0;
- setup__Q23m3d11anmTexPat_cFQ34nw4r3g3d6ResMdlQ34nw4r3g3d12ResAnmTexPatP12mAllocator_cPUii = 0x80166640;
- bindEntry__Q23m3d11anmTexPat_cFv = 0x801669E0;
- bindEntry__Q23m3d11anmTexPat_cFPQ23m3d5mdl_cPQ34nw4r3g3d12ResAnmTexPatii = 0x801669E0;
- process__Q23m3d11anmTexPat_cFv = 0x80166BE0;
- processOneEntry__Q23m3d11anmTexPat_cFv = 0x80166C90;
- getFrameForEntry__Q23m3d11anmTexPat_cFv = 0x80166CF0;
- setFrameForEntry__Q23m3d11anmTexPat_cFfi = 0x80166CF0;
- getUpdateRateForEntry__Q23m3d11anmTexPat_cFv = 0x80166D10;
- setUpdateRateForEntry__Q23m3d11anmTexPat_cFfi = 0x80166D20;
- isEntryAnimationDone__Q23m3d11anmTexPat_cFv = 0x80166D30;
- queryEntrySomething__Q23m3d11anmTexPat_cFv = 0x80166D40;
- setEntryByte34__Q23m3d11anmTexPat_cFUci = 0x80166D50;
- getEntryField28__Q23m3d11anmTexPat_cFv = 0x80166D70;
- vf0C__Q23m3d11anmTexPat_cFv = 0x80166D90;
-
- AllocSizeForAnmTexSrt = 0x80167150;
- setup__Q23m3d11anmTexSrt_cFQ34nw4r3g3d6ResMdlQ34nw4r3g3d12ResAnmTexSrtP12mAllocator_cPUii = 0x80167230;
- __vt__Q23m3d11anmTexSrt_c = 0x803292E0;
- __dt__Q23m3d11anmTexSrt_cFv = 0x801674B0;
- detach__Q23m3d11anmTexSrt_cFv = 0x80167520;
- bindEntry__Q23m3d11anmTexSrt_cFPQ23m3d5mdl_cQ34nw4r3g3d12ResAnmTexSrtii = 0x80167610;
- sub80167a80__Q23m3d11anmTexSrt_cFv = 0x80167750;
- process__Q23m3d11anmTexSrt_cFv = 0x80167810;
- processOneEntry__Q23m3d11anmTexSrt_cFi = 0x801678C0;
- getFrameForEntry__Q23m3d11anmTexSrt_cFi = 0x80167920;
- setFrameForEntry__Q23m3d11anmTexSrt_cFfi = 0x80167930;
- getUpdateRateForEntry__Q23m3d11anmTexSrt_cFi = 0x80167940;
- setUpdateRateForEntry__Q23m3d11anmTexSrt_cFfi = 0x80167950;
- isEntryAnimationDone__Q23m3d11anmTexSrt_cFi = 0x80167960;
- setEntryByte34__Q23m3d11anmTexSrt_cFUci = 0x80167970;
- getEntryField28__Q23m3d11anmTexSrt_cFi = 0x80167990;
- getEntryField2C__Q23m3d11anmTexSrt_cFi = 0x801679B0;
- vf0C__Q23m3d11anmTexSrt_cFv = 0x801679D0;
-
- __vt__Q23m3d10anmTexSrt_c__child_cFv = 0x803292F8;
- __dt__Q23m3d10anmTexSrt_c__child_cFv = 0x801679E0;
- vf0C__Q23m3d10anmTexSrt_c__child_cFv = 0x80167A40;
-
-
- m3d__mdl_c__DoStuff = 0x80169BA0;
-
- __ashldi3 = 0x802DCFFC;
-
-
- _Z13FindActorByIDj = 0x80162B10;
- FindActorByID__FUi = 0x80162B10;
-
- EventTable = 0x80429D98;
- dBgActorManager = 0x80429AF8;
-
- ContinueBgActorSpawn = 0x8007EA9C;
-
- SomeModelAnimationClass_Setup = 0x80164EE0;
-
- EGGTSystem_Pointer = 0x80429DAC;
-
- dSys_c__RootHeapMEM1 = 0x80429DB0;
- dSys_c__RootHeapMEM2 = 0x80429DB4;
-
- BG_GM_ptr = 0x80429AF0;
- instance__7dBgGm_c = 0x80429AF0;
-
- BgActorDefs = 0x80429AFC;
-
- _Z16GetPointerToTileP9BG_GM_haxtttPsb = 0x80077520;
- GetPointerToTile__FP9BG_GM_haxUsUsUsPsb = 0x80077520;
-
- GameHeap1 = 0x803779CC;
- GameHeap2 = 0x803779D0;
- WiimotePtr1 = 0x80377A08;
-
- continueFromFlagObjCheck = 0x807EB9F4;
- returnFromFlagObjCheck = 0x807EBA0C;
-
- Global5758 = 0x80429C68;
-
- EggControllerClassPtrMaybe = 0x80429C70;
-
- MEMGetTotalFreeSizeForExpHeap = 0x801D45F0;
-
- sub_80064BD0 = 0x80064BD0;
- sub_80166970 = 0x80166640;
- sub_80166D10 = 0x801669E0;
-
- daEnGakeNoko_c__StateID_FoolMove = 0x80B144C0;
-
- EnItem_BindAnimation_Continued = 0x80A28AE4;
- dAcPy_c__ChangePowerupWithAnimation = 0x801458D0;
- PlayerProjectileShooting = 0x8013B9A0;
-
- PlayPlayerSound = 0x80057E70;
- CreateActor = 0x80064610;
- Actor_SearchByName = 0x80162B60;
-
- daEnItem_c__GetWhetherPlayerCanGetPowerupOrNot = 0x80A2B760;
-
- returnFromGPSFASixth = 0x80141CC8;
-
- continuePlumberSetPowerupTexture = 0x800CA5AC;
- doneSettingThePowerupTexture = 0x800D46CC;
- doneSettingThePowerupTexture2 = 0x80141244;
-
- continueToadPowerupSet = 0x800BCF04;
-
- continuePlumberSetPowerupTextureDebug = 0x800CA544;
-
- returnFromPowerupSoundChange = 0x8014110C;
-
- ExitFromTileGodHack = 0x807E1414;
-
- SomeTable_802F5440 = 0x802F4F60;
- SomeTable_802F5580 = 0x802F50A0;
- SomeTable_802F56C0 = 0x802F51E0;
-
- BlahTable = 0x80324FC8;
-
- TileTable = 0x802EF7D8;
-
- CurrentLevel = 0x803159BD;
- CurrentWorld = 0x803159BC;
- CurrentStartedArea = 0x803159B6; /*WRONG*/
- CurrentStartedEntrance = 0x803159B7; /*WRONG*/
-
- GetRandomSeed = 0x800B2EC0;
- RandomSeed = 0x80429C64;
-
- MakeRandomNumber__Fi = 0x800B2EE0;
- MakeRandomNumberForTiles__Fi = 0x801611B0;
-
- StrangeReplayValue1 = 0x804276AE;
- StrangeReplayValue2 = 0x80429A89;
- StrangeReplayValue3 = 0x80429A8A;
-
- OSGetTime = 0x801B5D90;
- OSTicksToCalendarTime = 0x801B5E90;
- snprintf = 0x802E14F8;
- continueFromReplayHookStart = 0x80924424;
- continueFromReplayEndHook = 0x801020AC;
- returnFromRecorder = 0x800B5FF0;
- GetSomeGlobalClass = 0x801092C0;
- SomeUnknownClass5408 = 0x80429FB8;
- SomeWipeClass = 0x8042A160;
- QueryGlobal5758 = 0x800B3B50;
-
- SoundClassRelated = 0x80429A7C;
- BufferToCheckIfPlaying = 0x8042A1A8;
- StopSoundBasic = 0x801952B0;
- StopSoundRelated = 0x80195D20;
-
- GetHermiteCurveValue = 0x8017D330;
- GetHermiteCurveValue__FfP10HermiteKeyUi = 0x8017D330;
-
- SpawnEffect = 0x8016C6A0;
-
- __ct__Q23EGG6EffectFv = 0x802D78B0;
-
- __vt__Q23mEf8effect_c = 0x80329788;
-
- __vt__Q23mEf3es2 = 0x803296C0;
- __dt__Q23mEf3es2Fv = 0x80025F60;
-
- RectanglesOverlap__FP7Point3dP7Point3dP7Point3dP7Point3d = 0x800B3100;
-
- fmod = 0x802E8424;
-
- /* MEGA TESTS */
- usedForDeterminingStatePress_or_playerCollision = 0x800964A0;
- DoStuffAndMarkDead = 0x80097170;
- SmoothRotation = 0x8015F300;
- ClassAt1EC_Init = 0x8006D090;
- HandlesOverallScale = 0x8009EA50;
- posIsInZone = 0x800B5660;
- ScreenPositionClass = 0x80429D28;
- ShakeScreen = 0x800D8BE0;
-
- /* daEnemy_c */
- /*FIXME bad vtable address :( */
- //__vt__9daEnemy_c = 0x80AE7B68;
- _vf58__9daEnemy_cFv = 0x809A4DA0;
- _vf5C__9daEnemy_cFv = 0x809A4D90;
- _vf68__9daEnemy_cFv = 0x809A4DE0;
- ptrToWhichPlayer__9daEnemy_cFv = 0x809A2E10;
- _vf74__9daEnemy_cFv = 0x809A4DD0;
- _vf7C__9daEnemy_cFv = 0x809A4DC0;
- _vfB8__9daEnemy_cFv = 0x809A4DB0;
- _vf228__9daEnemy_cFv = 0x809A4E20;
- _vf23C__9daEnemy_cFv = 0x809A4E10;
- _vf240__9daEnemy_cFv = 0x809A4E00;
- _vf244__9daEnemy_cFv = 0x809A4DF0;
-
- /* daEnDosun_c */
- __ct_11daEnDosun_cFv = 0x809F5390;
- __ct_14daEnBigDosun_cFv = 0x809F5420;
- __vt__11daEnDosun_c = 0x80AE7B28;
- onCreate__11daEnDosun_cFv = 0x809F54B0;
- onDelete__11daEnDosun_cFv = 0x809F5890;
- onExecute__11daEnDosun_cFv = 0x809F5710;
- onDraw__11daEnDosun_cFv = 0x809F5760;
- __dt_11daEnDosun_cFv = 0x809F6A00;
- kill__11daEnDosun_cFv = 0x809F69D0;
- killedByLevelClear__11daEnDosun_cFv = 0x809F60D0;
- collisionCat3_StarPower__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F5910;
- _vf108__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F58A0;
- collisionCatD_GroundPound__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F69F0;
- _vf110__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F5950;
- collisionCat7_WMWaggleWater__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F69E0;
- collisionCat9_RollingObject__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F6960;
- collisionCat1_Fireball_E_Explosion__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F69A0;
- collisionCat2_IceBall_15_YoshiIce__11daEnDosun_cFP13ActivePhysicsP13ActivePhysics = 0x809F6970;
- _vf144__11daEnDosun_cFi = 0x809F59E0;
- DieFall_Begin__11daEnDosun_cFv = 0x809F66C0;
- DieFall_Execute__11daEnDosun_cFv = 0x809F67D0;
- DieFall_End__11daEnDosun_cFv = 0x809F67C0;
- Ice_Begin__11daEnDosun_cFv = 0x809F68E0;
- Ice_Execute__11daEnDosun_cFv = 0x809F6950;
- Ice_End__11daEnDosun_cFv = 0x809F6940;
- CreateIceActors__11daEnDosun_cFv = 0x809F5B20;
- setupBodyModel__11daEnDosun_cFv = 0x809F5CB0;
- s_809F6530__11daEnDosun_cFv = 0x809F5DF0;
- spawnEffects__11daEnDosun_cFv = 0x809F5F60;
- StateID_UpWait__11daEnDosun_c = 0x80B13C50;
- StateID_DownMoveWait__11daEnDosun_c = 0x80B13C90;
- StateID_PuruMove__11daEnDosun_c = 0x80B13CD0;
- StateID_DownMove_Kameck__11daEnDosun_c = 0x80B13D10;
- StateID_DownMove__11daEnDosun_c = 0x80B13D50;
- StateID_DownWait__11daEnDosun_c = 0x80B13D90;
- StateID_UpMove__11daEnDosun_c = 0x80B13DD0;
- StateID_DieFall__11daEnDosun_c = 0x80B13E0C;
- StateID_Ice__11daEnDosun_c = 0x80B13E4C;
-
- SpawnThwompEffects = 0x809F5F60;
-
- HurtMarioBecauseOfBeingSquashed = 0x80056370;
-
-
- .text : {
- FILL (0)
-
- __text_start = . ;
- *(.init)
- *(.text)
- __ctor_loc = . ;
- *(.ctors)
- __ctor_end = . ;
- *(.dtors)
- *(.rodata)
- /**(.sdata)*/
- *(.data)
- /**(.sbss)*/
- *(.bss)
- *(.fini)
- *(.rodata.*)
- __text_end = . ;
- }
-}
diff --git a/makeAnother b/makeAnother
new file mode 100755
index 0000000..1d138b0
--- /dev/null
+++ b/makeAnother
@@ -0,0 +1,10 @@
+#!/bin/sh
+python2 tools/mapfile_tool.py
+python2 tools/kamek.py AnotherProject.yaml --no-rels --use-mw --use-wine --gcc-type=powerpc-elf --mw-path=tools
+cp AnotherASM/n_pal_loader.bin AnotherASM/SystemEU_1.bin
+cp AnotherASM/n_pal2_loader.bin AnotherASM/SystemEU_2.bin
+cp AnotherASM/n_ntsc_loader.bin AnotherASM/SystemUS_1.bin
+cp AnotherASM/n_ntsc2_loader.bin AnotherASM/SystemUS_2.bin
+cp AnotherASM/n_jpn_loader.bin AnotherASM/SystemJP_1.bin
+echo Built Another for all regions!!
+
diff --git a/makeAnotherAll b/makeAnotherAll
deleted file mode 100755
index 1c3b6da..0000000
--- a/makeAnotherAll
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-python2 tools/mapfile_tool.py
-python2 tools/kamek.py AnotherProject.yaml --no-rels --use-mw --use-wine --gcc-type=powerpc-elf --mw-path=tools
-cp AnotherASM/pal_loader.bin AnotherASM/SystemEU_1.bin
-cp AnotherASM/ntsc_loader.bin AnotherASM/SystemUS_1.bin
-cp AnotherASM/ntsc2_loader.bin AnotherASM/SystemUS_2.bin
-echo Built Another for all regions!!
-
diff --git a/makeNewer b/makeNewer
index 6e142c0..721d741 100755
--- a/makeNewer
+++ b/makeNewer
@@ -1,14 +1,23 @@
#!/bin/sh
python2 tools/mapfile_tool.py
-python2 tools/kamek.py NewerProject.yaml --no-rels --use-mw --use-wine --gcc-type=/opt/wiidev/bin/powerpc-elf --build=pal --mw-path=tools
+python2 tools/kamek.py NewerProject.yaml --no-rels --use-mw --use-wine --gcc-type=/opt/wiidev/bin/powerpc-elf --mw-path=tools
if [ "$?" = "0" ]; then
echo "compile successful"
else
exit 1
fi
-cp NewerASM/pal_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemEU_1.bin
-cp NewerASM/pal_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeEU_1.bin
-cp NewerASM/pal_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsEU_1.bin
-echo Built PAL!
+copy_files() {
+ cp NewerASM/n_$1_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/System$2.bin
+ cp NewerASM/n_$1_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCode$2.bin
+ cp NewerASM/n_$1_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocs$2.bin
+}
+
+copy_files pal EU_1
+copy_files pal2 EU_2
+copy_files ntsc US_1
+copy_files ntsc2 US_2
+copy_files jpn JP_1
+
+echo Built all!
diff --git a/makeNewerAll b/makeNewerAll
deleted file mode 100755
index cceea26..0000000
--- a/makeNewerAll
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-python2 tools/mapfile_tool.py
-python2 tools/kamek.py NewerProject.yaml --no-rels --use-mw --use-wine --gcc-type=/opt/wiidev/bin/powerpc-elf --mw-path=tools
-if [ "$?" = "0" ]; then
- echo "compile successful"
-else
- exit 1
-fi
-
-cp NewerASM/pal_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemEU_1.bin
-cp NewerASM/pal_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeEU_1.bin
-cp NewerASM/pal_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsEU_1.bin
-cp NewerASM/ntsc_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemUS_1.bin
-cp NewerASM/ntsc_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeUS_1.bin
-cp NewerASM/ntsc_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsUS_1.bin
-cp NewerASM/ntsc2_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemUS_2.bin
-cp NewerASM/ntsc2_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeUS_2.bin
-cp NewerASM/ntsc2_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsUS_2.bin
-echo Built all!
-
diff --git a/makeNewerAllCodehandler b/makeNewerAllCodehandler
index dffb254..638bc71 100755
--- a/makeNewerAllCodehandler
+++ b/makeNewerAllCodehandler
@@ -7,8 +7,17 @@ else
exit 1
fi
-cp NewerASM/pal_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemEU_1.bin
-cp NewerASM/ntsc_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemUS_1.bin
-cp NewerASM/ntsc2_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemUS_2.bin
+copy_files() {
+ cp NewerASM/n_$1_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/System$2.bin
+ cp NewerASM/n_$1_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCode$2.bin
+ cp NewerASM/n_$1_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocs$2.bin
+}
+
+copy_files pal EU_1
+copy_files pal2 EU_2
+copy_files ntsc US_1
+copy_files ntsc2 US_2
+copy_files jpn JP_1
+
echo Built all!
diff --git a/makeNewerKP b/makeNewerKP
index 36cb034..9337a0e 100755
--- a/makeNewerKP
+++ b/makeNewerKP
@@ -1,14 +1,23 @@
#!/bin/sh
python2 tools/mapfile_tool.py
-python2 tools/kamek.py NewerProjectKP.yaml --no-rels --use-mw --use-wine --gcc-type=/opt/wiidev/bin/powerpc-elf --build=pal --mw-path=tools
+python2 tools/kamek.py NewerProjectKP.yaml --no-rels --use-mw --use-wine --gcc-type=/opt/wiidev/bin/powerpc-elf --mw-path=tools
if [ "$?" = "0" ]; then
echo "compile successful"
else
exit 1
fi
-cp NewerASM/pal_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemEU_1.bin
-cp NewerASM/pal_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeEU_1.bin
-cp NewerASM/pal_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsEU_1.bin
-echo Built PAL!
+copy_files() {
+ cp NewerASM/n_$1_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/System$2.bin
+ cp NewerASM/n_$1_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCode$2.bin
+ cp NewerASM/n_$1_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocs$2.bin
+}
+
+copy_files pal EU_1
+copy_files pal2 EU_2
+copy_files ntsc US_1
+copy_files ntsc2 US_2
+copy_files jpn JP_1
+
+echo Built all!
diff --git a/makeNewerKPAll b/makeNewerKPAll
deleted file mode 100755
index 7d10af6..0000000
--- a/makeNewerKPAll
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-python2 tools/mapfile_tool.py
-python2 tools/kamek.py NewerProjectKP.yaml --no-rels --use-mw --use-wine --gcc-type=/opt/wiidev/bin/powerpc-elf --mw-path=tools
-if [ "$?" = "0" ]; then
- echo "compile successful"
-else
- exit 1
-fi
-
-cp NewerASM/pal_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemEU_1.bin
-cp NewerASM/pal_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeEU_1.bin
-cp NewerASM/pal_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsEU_1.bin
-cp NewerASM/ntsc_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemUS_1.bin
-cp NewerASM/ntsc_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeUS_1.bin
-cp NewerASM/ntsc_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsUS_1.bin
-cp NewerASM/ntsc2_loader.bin ~/Games/Newer/DolphinPatch/NewerRes/SystemUS_2.bin
-cp NewerASM/ntsc2_dlcode.bin ~/Games/Newer/DolphinPatch/NewerRes/DLCodeUS_2.bin
-cp NewerASM/ntsc2_dlrelocs.bin ~/Games/Newer/DolphinPatch/NewerRes/DLRelocsUS_2.bin
-echo Built all!
-
diff --git a/makeSummerSun b/makeSummerSun
index 5add3fb..89a2f4a 100755
--- a/makeSummerSun
+++ b/makeSummerSun
@@ -1,21 +1,17 @@
#!/bin/sh
rm -r ~/.wine
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemEU_1.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeEU_1.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsEU_1.bin
-
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemUS_1.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeUS_1.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsUS_1.bin
-
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemUS_2.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeUS_2.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsUS_2.bin
-
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemJP_1.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeJP_1.bin
-rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsJP_1.bin
+remove_files() {
+ rm ~/Dropbox/NEWERsmbw/Summer\ Sun/System$1.bin
+ rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCode$1.bin
+ rm ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocs$1.bin
+}
+
+remove_files EU_1
+remove_files EU_2
+remove_files US_1
+remove_files US_2
+remove_files JP_1
python tools/mapfile_tool.py
python tools/kamek.py SummerSun.yaml --no-rels --use-mw --use-wine --gcc-type=/usr/local/devkitPRO/devkitPPC/bin/powerpc-eabi --mw-path=tools
@@ -25,21 +21,17 @@ else
exit 1
fi
-mv NewerASM/pal_loader.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemEU_1.bin
-mv NewerASM/pal_dlcode.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeEU_1.bin
-mv NewerASM/pal_dlrelocs.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsEU_1.bin
-
-mv NewerASM/ntsc_loader.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemUS_1.bin
-mv NewerASM/ntsc_dlcode.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeUS_1.bin
-mv NewerASM/ntsc_dlrelocs.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsUS_1.bin
-
-mv NewerASM/ntsc2_loader.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemUS_2.bin
-mv NewerASM/ntsc2_dlcode.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeUS_2.bin
-mv NewerASM/ntsc2_dlrelocs.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsUS_2.bin
-
-mv NewerASM/jpn_loader.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/SystemJP_1.bin
-mv NewerASM/jpn_dlcode.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCodeJP_1.bin
-mv NewerASM/jpn_dlrelocs.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocsJP_1.bin
+copy_files() {
+ cp NewerASM/n_$1_loader.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/System$2.bin
+ cp NewerASM/n_$1_dlcode.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLCode$2.bin
+ cp NewerASM/n_$1_dlrelocs.bin ~/Dropbox/NEWERsmbw/Summer\ Sun/DLRelocs$2.bin
+}
+
+copy_files pal EU_1
+copy_files pal2 EU_2
+copy_files ntsc US_1
+copy_files ntsc2 US_2
+copy_files jpn JP_1
echo Built all!
diff --git a/tools/hooks.py b/tools/hooks.py
index 388efcb..7252489 100755
--- a/tools/hooks.py
+++ b/tools/hooks.py
@@ -48,10 +48,10 @@ class Hook(object):
self.context.hooks.append(self)
# validate the hook's data
- current_config_name = builder.config_short_name
+ current_build_name = builder.current_build_name
for field in self.required_data:
- field = field.replace('%CONFIG%', current_config_name)
+ field = field.replace('%BUILD%', current_build_name)
if field not in data:
raise ValueError, 'hook %s : %s is missing the field %s' % (module.moduleName, data['name'], field)
@@ -63,13 +63,13 @@ class Hook(object):
class BasicPatchHook(Hook):
"""Hook that simply patches data to an address"""
- required_data = ['addr_%CONFIG%', 'data']
+ required_data = ['addr_%BUILD%', 'data']
def __init__(self, builder, module, data):
Hook.__init__(self, builder, module, data)
def create_patches(self):
- addr = self.data['addr_%s' % self.builder.config_short_name]
+ addr = self.data['addr_%s' % self.builder.current_build_name]
hex_data = self.data['data']
@@ -86,7 +86,7 @@ class BasicPatchHook(Hook):
class BranchInsnHook(Hook):
"""Hook that replaces the instruction at a specific address with a branch"""
- required_data = ['branch_type', 'src_addr_%CONFIG%']
+ required_data = ['branch_type', 'src_addr_%BUILD%']
def __init__(self, builder, module, data):
Hook.__init__(self, builder, module, data)
@@ -95,9 +95,9 @@ class BranchInsnHook(Hook):
try:
target_func = self.data['target_func']
except KeyError:
- target_func = self.data['target_func_%s' % self.builder.config_short_name]
+ target_func = self.data['target_func_%s' % self.builder.current_build_name]
- src_addr = self.data['src_addr_%s' % self.builder.config_short_name]
+ src_addr = self.data['src_addr_%s' % self.builder.current_build_name]
is_symbol_name = isinstance(target_func, str)
if is_symbol_name:
@@ -118,7 +118,7 @@ class BranchInsnHook(Hook):
class AddFunctionPointerHook(Hook):
"""Hook that places a function pointer at an address"""
- required_data = ['src_addr_%CONFIG%']
+ required_data = ['src_addr_%BUILD%']
def __init__(self, builder, module, data):
Hook.__init__(self, builder, module, data)
@@ -127,9 +127,9 @@ class AddFunctionPointerHook(Hook):
try:
target_func = self.data['target_func']
except KeyError:
- target_func = self.data['target_func_%s' % self.builder.config_short_name]
+ target_func = self.data['target_func_%s' % self.builder.current_build_name]
- src_addr = self.data['src_addr_%s' % self.builder.config_short_name]
+ src_addr = self.data['src_addr_%s' % self.builder.current_build_name]
is_symbol_name = isinstance(target_func, str)
if is_symbol_name:
@@ -146,13 +146,13 @@ class AddFunctionPointerHook(Hook):
class NopInsnHook(Hook):
"""Hook that NOPs out the instruction(s) at an address"""
- required_data = ['area_%CONFIG%']
+ required_data = ['area_%BUILD%']
def __init__(self, builder, module, data):
Hook.__init__(self, builder, module, data)
def create_patches(self):
- area = self.data['area_%s' % self.builder.config_short_name]
+ area = self.data['area_%s' % self.builder.current_build_name]
if isinstance(area, list):
addr, end = area
diff --git a/tools/kamek.py b/tools/kamek.py
index 534eac8..ee67a5a 100644
--- a/tools/kamek.py
+++ b/tools/kamek.py
@@ -162,11 +162,17 @@ class DyLinkCreator(object):
VALID_RELOCS = set([1, 4, 5, 6, 10])
- def __init__(self):
- self._relocs = []
+ def __init__(self, other=None):
+ if other:
+ self._relocs = other._relocs[:]
- self._targets = []
- self._target_lookups = {}
+ self._targets = other._targets[:]
+ self._target_lookups = other._target_lookups.copy()
+ else:
+ self._relocs = []
+
+ self._targets = []
+ self._target_lookups = {}
self.elf = None
@@ -274,36 +280,49 @@ class KamekBuilder(object):
print_debug('Temp files for this configuration are in: '+self._configTempDir)
if 'dynamic_link' in self._config and self._config['dynamic_link']:
- self.dynamic_link = DyLinkCreator()
+ self.dynamic_link_base = DyLinkCreator()
else:
- self.dynamic_link = None
+ self.dynamic_link_base = None
self._builtCodeAddr = 0x80001800
if 'code_address' in self.project.data:
self._builtCodeAddr = self.project.data['code_address']
- self._patches = []
- self._rel_patches = []
- self._hooks = []
-
# hook setup
self._hook_contexts = {}
for name, hookType in hooks.HookTypes.iteritems():
if hookType.has_context:
self._hook_contexts[hookType] = hookType.context_type()
- self._create_hooks()
self._compile_modules()
- self._link()
- self._read_symbol_map()
- if self.dynamic_link:
- self.dynamic_link.set_elf(open(self._outFile, 'rb'))
-
- for hook in self._hooks:
- hook.create_patches()
-
- self._create_patch()
+ # figure out how many copies we need to build
+ # this is a mess!
+ if 'multi_build' in self._config:
+ self._multi_build = self._config['multi_build']
+ else:
+ self._multi_build = {self._config['short_name']: self._config['linker_script']}
+
+ for s_name, s_script in self._multi_build.iteritems():
+ self.current_build_name = s_name
+
+ self._patches = []
+ self._rel_patches = []
+ self._hooks = []
+
+ self._create_hooks()
+
+ self._link(s_name, s_script)
+ self._read_symbol_map()
+
+ if self.dynamic_link_base:
+ self.dynamic_link = DyLinkCreator(self.dynamic_link_base)
+ self.dynamic_link.set_elf(open(self._currentOutFile, 'rb'))
+
+ for hook in self._hooks:
+ hook.create_patches()
+
+ self._create_patch(s_name)
if delete_temp:
shutil.rmtree(self._configTempDir)
@@ -324,7 +343,10 @@ class KamekBuilder(object):
print_debug('Building for configuration: '+config['friendly_name'])
self.config_short_name = config['short_name']
- self._rel_area = (config['rel_area_start'], config['rel_area_end'])
+ if 'rel_area_start' in config:
+ self._rel_area = (config['rel_area_start'], config['rel_area_end'])
+ else:
+ self._rel_area = (-50, -50)
def _create_hooks(self):
@@ -355,11 +377,12 @@ class KamekBuilder(object):
cc_command = ['%smwcceppc.exe' % mw_path, '-I.', '-I-', '-I.', '-nostdinc', '-Cpp_exceptions', 'off', '-Os', '-proc', 'gekko', '-fp', 'hard', '-enum', 'int', '-sdata', '0', '-sdata2', '0', '-g', '-RTTI', 'off', '-use_lmw_stmw', 'on']
as_command = ['%smwasmeppc.exe' % mw_path, '-I.', '-I-', '-I.', '-nostdinc', '-proc', 'gekko', '-d', '__MWERKS__']
- for d in self._config['defines']:
- cc_command.append('-d')
- cc_command.append(d)
- as_command.append('-d')
- as_command.append(d)
+ if 'defines' in self._config:
+ for d in self._config['defines']:
+ cc_command.append('-d')
+ cc_command.append(d)
+ as_command.append('-d')
+ as_command.append(d)
for i in self._config['include_dirs']:
cc_command.append('-I%s' % i)
@@ -376,8 +399,9 @@ class KamekBuilder(object):
cc_command = ['%s%s-g++' % (gcc_path, gcc_type), '-nodefaultlibs', '-I.', '-fno-builtin', '-Os', '-fno-exceptions', '-fno-rtti', '-mno-sdata']
as_command = cc_command
- for d in self._config['defines']:
- cc_command.append('-D%s' % d)
+ if 'defines' in self._config:
+ for d in self._config['defines']:
+ cc_command.append('-D%s' % d)
for i in self._config['include_dirs']:
cc_command.append('-I%s' % i)
@@ -419,18 +443,22 @@ class KamekBuilder(object):
print_debug('Compilation complete')
- def _link(self):
+ def _link(self, short_name, script_file):
print_debug('---')
- print_debug('Linking project')
-
- self._mapFile = '%s/%s_linkmap.map' % (self._outDir, self.config_short_name)
- outname = 'object.plf' if self.dynamic_link else 'object.bin'
- self._outFile = '%s/%s_%s' % (self._outDir, self.config_short_name, outname)
+ print_debug('Linking %s (%s)...' % (short_name, script_file))
+
+ nice_name = '%s_%s' % (self._config['short_name'], short_name)
+
+ print_debug('---')
+
+ self._currentMapFile = '%s/%s_linkmap.map' % (self._outDir, nice_name)
+ outname = 'object.plf' if self.dynamic_link_base else 'object.bin'
+ self._currentOutFile = '%s/%s_%s' % (self._outDir, nice_name, outname)
ld_command = ['%s%s-ld' % (gcc_path, gcc_type), '-L.']
ld_command.append('-o')
- ld_command.append(self._outFile)
- if self.dynamic_link:
+ ld_command.append(self._currentOutFile)
+ if self.dynamic_link_base:
ld_command.append('-r')
ld_command.append('--oformat=elf32-powerpc')
else:
@@ -438,9 +466,9 @@ class KamekBuilder(object):
ld_command.append('-Ttext')
ld_command.append('0x%08X' % self._builtCodeAddr)
ld_command.append('-T')
- ld_command.append(self._config['linker_script'])
+ ld_command.append(script_file)
ld_command.append('-Map')
- ld_command.append(self._mapFile)
+ ld_command.append(self._currentMapFile)
ld_command.append('--no-demangle') # for debugging
#ld_command.append('--verbose')
ld_command += self._moduleFiles
@@ -454,16 +482,16 @@ class KamekBuilder(object):
print 'ld returned %d' % errorVal
sys.exit(1)
- print_debug('Linked successfully')
-
-
+ print_debug('Successfully linked %s' % short_name)
+
+
def _read_symbol_map(self):
print_debug('---')
print_debug('Reading symbol map')
self._symbols = []
- file = open(self._mapFile, 'r')
+ file = open(self._currentMapFile, 'r')
for line in file:
if '__text_start' in line:
@@ -538,10 +566,12 @@ class KamekBuilder(object):
self._patches.append((offset, data))
- def _create_patch(self):
+ def _create_patch(self, short_name):
print_debug('---')
print_debug('Creating patch')
+ nice_name = '%s_%s' % (self._config['short_name'], short_name)
+
# convert the .rel patches to KamekPatcher format
if len(self._rel_patches) > 0:
kamekpatch = generate_kamek_patches(self._rel_patches)
@@ -550,38 +580,38 @@ class KamekBuilder(object):
if self.dynamic_link:
# put together the dynamic link files
- dlcode = open('%s/%s_dlcode.bin' % (self._outDir, self._config['short_name']), 'wb')
+ dlcode = open('%s/%s_dlcode.bin' % (self._outDir, nice_name), 'wb')
dlcode.write(self.dynamic_link.code)
dlcode.close()
- dlrelocs = open('%s/%s_dlrelocs.bin' % (self._outDir, self._config['short_name']), 'wb')
+ dlrelocs = open('%s/%s_dlrelocs.bin' % (self._outDir, nice_name), 'wb')
dlrelocs.write(self.dynamic_link.build_reloc_data())
dlrelocs.close()
else:
# add the outfile as a patch if not using dynamic linking
- file = open(self._outFile, 'rb')
+ file = open(self._currentOutFile, 'rb')
patch = (self._codeStart, file.read())
file.close()
self._patches.append(patch)
# generate a Riivolution patch
- riiv = open('%s/%s_riiv.xml' % (self._outDir, self._config['short_name']), 'w')
+ riiv = open('%s/%s_riiv.xml' % (self._outDir, nice_name), 'w')
for patch in self._patches:
riiv.write(generate_riiv_mempatch(*patch) + '\n')
riiv.close()
# generate an Ocarina patch
- ocarina = open('%s/%s_ocarina.txt' % (self._outDir, self._config['short_name']), 'w')
+ ocarina = open('%s/%s_ocarina.txt' % (self._outDir, nice_name), 'w')
for patch in self._patches:
ocarina.write(generate_ocarina_patch(*patch) + '\n')
ocarina.close()
# generate a KamekPatcher patch
- kpatch = open('%s/%s_loader.bin' % (self._outDir, self._config['short_name']), 'wb')
+ kpatch = open('%s/%s_loader.bin' % (self._outDir, nice_name), 'wb')
kpatch.write(generate_kamek_patches(self._patches))
kpatch.close()
diff --git a/tools/mapfile_tool.py b/tools/mapfile_tool.py
index 3556d0d..41eff5a 100755
--- a/tools/mapfile_tool.py
+++ b/tools/mapfile_tool.py
@@ -9,8 +9,16 @@ def make_hex_offset(offs):
return '0x%08X' % offs
def fix_offs_pal_v2(offs):
- # do this later
- return 0xdeadbeef
+ if offs >= 0x807685A0 and offs <= 0x807AAA70:
+ return offs + 0x40
+
+ if offs >= 0x807AAA74 and offs <= 0x809907FF:
+ return offs + 0x10
+
+ if offs >= 0x80990800:
+ return offs + 0x20
+
+ return offs
def fix_offs_ntsc_v1(offs):
# .text section
@@ -192,7 +200,7 @@ import yaml
original = 'pal'
fix_for = {
- 'pal2': fix_offs_ntsc_v1,
+ 'pal2': fix_offs_pal_v2,
'ntsc': fix_offs_ntsc_v1,
'ntsc2': fix_offs_ntsc_v2,
'jpn': fix_offs_jpn_v1