diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rwxr-xr-x | hacksToDropbox | 20 | ||||
-rwxr-xr-x | hacksToDropboxKP | 20 | ||||
-rw-r--r-- | kamek_configs.yaml | 50 | ||||
-rw-r--r-- | kamek_jpn.x | 1529 | ||||
-rwxr-xr-x | makeAnother | 10 | ||||
-rwxr-xr-x | makeAnotherAll | 8 | ||||
-rwxr-xr-x | makeNewer | 19 | ||||
-rwxr-xr-x | makeNewerAll | 20 | ||||
-rwxr-xr-x | makeNewerAllCodehandler | 15 | ||||
-rwxr-xr-x | makeNewerKP | 19 | ||||
-rwxr-xr-x | makeNewerKPAll | 20 | ||||
-rwxr-xr-x | makeSummerSun | 52 | ||||
-rwxr-xr-x | tools/hooks.py | 24 | ||||
-rw-r--r-- | tools/kamek.py | 128 | ||||
-rwxr-xr-x | tools/mapfile_tool.py | 14 |
16 files changed, 208 insertions, 1742 deletions
@@ -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!! - @@ -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
|