From db3b5ad419de8210e2785dfbfc349506614eb8cb Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sat, 22 May 2021 21:56:01 -0500 Subject: [PATCH 01/22] Draft 1 --- Playback/Core/Scene/SceneThink_Playback.asm | 48 +++++++++++++++++++++ Playback/Playback.s | 7 +++ 2 files changed, 55 insertions(+) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 84302dba..cb8f80fd 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -8,6 +8,10 @@ .set REG_BufferPointer, 29 .set REG_Text,28 .set REG_FrameCount,27 +.set REG_LOGO_JOBJ,21 +.set REG_GOBJ,22 +.set REG_SecondBuf,24 +.set REG_LOCAL_DATA_ADDR,25 ############################# # Create Per Frame Function # @@ -24,6 +28,46 @@ li r4,14 li r5,0 branchl r12, GObj_Create + mr REG_GOBJ, r3 # save GOBJ pointer + +# Load LOGO file + addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME + branchl r12,0x80016be0 + +# Retrieve symbol from file data + addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME + branchl r12,0x80380358 + +# Save ptr to mem +# stw r3, SLPMSC_BUF_ADDR(0x0) + +# Load logo JOBJ +# lwz r3, CSSDT_SLPCSS_ADDR(REG_CSSDT_ADDR) + lwz r3, 0x0 (r3) # pointer to our logo jobj + lwz r3, 0x0 (r3) #jobj + branchl r12, 0x80370e44 # Create Jobj + mr REG_LOGO_JOBJ,r3 + +# Add logo JOBJ to GOBJ + mr r3, REG_GOBJ + li r4, 4 + mr r5, REG_LOGO_JOBJ + branchl r12,0x80390a70 # void GObj_AddObject + +# Add GX link that draws the logo + mr r3, REG_GOBJ + load r4, 0x80391070 + li r5, 9 # index + li r6, 128 + branchl r12, GObj_SetupGXLink # void GObj_AddGXLink + +# Add User Data to GOBJ + mr r3, REG_GOBJ + li r4, 4 # user data kind + load r5, HSD_Free # destructor + mr r6, REG_SecondBuf + branchl r12, GObj_AddUserData + #Schedule Function bl PlaybackThink @@ -125,6 +169,10 @@ blrl branchl r12, HSD_MemAlloc mr REG_BufferPointer,r3 + li r3,0x20 + branchl r12, HSD_MemAlloc + mr REG_SecondBuf,r3 + ###################### ## Init Frame Count ## ###################### diff --git a/Playback/Playback.s b/Playback/Playback.s index d53c309c..e83a6571 100644 --- a/Playback/Playback.s +++ b/Playback/Playback.s @@ -19,6 +19,13 @@ lwz \reg, -0x62A0(\reg) .set CONST_FrameFetchResult_Terminate, 2 .set CONST_FrameFetchResult_FastForward, 3 +################################################################################ +# slpMisc buffer address +################################################################################ + +# Placed 32B in front of CSS data table buf +.set SLPMSC_BUF_ADDR, 0x80005634 + ################################################################################ # Command Bytes ################################################################################ From 8a89987185f56670dbcc0af36db70ce83bacf0a9 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Mon, 24 May 2021 00:21:06 -0500 Subject: [PATCH 02/22] WIP --- Playback/Core/Scene/SceneThink_Playback.asm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index cb8f80fd..5adbf9b3 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -13,6 +13,14 @@ .set REG_SecondBuf,24 .set REG_LOCAL_DATA_ADDR,25 +# File related strings +.string "slpMisc.dat" +.set DO_STRING_SLPLOGO_FILENAME, 0 +.string "slpMisc" +.set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 12 +.align 2 + + ############################# # Create Per Frame Function # ############################# From 3f65313e32515cd6a545009399f9072062a96fc1 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 21 Dec 2021 15:42:17 -0600 Subject: [PATCH 03/22] Includes file transfer APIs in playback codeset --- Common/Common.s | 5 +++++ Online/Online.s | 5 ----- Playback/Core/Scene/SceneThink_Playback.asm | 17 +++++++++++++---- Playback/Playback.s | 5 +---- playback.json | 6 ++++++ 5 files changed, 25 insertions(+), 13 deletions(-) diff --git a/Common/Common.s b/Common/Common.s index acd058b5..5625d722 100644 --- a/Common/Common.s +++ b/Common/Common.s @@ -1,6 +1,11 @@ ################################################################################ # Macros ################################################################################ +.macro loadGlobalFrame reg +lis \reg, 0x8048 +lwz \reg, -0x62A0(\reg) +.endm + .macro branchl reg, address lis \reg, \address @h ori \reg,\reg,\address @l diff --git a/Online/Online.s b/Online/Online.s index fd210d09..963e8d51 100644 --- a/Online/Online.s +++ b/Online/Online.s @@ -4,11 +4,6 @@ # - Handle situation where a game ends while still predicting inputs, probably # wouldn't want to trigger a game end until all inputs have been received -.macro loadGlobalFrame reg -lis \reg, 0x8048 -lwz \reg, -0x62A0(\reg) -.endm - ################################################################################ # Offsets from r13 ################################################################################ diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 5adbf9b3..795e82d0 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -1,7 +1,7 @@ ################################################################################ # Address: 801a6348 ################################################################################ -.include "Common/Common.s" +.include "Online/Core/EXIFileLoad/TransferFile.asm" .include "Playback/Playback.s" .set REG_Floats, 30 @@ -13,14 +13,23 @@ .set REG_SecondBuf,24 .set REG_LOCAL_DATA_ADDR,25 + bl DATA_BLRL + mflr REG_LOCAL_DATA_ADDR + b FBegin + + +DATA_BLRL: +blrl # File related strings -.string "slpMisc.dat" +.string "slpCSS.dat" .set DO_STRING_SLPLOGO_FILENAME, 0 -.string "slpMisc" +.string "slpCSS" .set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 12 .align 2 +FBegin: + ############################# # Create Per Frame Function # ############################# @@ -315,7 +324,7 @@ FloatValues: Text: blrl - .string "Waiting for game%s" + .string "Poggers%s" .align 2 Dots: diff --git a/Playback/Playback.s b/Playback/Playback.s index e83a6571..673584ab 100644 --- a/Playback/Playback.s +++ b/Playback/Playback.s @@ -6,10 +6,7 @@ # None -.macro loadGlobalFrame reg -lis \reg, 0x8048 -lwz \reg, -0x62A0(\reg) -.endm + ################################################################################ # Const Definitions diff --git a/playback.json b/playback.json index 244bafcb..c8d2520a 100644 --- a/playback.json +++ b/playback.json @@ -124,6 +124,12 @@ "sourceFolder": "Common/FastForward", "isRecursive": true, "annotation": "Functions for supporting FFW [Fizzi, Unclepunch]" + }, + { + "type": "injectFolder", + "sourceFolder": "Online/Core/EXIFileLoad", + "isRecursive": true, + "annotation": "File load functions" } ] }, From fc379cb4b82c2ea7ead569d2fcbe131054fbc1e4 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Wed, 22 Dec 2021 16:43:45 -0600 Subject: [PATCH 04/22] Fixed alloc timing for secondbuf, highest priority for gx_pri for the logo --- Playback/Core/Scene/SceneThink_Playback.asm | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 795e82d0..b3cefbed 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -33,6 +33,11 @@ FBegin: ############################# # Create Per Frame Function # ############################# + +# Alloc SecondBuf + li r3,0x20 + branchl r12, HSD_MemAlloc + mr REG_SecondBuf,r3 #Check If Major Scene 0xE load r3,0x80479D30 #Scene Controller @@ -42,20 +47,21 @@ FBegin: #Create GObj li r3, 13 - li r4,14 - li r5,0 + li r4, 14 + li r5, 0 branchl r12, GObj_Create mr REG_GOBJ, r3 # save GOBJ pointer # Load LOGO file addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME - branchl r12,0x80016be0 + branchl r12,0x80016be0 # File load function? # Retrieve symbol from file data addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME branchl r12,0x80380358 # Save ptr to mem +# I believe these are commented out because they're redundant memory operations? Not 100% sure # stw r3, SLPMSC_BUF_ADDR(0x0) # Load logo JOBJ @@ -75,7 +81,7 @@ FBegin: mr r3, REG_GOBJ load r4, 0x80391070 li r5, 9 # index - li r6, 128 + li r6, 1 # gx_pri, formerly 128 branchl r12, GObj_SetupGXLink # void GObj_AddGXLink # Add User Data to GOBJ @@ -89,7 +95,7 @@ FBegin: #Schedule Function bl PlaybackThink mflr r4 #Function to Run - li r5,0 #Priority + li r5, 0 #Priority, formerly 0 branchl r12, GObj_AddProc b Exit @@ -186,10 +192,6 @@ blrl branchl r12, HSD_MemAlloc mr REG_BufferPointer,r3 - li r3,0x20 - branchl r12, HSD_MemAlloc - mr REG_SecondBuf,r3 - ###################### ## Init Frame Count ## ###################### From b01e77d50aca73bb1cc94dcfa7a0ce7550dcc769 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Wed, 22 Dec 2021 17:04:41 -0600 Subject: [PATCH 05/22] Remove unnecessary buffer and commented out instrs --- Playback/Core/Scene/SceneThink_Playback.asm | 7 +------ Playback/Playback.s | 7 ------- 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index b3cefbed..25f727fc 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -58,14 +58,9 @@ FBegin: # Retrieve symbol from file data addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME - branchl r12,0x80380358 - -# Save ptr to mem -# I believe these are commented out because they're redundant memory operations? Not 100% sure -# stw r3, SLPMSC_BUF_ADDR(0x0) + branchl r12,0x80380358 # HSD_ArchiveGetPublicAddress, returns a pointer in r3 # Load logo JOBJ -# lwz r3, CSSDT_SLPCSS_ADDR(REG_CSSDT_ADDR) lwz r3, 0x0 (r3) # pointer to our logo jobj lwz r3, 0x0 (r3) #jobj branchl r12, 0x80370e44 # Create Jobj diff --git a/Playback/Playback.s b/Playback/Playback.s index 673584ab..cf086735 100644 --- a/Playback/Playback.s +++ b/Playback/Playback.s @@ -16,13 +16,6 @@ .set CONST_FrameFetchResult_Terminate, 2 .set CONST_FrameFetchResult_FastForward, 3 -################################################################################ -# slpMisc buffer address -################################################################################ - -# Placed 32B in front of CSS data table buf -.set SLPMSC_BUF_ADDR, 0x80005634 - ################################################################################ # Command Bytes ################################################################################ From 28cb1b2c834823e1a42a063ecd87950d4ddfc51a Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Fri, 24 Dec 2021 13:08:05 -0600 Subject: [PATCH 06/22] Create a new camera for the scene --- Playback/Core/Scene/SceneThink_Playback.asm | 34 ++++++++++++++++++--- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 25f727fc..9b37058b 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -23,8 +23,11 @@ blrl # File related strings .string "slpCSS.dat" .set DO_STRING_SLPLOGO_FILENAME, 0 -.string "slpCSS" -.set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 12 +.string "slplogo_scene_data" +.set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 11 +# symbol offsets +.set SLPLOGO_LOGO, -0x53 +.set SLPLOGO_CAMDESC, -0x49 .align 2 @@ -35,7 +38,7 @@ FBegin: ############################# # Alloc SecondBuf - li r3,0x20 + li r3,0x20 # 8065dc38 branchl r12, HSD_MemAlloc mr REG_SecondBuf,r3 @@ -46,7 +49,7 @@ FBegin: bne Original #Create GObj - li r3, 13 + li r3, 0 li r4, 14 li r5, 0 branchl r12, GObj_Create @@ -54,12 +57,33 @@ FBegin: # Load LOGO file addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME - branchl r12,0x80016be0 # File load function? + branchl r12,0x80016be0 # File_Load # Retrieve symbol from file data addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME branchl r12,0x80380358 # HSD_ArchiveGetPublicAddress, returns a pointer in r3 +# Load camdesc + mr r4, r3 # Remember symbol pointer in r4. 8065dcac + addi r3, r3, SLPLOGO_CAMDESC # Address of camdesc into r3 + branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) CRASHES HERE CURRENTLY + +# Add GOBJ to COBJ? (Not sure of parameter order here) + mr r5, r3 # Move COBJ pointer to r5 + li r4, 4 + mr r3, REG_GOBJ + branchl r12, GObj_AddToObj # void GObj_AddObject(GOBJ *gobj, u8 unk, void *object) + +# Initialize camera + mr r3, REG_GOBJ # Might be redundant, but it's unclear whether GObj_AddToObj backs-up/restores register 3 + load r4, 0x803910D8 # CObjThink_Common + li r5, 1 # gx_pri + branchl r12, 0x8039075C # void GObj_InitCamera(GOBJ* gobj, void (*render_cb)(GOBJ*, s32), u32 priority) + +# set gobj->cobj_links (0x20) to 1 << 9 (512) + li r4, 512 + stw r4, 0x20(REG_GOBJ) + # Load logo JOBJ lwz r3, 0x0 (r3) # pointer to our logo jobj lwz r3, 0x0 (r3) #jobj From c65e96e666ade5b6f72910c0fc41d3e4184aa3c8 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Fri, 24 Dec 2021 19:45:37 -0600 Subject: [PATCH 07/22] Fixed a pointer arithmetic issue with indexing into the symbol, and fixed a crash in GObj_AddObject call (the GOBJ we create is initialized with a bad obj_kind for some reason) --- Playback/Core/Scene/SceneThink_Playback.asm | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 9b37058b..ada4ffe9 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -13,6 +13,10 @@ .set REG_SecondBuf,24 .set REG_LOCAL_DATA_ADDR,25 +# symbol offsets +.set SLPLOGO_LOGO, -0x53 +.set SLPLOGO_CAMDESC, -0x49 + bl DATA_BLRL mflr REG_LOCAL_DATA_ADDR b FBegin @@ -25,12 +29,8 @@ blrl .set DO_STRING_SLPLOGO_FILENAME, 0 .string "slplogo_scene_data" .set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 11 -# symbol offsets -.set SLPLOGO_LOGO, -0x53 -.set SLPLOGO_CAMDESC, -0x49 .align 2 - FBegin: ############################# @@ -65,8 +65,8 @@ FBegin: # Load camdesc mr r4, r3 # Remember symbol pointer in r4. 8065dcac - addi r3, r3, SLPLOGO_CAMDESC # Address of camdesc into r3 - branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) CRASHES HERE CURRENTLY + lwz r3, SLPLOGO_CAMDESC(r3) # Address of camdesc into r3 + branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) # Add GOBJ to COBJ? (Not sure of parameter order here) mr r5, r3 # Move COBJ pointer to r5 @@ -87,14 +87,16 @@ FBegin: # Load logo JOBJ lwz r3, 0x0 (r3) # pointer to our logo jobj lwz r3, 0x0 (r3) #jobj - branchl r12, 0x80370e44 # Create Jobj + branchl r12, JObj_LoadJoint # (jobj_desc_ptr) mr REG_LOGO_JOBJ,r3 # Add logo JOBJ to GOBJ mr r3, REG_GOBJ + li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) + stb r4, 0x6(REG_GOBJ) li r4, 4 mr r5, REG_LOGO_JOBJ - branchl r12,0x80390a70 # void GObj_AddObject + branchl r12,0x80390a70 # void GObj_AddObject CRASHES HERE CURRENTLY # Add GX link that draws the logo mr r3, REG_GOBJ @@ -110,7 +112,6 @@ FBegin: mr r6, REG_SecondBuf branchl r12, GObj_AddUserData - #Schedule Function bl PlaybackThink mflr r4 #Function to Run From 62d5ef65232d2f2e19b90a9b8288e5ea038b7c37 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sat, 25 Dec 2021 17:09:38 -0600 Subject: [PATCH 08/22] Realized a gobj can only have one hsd_obj (jobj or cobj attached) so I made more gobjs, which unfortunately broke everything. I'm committing here so I can do some experiments and return to this baseline --- Playback/Core/Scene/SceneThink_Playback.asm | 76 ++++++++++++++------- 1 file changed, 53 insertions(+), 23 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index ada4ffe9..d243ee28 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -9,13 +9,16 @@ .set REG_Text,28 .set REG_FrameCount,27 .set REG_LOGO_JOBJ,21 -.set REG_GOBJ,22 +.set REG_CAM_GOBJ,22 +.set REG_LOGO_GOBJ,26 .set REG_SecondBuf,24 .set REG_LOCAL_DATA_ADDR,25 +.set REG_PROC_GOBJ,19 # symbol offsets .set SLPLOGO_LOGO, -0x53 .set SLPLOGO_CAMDESC, -0x49 +.set COBJ_LINKS, 0x20 bl DATA_BLRL mflr REG_LOCAL_DATA_ADDR @@ -36,11 +39,6 @@ FBegin: ############################# # Create Per Frame Function # ############################# - -# Alloc SecondBuf - li r3,0x20 # 8065dc38 - branchl r12, HSD_MemAlloc - mr REG_SecondBuf,r3 #Check If Major Scene 0xE load r3,0x80479D30 #Scene Controller @@ -48,12 +46,36 @@ FBegin: cmpwi r3,0xE #DebugMelee bne Original -#Create GObj - li r3, 0 - li r4, 14 - li r5, 0 +# Alloc SecondBuf + li r3,0x20 + branchl r12, HSD_MemAlloc # 8065dc38 + mr REG_SecondBuf,r3 + +# Zero out +# r3 already set to SecondBuf address + li r4, 0x20 + branchl r12,0x8000c160 # ZeroAreaLength + +#Create Cam GObj + li r3, 22 #formerly 0 + li r4, 23 # formerly 14 + li r5, 0 + branchl r12, GObj_Create + mr REG_CAM_GOBJ, r3 # save GOBJ pointer + +#Create Logo GObj + li r3, 0 + li r4, 15 + li r5, 0 branchl r12, GObj_Create - mr REG_GOBJ, r3 # save GOBJ pointer + mr REG_LOGO_GOBJ, r3 # save GOBJ pointer + +# Create Proc GOBJ + li r3, 13 + li r4, 14 + li r5, 0 + branchl r12, GObj_Create + mr REG_PROC_GOBJ, r3 # save GOBJ pointer # Load LOGO file addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME @@ -71,18 +93,18 @@ FBegin: # Add GOBJ to COBJ? (Not sure of parameter order here) mr r5, r3 # Move COBJ pointer to r5 li r4, 4 - mr r3, REG_GOBJ + mr r3, REG_CAM_GOBJ branchl r12, GObj_AddToObj # void GObj_AddObject(GOBJ *gobj, u8 unk, void *object) # Initialize camera - mr r3, REG_GOBJ # Might be redundant, but it's unclear whether GObj_AddToObj backs-up/restores register 3 + mr r3, REG_CAM_GOBJ # Might be redundant, but it's unclear whether GObj_AddToObj backs-up/restores register 3 load r4, 0x803910D8 # CObjThink_Common li r5, 1 # gx_pri branchl r12, 0x8039075C # void GObj_InitCamera(GOBJ* gobj, void (*render_cb)(GOBJ*, s32), u32 priority) -# set gobj->cobj_links (0x20) to 1 << 9 (512) +# set gobj->cobj_links (0x20) to 1 << gx link index (9) li r4, 512 - stw r4, 0x20(REG_GOBJ) + stw r4, COBJ_LINKS(REG_CAM_GOBJ) # Load logo JOBJ lwz r3, 0x0 (r3) # pointer to our logo jobj @@ -91,22 +113,29 @@ FBegin: mr REG_LOGO_JOBJ,r3 # Add logo JOBJ to GOBJ - mr r3, REG_GOBJ + mr r3, REG_LOGO_GOBJ li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) - stb r4, 0x6(REG_GOBJ) - li r4, 4 + stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF + li r4, 5 mr r5, REG_LOGO_JOBJ - branchl r12,0x80390a70 # void GObj_AddObject CRASHES HERE CURRENTLY + branchl r12,0x80390a70 # void GObj_AddObject # Add GX link that draws the logo - mr r3, REG_GOBJ - load r4, 0x80391070 + mr r3, REG_LOGO_GOBJ + load r4, 0x80391070 # GXLink_Common li r5, 9 # index li r6, 1 # gx_pri, formerly 128 branchl r12, GObj_SetupGXLink # void GObj_AddGXLink # Add User Data to GOBJ - mr r3, REG_GOBJ + mr r3, REG_CAM_GOBJ + li r4, 4 # user data kind + load r5, HSD_Free # destructor + mr r6, REG_SecondBuf + branchl r12, GObj_AddUserData + +# Add User Data to GOBJ + mr r3, REG_LOGO_GOBJ li r4, 4 # user data kind load r5, HSD_Free # destructor mr r6, REG_SecondBuf @@ -114,8 +143,9 @@ FBegin: #Schedule Function bl PlaybackThink + mr r3, REG_PROC_GOBJ mflr r4 #Function to Run - li r5, 0 #Priority, formerly 0 + li r5, 0 #Priority branchl r12, GObj_AddProc b Exit From ad17f217c406796b285b3b1cfea9d973e405db60 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sat, 25 Dec 2021 19:32:45 -0600 Subject: [PATCH 09/22] Fixed the crash. It was because I was using r26, I guess something else is relying on it. --- Output/Playback/GALE01r2.ini | 366 ++++++++++++++------ Output/Playback/GALJ01r2.ini | 366 ++++++++++++++------ Playback/Core/Scene/SceneThink_Playback.asm | 16 +- 3 files changed, 546 insertions(+), 202 deletions(-) diff --git a/Output/Playback/GALE01r2.ini b/Output/Playback/GALE01r2.ini index f2ef9456..18195f7c 100644 --- a/Output/Playback/GALE01r2.ini +++ b/Output/Playback/GALE01r2.ini @@ -477,119 +477,216 @@ C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm 3C808047 60849D30 98640003 4E800020 3800000E 00000000 -C21A6348 00000070 #Playback/Core/Scene/SceneThink_Playback.asm +C21A6348 000000D1 #Playback/Core/Scene/SceneThink_Playback.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +4800000D 7F2802A6 +48000028 4E800021 +736C7043 53532E64 +61740073 6C706C6F +676F5F73 63656E65 +5F646174 61000000 3C608047 60639D30 88630000 2C03000E -40820364 3860000D -3880000E 38A00000 -3D808039 618C01F0 -7D8903A6 4E800421 -48000021 7C8802A6 -38A00000 3D808038 -618CFD54 7D8903A6 -4E800421 48000318 -4E800021 7C0802A6 -90010004 9421FF50 -BE810008 48000289 -7FC802A6 38600000 -3880FFFF 3D80803A -618C6754 7D8903A6 -4E800421 7C7C1B78 -38800001 989C0049 -38800000 989C004A -C03E0008 D03C0008 -C03E0010 D03C0024 -D03C0028 C03E0000 -C05E0004 7F83E378 -4800025D 7C8802A6 -4800026D 7CA802A6 -3D80803A 618C6B98 +40820500 38600020 +3D808037 618CF1E4 7D8903A6 4E800421 -7C641B78 7F83E378 -C03E000C C05E000C -3D80803A 618C7548 +7C781B78 38800020 +3D808000 618CC160 +7D8903A6 4E800421 +38600016 38800017 +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C761B78 +38600000 3880000F +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C721B78 +3860000D 3880000E +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C731B78 +38790000 3D808001 +618C6BE0 7D8903A6 +4E800421 3899000B +3D808038 618C0358 +7D8903A6 4E800421 +7C641B78 8063FFB7 +3D808036 618CA590 +7D8903A6 4E800421 +7C651B78 38800004 +7EC3B378 3D808039 +618C0A70 7D8903A6 +4E800421 7EC3B378 +3C808039 608410D8 +38A00001 3D808039 +618C075C 7D8903A6 +4E800421 38800200 +90960020 80630000 +80630000 3D808037 +618C0E44 7D8903A6 +4E800421 7C751B78 +7E439378 388000FF +98920006 38800005 +7EA5AB78 3D808039 +618C0A70 7D8903A6 +4E800421 7E439378 +3C808039 60841070 +38A00009 38C00001 +3D808039 618C069C +7D8903A6 4E800421 +7EC3B378 38800004 +3CA08037 60A5F1B0 +7F06C378 3D808039 +618C0B68 7D8903A6 +4E800421 7E439378 +38800004 3CA08037 +60A5F1B0 7F06C378 +3D808039 618C0B68 +7D8903A6 4E800421 +48000025 7E639B78 +7C8802A6 38A00000 +3D808038 618CFD54 7D8903A6 4E800421 -C03E0014 C05E0018 -7F83E378 4800023D -7C8802A6 3D80803A +48000310 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +48000289 7FC802A6 +38600000 3880FFFF +3D80803A 618C6754 +7D8903A6 4E800421 +7C7C1B78 38800001 +989C0049 38800000 +989C004A C03E0008 +D03C0008 C03E0010 +D03C0024 D03C0028 +C03E0000 C05E0004 +7F83E378 4800025D +7C8802A6 48000265 +7CA802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 7F83E378 C03E000C C05E000C 3D80803A 618C7548 7D8903A6 -4E800421 3C602ECC -606340FF 90610040 -7F83E378 38800001 -38A10040 3D80803A -618C74F0 7D8903A6 -4E800421 38600020 -3D808037 618CF1E4 -7D8903A6 4E800421 -7C7D1B78 3B600000 -3D808033 618CC898 -7D8903A6 4E800421 -3D808033 618CF270 -7D8903A6 4E800421 -38600000 3D808037 -618C5538 7D8903A6 -4E800421 8062F240 -2C030000 4082001C -38600000 7F84E378 -3D80803A 618C84BC -7D8903A6 4E800421 -38600000 3D808037 -618C61C0 7D8903A6 -4E800421 3D808034 -618CF314 7D8903A6 -4E800421 3B7B0001 -2C1B00F0 41800008 -3B600000 3860003C -7C7B1B96 48000119 -7C8802A6 1C630004 -7CC32214 7F83E378 -38800000 480000E9 -7CA802A6 4CC63182 -3D80803A 618C70A0 +4E800421 C03E0014 +C05E0018 7F83E378 +48000235 7C8802A6 +3D80803A 618C6B98 7D8903A6 4E800421 -38600088 987D0000 -7FA3EB78 38800001 -38A00001 3D808000 -618C55F0 7D8903A6 -4E800421 7FA3EB78 -38800001 38A00000 -3D808000 618C55F0 +7C641B78 7F83E378 +C03E000C C05E000C +3D80803A 618C7548 7D8903A6 4E800421 -887D0000 2C030001 -4082FEF0 7F83E378 -3D80803A 618C5CC4 +3C602ECC 606340FF +90610040 7F83E378 +38800001 38A10040 +3D80803A 618C74F0 7D8903A6 4E800421 -3D808002 618C4F6C +38600020 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7D1B78 +3B600000 3D808033 +618CC898 7D8903A6 +4E800421 3D808033 +618CF270 7D8903A6 +4E800421 38600000 +3D808037 618C5538 7D8903A6 4E800421 8062F240 2C030000 -40820018 38600001 -3D808002 618C4030 +4082001C 38600000 +7F84E378 3D80803A +618C84BC 7D8903A6 +4E800421 38600000 +3D808037 618C61C0 7D8903A6 4E800421 -3D80801A 618C4B60 +3D808034 618CF314 7D8903A6 4E800421 -48000068 4E800021 -C33E0000 00000000 -00000000 3F800000 -3F19999A 43B70000 -43AF0000 432A0000 -00000000 4E800021 -57616974 696E6720 -666F7220 67616D65 -25730000 4E800021 -00000000 2E000000 -2E2E0000 2E2E2E00 -4E800021 736C6970 -70692E67 67000000 -BA810008 800100B4 -382100B0 7C0803A6 -4E800020 3D80801A -618C6368 7D8903A6 -4E800420 807F0000 -60000000 00000000 +3B7B0001 2C1B00F0 +41800008 3B600000 +3860003C 7C7B1B96 +48000111 7C8802A6 +1C630004 7CC32214 +7F83E378 38800000 +480000E9 7CA802A6 +4CC63182 3D80803A +618C70A0 7D8903A6 +4E800421 38600088 +987D0000 7FA3EB78 +38800001 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 38800001 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887D0000 +2C030001 4082FEF0 +7F83E378 3D80803A +618C5CC4 7D8903A6 +4E800421 3D808002 +618C4F6C 7D8903A6 +4E800421 8062F240 +2C030000 40820018 +38600001 3D808002 +618C4030 7D8903A6 +4E800421 3D80801A +618C4B60 7D8903A6 +4E800421 48000060 +4E800021 C33E0000 +00000000 00000000 +3F800000 3F19999A +43B70000 43AF0000 +432A0000 00000000 +4E800021 506F6767 +65727325 73000000 +4E800021 00000000 +2E000000 2E2E0000 +2E2E2E00 4E800021 +736C6970 70692E67 +67000000 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +3D80801A 618C6368 +7D8903A6 4E800420 +807F0000 00000000 041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm 043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm @@ -960,6 +1057,81 @@ C209E090 00000011 #Common/FastForward/DynamicsFix.asm 8001001C 38210018 7C0803A6 4E800020 BB010028 00000000 +C21A4CB4 00000004 #Online/Core/EXIFileLoad/AllocBuffer.asm +38600080 3D808037 +618CF1E4 7D8903A6 +4E800421 906DAFC4 +38000000 00000000 +C20163FC 0000001B #Online/Core/EXIFileLoad/GetFileSize.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 40820018 +BA810008 800100B4 +382100B0 7C0803A6 +480000A0 386000D1 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7FE3FB78 +38800004 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 BA810008 +800100B4 382100B0 +7C0803A6 80630000 +2C030000 40810014 +3D808001 618C6488 +7D8903A6 4E800420 +7FC3F378 00000000 +C20166B8 00000029 #Online/Core/EXIFileLoad/TransferFile.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +60000000 00000000 $Recommended: Normal Lag Reduction [Hannes Mann] 043761EC 4800001C diff --git a/Output/Playback/GALJ01r2.ini b/Output/Playback/GALJ01r2.ini index eaf11cff..e7a6572e 100644 --- a/Output/Playback/GALJ01r2.ini +++ b/Output/Playback/GALJ01r2.ini @@ -477,119 +477,216 @@ C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm 3C808047 60849D30 98640003 4E800020 3800000E 00000000 -C21A6348 00000070 #Playback/Core/Scene/SceneThink_Playback.asm +C21A6348 000000D1 #Playback/Core/Scene/SceneThink_Playback.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +4800000D 7F2802A6 +48000028 4E800021 +736C7043 53532E64 +61740073 6C706C6F +676F5F73 63656E65 +5F646174 61000000 3C608047 60639D30 88630000 2C03000E -40820364 3860000D -3880000E 38A00000 -3D808039 618C01F0 -7D8903A6 4E800421 -48000021 7C8802A6 -38A00000 3D808038 -618CFD54 7D8903A6 -4E800421 48000318 -4E800021 7C0802A6 -90010004 9421FF50 -BE810008 48000289 -7FC802A6 38600000 -3880FFFF 3D80803A -618C6754 7D8903A6 -4E800421 7C7C1B78 -38800001 989C0049 -38800000 989C004A -C03E0008 D03C0008 -C03E0010 D03C0024 -D03C0028 C03E0000 -C05E0004 7F83E378 -4800025D 7C8802A6 -4800026D 7CA802A6 -3D80803A 618C6B98 +40820500 38600020 +3D808037 618CF1E4 7D8903A6 4E800421 -7C641B78 7F83E378 -C03E000C C05E000C -3D80803A 618C7548 +7C781B78 38800020 +3D808000 618CC160 +7D8903A6 4E800421 +38600016 38800017 +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C761B78 +38600000 3880000F +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C721B78 +3860000D 3880000E +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C731B78 +38790000 3D808001 +618C6BE0 7D8903A6 +4E800421 3899000B +3D808038 618C0358 +7D8903A6 4E800421 +7C641B78 8063FFB7 +3D808036 618CA590 +7D8903A6 4E800421 +7C651B78 38800004 +7EC3B378 3D808039 +618C0A70 7D8903A6 +4E800421 7EC3B378 +3C808039 608410D8 +38A00001 3D808039 +618C075C 7D8903A6 +4E800421 38800200 +90960020 80630000 +80630000 3D808037 +618C0E44 7D8903A6 +4E800421 7C751B78 +7E439378 388000FF +98920006 38800005 +7EA5AB78 3D808039 +618C0A70 7D8903A6 +4E800421 7E439378 +3C808039 60841070 +38A00009 38C00001 +3D808039 618C069C +7D8903A6 4E800421 +7EC3B378 38800004 +3CA08037 60A5F1B0 +7F06C378 3D808039 +618C0B68 7D8903A6 +4E800421 7E439378 +38800004 3CA08037 +60A5F1B0 7F06C378 +3D808039 618C0B68 +7D8903A6 4E800421 +48000025 7E639B78 +7C8802A6 38A00000 +3D808038 618CFD54 7D8903A6 4E800421 -C03E0014 C05E0018 -7F83E378 4800023D -7C8802A6 3D80803A +48000310 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +48000289 7FC802A6 +38600000 3880FFFF +3D80803A 618C6754 +7D8903A6 4E800421 +7C7C1B78 38800001 +989C0049 38800000 +989C004A C03E0008 +D03C0008 C03E0010 +D03C0024 D03C0028 +C03E0000 C05E0004 +7F83E378 4800025D +7C8802A6 48000265 +7CA802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 7F83E378 C03E000C C05E000C 3D80803A 618C7548 7D8903A6 -4E800421 3C602ECC -606340FF 90610040 -7F83E378 38800001 -38A10040 3D80803A -618C74F0 7D8903A6 -4E800421 38600020 -3D808037 618CF1E4 -7D8903A6 4E800421 -7C7D1B78 3B600000 -3D808033 618CC898 -7D8903A6 4E800421 -3D808033 618CF270 -7D8903A6 4E800421 -38600000 3D808037 -618C5538 7D8903A6 -4E800421 8062F240 -2C030000 4082001C -38600000 7F84E378 -3D80803A 618C84BC -7D8903A6 4E800421 -38600000 3D808037 -618C61C0 7D8903A6 -4E800421 3D808034 -618CF314 7D8903A6 -4E800421 3B7B0001 -2C1B00F0 41800008 -3B600000 3860003C -7C7B1B96 48000119 -7C8802A6 1C630004 -7CC32214 7F83E378 -38800000 480000E9 -7CA802A6 4CC63182 -3D80803A 618C70A0 +4E800421 C03E0014 +C05E0018 7F83E378 +48000235 7C8802A6 +3D80803A 618C6B98 7D8903A6 4E800421 -38600088 987D0000 -7FA3EB78 38800001 -38A00001 3D808000 -618C55F0 7D8903A6 -4E800421 7FA3EB78 -38800001 38A00000 -3D808000 618C55F0 +7C641B78 7F83E378 +C03E000C C05E000C +3D80803A 618C7548 7D8903A6 4E800421 -887D0000 2C030001 -4082FEF0 7F83E378 -3D80803A 618C5CC4 +3C602ECC 606340FF +90610040 7F83E378 +38800001 38A10040 +3D80803A 618C74F0 7D8903A6 4E800421 -3D808002 618C4F6C +38600020 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7D1B78 +3B600000 3D808033 +618CC898 7D8903A6 +4E800421 3D808033 +618CF270 7D8903A6 +4E800421 38600000 +3D808037 618C5538 7D8903A6 4E800421 8062F240 2C030000 -40820018 38600001 -3D808002 618C4030 +4082001C 38600000 +7F84E378 3D80803A +618C84BC 7D8903A6 +4E800421 38600000 +3D808037 618C61C0 7D8903A6 4E800421 -3D80801A 618C4B60 +3D808034 618CF314 7D8903A6 4E800421 -48000068 4E800021 -C33E0000 00000000 -00000000 3F800000 -3F19999A 43B70000 -43AF0000 432A0000 -00000000 4E800021 -57616974 696E6720 -666F7220 67616D65 -25730000 4E800021 -00000000 2E000000 -2E2E0000 2E2E2E00 -4E800021 736C6970 -70692E67 67000000 -BA810008 800100B4 -382100B0 7C0803A6 -4E800020 3D80801A -618C6368 7D8903A6 -4E800420 807F0000 -60000000 00000000 +3B7B0001 2C1B00F0 +41800008 3B600000 +3860003C 7C7B1B96 +48000111 7C8802A6 +1C630004 7CC32214 +7F83E378 38800000 +480000E9 7CA802A6 +4CC63182 3D80803A +618C70A0 7D8903A6 +4E800421 38600088 +987D0000 7FA3EB78 +38800001 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 38800001 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887D0000 +2C030001 4082FEF0 +7F83E378 3D80803A +618C5CC4 7D8903A6 +4E800421 3D808002 +618C4F6C 7D8903A6 +4E800421 8062F240 +2C030000 40820018 +38600001 3D808002 +618C4030 7D8903A6 +4E800421 3D80801A +618C4B60 7D8903A6 +4E800421 48000060 +4E800021 C33E0000 +00000000 00000000 +3F800000 3F19999A +43B70000 43AF0000 +432A0000 00000000 +4E800021 506F6767 +65727325 73000000 +4E800021 00000000 +2E000000 2E2E0000 +2E2E2E00 4E800021 +736C6970 70692E67 +67000000 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +3D80801A 618C6368 +7D8903A6 4E800420 +807F0000 00000000 041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm 043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm @@ -960,6 +1057,81 @@ C209E090 00000011 #Common/FastForward/DynamicsFix.asm 8001001C 38210018 7C0803A6 4E800020 BB010028 00000000 +C21A4CB4 00000004 #Online/Core/EXIFileLoad/AllocBuffer.asm +38600080 3D808037 +618CF1E4 7D8903A6 +4E800421 906DAFC4 +38000000 00000000 +C20163FC 0000001B #Online/Core/EXIFileLoad/GetFileSize.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 40820018 +BA810008 800100B4 +382100B0 7C0803A6 +480000A0 386000D1 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7FE3FB78 +38800004 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 BA810008 +800100B4 382100B0 +7C0803A6 80630000 +2C030000 40810014 +3D808001 618C6488 +7D8903A6 4E800420 +7FC3F378 00000000 +C20166B8 00000029 #Online/Core/EXIFileLoad/TransferFile.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +60000000 00000000 $Recommended: Normal Lag Reduction [Hannes Mann] 043761EC 4800001C diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index d243ee28..71999cf9 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -6,14 +6,14 @@ .set REG_Floats, 30 .set REG_BufferPointer, 29 -.set REG_Text,28 -.set REG_FrameCount,27 -.set REG_LOGO_JOBJ,21 -.set REG_CAM_GOBJ,22 -.set REG_LOGO_GOBJ,26 -.set REG_SecondBuf,24 -.set REG_LOCAL_DATA_ADDR,25 -.set REG_PROC_GOBJ,19 +.set REG_Text, 28 +.set REG_FrameCount, 27 +.set REG_SecondBuf, 24 +.set REG_LOCAL_DATA_ADDR, 25 +.set REG_CAM_GOBJ, 22 +.set REG_LOGO_JOBJ, 21 +.set REG_PROC_GOBJ, 19 +.set REG_LOGO_GOBJ, 18 # symbol offsets .set SLPLOGO_LOGO, -0x53 From 8dc88738140bb3fa1d740c5ecb968867ea1fea79 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sun, 26 Dec 2021 15:02:24 -0600 Subject: [PATCH 10/22] i changed the GObj_AddObject calls to reference r13 (the value they pull for obj_kind is 1 now, not sure if that's actually appropriate). i realized i probably wasn't calling Jobj_Loadjoint with the correct pointer, i haven't verified that that is now correct because File_Load seems not to be loading the whole file, just the first 4 words :/ --- Playback/Core/Scene/SceneThink_Playback.asm | 41 +++++++++++---------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 71999cf9..86432d7a 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -12,7 +12,8 @@ .set REG_LOCAL_DATA_ADDR, 25 .set REG_CAM_GOBJ, 22 .set REG_LOGO_JOBJ, 21 -.set REG_PROC_GOBJ, 19 +# .set REG_PROC_GOBJ, 19 +.set REG_SLPLOGO, 19 .set REG_LOGO_GOBJ, 18 # symbol offsets @@ -64,35 +65,35 @@ FBegin: mr REG_CAM_GOBJ, r3 # save GOBJ pointer #Create Logo GObj - li r3, 0 - li r4, 15 - li r5, 0 + li r3, 4 + li r4, 5 + li r5, 0x80 branchl r12, GObj_Create mr REG_LOGO_GOBJ, r3 # save GOBJ pointer # Create Proc GOBJ - li r3, 13 - li r4, 14 - li r5, 0 - branchl r12, GObj_Create - mr REG_PROC_GOBJ, r3 # save GOBJ pointer +# li r3, 13 +# li r4, 14 +# li r5, 0 +# branchl r12, GObj_Create +# mr REG_PROC_GOBJ, r3 # save GOBJ pointer # Load LOGO file - addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME + addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME # TODO Pretty sure addi is inappropriate for pointer math branchl r12,0x80016be0 # File_Load # Retrieve symbol from file data - addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME + addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME # TODO Pretty sure addi is inappropriate for pointer math branchl r12,0x80380358 # HSD_ArchiveGetPublicAddress, returns a pointer in r3 + mr REG_SLPLOGO, r3 # Remember symbol pointer # Load camdesc - mr r4, r3 # Remember symbol pointer in r4. 8065dcac lwz r3, SLPLOGO_CAMDESC(r3) # Address of camdesc into r3 branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) -# Add GOBJ to COBJ? (Not sure of parameter order here) +# Add COBJ to GOBJ mr r5, r3 # Move COBJ pointer to r5 - li r4, 4 + lbz r4, -0x3E55(r13) mr r3, REG_CAM_GOBJ branchl r12, GObj_AddToObj # void GObj_AddObject(GOBJ *gobj, u8 unk, void *object) @@ -107,16 +108,16 @@ FBegin: stw r4, COBJ_LINKS(REG_CAM_GOBJ) # Load logo JOBJ - lwz r3, 0x0 (r3) # pointer to our logo jobj - lwz r3, 0x0 (r3) #jobj + lwz r3, SLPLOGO_LOGO (REG_SLPLOGO) # pointer to our logo jobj branchl r12, JObj_LoadJoint # (jobj_desc_ptr) mr REG_LOGO_JOBJ,r3 # Add logo JOBJ to GOBJ mr r3, REG_LOGO_GOBJ - li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) - stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF - li r4, 5 + # li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) + lbz r4, -0x3E55(r13) + # stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF + # li r4, 5 mr r5, REG_LOGO_JOBJ branchl r12,0x80390a70 # void GObj_AddObject @@ -143,7 +144,7 @@ FBegin: #Schedule Function bl PlaybackThink - mr r3, REG_PROC_GOBJ + mr r3, REG_LOGO_GOBJ mflr r4 #Function to Run li r5, 0 #Priority branchl r12, GObj_AddProc From fd8174d4bb4611a0d1d69ca267a42046144abd8f Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sun, 26 Dec 2021 16:59:20 -0600 Subject: [PATCH 11/22] Fixed the offsets/derefs for getting the Jobjdesc/camdesc pointers. Logo still not displaying lole --- Playback/Core/Scene/SceneThink_Playback.asm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 86432d7a..9564d606 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -17,8 +17,8 @@ .set REG_LOGO_GOBJ, 18 # symbol offsets -.set SLPLOGO_LOGO, -0x53 -.set SLPLOGO_CAMDESC, -0x49 +.set SLPLOGO_LOGO_JOBJDESC, 0x0 +.set SLPLOGO_CAMDESC, 0x4 .set COBJ_LINKS, 0x20 bl DATA_BLRL @@ -79,16 +79,17 @@ FBegin: # mr REG_PROC_GOBJ, r3 # save GOBJ pointer # Load LOGO file - addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME # TODO Pretty sure addi is inappropriate for pointer math + addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME branchl r12,0x80016be0 # File_Load # Retrieve symbol from file data - addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME # TODO Pretty sure addi is inappropriate for pointer math + addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME branchl r12,0x80380358 # HSD_ArchiveGetPublicAddress, returns a pointer in r3 mr REG_SLPLOGO, r3 # Remember symbol pointer # Load camdesc - lwz r3, SLPLOGO_CAMDESC(r3) # Address of camdesc into r3 + lwz r3, SLPLOGO_CAMDESC (REG_SLPLOGO) + lwz r3, 0x0 (r3) # r3 becomes Camera_ branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) # Add COBJ to GOBJ @@ -108,16 +109,18 @@ FBegin: stw r4, COBJ_LINKS(REG_CAM_GOBJ) # Load logo JOBJ - lwz r3, SLPLOGO_LOGO (REG_SLPLOGO) # pointer to our logo jobj + lwz r3, 0x0 (REG_SLPLOGO) # r3 = slplogo_scene_data + lwz r3, SLPLOGO_LOGO_JOBJDESC (r3) # r3 becomes JOBJDescs_ + lwz r3, 0x0 (r3) # r3 becomes Array_0_ (HSD_JOBJDesc[]) branchl r12, JObj_LoadJoint # (jobj_desc_ptr) mr REG_LOGO_JOBJ,r3 # Add logo JOBJ to GOBJ mr r3, REG_LOGO_GOBJ # li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) - lbz r4, -0x3E55(r13) # stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF - # li r4, 5 + # lbz r4, -0x3E55(r13) + li r4, 5 mr r5, REG_LOGO_JOBJ branchl r12,0x80390a70 # void GObj_AddObject From 81c5e3fe32e7de0db51d289eb65d049f7fcb9e2d Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sun, 26 Dec 2021 18:09:39 -0600 Subject: [PATCH 12/22] Remove unnecessary destructors --- Playback/Core/Scene/SceneThink_Playback.asm | 29 ++------------------- 1 file changed, 2 insertions(+), 27 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 9564d606..f8b0160f 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -8,7 +8,6 @@ .set REG_BufferPointer, 29 .set REG_Text, 28 .set REG_FrameCount, 27 -.set REG_SecondBuf, 24 .set REG_LOCAL_DATA_ADDR, 25 .set REG_CAM_GOBJ, 22 .set REG_LOGO_JOBJ, 21 @@ -47,16 +46,6 @@ FBegin: cmpwi r3,0xE #DebugMelee bne Original -# Alloc SecondBuf - li r3,0x20 - branchl r12, HSD_MemAlloc # 8065dc38 - mr REG_SecondBuf,r3 - -# Zero out -# r3 already set to SecondBuf address - li r4, 0x20 - branchl r12,0x8000c160 # ZeroAreaLength - #Create Cam GObj li r3, 22 #formerly 0 li r4, 23 # formerly 14 @@ -94,7 +83,7 @@ FBegin: # Add COBJ to GOBJ mr r5, r3 # Move COBJ pointer to r5 - lbz r4, -0x3E55(r13) + lbz r4, 4 # -0x3E55(r13) mr r3, REG_CAM_GOBJ branchl r12, GObj_AddToObj # void GObj_AddObject(GOBJ *gobj, u8 unk, void *object) @@ -120,7 +109,7 @@ FBegin: # li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) # stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF # lbz r4, -0x3E55(r13) - li r4, 5 + li r4, 4 mr r5, REG_LOGO_JOBJ branchl r12,0x80390a70 # void GObj_AddObject @@ -131,20 +120,6 @@ FBegin: li r6, 1 # gx_pri, formerly 128 branchl r12, GObj_SetupGXLink # void GObj_AddGXLink -# Add User Data to GOBJ - mr r3, REG_CAM_GOBJ - li r4, 4 # user data kind - load r5, HSD_Free # destructor - mr r6, REG_SecondBuf - branchl r12, GObj_AddUserData - -# Add User Data to GOBJ - mr r3, REG_LOGO_GOBJ - li r4, 4 # user data kind - load r5, HSD_Free # destructor - mr r6, REG_SecondBuf - branchl r12, GObj_AddUserData - #Schedule Function bl PlaybackThink mr r3, REG_LOGO_GOBJ From 21efd840c5442d91812ff2967dcb09bc922810a6 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sun, 26 Dec 2021 18:21:05 -0600 Subject: [PATCH 13/22] In InitializeInGameDelay.asm, the COBJLinks offset was 0x24, not 0x20, so I am trying that instead (still didnt work). --- Playback/Core/Scene/SceneThink_Playback.asm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index f8b0160f..c9b3006c 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -18,7 +18,7 @@ # symbol offsets .set SLPLOGO_LOGO_JOBJDESC, 0x0 .set SLPLOGO_CAMDESC, 0x4 -.set COBJ_LINKS, 0x20 +.set COBJ_LINKS, 0x24 bl DATA_BLRL mflr REG_LOCAL_DATA_ADDR @@ -83,7 +83,8 @@ FBegin: # Add COBJ to GOBJ mr r5, r3 # Move COBJ pointer to r5 - lbz r4, 4 # -0x3E55(r13) +# li r4, 4 + lbz r4, -0x3E55(r13) mr r3, REG_CAM_GOBJ branchl r12, GObj_AddToObj # void GObj_AddObject(GOBJ *gobj, u8 unk, void *object) @@ -106,10 +107,10 @@ FBegin: # Add logo JOBJ to GOBJ mr r3, REG_LOGO_GOBJ - # li r4, 0xFF # 0x804db6a0 + -0x3E55 (an offset to obj_kind) + # li r4, 0xFF # stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF - # lbz r4, -0x3E55(r13) - li r4, 4 + lbz r4, -0x3E55(r13) # 0x804db6a0 + -0x3E55 (an offset to obj_kind) +# li r4, 4 mr r5, REG_LOGO_JOBJ branchl r12,0x80390a70 # void GObj_AddObject From c0f48193a770fe23cf42514c1338999254be26c2 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Sun, 26 Dec 2021 18:48:47 -0600 Subject: [PATCH 14/22] =?UTF-8?q?Low=20key=20the=20light=20has=20gone=20fr?= =?UTF-8?q?om=20my=20life=20=C2=96=F0=9F=98=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Playback/Core/Scene/SceneThink_Playback.asm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index c9b3006c..fdf7b37d 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -19,6 +19,7 @@ .set SLPLOGO_LOGO_JOBJDESC, 0x0 .set SLPLOGO_CAMDESC, 0x4 .set COBJ_LINKS, 0x24 +.set LOGO_GXLINK, 9 bl DATA_BLRL mflr REG_LOCAL_DATA_ADDR @@ -47,8 +48,8 @@ FBegin: bne Original #Create Cam GObj - li r3, 22 #formerly 0 - li r4, 23 # formerly 14 + li r3, 19 #formerly 0 + li r4, 20 # formerly 14 li r5, 0 branchl r12, GObj_Create mr REG_CAM_GOBJ, r3 # save GOBJ pointer @@ -79,7 +80,7 @@ FBegin: # Load camdesc lwz r3, SLPLOGO_CAMDESC (REG_SLPLOGO) lwz r3, 0x0 (r3) # r3 becomes Camera_ - branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) + branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) # Add COBJ to GOBJ mr r5, r3 # Move COBJ pointer to r5 @@ -95,7 +96,7 @@ FBegin: branchl r12, 0x8039075C # void GObj_InitCamera(GOBJ* gobj, void (*render_cb)(GOBJ*, s32), u32 priority) # set gobj->cobj_links (0x20) to 1 << gx link index (9) - li r4, 512 + load r4, 1 << LOGO_GXLINK stw r4, COBJ_LINKS(REG_CAM_GOBJ) # Load logo JOBJ @@ -117,7 +118,7 @@ FBegin: # Add GX link that draws the logo mr r3, REG_LOGO_GOBJ load r4, 0x80391070 # GXLink_Common - li r5, 9 # index + li r5, LOGO_GXLINK # index li r6, 1 # gx_pri, formerly 128 branchl r12, GObj_SetupGXLink # void GObj_AddGXLink From 01b0015c0200ff7c6695b6cde6cb2580b82af888 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Mon, 27 Dec 2021 14:31:52 -0600 Subject: [PATCH 15/22] Fixed COBJ_LINKS, I got confused --- Playback/Core/Scene/SceneThink_Playback.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index fdf7b37d..175aebbf 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -18,7 +18,7 @@ # symbol offsets .set SLPLOGO_LOGO_JOBJDESC, 0x0 .set SLPLOGO_CAMDESC, 0x4 -.set COBJ_LINKS, 0x24 +.set COBJ_LINKS, 0x20 .set LOGO_GXLINK, 9 bl DATA_BLRL From 64f5661c6d8fbaf0f7bac421e126515f1e1b3e94 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 28 Dec 2021 00:43:27 -0600 Subject: [PATCH 16/22] it's working. Krey --- Common/Common.s | 1 + Playback/Core/Scene/SceneThink_Playback.asm | 12 +++++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Common/Common.s b/Common/Common.s index 5625d722..76173e05 100644 --- a/Common/Common.s +++ b/Common/Common.s @@ -201,6 +201,7 @@ add \reg, r3, r4 .set GObj_RemoveProc,0x8038fed4 .set GObj_AddToObj,0x80390A70 #(gboj,obj_kind,obj_ptr) .set GObj_SetupGXLink, 0x8039069c #(gobj,function,gx_link,priority) +.set GObj_RunGXLinkMaxCallbacks, 0x80390fc0 #void GObj_RunGXLinkMaxCallbacks(void) ## AObj Functions .set AObj_SetEndFrame, 0x8036532C #(aobj, frame) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 175aebbf..e800086a 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -18,7 +18,7 @@ # symbol offsets .set SLPLOGO_LOGO_JOBJDESC, 0x0 .set SLPLOGO_CAMDESC, 0x4 -.set COBJ_LINKS, 0x20 +.set COBJ_LINKS, 0x24 .set LOGO_GXLINK, 9 bl DATA_BLRL @@ -92,7 +92,7 @@ FBegin: # Initialize camera mr r3, REG_CAM_GOBJ # Might be redundant, but it's unclear whether GObj_AddToObj backs-up/restores register 3 load r4, 0x803910D8 # CObjThink_Common - li r5, 1 # gx_pri + li r5, 1 # gx_pri. this might need to be 7 branchl r12, 0x8039075C # void GObj_InitCamera(GOBJ* gobj, void (*render_cb)(GOBJ*, s32), u32 priority) # set gobj->cobj_links (0x20) to 1 << gx link index (9) @@ -110,8 +110,8 @@ FBegin: mr r3, REG_LOGO_GOBJ # li r4, 0xFF # stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF - lbz r4, -0x3E55(r13) # 0x804db6a0 + -0x3E55 (an offset to obj_kind) -# li r4, 4 + # lbz r4, -0x3E55(r13) # 0x804db6a0 + -0x3E55 (an offset to obj_kind) + li r4, 3 mr r5, REG_LOGO_JOBJ branchl r12,0x80390a70 # void GObj_AddObject @@ -119,7 +119,7 @@ FBegin: mr r3, REG_LOGO_GOBJ load r4, 0x80391070 # GXLink_Common li r5, LOGO_GXLINK # index - li r6, 1 # gx_pri, formerly 128 + li r6, 17 # gx_pri, formerly 128 branchl r12, GObj_SetupGXLink # void GObj_AddGXLink #Schedule Function @@ -246,6 +246,8 @@ blrl li r3,0x0 mr r4,REG_Text branchl r12, Text_DrawEachFrame + + branchl r12, GObj_RunGXLinkMaxCallbacks skipDraw: li r3,0x0 branchl r12, HSD_VICopyXFBASync From 452db3fb2f9e4f99a4fab100336e23cdc104006d Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 28 Dec 2021 01:01:32 -0600 Subject: [PATCH 17/22] Cleanup --- Playback/Core/Scene/SceneThink_Playback.asm | 45 ++++++++------------- 1 file changed, 17 insertions(+), 28 deletions(-) diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index e800086a..6a33ccda 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -11,7 +11,6 @@ .set REG_LOCAL_DATA_ADDR, 25 .set REG_CAM_GOBJ, 22 .set REG_LOGO_JOBJ, 21 -# .set REG_PROC_GOBJ, 19 .set REG_SLPLOGO, 19 .set REG_LOGO_GOBJ, 18 @@ -27,7 +26,7 @@ DATA_BLRL: -blrl + blrl # File related strings .string "slpCSS.dat" .set DO_STRING_SLPLOGO_FILENAME, 0 @@ -48,25 +47,18 @@ FBegin: bne Original #Create Cam GObj - li r3, 19 #formerly 0 - li r4, 20 # formerly 14 - li r5, 0 + li r3, 19 + li r4, 20 + li r5, 0 branchl r12, GObj_Create - mr REG_CAM_GOBJ, r3 # save GOBJ pointer + mr REG_CAM_GOBJ, r3 #Create Logo GObj - li r3, 4 + li r3, 4 li r4, 5 li r5, 0x80 branchl r12, GObj_Create - mr REG_LOGO_GOBJ, r3 # save GOBJ pointer - -# Create Proc GOBJ -# li r3, 13 -# li r4, 14 -# li r5, 0 -# branchl r12, GObj_Create -# mr REG_PROC_GOBJ, r3 # save GOBJ pointer + mr REG_LOGO_GOBJ, r3 # Load LOGO file addi r3, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_FILENAME @@ -74,17 +66,16 @@ FBegin: # Retrieve symbol from file data addi r4, REG_LOCAL_DATA_ADDR, DO_STRING_SLPLOGO_SYMBOLNAME - branchl r12,0x80380358 # HSD_ArchiveGetPublicAddress, returns a pointer in r3 + branchl r12,0x80380358 # HSD_ArchiveGetPublicAddress mr REG_SLPLOGO, r3 # Remember symbol pointer # Load camdesc - lwz r3, SLPLOGO_CAMDESC (REG_SLPLOGO) - lwz r3, 0x0 (r3) # r3 becomes Camera_ + lwz r3, SLPLOGO_CAMDESC (REG_SLPLOGO) + lwz r3, 0x0 (r3) branchl r12,0x8036a590 # CObj_LoadDesc (i assume it returns into r3) # Add COBJ to GOBJ mr r5, r3 # Move COBJ pointer to r5 -# li r4, 4 lbz r4, -0x3E55(r13) mr r3, REG_CAM_GOBJ branchl r12, GObj_AddToObj # void GObj_AddObject(GOBJ *gobj, u8 unk, void *object) @@ -96,22 +87,20 @@ FBegin: branchl r12, 0x8039075C # void GObj_InitCamera(GOBJ* gobj, void (*render_cb)(GOBJ*, s32), u32 priority) # set gobj->cobj_links (0x20) to 1 << gx link index (9) +# cobj_links is a 64 bit bitfield starting at 0x20, so to set the low bits (the lower word) we stw at 0x24 load r4, 1 << LOGO_GXLINK stw r4, COBJ_LINKS(REG_CAM_GOBJ) # Load logo JOBJ - lwz r3, 0x0 (REG_SLPLOGO) # r3 = slplogo_scene_data - lwz r3, SLPLOGO_LOGO_JOBJDESC (r3) # r3 becomes JOBJDescs_ - lwz r3, 0x0 (r3) # r3 becomes Array_0_ (HSD_JOBJDesc[]) + lwz r3, 0x0 (REG_SLPLOGO) + lwz r3, SLPLOGO_LOGO_JOBJDESC (r3) + lwz r3, 0x0 (r3) branchl r12, JObj_LoadJoint # (jobj_desc_ptr) mr REG_LOGO_JOBJ,r3 # Add logo JOBJ to GOBJ mr r3, REG_LOGO_GOBJ - # li r4, 0xFF - # stb r4, 0x6(REG_LOGO_GOBJ) # For some reason gobj->obj_kind is an invalid value here (could be heap corruption?), so we fix it by setting it to 0xFF - # lbz r4, -0x3E55(r13) # 0x804db6a0 + -0x3E55 (an offset to obj_kind) - li r4, 3 + li r4, 3 # Stolen from training mode mr r5, REG_LOGO_JOBJ branchl r12,0x80390a70 # void GObj_AddObject @@ -119,7 +108,7 @@ FBegin: mr r3, REG_LOGO_GOBJ load r4, 0x80391070 # GXLink_Common li r5, LOGO_GXLINK # index - li r6, 17 # gx_pri, formerly 128 + li r6, 17 # gx_pri branchl r12, GObj_SetupGXLink # void GObj_AddGXLink #Schedule Function @@ -359,7 +348,7 @@ FloatValues: Text: blrl - .string "Poggers%s" + .string "Waiting for game%s" .align 2 Dots: From a2c31ff2ce6ab92df15e9a230ad4ca1c3550b8e3 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 28 Dec 2021 01:05:50 -0600 Subject: [PATCH 18/22] codes --- Output/Playback/GALE01r2.ini | 83 +++++++++++++++--------------------- Output/Playback/GALJ01r2.ini | 83 +++++++++++++++--------------------- 2 files changed, 68 insertions(+), 98 deletions(-) diff --git a/Output/Playback/GALE01r2.ini b/Output/Playback/GALE01r2.ini index 18195f7c..2325fd37 100644 --- a/Output/Playback/GALE01r2.ini +++ b/Output/Playback/GALE01r2.ini @@ -477,7 +477,7 @@ C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm 3C808047 60849D30 98640003 4E800020 3800000E 00000000 -C21A6348 000000D1 #Playback/Core/Scene/SceneThink_Playback.asm +C21A6348 000000C2 #Playback/Core/Scene/SceneThink_Playback.asm 7C7E1B78 7C0802A6 90010004 9421FF50 BE810008 83EDAFC4 @@ -526,70 +526,52 @@ BA810008 800100B4 5F646174 61000000 3C608047 60639D30 88630000 2C03000E -40820500 38600020 -3D808037 618CF1E4 +40820488 38600013 +38800014 38A00000 +3D808039 618C01F0 7D8903A6 4E800421 -7C781B78 38800020 -3D808000 618CC160 +7C761B78 38600004 +38800005 38A00080 +3D808039 618C01F0 7D8903A6 4E800421 -38600016 38800017 -38A00000 3D808039 -618C01F0 7D8903A6 -4E800421 7C761B78 -38600000 3880000F -38A00000 3D808039 -618C01F0 7D8903A6 -4E800421 7C721B78 -3860000D 3880000E -38A00000 3D808039 -618C01F0 7D8903A6 -4E800421 7C731B78 -38790000 3D808001 -618C6BE0 7D8903A6 -4E800421 3899000B -3D808038 618C0358 +7C721B78 38790000 +3D808001 618C6BE0 7D8903A6 4E800421 -7C641B78 8063FFB7 +3899000B 3D808038 +618C0358 7D8903A6 +4E800421 7C731B78 +80730004 80630000 3D808036 618CA590 7D8903A6 4E800421 -7C651B78 38800004 +7C651B78 888DC1AB 7EC3B378 3D808039 618C0A70 7D8903A6 4E800421 7EC3B378 3C808039 608410D8 38A00001 3D808039 618C075C 7D8903A6 -4E800421 38800200 -90960020 80630000 +4E800421 3C800000 +60840200 90960024 +80730000 80630000 80630000 3D808037 618C0E44 7D8903A6 4E800421 7C751B78 -7E439378 388000FF -98920006 38800005 +7E439378 38800003 7EA5AB78 3D808039 618C0A70 7D8903A6 4E800421 7E439378 3C808039 60841070 -38A00009 38C00001 +38A00009 38C00011 3D808039 618C069C 7D8903A6 4E800421 -7EC3B378 38800004 -3CA08037 60A5F1B0 -7F06C378 3D808039 -618C0B68 7D8903A6 -4E800421 7E439378 -38800004 3CA08037 -60A5F1B0 7F06C378 -3D808039 618C0B68 -7D8903A6 4E800421 -48000025 7E639B78 +48000025 7E439378 7C8802A6 38A00000 3D808038 618CFD54 7D8903A6 4E800421 -48000310 4E800021 +48000328 4E800021 7C0802A6 90010004 9421FF50 BE810008 -48000289 7FC802A6 +48000299 7FC802A6 38600000 3880FFFF 3D80803A 618C6754 7D8903A6 4E800421 @@ -599,8 +581,8 @@ BA810008 800100B4 D03C0008 C03E0010 D03C0024 D03C0028 C03E0000 C05E0004 -7F83E378 4800025D -7C8802A6 48000265 +7F83E378 4800026D +7C8802A6 4800027D 7CA802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 @@ -609,7 +591,7 @@ C05E000C 3D80803A 618C7548 7D8903A6 4E800421 C03E0014 C05E0018 7F83E378 -48000235 7C8802A6 +4800024D 7C8802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 7F83E378 @@ -632,9 +614,11 @@ C03E000C C05E000C 3D808037 618C5538 7D8903A6 4E800421 8062F240 2C030000 -4082001C 38600000 +4082002C 38600000 7F84E378 3D80803A 618C84BC 7D8903A6 +4E800421 3D808039 +618C0FC0 7D8903A6 4E800421 38600000 3D808037 618C61C0 7D8903A6 4E800421 @@ -643,7 +627,7 @@ C03E000C C05E000C 3B7B0001 2C1B00F0 41800008 3B600000 3860003C 7C7B1B96 -48000111 7C8802A6 +48000119 7C8802A6 1C630004 7CC32214 7F83E378 38800000 480000E9 7CA802A6 @@ -658,7 +642,7 @@ C03E000C C05E000C 38A00000 3D808000 618C55F0 7D8903A6 4E800421 887D0000 -2C030001 4082FEF0 +2C030001 4082FEE0 7F83E378 3D80803A 618C5CC4 7D8903A6 4E800421 3D808002 @@ -669,14 +653,15 @@ C03E000C C05E000C 618C4030 7D8903A6 4E800421 3D80801A 618C4B60 7D8903A6 -4E800421 48000060 +4E800421 48000068 4E800021 C33E0000 00000000 00000000 3F800000 3F19999A 43B70000 43AF0000 432A0000 00000000 -4E800021 506F6767 -65727325 73000000 +4E800021 57616974 +696E6720 666F7220 +67616D65 25730000 4E800021 00000000 2E000000 2E2E0000 2E2E2E00 4E800021 diff --git a/Output/Playback/GALJ01r2.ini b/Output/Playback/GALJ01r2.ini index e7a6572e..6244a0a0 100644 --- a/Output/Playback/GALJ01r2.ini +++ b/Output/Playback/GALJ01r2.ini @@ -477,7 +477,7 @@ C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm 3C808047 60849D30 98640003 4E800020 3800000E 00000000 -C21A6348 000000D1 #Playback/Core/Scene/SceneThink_Playback.asm +C21A6348 000000C2 #Playback/Core/Scene/SceneThink_Playback.asm 7C7E1B78 7C0802A6 90010004 9421FF50 BE810008 83EDAFC4 @@ -526,70 +526,52 @@ BA810008 800100B4 5F646174 61000000 3C608047 60639D30 88630000 2C03000E -40820500 38600020 -3D808037 618CF1E4 +40820488 38600013 +38800014 38A00000 +3D808039 618C01F0 7D8903A6 4E800421 -7C781B78 38800020 -3D808000 618CC160 +7C761B78 38600004 +38800005 38A00080 +3D808039 618C01F0 7D8903A6 4E800421 -38600016 38800017 -38A00000 3D808039 -618C01F0 7D8903A6 -4E800421 7C761B78 -38600000 3880000F -38A00000 3D808039 -618C01F0 7D8903A6 -4E800421 7C721B78 -3860000D 3880000E -38A00000 3D808039 -618C01F0 7D8903A6 -4E800421 7C731B78 -38790000 3D808001 -618C6BE0 7D8903A6 -4E800421 3899000B -3D808038 618C0358 +7C721B78 38790000 +3D808001 618C6BE0 7D8903A6 4E800421 -7C641B78 8063FFB7 +3899000B 3D808038 +618C0358 7D8903A6 +4E800421 7C731B78 +80730004 80630000 3D808036 618CA590 7D8903A6 4E800421 -7C651B78 38800004 +7C651B78 888DC1AB 7EC3B378 3D808039 618C0A70 7D8903A6 4E800421 7EC3B378 3C808039 608410D8 38A00001 3D808039 618C075C 7D8903A6 -4E800421 38800200 -90960020 80630000 +4E800421 3C800000 +60840200 90960024 +80730000 80630000 80630000 3D808037 618C0E44 7D8903A6 4E800421 7C751B78 -7E439378 388000FF -98920006 38800005 +7E439378 38800003 7EA5AB78 3D808039 618C0A70 7D8903A6 4E800421 7E439378 3C808039 60841070 -38A00009 38C00001 +38A00009 38C00011 3D808039 618C069C 7D8903A6 4E800421 -7EC3B378 38800004 -3CA08037 60A5F1B0 -7F06C378 3D808039 -618C0B68 7D8903A6 -4E800421 7E439378 -38800004 3CA08037 -60A5F1B0 7F06C378 -3D808039 618C0B68 -7D8903A6 4E800421 -48000025 7E639B78 +48000025 7E439378 7C8802A6 38A00000 3D808038 618CFD54 7D8903A6 4E800421 -48000310 4E800021 +48000328 4E800021 7C0802A6 90010004 9421FF50 BE810008 -48000289 7FC802A6 +48000299 7FC802A6 38600000 3880FFFF 3D80803A 618C6754 7D8903A6 4E800421 @@ -599,8 +581,8 @@ BA810008 800100B4 D03C0008 C03E0010 D03C0024 D03C0028 C03E0000 C05E0004 -7F83E378 4800025D -7C8802A6 48000265 +7F83E378 4800026D +7C8802A6 4800027D 7CA802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 @@ -609,7 +591,7 @@ C05E000C 3D80803A 618C7548 7D8903A6 4E800421 C03E0014 C05E0018 7F83E378 -48000235 7C8802A6 +4800024D 7C8802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 7F83E378 @@ -632,9 +614,11 @@ C03E000C C05E000C 3D808037 618C5538 7D8903A6 4E800421 8062F240 2C030000 -4082001C 38600000 +4082002C 38600000 7F84E378 3D80803A 618C84BC 7D8903A6 +4E800421 3D808039 +618C0FC0 7D8903A6 4E800421 38600000 3D808037 618C61C0 7D8903A6 4E800421 @@ -643,7 +627,7 @@ C03E000C C05E000C 3B7B0001 2C1B00F0 41800008 3B600000 3860003C 7C7B1B96 -48000111 7C8802A6 +48000119 7C8802A6 1C630004 7CC32214 7F83E378 38800000 480000E9 7CA802A6 @@ -658,7 +642,7 @@ C03E000C C05E000C 38A00000 3D808000 618C55F0 7D8903A6 4E800421 887D0000 -2C030001 4082FEF0 +2C030001 4082FEE0 7F83E378 3D80803A 618C5CC4 7D8903A6 4E800421 3D808002 @@ -669,14 +653,15 @@ C03E000C C05E000C 618C4030 7D8903A6 4E800421 3D80801A 618C4B60 7D8903A6 -4E800421 48000060 +4E800421 48000068 4E800021 C33E0000 00000000 00000000 3F800000 3F19999A 43B70000 43AF0000 432A0000 00000000 -4E800021 506F6767 -65727325 73000000 +4E800021 57616974 +696E6720 666F7220 +67616D65 25730000 4E800021 00000000 2E000000 2E2E0000 2E2E2E00 4E800021 From 2a7f474240f13fe667d8c3555bedf72c78c4dfd9 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 28 Dec 2021 01:07:49 -0600 Subject: [PATCH 19/22] whitespace --- Playback/Playback.s | 1 - 1 file changed, 1 deletion(-) diff --git a/Playback/Playback.s b/Playback/Playback.s index cf086735..454dca5a 100644 --- a/Playback/Playback.s +++ b/Playback/Playback.s @@ -7,7 +7,6 @@ # None - ################################################################################ # Const Definitions ################################################################################ From 18d006b8e4ed978b6a50e12a5f569ef1ec819bc8 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 28 Dec 2021 01:10:29 -0600 Subject: [PATCH 20/22] change dat name --- Output/Playback/GALE01r2.ini | 10 +++++----- Output/Playback/GALJ01r2.ini | 10 +++++----- Playback/Core/Scene/SceneThink_Playback.asm | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Output/Playback/GALE01r2.ini b/Output/Playback/GALE01r2.ini index 2325fd37..efcc0e6b 100644 --- a/Output/Playback/GALE01r2.ini +++ b/Output/Playback/GALE01r2.ini @@ -520,10 +520,10 @@ BA810008 800100B4 7C0803A6 7FC3F378 4800000D 7F2802A6 48000028 4E800021 -736C7043 53532E64 -61740073 6C706C6F -676F5F73 63656E65 -5F646174 61000000 +736C704C 6F676F2E +64617400 736C706C +6F676F5F 7363656E +655F6461 74610000 3C608047 60639D30 88630000 2C03000E 40820488 38600013 @@ -537,7 +537,7 @@ BA810008 800100B4 7C721B78 38790000 3D808001 618C6BE0 7D8903A6 4E800421 -3899000B 3D808038 +3899000C 3D808038 618C0358 7D8903A6 4E800421 7C731B78 80730004 80630000 diff --git a/Output/Playback/GALJ01r2.ini b/Output/Playback/GALJ01r2.ini index 6244a0a0..658eb57a 100644 --- a/Output/Playback/GALJ01r2.ini +++ b/Output/Playback/GALJ01r2.ini @@ -520,10 +520,10 @@ BA810008 800100B4 7C0803A6 7FC3F378 4800000D 7F2802A6 48000028 4E800021 -736C7043 53532E64 -61740073 6C706C6F -676F5F73 63656E65 -5F646174 61000000 +736C704C 6F676F2E +64617400 736C706C +6F676F5F 7363656E +655F6461 74610000 3C608047 60639D30 88630000 2C03000E 40820488 38600013 @@ -537,7 +537,7 @@ BA810008 800100B4 7C721B78 38790000 3D808001 618C6BE0 7D8903A6 4E800421 -3899000B 3D808038 +3899000C 3D808038 618C0358 7D8903A6 4E800421 7C731B78 80730004 80630000 diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 6a33ccda..8def2ea0 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -28,10 +28,10 @@ DATA_BLRL: blrl # File related strings -.string "slpCSS.dat" +.string "slpLogo.dat" .set DO_STRING_SLPLOGO_FILENAME, 0 .string "slplogo_scene_data" -.set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 11 +.set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 12 .align 2 FBegin: From 8b3106214f3e3de8f91ff802c7a8aa25db55a0f4 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Tue, 28 Dec 2021 13:56:50 -0600 Subject: [PATCH 21/22] Fix automatic merge error --- Common/Common.s | 5 - Output/Playback/GALE01r2.ini | 1290 ++++++++++++++++++++++++++++++++++ Output/Playback/GALJ01r2.ini | 1290 ++++++++++++++++++++++++++++++++++ 3 files changed, 2580 insertions(+), 5 deletions(-) create mode 100644 Output/Playback/GALE01r2.ini create mode 100644 Output/Playback/GALJ01r2.ini diff --git a/Common/Common.s b/Common/Common.s index d5b46c66..3fa5af2e 100644 --- a/Common/Common.s +++ b/Common/Common.s @@ -134,11 +134,6 @@ lis \reg, 0x8048 # load address to offset from for scene controller lbz \reg, -0x62D0(\reg) # Load byte from 0x80479D30 (major ID) .endm -.macro loadGlobalFrame reg -lis \reg, 0x8048 -lwz \reg, -0x62A0(\reg) -.endm - # This macro takes in an address that is expected to have a branch instruction. It will set # r3 to the address being branched to. This will overwrite r3 and r4 .macro computeBranchTargetAddress reg address diff --git a/Output/Playback/GALE01r2.ini b/Output/Playback/GALE01r2.ini new file mode 100644 index 00000000..04d99933 --- /dev/null +++ b/Output/Playback/GALE01r2.ini @@ -0,0 +1,1290 @@ +# GALE01 - Super Smash Bros. Melee NTSC-U 1.02 + +[Core] +CPUThread = False +GPUDeterminismMode = fake-completion +PollingMethod = OnSIRead +FastDiscSpeed = True + +[Gecko_Enabled] +$Required: General Codes +$Required: Slippi Playback +$Optional: Show Player Names + +[Gecko] +$Required: General Codes [Achilles, Dan Salvato, UnclePunch, tauKhan, Ptomerty, Cilan, Datel, Most] +0415EE98 38600001 #Unlock All Characters and Stages [Datel] +0415EDDC 38600001 +04164B14 38600001 +041648F4 38600001 +0415EE4C 38600001 +0415EE14 38600001 +0415D968 38600001 +0415D9D8 38600001 +0417229C 38600000 +041737B0 38600000 +04164658 38600001 +041644E8 38600001 +0430490C 38600063 +043044F0 38600001 +0415D94C 4E800020 #Disable Special Messages [Most] +0415D984 4E800020 #Disable Trophy Messages [Achilles] +C22FCCE8 00000013 #External/Extended Nametag Box/Extended Nametag Box.asm +3C608003 6063556C +7C6803A6 887F0000 +4E800021 5460063E +28000078 41820070 +3C608045 6063D84F +1C0001A4 7C630214 +38800000 8C030001 +2C000000 41820018 +38840001 2C000080 +41A0FFEC 8C030001 +4BFFFFE4 2C040005 +41800034 3C604080 +9061FFF0 C221FFF0 +3E404330 CA028C58 +9241FFEC 9081FFF0 +C9E1FFEC EDEF8028 +EDEF8824 807E0010 +D1E3002C 807E0010 +60000000 00000000 +C213C388 0000000A #Common/CostumeBoundCheck/PuffCostume.asm +83DC002C 887E000C +3D808003 618C2330 +7D8903A6 4E800421 +3D808016 618C9238 +7D8903A6 4E800421 +889E0619 7C041800 +40800008 48000014 +3D808013 618CC46C +7D8903A6 4E800420 +809C002C 00000000 +C216DED4 00000039 #Common/CostumeBoundCheck/main.asm +7C0802A6 90010004 +9421FF50 BE810008 +3BE00000 7FE3FB78 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 41820060 +7FE3FB78 3D808003 +618C3198 7D8903A6 +4E800421 7C7E1B78 +7FE3FB78 3D808003 +618C2330 7D8903A6 +4E800421 3D808016 +618C9238 7D8903A6 +4E800421 7C1E1800 +4180001C 7FE3FB78 +38800000 3D808003 +618C3208 7D8903A6 +4E800421 3BFF0001 +2C1F0006 4180FF80 +3BE00000 7FE3FB78 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 418200EC +7FE3FB78 3D808003 +618C2330 7D8903A6 +4E800421 7C7E1B78 +7FE3FB78 3D808003 +618C3198 7D8903A6 +4E800421 7C7D1B78 +7FE3FB78 3D808003 +618C3284 7D8903A6 +4E800421 7C7C1B78 +3B600000 7C1FD800 +4182008C 7F63DB78 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 41820070 +7F63DB78 3D808003 +618C2330 7D8903A6 +4E800421 7C03F000 +40820054 7F63DB78 +3D808003 618C3198 +7D8903A6 4E800421 +7C03E800 40820038 +7F63DB78 3D808003 +618C3284 7D8903A6 +4E800421 7C03E000 +4082001C 38830001 +7F63DB78 3D808003 +618C32F4 7D8903A6 +4E800421 3B7B0001 +2C1B0006 4180FF68 +3BFF0001 2C1F0006 +4180FEF4 BA810008 +800100B4 382100B0 +7C0803A6 8001001C +60000000 00000000 + +$Required: Slippi Playback [Fizzi, UnclePunch, Achilles, tauKhan] +*Used to play back a .slp file +*Will play replay configured in playback.txt +C216E9E4 0000001D #Playback/Core/CleanDynamicGeckos.asm +3BC30000 7C0802A6 +90010004 9421FF50 +BE810008 83CDB64C +83BE0010 3B800000 +807D0000 2C030000 +41820018 3B9C0001 +807D0004 7FBD1A14 +3BBD0008 4BFFFFE4 +1C7C0004 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7B1B78 +83BE0010 3B400000 +807D0000 2C030000 +4182001C 7FBBD12E +3B5A0004 807D0004 +7FBD1A14 3BBD0008 +4BFFFFE0 387CFFFF +1F430004 2C1A0000 +41800044 7FBBD02E +807D0000 389D0008 +80BD0004 3D808000 +618C31F4 7D8903A6 +4E800421 807D0000 +809D0004 3D808032 +618C8F50 7D8903A6 +4E800421 3B5AFFFC +4BFFFFBC BA810008 +800100B4 382100B0 +7C0803A6 00000000 +C216D298 00000016 #Playback/Core/FetchGameFrame.asm +881F0008 2C000000 +408200A0 7C0802A6 +90010004 9421FF50 +BE810008 806DB64C +83630000 38600076 +987B0000 806DB654 +907B0001 7F63DB78 +38800005 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7F63DB78 3880018F +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887B0000 +2C030000 40820024 +3D808034 618CF314 +7D8903A6 4E800421 +3C60804C 38000000 +98031F7B 4BFFFF90 +BA810008 800100B4 +382100B0 7C0803A6 +881F0008 00000000 +C206B0DC 00000046 #Playback/Core/RestoreGameFrame.asm +7C0802A6 90010004 +9421FF50 BE810008 +8BBF000C 7FA3EB78 +3D808003 618C1724 +7D8903A6 4E800421 +7C7C1B78 832DB64C +83790000 7FE3FB78 +3D808000 618C55F8 +7D8903A6 4E800421 +7C741B78 389B0007 +88BF000C 1CA50062 +7C842A14 1CB40031 +7F442A14 3C80804D +807A0000 90645F90 +807A0004 907F0620 +807A0008 907F0624 +807A000C 907F0638 +807A0010 907F063C +807A0014 907F0650 +807A0018 907F065C +8879056F 2C030000 +41820024 807A001C +907F00B0 807A0020 +907F00B4 807A0024 +907F002C 807A0028 +907F0010 3C608046 +6063B108 3C80804C +60841F78 88840001 +3884FFFF 2C040000 +40A00008 38840005 +1C840030 7C632214 +889F0618 1C84000C +7E832214 887A002C +98740002 8879056F +2C030000 4182004C +807A002D 2C03FFFF +41820040 90610040 +C0210040 C05F1830 +EC211028 C0429500 +FC011040 41820024 +7FE3FB78 C0210040 +C05F1830 EC211028 +3D808006 618CCC7C +7D8903A6 4E800421 +806DB654 2C03FF85 +408200AC 7FE3FB78 +38800000 C0228874 +3D808007 618C592C +7D8903A6 4E800421 +807F00B0 907F06F4 +907F070C 807F00B4 +907F06F8 907F0710 +807F00B8 907F06FC +907F0714 C03F00B4 +D03F2344 806DAE0C +907F0728 887F000C +889F221F 5484EFFE +38BF00B0 3D808003 +618C2828 7D8903A6 +4E800421 7FC3F378 +3D808007 618C61C8 +7D8903A6 4E800421 +807F0890 C0230040 +D023002C C0230044 +D0230030 3D808002 +618CF3AC 7D8903A6 +4E800421 BA810008 +800100B4 382100B0 +7C0803A6 881F2219 +60000000 00000000 +C216E74C 0000009E #Playback/Core/RestoreGameInfo.asm +7C0802A6 90010004 +9421FF50 BE810008 +386005EC 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7C1B78 +938DB64C 388005EC +3D808000 618CC160 +7D8903A6 4E800421 +38600221 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7E1B78 +93DC0000 38600040 +3D808037 618CF1E4 +7D8903A6 4E800421 +907C0004 38600075 +987E0000 387C001C +907E0001 38600553 +907E0005 38600000 +907E0009 7FC3F378 +3880000D 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FC3F378 38800221 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887E0000 +2C030001 41820018 +3D808034 618CF314 +7D8903A6 4E800421 +4BFFFF8C 807E0001 +3C80804D 90645F90 +7FE3FB78 389E0005 +38A00138 3D808000 +618C31F4 7D8903A6 +4E800421 387F0040 +3880001C 3D808000 +618CC160 7D8903A6 +4E800421 3AE2F22C +3A82F230 3ABE013D +3AC00000 1C960008 +7C64A82E 7C76B9AE +38840004 7C64A82E +7C76A1AE 3AD60001 +2C160004 4180FFE0 +3A800000 3ABF0060 +1ED40024 7ED6AA14 +88760001 2C030000 +40820078 8876000A +2C030078 4182006C +7C771B78 3D808023 +618C7A04 7D8903A6 +4E800421 7EE3BB78 +3D808015 618CCC9C +7D8903A6 4E800421 +38630198 389E015D +1CB40010 7C842A14 +88A40000 2C050000 +40820010 38600078 +9876000A 4800001C +38A00010 3D808000 +618C31F4 7D8903A6 +4E800421 48000004 +3A940001 2C140004 +4180FF70 887E019D +9862F234 887E019E +9862F238 887E019F +9862F23C 887E01A0 +987C056F 387C0570 +389E01A1 38A0007C +3D808000 618C31F4 +7D8903A6 4E800421 +807E021D 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7D1B78 +93BC0008 3860008A +987D0000 7FA3EB78 +38800001 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 809E021D +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 38800004 +909C000C 7FA3EB78 +48000055 7C8802A6 +3D808000 618C55FC +7D8903A6 4E800421 +807C000C 3D808037 +618CF1E4 7D8903A6 +4E800421 907C0010 +907C0014 7FA3EB78 +48000041 7C8802A6 +3D808000 618C55FC +7D8903A6 4E800421 +4800013C 4E800021 +2C050000 41820018 +80CDB64C 8066000C +38630008 7C632A14 +9066000C 4E800020 +4E800021 2C050000 +41820108 7C0802A6 +90010004 9421FF50 +BE810008 7C9E2378 +7CBB2B78 80BE0000 +54A501FE 64BD8000 +834DB64C 833A0014 +2C030004 41820014 +2C030006 41820014 +2C0300C2 41820014 +3B9E0004 48000048 +3B9E0008 48000040 +389E0008 7C7D2050 +546301BA 64634800 +907A0018 3B9A0018 +807E0004 1C630008 +7C83F214 387D0004 +7C641850 546301BA +64634800 3863FFFC +90640004 93B90000 +93790004 38790008 +7FA4EB78 7F65DB78 +3D808000 618C31F4 +7D8903A6 4E800421 +3B390008 7F39DA14 +933A0014 7FA3EB78 +7F84E378 7F65DB78 +3D808000 618C31F4 +7D8903A6 4E800421 +7FA3EB78 7F64DB78 +3D808032 618C8F50 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +4E800020 38600000 +809C0014 90640000 +7FA3EB78 809E021D +3D808032 618C8F50 +7D8903A6 4E800421 +38600004 38800007 +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 48000021 +7C8802A6 38A00000 +3D808038 618CFD54 +7D8903A6 4E800421 +4800004C 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +806DB64C 83A30000 +887D0002 2C030000 +41820010 807D0003 +3C80804D 90645F90 +BA810008 800100B4 +382100B0 7C0803A6 +4E800020 BA810008 +800100B4 382100B0 +7C0803A6 3C608017 +60000000 00000000 +C216D304 00000009 #Playback/Core/RestoreLRAStart.asm +806DB64C 80630000 +88630000 2C030002 +4082002C 3860FFFF +38800007 3D808016 +618CCF4C 7D8903A6 +4E800421 3D808016 +618CD30C 7D8903A6 +4E800420 7FE3FB78 +60000000 00000000 +C216B9C0 00000012 #Playback/Core/RestoreStockSteal.asm +80ADB64C 80A50004 +38800089 98850000 +808DB654 90850001 +98650005 7CA32B78 +38800006 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +806DB64C 80630004 +38800001 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +806DB64C 80630004 +88630000 2C030000 +41820014 3D808016 +618CBA1C 7D8903A6 +4E800420 3D808016 +618CBAC8 7D8903A6 +4E800420 00000000 +C21A501C 0000002A #Playback/Core/FastForward/FastForward.asm +3C808048 88649D30 +2C03000E 40820040 +88649D33 2C030001 +40820034 38600001 +3D80801A 618C45E8 +7D8903A6 4E800421 +2C030002 41820018 +806DB64C 80630000 +88630000 2C030003 +41820024 38600001 +38800002 3D808002 +618C5064 7D8903A6 +4E800421 7C1AD800 +480000E0 806DB64C +80630000 88630001 +2C030001 4182001C +38600000 38800000 +3D808002 618C5064 +7D8903A6 4E800421 +4800000D 2C0300FF +480000A8 7C0802A6 +90010004 9421FF50 +BE810008 3D808003 +618C0A50 7D8903A6 +4E800421 3D808002 +618CA4AC 7D8903A6 +4E800421 3D808003 +618C0A50 7D8903A6 +4E800421 80630028 +3D808036 618C8458 +7D8903A6 4E800421 +806DC18C 82830020 +4800002C 82B4002C +8875221F 546006F7 +40820018 7E83A378 +3D808008 618C6A8C +7D8903A6 4E800421 +82940008 2C140000 +4082FFD4 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +60000000 00000000 +C2377544 00000002 #Playback/Core/FastForward/IncrementPadIndex.asm +40A2000C 38000001 +981E0003 00000000 +04376A88 881F0001 #Playback/Core/FastForward/PadAlwaysUseMasterIndex.asm +C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm +48000019 7C6802A6 +3C80803D 6084ADA8 +90640004 4800001C +4E800021 38600003 +3C808047 60849D30 +98640003 4E800020 +3800000E 00000000 +C21A6348 000000FD #Playback/Core/Scene/SceneThink_Playback.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +4800000D 7F2802A6 +48000028 4E800021 +736C704C 6F676F2E +64617400 736C706C +6F676F5F 7363656E +655F6461 74610000 +3C608047 60639D30 +88630000 2C03000E +40820660 38600013 +38800014 38A00000 +3D808039 618C01F0 +7D8903A6 4E800421 +7C761B78 38600004 +38800005 38A00080 +3D808039 618C01F0 +7D8903A6 4E800421 +7C721B78 38790000 +3D808001 618C6BE0 +7D8903A6 4E800421 +3899000C 3D808038 +618C0358 7D8903A6 +4E800421 7C731B78 +80730004 80630000 +3D808036 618CA590 +7D8903A6 4E800421 +7C651B78 888DC1AB +7EC3B378 3D808039 +618C0A70 7D8903A6 +4E800421 7EC3B378 +3C808039 608410D8 +38A00001 3D808039 +618C075C 7D8903A6 +4E800421 3C800000 +60840200 90960024 +80730000 80630000 +80630000 3D808037 +618C0E44 7D8903A6 +4E800421 7C751B78 +7E439378 38800003 +7EA5AB78 3D808039 +618C0A70 7D8903A6 +4E800421 7E439378 +3C808039 60841070 +38A00009 38C00011 +3D808039 618C069C +7D8903A6 4E800421 +48000025 7E439378 +7C8802A6 38A00000 +3D808038 618CFD54 +7D8903A6 4E800421 +48000500 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +48000471 7FC802A6 +38600000 3880FFFF +3D80803A 618C6754 +7D8903A6 4E800421 +7C7C1B78 38800001 +989C0049 38800000 +989C004A C03E0008 +D03C0008 C03E0010 +D03C0024 D03C0028 +C03E0000 C05E0004 +7F83E378 48000445 +7C8802A6 48000455 +7CA802A6 3D80803A +618C6B98 7D8903A6 +4E800421 7C641B78 +7F83E378 C03E000C +C05E000C 3D80803A +618C7548 7D8903A6 +4E800421 C03E0014 +C05E0018 7F83E378 +48000425 7C8802A6 +3D80803A 618C6B98 +7D8903A6 4E800421 +7C641B78 7F83E378 +C03E000C C05E000C +3D80803A 618C7548 +7D8903A6 4E800421 +3C602ECC 606340FF +90610040 7F83E378 +38800001 38A10040 +3D80803A 618C74F0 +7D8903A6 4E800421 +38600221 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7D1B78 +3B600000 3D808033 +618CC898 7D8903A6 +4E800421 3D808033 +618CF270 7D8903A6 +4E800421 38600000 +3D808037 618C5538 +7D8903A6 4E800421 +8062F240 2C030000 +4082002C 38600000 +7F84E378 3D80803A +618C84BC 7D8903A6 +4E800421 3D808039 +618C0FC0 7D8903A6 +4E800421 38600000 +3D808037 618C61C0 +7D8903A6 4E800421 +3D808034 618CF314 +7D8903A6 4E800421 +3B7B0001 2C1B00F0 +41800008 3B600000 +3860003C 7C7B1B96 +480002F1 7C8802A6 +1C630004 7CC32214 +7F83E378 38800000 +480002C1 7CA802A6 +4CC63182 3D80803A +618C70A0 7D8903A6 +4E800421 38600088 +987D0000 7FA3EB78 +38800001 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 38800001 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887D0000 +2C030001 4082FEE0 +7F83E378 3D80803A +618C5CC4 7D8903A6 +4E800421 38600075 +987D0000 38600000 +907D0001 38600000 +907D0005 38600000 +907D0009 7FA3EB78 +3880000D 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 38800221 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887D0000 +2C030001 41820018 +3D808034 618CF314 +7D8903A6 4E800421 +4BFFFF8C 3A9D0005 +3C808043 60842078 +88740060 90640014 +88740063 98640018 +88740084 9064001C +88740087 98640020 +887400A8 90640024 +887400AB 98640028 +887400CC 9064002C +887400CF 98640030 +A074000E 9064000C +3D808001 618C8254 +7D8903A6 4E800421 +386000C7 3D808001 +618C8C2C 7D8903A6 +4E800421 38600004 +3D808001 618C7700 +7D8903A6 4E800421 +3860001C 3D808002 +618C6F2C 7D8903A6 +4E800421 3D808021 +618CB2D8 7D8903A6 +4E800421 3AA00000 +1C150024 7E96A378 +7ED60214 3D808000 +618C569C 7D8903A6 +4E800421 88960060 +7C840774 7C041800 +41820028 38600000 +3D808000 618C56A0 +7D8903A6 4E800421 +3D808000 618C56A8 +7D8903A6 4E800421 +3AB50001 2C150006 +3AD60024 4180FFB0 +A074000E 3D808022 +618C519C 7D8903A6 +4E800421 7C641B78 +38600001 3D808000 +618C56A0 7D8903A6 +4E800421 3D808000 +618C56A8 7D8903A6 +4E800421 3D808002 +618C7168 7D8903A6 +4E800421 8062F240 +2C030000 40820018 +38600001 3D808002 +618C4030 7D8903A6 +4E800421 3D808002 +618C4F6C 7D8903A6 +4E800421 3D80801A +618C4B60 7D8903A6 +4E800421 48000068 +4E800021 C33E0000 +00000000 00000000 +3F800000 3F19999A +43B70000 43AF0000 +432A0000 00000000 +4E800021 57616974 +696E6720 666F7220 +67616D65 25730000 +4E800021 00000000 +2E000000 2E2E0000 +2E2E2E00 4E800021 +736C6970 70692E67 +67000000 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +3D80801A 618C6368 +7D8903A6 4E800420 +807F0000 00000000 +041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm +043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm +C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm +900DC0E8 3C608048 +80639D30 5463443E +2C03010E 40820090 +7C0802A6 90010004 +9421FF50 BE810008 +83EDB64C 3BDF001C +8B9E0000 3C608048 +80639D60 809F056B +7C032000 41810028 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9E0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DE0001 7CC61A14 +88660000 3863FFFF +1C630006 38A60001 +7CA51A14 807D000C +90650002 BA810008 +800100B4 382100B0 +7C0803A6 00000000 +C21A5014 00000032 #Playback/Core/Sounds/HandleFrameSoundLog.asm +41A20014 3D80801A +618C5024 7D8903A6 +4E800420 3C608048 +80639D30 5463443E +2C03010E 40820168 +7C0802A6 90010004 +9421FF50 BE810008 +3D808034 618C7364 +7D8903A6 4E800421 +7C7D1B78 83EDB64C +3BDF001C 8B9E0000 +3F008048 83189D60 +3B18FFFF 82FF056B +7C18B800 4181009C +7C78B850 38630001 +8B9E0000 7F83E051 +40800008 3B9C0007 +387E0001 1C9C00C2 +7F432214 3B200000 +48000060 38DA0000 +38E00000 48000028 +1C790006 7C651A14 +A0630001 1C870006 +7C862214 A0840001 +7C032000 41820030 +38E70001 88660000 +2C070003 4180FFD4 +1C790006 7C651A14 +80630003 3D808002 +618C36B8 7D8903A6 +4E800421 3B390001 +38BA0061 88650000 +7C191800 4180FF98 +387E0001 1C9C00C2 +7F432214 387A0061 +389A0000 38A00061 +3D808000 618C31F4 +7D8903A6 4E800421 +387A0000 38800061 +3D808000 618CC160 +7D8903A6 4E800421 +7C18B800 4081001C +931F056B 3B9C0001 +2C1C0007 41800008 +3B9CFFF9 9B9E0000 +7FA3EB78 3D808034 +618C738C 7D8903A6 +4E800421 BA810008 +800100B4 382100B0 +7C0803A6 00000000 +C2088224 0000001D #Playback/Core/Sounds/NoDestroyVoice.asm +3C608048 80639D30 +5463443E 2C03010E +408200CC 7C0802A6 +90010004 9421FF50 +BE810008 83EDB64C +3BBF001C 57DE043E +8B9D0000 3C608048 +80639D60 809F056B +7C032000 41810088 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9D0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DD0062 7CC61A14 +39000000 48000020 +1C680006 38A60001 +7CA51A14 A0650000 +7C1E1800 41820018 +39080001 88660000 +7C081800 4180FFDC +48000024 BA810008 +800100B4 382100B0 +7C0803A6 3D808008 +618C8244 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 387F0000 +60000000 00000000 +C20882B0 0000001D #Playback/Core/Sounds/NoDestroyVoice2.asm +3C608048 80639D30 +5463443E 2C03010E +408200CC 7C0802A6 +90010004 9421FF50 +BE810008 83EDB64C +3BBF001C 57DE043E +8B9D0000 3C608048 +80639D60 809F056B +7C032000 41810088 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9D0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DD0062 7CC61A14 +39000000 48000020 +1C680006 38A60001 +7CA51A14 A0650000 +7C1E1800 41820018 +39080001 88660000 +7C081800 4180FFDC +48000024 BA810008 +800100B4 382100B0 +7C0803A6 3D808008 +618C82D0 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 387F0000 +60000000 00000000 +C238D0B0 00000027 #Playback/Core/Sounds/PreventDuplicateSounds.asm +3C608048 80639D30 +5463443E 2C03010E +40820120 7C0802A6 +90010004 9421FF50 +BE810008 83EDB64C +3BDF001C 3BA00000 +3B400000 56FB043E +8B9E0000 3C608048 +80639D60 809F056B +7C032000 41810070 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9E0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DE0062 7CC61A14 +39000000 48000020 +1C680006 38A60001 +7CA51A14 A0650000 +7C1B1800 41820018 +39080001 88660000 +7C081800 4180FFDC +4800000C 83450002 +3BA00001 1C7C00C2 +38DE0001 7CC61A14 +88660000 2C030010 +40800024 1C630006 +38A60001 7CA51A14 +B3650000 93450002 +88660000 38630001 +98660000 2C1D0000 +41820028 7F43D378 +BA810008 800100B4 +382100B0 7C0803A6 +3D808038 618CD2A0 +7D8903A6 4E800420 +BA810008 800100B4 +382100B0 7C0803A6 +2C1A0000 00000000 +C20055F8 0000000F #Common/GetIsFollower.asm +7C0802A6 90010004 +9421FF50 BE810008 +7C7E1B78 3BE00000 +887E221F 5460EFFF +41820038 887E000C +3D808003 618C2330 +7D8903A6 4E800421 +3C80803B 6084CDE0 +1C030003 7C640214 +88030002 2C000000 +40820008 3BE00001 +7FE3FB78 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +60000000 00000000 +C216D294 00000006 #Common/IncrementFrameIndex.asm +987F0008 3C608048 +80639D58 2C030000 +40820010 3860FF85 +906DB654 48000010 +806DB654 38630001 +906DB654 00000000 +C21C154C 00000004 #Common/Initialize Stage Data/Init Stage Data.asm +38800204 3D808000 +618CC160 7D8903A6 +4E800421 281A0000 +60000000 00000000 +C2068EEC 00000006 #Common/Initialize Player Data/Init Player Data.asm +3BC30000 3C808045 +60848FD0 80840020 +3D808000 618CC160 +7D8903A6 4E800421 +7FC3F378 3C808046 +60000000 00000000 +C209E090 00000011 #Common/FastForward/DynamicsFix.asm +807E0000 80630028 +48000009 48000074 +7C0802A6 90010004 +9421FFE8 93E10014 +7C7F1B78 807F0014 +54600211 40820020 +54600673 41820018 +7FE3FB78 3D808037 +618C3078 7D8903A6 +4E800421 807F0010 +2C030000 41820008 +4BFFFFB9 807F0008 +2C030000 41820008 +4BFFFFA9 83E10014 +8001001C 38210018 +7C0803A6 4E800020 +BB010028 00000000 +C21A4CB4 00000004 #Online/Core/EXIFileLoad/AllocBuffer.asm +38600080 3D808037 +618CF1E4 7D8903A6 +4E800421 906DAFC4 +38000000 00000000 +C20163FC 0000001B #Online/Core/EXIFileLoad/GetFileSize.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 40820018 +BA810008 800100B4 +382100B0 7C0803A6 +480000A0 386000D1 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7FE3FB78 +38800004 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 BA810008 +800100B4 382100B0 +7C0803A6 80630000 +2C030000 40810014 +3D808001 618C6488 +7D8903A6 4E800420 +7FC3F378 00000000 +C20166B8 00000029 #Online/Core/EXIFileLoad/TransferFile.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +60000000 00000000 +C200569C 00000002 #Common/CompatibilityHooks/GetFighterNum.asm +38600021 4E800020 +60000000 00000000 +C20056A0 00000007 #Common/CompatibilityHooks/GetSSMIndex.asm +2C030001 41820018 +3C60803B 6063B3C0 +1C840010 7C6320AE +48000018 3C60803B +6063B6B0 1C840003 +7C6320AE 48000004 +4E800020 00000000 +C20056A8 00000005 #Common/CompatibilityHooks/RequestSSMLoad.asm +2C030037 41820018 +3D808043 618C37C4 +38800001 1C630004 +7C83612E 4E800020 +60000000 00000000 + +$Optional: Show Player Names [Fizzi, UnclePunch, Enzyme, jmlee337] +*Show players' Slippi Online display names as HUD elements when available +C216E9B4 0000009A #Playback/Show Player Names/InitInGame.asm +48000088 4E800021 +3EA8F5C3 000000FF +3F1EB852 3F466666 +C1C07AE1 3C6F34D7 +3F4CCCCD 41A51EB8 +00000000 3D75C28F +43160000 3F0A3D71 +00000000 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +7C7F1B78 880DB6CC +2C000001 41820018 +7FE3FB78 3D808039 +618C10D8 7D8903A6 +4E800421 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +7C0802A6 90010004 +9421FF50 BE810008 +3C60804D 60636D5C +80630000 3C80803F +608494D0 3D808038 +618C0358 7D8903A6 +4E800421 80630004 +80630000 3D808036 +618CA590 7D8903A6 +4E800421 7C7E1B78 +38600013 38800014 +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C7D1B78 +7FA3EB78 888DC1AB +7FC5F378 3D808039 +618C0A70 7D8903A6 +4E800421 7FA3EB78 +4BFFFF25 7C8802A6 +38A00008 3D808039 +618C075C 7D8903A6 +4E800421 3C600000 +60631000 907D0024 +38600002 7FA4EB78 +38A00009 38C0000D +38E00000 3900000C +39200050 39400008 +3D80803A 618C611C +7D8903A6 4E800421 +7C7F1B78 4BFFFE91 +7F8802A6 834DB64C +3A800000 3EA0804A +62B50FF0 7E83A378 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 41820308 +387A0570 1C94001F +7F032214 7F03C378 +3D808032 618C5B04 +7D8903A6 4E800421 +2C040000 418202E0 +7E83A378 3D80802F +618C3424 7D8903A6 +4E800421 C0230000 +D0210070 38600002 +7FE4FB78 3D80803A +618C6754 7D8903A6 +4E800421 7C7D1B78 +38800001 989D0048 +989D004A 989D004C +989D0049 C03C0024 +D03D0024 D03D0028 +C0210070 C05C0018 +EC21102A D03D0000 +C03C001C D03D0004 +C03C0020 D03D0008 +C03C0028 D03D000C +D03D0010 4CC63242 +C03C0030 C05C0030 +7FA3EB78 7F04C378 +3D80803A 618C6B98 +7D8903A6 4E800421 +7FA3EB78 38800000 +C03C002C C05C002C +3D80803A 618C7548 +7D8903A6 4E800421 +3860000E 3880000F +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C771B78 +3C60804A 60631ED0 +80630000 3D808037 +618C0E44 7D8903A6 +4E800421 7C761B78 +7EE3BB78 888DC1A9 +7EC5B378 3D808039 +618C0A70 7D8903A6 +4E800421 7EE3BB78 +3C808039 60841070 +38A0000C 38C00000 +3D808039 618C069C +7D8903A6 4E800421 +7E83A378 3D80802F +618C3424 7D8903A6 +4E800421 C0230000 +C05C000C EC21102A +D0360038 C03C0010 +D036003C C03C0008 +D0360030 7EC3B378 +38810080 38A00001 +38C0FFFF 3D808001 +618C1E24 7D8903A6 +4E800421 80610080 +38800000 90830040 +80610080 80630018 +80830014 60840001 +90830014 80630004 +80830014 60840001 +90830014 80630004 +80630008 8063000C +C03C0000 D023000C +809C0004 90830004 +3B200000 807D005C +38800000 3D80803A +618C6FEC 7D8903A6 +4E800421 3943000F +3D808040 618CCB00 +887D004F 1C630004 +3C80804D 60841124 +7C63202E 81630004 +886A0000 2C03000B +41820064 2C030020 +4182001C 2C030040 +41820034 886A0000 +2C03000F 41820050 +48000044 886A0001 +1C630002 7C6360AE +38800014 7C632050 +7F391A14 394A0002 +4BFFFFB8 886A0001 +1C630002 7C6358AE +38800014 7C632050 +7F391A14 394A0002 +4BFFFF98 394A0001 +4BFFFF90 2C19003C +40800008 3B20003C +2C190090 40810008 +3B200090 3C004330 +C84298A8 6F238000 +90010080 90610084 +C8210080 EC211028 +C05C0014 EC2100B2 +D036002C 3A940001 +2C140006 4180FCD8 +BA810008 800100B4 +382100B0 7C0803A6 +8001001C 00000000 + +$Optional: Game Music OFF [UnclePunch] +*Keep checked if you want music OFF. Uncheck "Game Music ON". +04023FFC 38800000 + +$Optional: Widescreen 16:9 [Dan Salvato, mirrorbender, Achilles1515, UnclePunch] +*Set Aspect Ratio to "Force 16:9" in Graphics +043BB05C 3EB00000 #External/Widescreen/Fix Screen Flash.asm +C236A4A8 00000007 #External/Widescreen/Overwrite CObj Values.asm +38600001 986DAFE0 +C03F0034 4800001D +7C6802A6 C0430000 +C0630004 EC2100B2 +EC211824 48000010 +4E800021 43A00000 +435B0000 00000000 +044DDB58 3E4CCCCD #External/Widescreen/Adjust Offscreen Scissor/Adjust Bubble Zoom.asm +04086B24 60000000 #External/Widescreen/Adjust Offscreen Scissor/Draw High Poly Models.asm +04030C7C 38000064 #External/Widescreen/Adjust Offscreen Scissor/Left Camera Bound.asm +04030C88 3800021C #External/Widescreen/Adjust Offscreen Scissor/Right Camera Bound.asm +044DDB30 3F666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 1.asm +044DDB34 BF666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 2.asm +044DDB2C C3660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Negative Vertical Bound.asm +044DDB28 43660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Positive Vertical Bound.asm +044DDB4C 3D916873 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Widen Bubble Region.asm +C22FCFC4 00000004 #External/Widescreen/Nametag Fixes/Adjust Nametag Background X Scale.asm +48000011 7C6802A6 +C0030000 4800000C +4E800021 40DC7AE1 +60000000 00000000 +044DDB84 3E89FEFA #External/Widescreen/Nametag Fixes/Adjust Nametag Text X Scale.asm + +$Optional: Disable Screen Shake [Achilles1515] +*Disables all screen shaking +04030E44 4E800020 #External/Disable Screen Shake/Disable Screen Shake.asm + +$Optional: Hide HUD [UnclePunch] +*Hides the timer and player percent HUD elements +0416E9A4 60000000 #External/Hide Timer and Player HUD/Hide Timer HUD.asm +0416BA80 48000014 #External/Hide Timer and Player HUD/Hide Percents/Skip Percent Anim During Stock Steal.asm +0416E9B0 60000000 #External/Hide Timer and Player HUD/Hide Percents/Skip Player HUD Creation.asm + +$Optional: Hide Waiting For Game [Nikki, UnclePunch] +*Hides the waiting for game text and slippi.gg text and disables the SFX played before a replay starts +*With this enabled, there will be no indication between matches that Melee is still running +044DEC20 00000001 #Playback/Hide Waiting For Game/Hide Waiting For Game.asm + +$Optional: Enable Develop Mode [UnclePunch] +*Turns develop (debug) mode on. Allows access to frame advance, hit/hurtbox display, and alternate camera angles +044D4A08 00000004 #External/Enable Develop Mode/Enable Develop Mode.asm +04089250 48000008 #External/Enable Develop Mode/Enable Stale Moves.asm + +$Optional: Lagless FoD [Achilles, Myougi, Dan Salvato] +*Disables particles and reflection on FoD to improve performance +C21CBB90 00000005 #Lagless FoD +9421FFF8 3CC0804A +80C6ED78 3CA00002 +60A5AE44 7CA53050 +88C50000 60C60004 +98C50000 00000000 +041CC8AC FC000028 +041CBE9C 60000000 +041CBEF0 60000000 +041CBF54 60000000 +04390838 60000000 +041CD250 60000000 +041CCDCC 480000B4 diff --git a/Output/Playback/GALJ01r2.ini b/Output/Playback/GALJ01r2.ini new file mode 100644 index 00000000..4cc15d0c --- /dev/null +++ b/Output/Playback/GALJ01r2.ini @@ -0,0 +1,1290 @@ +# GALJ01 - Super Smash Bros. Melee NTSC-J 1.02 + +[Core] +CPUThread = False +GPUDeterminismMode = fake-completion +PollingMethod = OnSIRead +FastDiscSpeed = True + +[Gecko_Enabled] +$Required: General Codes +$Required: Slippi Playback +$Optional: Show Player Names + +[Gecko] +$Required: General Codes [Achilles, Dan Salvato, UnclePunch, tauKhan, Ptomerty, Cilan, Datel, Most] +0415EE98 38600001 #Unlock All Characters and Stages [Datel] +0415EDDC 38600001 +04164B14 38600001 +041648F4 38600001 +0415EE4C 38600001 +0415EE14 38600001 +0415D968 38600001 +0415D9D8 38600001 +0417229C 38600000 +041737B0 38600000 +04164658 38600001 +041644E8 38600001 +0430490C 38600063 +043044F0 38600001 +0415D94C 4E800020 #Disable Special Messages [Most] +0415D984 4E800020 #Disable Trophy Messages [Achilles] +C22FCCE8 00000013 #External/Extended Nametag Box/Extended Nametag Box.asm +3C608003 6063556C +7C6803A6 887F0000 +4E800021 5460063E +28000078 41820070 +3C608045 6063D84F +1C0001A4 7C630214 +38800000 8C030001 +2C000000 41820018 +38840001 2C000080 +41A0FFEC 8C030001 +4BFFFFE4 2C040005 +41800034 3C604080 +9061FFF0 C221FFF0 +3E404330 CA028C58 +9241FFEC 9081FFF0 +C9E1FFEC EDEF8028 +EDEF8824 807E0010 +D1E3002C 807E0010 +60000000 00000000 +C213C388 0000000A #Common/CostumeBoundCheck/PuffCostume.asm +83DC002C 887E000C +3D808003 618C2330 +7D8903A6 4E800421 +3D808016 618C9238 +7D8903A6 4E800421 +889E0619 7C041800 +40800008 48000014 +3D808013 618CC46C +7D8903A6 4E800420 +809C002C 00000000 +C216DED4 00000039 #Common/CostumeBoundCheck/main.asm +7C0802A6 90010004 +9421FF50 BE810008 +3BE00000 7FE3FB78 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 41820060 +7FE3FB78 3D808003 +618C3198 7D8903A6 +4E800421 7C7E1B78 +7FE3FB78 3D808003 +618C2330 7D8903A6 +4E800421 3D808016 +618C9238 7D8903A6 +4E800421 7C1E1800 +4180001C 7FE3FB78 +38800000 3D808003 +618C3208 7D8903A6 +4E800421 3BFF0001 +2C1F0006 4180FF80 +3BE00000 7FE3FB78 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 418200EC +7FE3FB78 3D808003 +618C2330 7D8903A6 +4E800421 7C7E1B78 +7FE3FB78 3D808003 +618C3198 7D8903A6 +4E800421 7C7D1B78 +7FE3FB78 3D808003 +618C3284 7D8903A6 +4E800421 7C7C1B78 +3B600000 7C1FD800 +4182008C 7F63DB78 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 41820070 +7F63DB78 3D808003 +618C2330 7D8903A6 +4E800421 7C03F000 +40820054 7F63DB78 +3D808003 618C3198 +7D8903A6 4E800421 +7C03E800 40820038 +7F63DB78 3D808003 +618C3284 7D8903A6 +4E800421 7C03E000 +4082001C 38830001 +7F63DB78 3D808003 +618C32F4 7D8903A6 +4E800421 3B7B0001 +2C1B0006 4180FF68 +3BFF0001 2C1F0006 +4180FEF4 BA810008 +800100B4 382100B0 +7C0803A6 8001001C +60000000 00000000 + +$Required: Slippi Playback [Fizzi, UnclePunch, Achilles, tauKhan] +*Used to play back a .slp file +*Will play replay configured in playback.txt +C216E9E4 0000001D #Playback/Core/CleanDynamicGeckos.asm +3BC30000 7C0802A6 +90010004 9421FF50 +BE810008 83CDB64C +83BE0010 3B800000 +807D0000 2C030000 +41820018 3B9C0001 +807D0004 7FBD1A14 +3BBD0008 4BFFFFE4 +1C7C0004 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7B1B78 +83BE0010 3B400000 +807D0000 2C030000 +4182001C 7FBBD12E +3B5A0004 807D0004 +7FBD1A14 3BBD0008 +4BFFFFE0 387CFFFF +1F430004 2C1A0000 +41800044 7FBBD02E +807D0000 389D0008 +80BD0004 3D808000 +618C31F4 7D8903A6 +4E800421 807D0000 +809D0004 3D808032 +618C8F50 7D8903A6 +4E800421 3B5AFFFC +4BFFFFBC BA810008 +800100B4 382100B0 +7C0803A6 00000000 +C216D298 00000016 #Playback/Core/FetchGameFrame.asm +881F0008 2C000000 +408200A0 7C0802A6 +90010004 9421FF50 +BE810008 806DB64C +83630000 38600076 +987B0000 806DB654 +907B0001 7F63DB78 +38800005 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7F63DB78 3880018F +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887B0000 +2C030000 40820024 +3D808034 618CF314 +7D8903A6 4E800421 +3C60804C 38000000 +98031F7B 4BFFFF90 +BA810008 800100B4 +382100B0 7C0803A6 +881F0008 00000000 +C206B0DC 00000046 #Playback/Core/RestoreGameFrame.asm +7C0802A6 90010004 +9421FF50 BE810008 +8BBF000C 7FA3EB78 +3D808003 618C1724 +7D8903A6 4E800421 +7C7C1B78 832DB64C +83790000 7FE3FB78 +3D808000 618C55F8 +7D8903A6 4E800421 +7C741B78 389B0007 +88BF000C 1CA50062 +7C842A14 1CB40031 +7F442A14 3C80804D +807A0000 90645F90 +807A0004 907F0620 +807A0008 907F0624 +807A000C 907F0638 +807A0010 907F063C +807A0014 907F0650 +807A0018 907F065C +8879056F 2C030000 +41820024 807A001C +907F00B0 807A0020 +907F00B4 807A0024 +907F002C 807A0028 +907F0010 3C608046 +6063B108 3C80804C +60841F78 88840001 +3884FFFF 2C040000 +40A00008 38840005 +1C840030 7C632214 +889F0618 1C84000C +7E832214 887A002C +98740002 8879056F +2C030000 4182004C +807A002D 2C03FFFF +41820040 90610040 +C0210040 C05F1830 +EC211028 C0429500 +FC011040 41820024 +7FE3FB78 C0210040 +C05F1830 EC211028 +3D808006 618CCC7C +7D8903A6 4E800421 +806DB654 2C03FF85 +408200AC 7FE3FB78 +38800000 C0228874 +3D808007 618C592C +7D8903A6 4E800421 +807F00B0 907F06F4 +907F070C 807F00B4 +907F06F8 907F0710 +807F00B8 907F06FC +907F0714 C03F00B4 +D03F2344 806DAE0C +907F0728 887F000C +889F221F 5484EFFE +38BF00B0 3D808003 +618C2828 7D8903A6 +4E800421 7FC3F378 +3D808007 618C61C8 +7D8903A6 4E800421 +807F0890 C0230040 +D023002C C0230044 +D0230030 3D808002 +618CF3AC 7D8903A6 +4E800421 BA810008 +800100B4 382100B0 +7C0803A6 881F2219 +60000000 00000000 +C216E74C 0000009E #Playback/Core/RestoreGameInfo.asm +7C0802A6 90010004 +9421FF50 BE810008 +386005EC 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7C1B78 +938DB64C 388005EC +3D808000 618CC160 +7D8903A6 4E800421 +38600221 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7E1B78 +93DC0000 38600040 +3D808037 618CF1E4 +7D8903A6 4E800421 +907C0004 38600075 +987E0000 387C001C +907E0001 38600553 +907E0005 38600000 +907E0009 7FC3F378 +3880000D 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FC3F378 38800221 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887E0000 +2C030001 41820018 +3D808034 618CF314 +7D8903A6 4E800421 +4BFFFF8C 807E0001 +3C80804D 90645F90 +7FE3FB78 389E0005 +38A00138 3D808000 +618C31F4 7D8903A6 +4E800421 387F0040 +3880001C 3D808000 +618CC160 7D8903A6 +4E800421 3AE2F22C +3A82F230 3ABE013D +3AC00000 1C960008 +7C64A82E 7C76B9AE +38840004 7C64A82E +7C76A1AE 3AD60001 +2C160004 4180FFE0 +3A800000 3ABF0060 +1ED40024 7ED6AA14 +88760001 2C030000 +40820078 8876000A +2C030078 4182006C +7C771B78 3D808023 +618C7A04 7D8903A6 +4E800421 7EE3BB78 +3D808015 618CCC9C +7D8903A6 4E800421 +38630198 389E015D +1CB40010 7C842A14 +88A40000 2C050000 +40820010 38600078 +9876000A 4800001C +38A00010 3D808000 +618C31F4 7D8903A6 +4E800421 48000004 +3A940001 2C140004 +4180FF70 887E019D +9862F234 887E019E +9862F238 887E019F +9862F23C 887E01A0 +987C056F 387C0570 +389E01A1 38A0007C +3D808000 618C31F4 +7D8903A6 4E800421 +807E021D 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7D1B78 +93BC0008 3860008A +987D0000 7FA3EB78 +38800001 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 809E021D +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 38800004 +909C000C 7FA3EB78 +48000055 7C8802A6 +3D808000 618C55FC +7D8903A6 4E800421 +807C000C 3D808037 +618CF1E4 7D8903A6 +4E800421 907C0010 +907C0014 7FA3EB78 +48000041 7C8802A6 +3D808000 618C55FC +7D8903A6 4E800421 +4800013C 4E800021 +2C050000 41820018 +80CDB64C 8066000C +38630008 7C632A14 +9066000C 4E800020 +4E800021 2C050000 +41820108 7C0802A6 +90010004 9421FF50 +BE810008 7C9E2378 +7CBB2B78 80BE0000 +54A501FE 64BD8000 +834DB64C 833A0014 +2C030004 41820014 +2C030006 41820014 +2C0300C2 41820014 +3B9E0004 48000048 +3B9E0008 48000040 +389E0008 7C7D2050 +546301BA 64634800 +907A0018 3B9A0018 +807E0004 1C630008 +7C83F214 387D0004 +7C641850 546301BA +64634800 3863FFFC +90640004 93B90000 +93790004 38790008 +7FA4EB78 7F65DB78 +3D808000 618C31F4 +7D8903A6 4E800421 +3B390008 7F39DA14 +933A0014 7FA3EB78 +7F84E378 7F65DB78 +3D808000 618C31F4 +7D8903A6 4E800421 +7FA3EB78 7F64DB78 +3D808032 618C8F50 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +4E800020 38600000 +809C0014 90640000 +7FA3EB78 809E021D +3D808032 618C8F50 +7D8903A6 4E800421 +38600004 38800007 +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 48000021 +7C8802A6 38A00000 +3D808038 618CFD54 +7D8903A6 4E800421 +4800004C 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +806DB64C 83A30000 +887D0002 2C030000 +41820010 807D0003 +3C80804D 90645F90 +BA810008 800100B4 +382100B0 7C0803A6 +4E800020 BA810008 +800100B4 382100B0 +7C0803A6 3C608017 +60000000 00000000 +C216D304 00000009 #Playback/Core/RestoreLRAStart.asm +806DB64C 80630000 +88630000 2C030002 +4082002C 3860FFFF +38800007 3D808016 +618CCF4C 7D8903A6 +4E800421 3D808016 +618CD30C 7D8903A6 +4E800420 7FE3FB78 +60000000 00000000 +C216B9C0 00000012 #Playback/Core/RestoreStockSteal.asm +80ADB64C 80A50004 +38800089 98850000 +808DB654 90850001 +98650005 7CA32B78 +38800006 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +806DB64C 80630004 +38800001 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +806DB64C 80630004 +88630000 2C030000 +41820014 3D808016 +618CBA1C 7D8903A6 +4E800420 3D808016 +618CBAC8 7D8903A6 +4E800420 00000000 +C21A501C 0000002A #Playback/Core/FastForward/FastForward.asm +3C808048 88649D30 +2C03000E 40820040 +88649D33 2C030001 +40820034 38600001 +3D80801A 618C45E8 +7D8903A6 4E800421 +2C030002 41820018 +806DB64C 80630000 +88630000 2C030003 +41820024 38600001 +38800002 3D808002 +618C5064 7D8903A6 +4E800421 7C1AD800 +480000E0 806DB64C +80630000 88630001 +2C030001 4182001C +38600000 38800000 +3D808002 618C5064 +7D8903A6 4E800421 +4800000D 2C0300FF +480000A8 7C0802A6 +90010004 9421FF50 +BE810008 3D808003 +618C0A50 7D8903A6 +4E800421 3D808002 +618CA4AC 7D8903A6 +4E800421 3D808003 +618C0A50 7D8903A6 +4E800421 80630028 +3D808036 618C8458 +7D8903A6 4E800421 +806DC18C 82830020 +4800002C 82B4002C +8875221F 546006F7 +40820018 7E83A378 +3D808008 618C6A8C +7D8903A6 4E800421 +82940008 2C140000 +4082FFD4 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +60000000 00000000 +C2377544 00000002 #Playback/Core/FastForward/IncrementPadIndex.asm +40A2000C 38000001 +981E0003 00000000 +04376A88 881F0001 #Playback/Core/FastForward/PadAlwaysUseMasterIndex.asm +C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm +48000019 7C6802A6 +3C80803D 6084ADA8 +90640004 4800001C +4E800021 38600003 +3C808047 60849D30 +98640003 4E800020 +3800000E 00000000 +C21A6348 000000FD #Playback/Core/Scene/SceneThink_Playback.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +4800000D 7F2802A6 +48000028 4E800021 +736C704C 6F676F2E +64617400 736C706C +6F676F5F 7363656E +655F6461 74610000 +3C608047 60639D30 +88630000 2C03000E +40820660 38600013 +38800014 38A00000 +3D808039 618C01F0 +7D8903A6 4E800421 +7C761B78 38600004 +38800005 38A00080 +3D808039 618C01F0 +7D8903A6 4E800421 +7C721B78 38790000 +3D808001 618C6BE0 +7D8903A6 4E800421 +3899000C 3D808038 +618C0358 7D8903A6 +4E800421 7C731B78 +80730004 80630000 +3D808036 618CA590 +7D8903A6 4E800421 +7C651B78 888DC1AB +7EC3B378 3D808039 +618C0A70 7D8903A6 +4E800421 7EC3B378 +3C808039 608410D8 +38A00001 3D808039 +618C075C 7D8903A6 +4E800421 3C800000 +60840200 90960024 +80730000 80630000 +80630000 3D808037 +618C0E44 7D8903A6 +4E800421 7C751B78 +7E439378 38800003 +7EA5AB78 3D808039 +618C0A70 7D8903A6 +4E800421 7E439378 +3C808039 60841070 +38A00009 38C00011 +3D808039 618C069C +7D8903A6 4E800421 +48000025 7E439378 +7C8802A6 38A00000 +3D808038 618CFD54 +7D8903A6 4E800421 +48000500 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +48000471 7FC802A6 +38600000 3880FFFF +3D80803A 618C6754 +7D8903A6 4E800421 +7C7C1B78 38800001 +989C0049 38800000 +989C004A C03E0008 +D03C0008 C03E0010 +D03C0024 D03C0028 +C03E0000 C05E0004 +7F83E378 48000445 +7C8802A6 48000455 +7CA802A6 3D80803A +618C6B98 7D8903A6 +4E800421 7C641B78 +7F83E378 C03E000C +C05E000C 3D80803A +618C7548 7D8903A6 +4E800421 C03E0014 +C05E0018 7F83E378 +48000425 7C8802A6 +3D80803A 618C6B98 +7D8903A6 4E800421 +7C641B78 7F83E378 +C03E000C C05E000C +3D80803A 618C7548 +7D8903A6 4E800421 +3C602ECC 606340FF +90610040 7F83E378 +38800001 38A10040 +3D80803A 618C74F0 +7D8903A6 4E800421 +38600221 3D808037 +618CF1E4 7D8903A6 +4E800421 7C7D1B78 +3B600000 3D808033 +618CC898 7D8903A6 +4E800421 3D808033 +618CF270 7D8903A6 +4E800421 38600000 +3D808037 618C5538 +7D8903A6 4E800421 +8062F240 2C030000 +4082002C 38600000 +7F84E378 3D80803A +618C84BC 7D8903A6 +4E800421 3D808039 +618C0FC0 7D8903A6 +4E800421 38600000 +3D808037 618C61C0 +7D8903A6 4E800421 +3D808034 618CF314 +7D8903A6 4E800421 +3B7B0001 2C1B00F0 +41800008 3B600000 +3860003C 7C7B1B96 +480002F1 7C8802A6 +1C630004 7CC32214 +7F83E378 38800000 +480002C1 7CA802A6 +4CC63182 3D80803A +618C70A0 7D8903A6 +4E800421 38600088 +987D0000 7FA3EB78 +38800001 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 38800001 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887D0000 +2C030001 4082FEE0 +7F83E378 3D80803A +618C5CC4 7D8903A6 +4E800421 38600075 +987D0000 38600000 +907D0001 38600000 +907D0005 38600000 +907D0009 7FA3EB78 +3880000D 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FA3EB78 38800221 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 887D0000 +2C030001 41820018 +3D808034 618CF314 +7D8903A6 4E800421 +4BFFFF8C 3A9D0005 +3C808043 60842078 +88740060 90640014 +88740063 98640018 +88740084 9064001C +88740087 98640020 +887400A8 90640024 +887400AB 98640028 +887400CC 9064002C +887400CF 98640030 +A074000E 9064000C +3D808001 618C8254 +7D8903A6 4E800421 +386000C7 3D808001 +618C8C2C 7D8903A6 +4E800421 38600004 +3D808001 618C7700 +7D8903A6 4E800421 +3860001C 3D808002 +618C6F2C 7D8903A6 +4E800421 3D808021 +618CB2D8 7D8903A6 +4E800421 3AA00000 +1C150024 7E96A378 +7ED60214 3D808000 +618C569C 7D8903A6 +4E800421 88960060 +7C840774 7C041800 +41820028 38600000 +3D808000 618C56A0 +7D8903A6 4E800421 +3D808000 618C56A8 +7D8903A6 4E800421 +3AB50001 2C150006 +3AD60024 4180FFB0 +A074000E 3D808022 +618C519C 7D8903A6 +4E800421 7C641B78 +38600001 3D808000 +618C56A0 7D8903A6 +4E800421 3D808000 +618C56A8 7D8903A6 +4E800421 3D808002 +618C7168 7D8903A6 +4E800421 8062F240 +2C030000 40820018 +38600001 3D808002 +618C4030 7D8903A6 +4E800421 3D808002 +618C4F6C 7D8903A6 +4E800421 3D80801A +618C4B60 7D8903A6 +4E800421 48000068 +4E800021 C33E0000 +00000000 00000000 +3F800000 3F19999A +43B70000 43AF0000 +432A0000 00000000 +4E800021 57616974 +696E6720 666F7220 +67616D65 25730000 +4E800021 00000000 +2E000000 2E2E0000 +2E2E2E00 4E800021 +736C6970 70692E67 +67000000 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +3D80801A 618C6368 +7D8903A6 4E800420 +807F0000 00000000 +041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm +043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm +C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm +900DC0E8 3C608048 +80639D30 5463443E +2C03010E 40820090 +7C0802A6 90010004 +9421FF50 BE810008 +83EDB64C 3BDF001C +8B9E0000 3C608048 +80639D60 809F056B +7C032000 41810028 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9E0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DE0001 7CC61A14 +88660000 3863FFFF +1C630006 38A60001 +7CA51A14 807D000C +90650002 BA810008 +800100B4 382100B0 +7C0803A6 00000000 +C21A5014 00000032 #Playback/Core/Sounds/HandleFrameSoundLog.asm +41A20014 3D80801A +618C5024 7D8903A6 +4E800420 3C608048 +80639D30 5463443E +2C03010E 40820168 +7C0802A6 90010004 +9421FF50 BE810008 +3D808034 618C7364 +7D8903A6 4E800421 +7C7D1B78 83EDB64C +3BDF001C 8B9E0000 +3F008048 83189D60 +3B18FFFF 82FF056B +7C18B800 4181009C +7C78B850 38630001 +8B9E0000 7F83E051 +40800008 3B9C0007 +387E0001 1C9C00C2 +7F432214 3B200000 +48000060 38DA0000 +38E00000 48000028 +1C790006 7C651A14 +A0630001 1C870006 +7C862214 A0840001 +7C032000 41820030 +38E70001 88660000 +2C070003 4180FFD4 +1C790006 7C651A14 +80630003 3D808002 +618C36B8 7D8903A6 +4E800421 3B390001 +38BA0061 88650000 +7C191800 4180FF98 +387E0001 1C9C00C2 +7F432214 387A0061 +389A0000 38A00061 +3D808000 618C31F4 +7D8903A6 4E800421 +387A0000 38800061 +3D808000 618CC160 +7D8903A6 4E800421 +7C18B800 4081001C +931F056B 3B9C0001 +2C1C0007 41800008 +3B9CFFF9 9B9E0000 +7FA3EB78 3D808034 +618C738C 7D8903A6 +4E800421 BA810008 +800100B4 382100B0 +7C0803A6 00000000 +C2088224 0000001D #Playback/Core/Sounds/NoDestroyVoice.asm +3C608048 80639D30 +5463443E 2C03010E +408200CC 7C0802A6 +90010004 9421FF50 +BE810008 83EDB64C +3BBF001C 57DE043E +8B9D0000 3C608048 +80639D60 809F056B +7C032000 41810088 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9D0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DD0062 7CC61A14 +39000000 48000020 +1C680006 38A60001 +7CA51A14 A0650000 +7C1E1800 41820018 +39080001 88660000 +7C081800 4180FFDC +48000024 BA810008 +800100B4 382100B0 +7C0803A6 3D808008 +618C8244 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 387F0000 +60000000 00000000 +C20882B0 0000001D #Playback/Core/Sounds/NoDestroyVoice2.asm +3C608048 80639D30 +5463443E 2C03010E +408200CC 7C0802A6 +90010004 9421FF50 +BE810008 83EDB64C +3BBF001C 57DE043E +8B9D0000 3C608048 +80639D60 809F056B +7C032000 41810088 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9D0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DD0062 7CC61A14 +39000000 48000020 +1C680006 38A60001 +7CA51A14 A0650000 +7C1E1800 41820018 +39080001 88660000 +7C081800 4180FFDC +48000024 BA810008 +800100B4 382100B0 +7C0803A6 3D808008 +618C82D0 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 387F0000 +60000000 00000000 +C238D0B0 00000027 #Playback/Core/Sounds/PreventDuplicateSounds.asm +3C608048 80639D30 +5463443E 2C03010E +40820120 7C0802A6 +90010004 9421FF50 +BE810008 83EDB64C +3BDF001C 3BA00000 +3B400000 56FB043E +8B9E0000 3C608048 +80639D60 809F056B +7C032000 41810070 +3C608048 80639D60 +809F056B 7C632050 +38630001 8B9E0000 +7F83E051 40800008 +3B9C0007 1C7C00C2 +38DE0062 7CC61A14 +39000000 48000020 +1C680006 38A60001 +7CA51A14 A0650000 +7C1B1800 41820018 +39080001 88660000 +7C081800 4180FFDC +4800000C 83450002 +3BA00001 1C7C00C2 +38DE0001 7CC61A14 +88660000 2C030010 +40800024 1C630006 +38A60001 7CA51A14 +B3650000 93450002 +88660000 38630001 +98660000 2C1D0000 +41820028 7F43D378 +BA810008 800100B4 +382100B0 7C0803A6 +3D808038 618CD2A0 +7D8903A6 4E800420 +BA810008 800100B4 +382100B0 7C0803A6 +2C1A0000 00000000 +C20055F8 0000000F #Common/GetIsFollower.asm +7C0802A6 90010004 +9421FF50 BE810008 +7C7E1B78 3BE00000 +887E221F 5460EFFF +41820038 887E000C +3D808003 618C2330 +7D8903A6 4E800421 +3C80803B 6084CDE0 +1C030003 7C640214 +88030002 2C000000 +40820008 3BE00001 +7FE3FB78 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +60000000 00000000 +C216D294 00000006 #Common/IncrementFrameIndex.asm +987F0008 3C608048 +80639D58 2C030000 +40820010 3860FF85 +906DB654 48000010 +806DB654 38630001 +906DB654 00000000 +C21C154C 00000004 #Common/Initialize Stage Data/Init Stage Data.asm +38800204 3D808000 +618CC160 7D8903A6 +4E800421 281A0000 +60000000 00000000 +C2068EEC 00000006 #Common/Initialize Player Data/Init Player Data.asm +3BC30000 3C808045 +60848FD0 80840020 +3D808000 618CC160 +7D8903A6 4E800421 +7FC3F378 3C808046 +60000000 00000000 +C209E090 00000011 #Common/FastForward/DynamicsFix.asm +807E0000 80630028 +48000009 48000074 +7C0802A6 90010004 +9421FFE8 93E10014 +7C7F1B78 807F0014 +54600211 40820020 +54600673 41820018 +7FE3FB78 3D808037 +618C3078 7D8903A6 +4E800421 807F0010 +2C030000 41820008 +4BFFFFB9 807F0008 +2C030000 41820008 +4BFFFFA9 83E10014 +8001001C 38210018 +7C0803A6 4E800020 +BB010028 00000000 +C21A4CB4 00000004 #Online/Core/EXIFileLoad/AllocBuffer.asm +38600080 3D808037 +618CF1E4 7D8903A6 +4E800421 906DAFC4 +38000000 00000000 +C20163FC 0000001B #Online/Core/EXIFileLoad/GetFileSize.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 40820018 +BA810008 800100B4 +382100B0 7C0803A6 +480000A0 386000D1 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7FE3FB78 +38800004 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 BA810008 +800100B4 382100B0 +7C0803A6 80630000 +2C030000 40810014 +3D808001 618C6488 +7D8903A6 4E800420 +7FC3F378 00000000 +C20166B8 00000029 #Online/Core/EXIFileLoad/TransferFile.asm +7C7E1B78 7C0802A6 +90010004 9421FF50 +BE810008 83EDAFC4 +2C1F0000 41820110 +386000D1 987F0000 +387F0001 7FC4F378 +3D808032 618C5A50 +7D8903A6 4E800421 +7FC3F378 3D808032 +618C5B04 7D8903A6 +4E800421 38830002 +7FE3FB78 38A00001 +3D808000 618C55F0 +7D8903A6 4E800421 +7FE3FB78 38800004 +38A00000 3D808000 +618C55F0 7D8903A6 +4E800421 83BF0000 +2C1D0000 40810098 +93BC0000 386000D2 +987F0000 387F0001 +7FC4F378 3D808032 +618C5A50 7D8903A6 +4E800421 7FC3F378 +3D808032 618C5B04 +7D8903A6 4E800421 +38830002 7FE3FB78 +38A00001 3D808000 +618C55F0 7D8903A6 +4E800421 7F63DB78 +7FA4EB78 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +BA810008 800100B4 +382100B0 7C0803A6 +38600001 3D808001 +618C674C 7D8903A6 +4E800420 BA810008 +800100B4 382100B0 +7C0803A6 7FC3F378 +60000000 00000000 +C200569C 00000002 #Common/CompatibilityHooks/GetFighterNum.asm +38600021 4E800020 +60000000 00000000 +C20056A0 00000007 #Common/CompatibilityHooks/GetSSMIndex.asm +2C030001 41820018 +3C60803B 6063B3C0 +1C840010 7C6320AE +48000018 3C60803B +6063B6B0 1C840003 +7C6320AE 48000004 +4E800020 00000000 +C20056A8 00000005 #Common/CompatibilityHooks/RequestSSMLoad.asm +2C030037 41820018 +3D808043 618C37C4 +38800001 1C630004 +7C83612E 4E800020 +60000000 00000000 + +$Optional: Show Player Names [Fizzi, UnclePunch, Enzyme, jmlee337] +*Show players' Slippi Online display names as HUD elements when available +C216E9B4 0000009A #Playback/Show Player Names/InitInGame.asm +48000088 4E800021 +3EA8F5C3 000000FF +3F1EB852 3F466666 +C1C07AE1 3C6F34D7 +3F4CCCCD 41A51EB8 +00000000 3D75C28F +43160000 3F0A3D71 +00000000 4E800021 +7C0802A6 90010004 +9421FF50 BE810008 +7C7F1B78 880DB6CC +2C000001 41820018 +7FE3FB78 3D808039 +618C10D8 7D8903A6 +4E800421 BA810008 +800100B4 382100B0 +7C0803A6 4E800020 +7C0802A6 90010004 +9421FF50 BE810008 +3C60804D 60636D5C +80630000 3C80803F +608494D0 3D808038 +618C0358 7D8903A6 +4E800421 80630004 +80630000 3D808036 +618CA590 7D8903A6 +4E800421 7C7E1B78 +38600013 38800014 +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C7D1B78 +7FA3EB78 888DC1AB +7FC5F378 3D808039 +618C0A70 7D8903A6 +4E800421 7FA3EB78 +4BFFFF25 7C8802A6 +38A00008 3D808039 +618C075C 7D8903A6 +4E800421 3C600000 +60631000 907D0024 +38600002 7FA4EB78 +38A00009 38C0000D +38E00000 3900000C +39200050 39400008 +3D80803A 618C611C +7D8903A6 4E800421 +7C7F1B78 4BFFFE91 +7F8802A6 834DB64C +3A800000 3EA0804A +62B50FF0 7E83A378 +3D808003 618C241C +7D8903A6 4E800421 +2C030003 41820308 +387A0570 1C94001F +7F032214 7F03C378 +3D808032 618C5B04 +7D8903A6 4E800421 +2C040000 418202E0 +7E83A378 3D80802F +618C3424 7D8903A6 +4E800421 C0230000 +D0210070 38600002 +7FE4FB78 3D80803A +618C6754 7D8903A6 +4E800421 7C7D1B78 +38800001 989D0048 +989D004A 989D004C +989D0049 C03C0024 +D03D0024 D03D0028 +C0210070 C05C0018 +EC21102A D03D0000 +C03C001C D03D0004 +C03C0020 D03D0008 +C03C0028 D03D000C +D03D0010 4CC63242 +C03C0030 C05C0030 +7FA3EB78 7F04C378 +3D80803A 618C6B98 +7D8903A6 4E800421 +7FA3EB78 38800000 +C03C002C C05C002C +3D80803A 618C7548 +7D8903A6 4E800421 +3860000E 3880000F +38A00000 3D808039 +618C01F0 7D8903A6 +4E800421 7C771B78 +3C60804A 60631ED0 +80630000 3D808037 +618C0E44 7D8903A6 +4E800421 7C761B78 +7EE3BB78 888DC1A9 +7EC5B378 3D808039 +618C0A70 7D8903A6 +4E800421 7EE3BB78 +3C808039 60841070 +38A0000C 38C00000 +3D808039 618C069C +7D8903A6 4E800421 +7E83A378 3D80802F +618C3424 7D8903A6 +4E800421 C0230000 +C05C000C EC21102A +D0360038 C03C0010 +D036003C C03C0008 +D0360030 7EC3B378 +38810080 38A00001 +38C0FFFF 3D808001 +618C1E24 7D8903A6 +4E800421 80610080 +38800000 90830040 +80610080 80630018 +80830014 60840001 +90830014 80630004 +80830014 60840001 +90830014 80630004 +80630008 8063000C +C03C0000 D023000C +809C0004 90830004 +3B200000 807D005C +38800000 3D80803A +618C6FEC 7D8903A6 +4E800421 3943000F +3D808040 618CCB00 +887D004F 1C630004 +3C80804D 60841124 +7C63202E 81630004 +886A0000 2C03000B +41820064 2C030020 +4182001C 2C030040 +41820034 886A0000 +2C03000F 41820050 +48000044 886A0001 +1C630002 7C6360AE +38800014 7C632050 +7F391A14 394A0002 +4BFFFFB8 886A0001 +1C630002 7C6358AE +38800014 7C632050 +7F391A14 394A0002 +4BFFFF98 394A0001 +4BFFFF90 2C19003C +40800008 3B20003C +2C190090 40810008 +3B200090 3C004330 +C84298A8 6F238000 +90010080 90610084 +C8210080 EC211028 +C05C0014 EC2100B2 +D036002C 3A940001 +2C140006 4180FCD8 +BA810008 800100B4 +382100B0 7C0803A6 +8001001C 00000000 + +$Optional: Game Music OFF [UnclePunch] +*Keep checked if you want music OFF. Uncheck "Game Music ON". +04023FFC 38800000 + +$Optional: Widescreen 16:9 [Dan Salvato, mirrorbender, Achilles1515, UnclePunch] +*Set Aspect Ratio to "Force 16:9" in Graphics +043BB05C 3EB00000 #External/Widescreen/Fix Screen Flash.asm +C236A4A8 00000007 #External/Widescreen/Overwrite CObj Values.asm +38600001 986DAFE0 +C03F0034 4800001D +7C6802A6 C0430000 +C0630004 EC2100B2 +EC211824 48000010 +4E800021 43A00000 +435B0000 00000000 +044DDB58 3E4CCCCD #External/Widescreen/Adjust Offscreen Scissor/Adjust Bubble Zoom.asm +04086B24 60000000 #External/Widescreen/Adjust Offscreen Scissor/Draw High Poly Models.asm +04030C7C 38000064 #External/Widescreen/Adjust Offscreen Scissor/Left Camera Bound.asm +04030C88 3800021C #External/Widescreen/Adjust Offscreen Scissor/Right Camera Bound.asm +044DDB30 3F666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 1.asm +044DDB34 BF666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 2.asm +044DDB2C C3660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Negative Vertical Bound.asm +044DDB28 43660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Positive Vertical Bound.asm +044DDB4C 3D916873 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Widen Bubble Region.asm +C22FCFC4 00000004 #External/Widescreen/Nametag Fixes/Adjust Nametag Background X Scale.asm +48000011 7C6802A6 +C0030000 4800000C +4E800021 40DC7AE1 +60000000 00000000 +044DDB84 3E89FEFA #External/Widescreen/Nametag Fixes/Adjust Nametag Text X Scale.asm + +$Optional: Disable Screen Shake [Achilles1515] +*Disables all screen shaking +04030E44 4E800020 #External/Disable Screen Shake/Disable Screen Shake.asm + +$Optional: Hide HUD [UnclePunch] +*Hides the timer and player percent HUD elements +0416E9A4 60000000 #External/Hide Timer and Player HUD/Hide Timer HUD.asm +0416BA80 48000014 #External/Hide Timer and Player HUD/Hide Percents/Skip Percent Anim During Stock Steal.asm +0416E9B0 60000000 #External/Hide Timer and Player HUD/Hide Percents/Skip Player HUD Creation.asm + +$Optional: Hide Waiting For Game [Nikki, UnclePunch] +*Hides the waiting for game text and slippi.gg text and disables the SFX played before a replay starts +*With this enabled, there will be no indication between matches that Melee is still running +044DEC20 00000001 #Playback/Hide Waiting For Game/Hide Waiting For Game.asm + +$Optional: Enable Develop Mode [UnclePunch] +*Turns develop (debug) mode on. Allows access to frame advance, hit/hurtbox display, and alternate camera angles +044D4A08 00000004 #External/Enable Develop Mode/Enable Develop Mode.asm +04089250 48000008 #External/Enable Develop Mode/Enable Stale Moves.asm + +$Optional: Lagless FoD [Achilles, Myougi, Dan Salvato] +*Disables particles and reflection on FoD to improve performance +C21CBB90 00000005 #Lagless FoD +9421FFF8 3CC0804A +80C6ED78 3CA00002 +60A5AE44 7CA53050 +88C50000 60C60004 +98C50000 00000000 +041CC8AC FC000028 +041CBE9C 60000000 +041CBEF0 60000000 +041CBF54 60000000 +04390838 60000000 +041CD250 60000000 +041CCDCC 480000B4 From a551fc015d5d8d473402369494c2ab3cacb76268 Mon Sep 17 00:00:00 2001 From: Jordan Lozinski Date: Wed, 29 Dec 2021 12:18:47 -0600 Subject: [PATCH 22/22] Widescreen fixes for the logo jobj --- Output/Playback/GALE01r2.ini | 321 ++++++++++---------- Output/Playback/GALJ01r2.ini | 321 ++++++++++---------- Playback/Core/Scene/SceneThink_Playback.asm | 24 ++ 3 files changed, 352 insertions(+), 314 deletions(-) diff --git a/Output/Playback/GALE01r2.ini b/Output/Playback/GALE01r2.ini index 04d99933..69d49df5 100644 --- a/Output/Playback/GALE01r2.ini +++ b/Output/Playback/GALE01r2.ini @@ -489,7 +489,7 @@ C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm 3C808047 60849D30 98640003 4E800020 3800000E 00000000 -C21A6348 000000FD #Playback/Core/Scene/SceneThink_Playback.asm +C21A6348 00000104 #Playback/Core/Scene/SceneThink_Playback.asm 7C7E1B78 7C0802A6 90010004 9421FF50 BE810008 83EDAFC4 @@ -531,14 +531,15 @@ BA810008 800100B4 800100B4 382100B0 7C0803A6 7FC3F378 4800000D 7F2802A6 -48000028 4E800021 +48000030 4E800021 736C704C 6F676F2E 64617400 736C706C 6F676F5F 7363656E -655F6461 74610000 +655F6461 7461003F +BDF705BF D9999A00 3C608047 60639D30 88630000 2C03000E -40820660 38600013 +4082068C 38600013 38800014 38A00000 3D808039 618C01F0 7D8903A6 4E800421 @@ -568,181 +569,187 @@ BA810008 800100B4 80630000 3D808037 618C0E44 7D8903A6 4E800421 7C751B78 -7E439378 38800003 -7EA5AB78 3D808039 -618C0A70 7D8903A6 -4E800421 7E439378 -3C808039 60841070 -38A00009 38C00011 -3D808039 618C069C +886DAFE0 2C030000 +41820024 C035002C +C059001F EC6100B2 +D075002C C0350038 +C0590023 EC61102A +D0750038 7E439378 +38800003 7EA5AB78 +3D808039 618C0A70 +7D8903A6 4E800421 +7E439378 3C808039 +60841070 38A00009 +38C00011 3D808039 +618C069C 7D8903A6 +4E800421 48000025 +7E439378 7C8802A6 +38A00000 3D808038 +618CFD54 7D8903A6 +4E800421 48000500 +4E800021 7C0802A6 +90010004 9421FF50 +BE810008 48000471 +7FC802A6 38600000 +3880FFFF 3D80803A +618C6754 7D8903A6 +4E800421 7C7C1B78 +38800001 989C0049 +38800000 989C004A +C03E0008 D03C0008 +C03E0010 D03C0024 +D03C0028 C03E0000 +C05E0004 7F83E378 +48000445 7C8802A6 +48000455 7CA802A6 +3D80803A 618C6B98 7D8903A6 4E800421 -48000025 7E439378 -7C8802A6 38A00000 -3D808038 618CFD54 +7C641B78 7F83E378 +C03E000C C05E000C +3D80803A 618C7548 7D8903A6 4E800421 -48000500 4E800021 -7C0802A6 90010004 -9421FF50 BE810008 -48000471 7FC802A6 -38600000 3880FFFF -3D80803A 618C6754 -7D8903A6 4E800421 -7C7C1B78 38800001 -989C0049 38800000 -989C004A C03E0008 -D03C0008 C03E0010 -D03C0024 D03C0028 -C03E0000 C05E0004 -7F83E378 48000445 -7C8802A6 48000455 -7CA802A6 3D80803A +C03E0014 C05E0018 +7F83E378 48000425 +7C8802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 7F83E378 C03E000C C05E000C 3D80803A 618C7548 7D8903A6 -4E800421 C03E0014 -C05E0018 7F83E378 -48000425 7C8802A6 -3D80803A 618C6B98 -7D8903A6 4E800421 -7C641B78 7F83E378 -C03E000C C05E000C -3D80803A 618C7548 -7D8903A6 4E800421 -3C602ECC 606340FF -90610040 7F83E378 -38800001 38A10040 -3D80803A 618C74F0 +4E800421 3C602ECC +606340FF 90610040 +7F83E378 38800001 +38A10040 3D80803A +618C74F0 7D8903A6 +4E800421 38600221 +3D808037 618CF1E4 7D8903A6 4E800421 -38600221 3D808037 -618CF1E4 7D8903A6 -4E800421 7C7D1B78 -3B600000 3D808033 -618CC898 7D8903A6 -4E800421 3D808033 -618CF270 7D8903A6 -4E800421 38600000 -3D808037 618C5538 +7C7D1B78 3B600000 +3D808033 618CC898 7D8903A6 4E800421 -8062F240 2C030000 -4082002C 38600000 -7F84E378 3D80803A -618C84BC 7D8903A6 -4E800421 3D808039 -618C0FC0 7D8903A6 -4E800421 38600000 -3D808037 618C61C0 +3D808033 618CF270 7D8903A6 4E800421 -3D808034 618CF314 +38600000 3D808037 +618C5538 7D8903A6 +4E800421 8062F240 +2C030000 4082002C +38600000 7F84E378 +3D80803A 618C84BC 7D8903A6 4E800421 -3B7B0001 2C1B00F0 -41800008 3B600000 -3860003C 7C7B1B96 -480002F1 7C8802A6 -1C630004 7CC32214 -7F83E378 38800000 -480002C1 7CA802A6 -4CC63182 3D80803A -618C70A0 7D8903A6 -4E800421 38600088 -987D0000 7FA3EB78 -38800001 38A00001 -3D808000 618C55F0 +3D808039 618C0FC0 7D8903A6 4E800421 +38600000 3D808037 +618C61C0 7D8903A6 +4E800421 3D808034 +618CF314 7D8903A6 +4E800421 3B7B0001 +2C1B00F0 41800008 +3B600000 3860003C +7C7B1B96 480002F1 +7C8802A6 1C630004 +7CC32214 7F83E378 +38800000 480002C1 +7CA802A6 4CC63182 +3D80803A 618C70A0 +7D8903A6 4E800421 +38600088 987D0000 7FA3EB78 38800001 -38A00000 3D808000 +38A00001 3D808000 618C55F0 7D8903A6 -4E800421 887D0000 -2C030001 4082FEE0 -7F83E378 3D80803A -618C5CC4 7D8903A6 -4E800421 38600075 -987D0000 38600000 -907D0001 38600000 -907D0005 38600000 -907D0009 7FA3EB78 -3880000D 38A00001 +4E800421 7FA3EB78 +38800001 38A00000 3D808000 618C55F0 7D8903A6 4E800421 -7FA3EB78 38800221 -38A00000 3D808000 +887D0000 2C030001 +4082FEE0 7F83E378 +3D80803A 618C5CC4 +7D8903A6 4E800421 +38600075 987D0000 +38600000 907D0001 +38600000 907D0005 +38600000 907D0009 +7FA3EB78 3880000D +38A00001 3D808000 618C55F0 7D8903A6 -4E800421 887D0000 -2C030001 41820018 -3D808034 618CF314 +4E800421 7FA3EB78 +38800221 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +887D0000 2C030001 +41820018 3D808034 +618CF314 7D8903A6 +4E800421 4BFFFF8C +3A9D0005 3C808043 +60842078 88740060 +90640014 88740063 +98640018 88740084 +9064001C 88740087 +98640020 887400A8 +90640024 887400AB +98640028 887400CC +9064002C 887400CF +98640030 A074000E +9064000C 3D808001 +618C8254 7D8903A6 +4E800421 386000C7 +3D808001 618C8C2C +7D8903A6 4E800421 +38600004 3D808001 +618C7700 7D8903A6 +4E800421 3860001C +3D808002 618C6F2C +7D8903A6 4E800421 +3D808021 618CB2D8 +7D8903A6 4E800421 +3AA00000 1C150024 +7E96A378 7ED60214 +3D808000 618C569C +7D8903A6 4E800421 +88960060 7C840774 +7C041800 41820028 +38600000 3D808000 +618C56A0 7D8903A6 +4E800421 3D808000 +618C56A8 7D8903A6 +4E800421 3AB50001 +2C150006 3AD60024 +4180FFB0 A074000E +3D808022 618C519C 7D8903A6 4E800421 -4BFFFF8C 3A9D0005 -3C808043 60842078 -88740060 90640014 -88740063 98640018 -88740084 9064001C -88740087 98640020 -887400A8 90640024 -887400AB 98640028 -887400CC 9064002C -887400CF 98640030 -A074000E 9064000C -3D808001 618C8254 -7D8903A6 4E800421 -386000C7 3D808001 -618C8C2C 7D8903A6 -4E800421 38600004 -3D808001 618C7700 -7D8903A6 4E800421 -3860001C 3D808002 -618C6F2C 7D8903A6 -4E800421 3D808021 -618CB2D8 7D8903A6 -4E800421 3AA00000 -1C150024 7E96A378 -7ED60214 3D808000 -618C569C 7D8903A6 -4E800421 88960060 -7C840774 7C041800 -41820028 38600000 +7C641B78 38600001 3D808000 618C56A0 7D8903A6 4E800421 3D808000 618C56A8 7D8903A6 4E800421 -3AB50001 2C150006 -3AD60024 4180FFB0 -A074000E 3D808022 -618C519C 7D8903A6 -4E800421 7C641B78 -38600001 3D808000 -618C56A0 7D8903A6 -4E800421 3D808000 -618C56A8 7D8903A6 -4E800421 3D808002 -618C7168 7D8903A6 -4E800421 8062F240 -2C030000 40820018 -38600001 3D808002 -618C4030 7D8903A6 -4E800421 3D808002 -618C4F6C 7D8903A6 -4E800421 3D80801A -618C4B60 7D8903A6 -4E800421 48000068 -4E800021 C33E0000 -00000000 00000000 -3F800000 3F19999A -43B70000 43AF0000 -432A0000 00000000 -4E800021 57616974 -696E6720 666F7220 -67616D65 25730000 -4E800021 00000000 -2E000000 2E2E0000 -2E2E2E00 4E800021 -736C6970 70692E67 -67000000 BA810008 -800100B4 382100B0 -7C0803A6 4E800020 -3D80801A 618C6368 -7D8903A6 4E800420 -807F0000 00000000 +3D808002 618C7168 +7D8903A6 4E800421 +8062F240 2C030000 +40820018 38600001 +3D808002 618C4030 +7D8903A6 4E800421 +3D808002 618C4F6C +7D8903A6 4E800421 +3D80801A 618C4B60 +7D8903A6 4E800421 +48000068 4E800021 +C33E0000 00000000 +00000000 3F800000 +3F19999A 43B70000 +43AF0000 432A0000 +00000000 4E800021 +57616974 696E6720 +666F7220 67616D65 +25730000 4E800021 +00000000 2E000000 +2E2E0000 2E2E2E00 +4E800021 736C6970 +70692E67 67000000 +BA810008 800100B4 +382100B0 7C0803A6 +4E800020 3D80801A +618C6368 7D8903A6 +4E800420 807F0000 +60000000 00000000 041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm 043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm diff --git a/Output/Playback/GALJ01r2.ini b/Output/Playback/GALJ01r2.ini index 4cc15d0c..a8629963 100644 --- a/Output/Playback/GALJ01r2.ini +++ b/Output/Playback/GALJ01r2.ini @@ -489,7 +489,7 @@ C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm 3C808047 60849D30 98640003 4E800020 3800000E 00000000 -C21A6348 000000FD #Playback/Core/Scene/SceneThink_Playback.asm +C21A6348 00000104 #Playback/Core/Scene/SceneThink_Playback.asm 7C7E1B78 7C0802A6 90010004 9421FF50 BE810008 83EDAFC4 @@ -531,14 +531,15 @@ BA810008 800100B4 800100B4 382100B0 7C0803A6 7FC3F378 4800000D 7F2802A6 -48000028 4E800021 +48000030 4E800021 736C704C 6F676F2E 64617400 736C706C 6F676F5F 7363656E -655F6461 74610000 +655F6461 7461003F +BDF705BF D9999A00 3C608047 60639D30 88630000 2C03000E -40820660 38600013 +4082068C 38600013 38800014 38A00000 3D808039 618C01F0 7D8903A6 4E800421 @@ -568,181 +569,187 @@ BA810008 800100B4 80630000 3D808037 618C0E44 7D8903A6 4E800421 7C751B78 -7E439378 38800003 -7EA5AB78 3D808039 -618C0A70 7D8903A6 -4E800421 7E439378 -3C808039 60841070 -38A00009 38C00011 -3D808039 618C069C +886DAFE0 2C030000 +41820024 C035002C +C059001F EC6100B2 +D075002C C0350038 +C0590023 EC61102A +D0750038 7E439378 +38800003 7EA5AB78 +3D808039 618C0A70 +7D8903A6 4E800421 +7E439378 3C808039 +60841070 38A00009 +38C00011 3D808039 +618C069C 7D8903A6 +4E800421 48000025 +7E439378 7C8802A6 +38A00000 3D808038 +618CFD54 7D8903A6 +4E800421 48000500 +4E800021 7C0802A6 +90010004 9421FF50 +BE810008 48000471 +7FC802A6 38600000 +3880FFFF 3D80803A +618C6754 7D8903A6 +4E800421 7C7C1B78 +38800001 989C0049 +38800000 989C004A +C03E0008 D03C0008 +C03E0010 D03C0024 +D03C0028 C03E0000 +C05E0004 7F83E378 +48000445 7C8802A6 +48000455 7CA802A6 +3D80803A 618C6B98 7D8903A6 4E800421 -48000025 7E439378 -7C8802A6 38A00000 -3D808038 618CFD54 +7C641B78 7F83E378 +C03E000C C05E000C +3D80803A 618C7548 7D8903A6 4E800421 -48000500 4E800021 -7C0802A6 90010004 -9421FF50 BE810008 -48000471 7FC802A6 -38600000 3880FFFF -3D80803A 618C6754 -7D8903A6 4E800421 -7C7C1B78 38800001 -989C0049 38800000 -989C004A C03E0008 -D03C0008 C03E0010 -D03C0024 D03C0028 -C03E0000 C05E0004 -7F83E378 48000445 -7C8802A6 48000455 -7CA802A6 3D80803A +C03E0014 C05E0018 +7F83E378 48000425 +7C8802A6 3D80803A 618C6B98 7D8903A6 4E800421 7C641B78 7F83E378 C03E000C C05E000C 3D80803A 618C7548 7D8903A6 -4E800421 C03E0014 -C05E0018 7F83E378 -48000425 7C8802A6 -3D80803A 618C6B98 -7D8903A6 4E800421 -7C641B78 7F83E378 -C03E000C C05E000C -3D80803A 618C7548 -7D8903A6 4E800421 -3C602ECC 606340FF -90610040 7F83E378 -38800001 38A10040 -3D80803A 618C74F0 +4E800421 3C602ECC +606340FF 90610040 +7F83E378 38800001 +38A10040 3D80803A +618C74F0 7D8903A6 +4E800421 38600221 +3D808037 618CF1E4 7D8903A6 4E800421 -38600221 3D808037 -618CF1E4 7D8903A6 -4E800421 7C7D1B78 -3B600000 3D808033 -618CC898 7D8903A6 -4E800421 3D808033 -618CF270 7D8903A6 -4E800421 38600000 -3D808037 618C5538 +7C7D1B78 3B600000 +3D808033 618CC898 7D8903A6 4E800421 -8062F240 2C030000 -4082002C 38600000 -7F84E378 3D80803A -618C84BC 7D8903A6 -4E800421 3D808039 -618C0FC0 7D8903A6 -4E800421 38600000 -3D808037 618C61C0 +3D808033 618CF270 7D8903A6 4E800421 -3D808034 618CF314 +38600000 3D808037 +618C5538 7D8903A6 +4E800421 8062F240 +2C030000 4082002C +38600000 7F84E378 +3D80803A 618C84BC 7D8903A6 4E800421 -3B7B0001 2C1B00F0 -41800008 3B600000 -3860003C 7C7B1B96 -480002F1 7C8802A6 -1C630004 7CC32214 -7F83E378 38800000 -480002C1 7CA802A6 -4CC63182 3D80803A -618C70A0 7D8903A6 -4E800421 38600088 -987D0000 7FA3EB78 -38800001 38A00001 -3D808000 618C55F0 +3D808039 618C0FC0 7D8903A6 4E800421 +38600000 3D808037 +618C61C0 7D8903A6 +4E800421 3D808034 +618CF314 7D8903A6 +4E800421 3B7B0001 +2C1B00F0 41800008 +3B600000 3860003C +7C7B1B96 480002F1 +7C8802A6 1C630004 +7CC32214 7F83E378 +38800000 480002C1 +7CA802A6 4CC63182 +3D80803A 618C70A0 +7D8903A6 4E800421 +38600088 987D0000 7FA3EB78 38800001 -38A00000 3D808000 +38A00001 3D808000 618C55F0 7D8903A6 -4E800421 887D0000 -2C030001 4082FEE0 -7F83E378 3D80803A -618C5CC4 7D8903A6 -4E800421 38600075 -987D0000 38600000 -907D0001 38600000 -907D0005 38600000 -907D0009 7FA3EB78 -3880000D 38A00001 +4E800421 7FA3EB78 +38800001 38A00000 3D808000 618C55F0 7D8903A6 4E800421 -7FA3EB78 38800221 -38A00000 3D808000 +887D0000 2C030001 +4082FEE0 7F83E378 +3D80803A 618C5CC4 +7D8903A6 4E800421 +38600075 987D0000 +38600000 907D0001 +38600000 907D0005 +38600000 907D0009 +7FA3EB78 3880000D +38A00001 3D808000 618C55F0 7D8903A6 -4E800421 887D0000 -2C030001 41820018 -3D808034 618CF314 +4E800421 7FA3EB78 +38800221 38A00000 +3D808000 618C55F0 +7D8903A6 4E800421 +887D0000 2C030001 +41820018 3D808034 +618CF314 7D8903A6 +4E800421 4BFFFF8C +3A9D0005 3C808043 +60842078 88740060 +90640014 88740063 +98640018 88740084 +9064001C 88740087 +98640020 887400A8 +90640024 887400AB +98640028 887400CC +9064002C 887400CF +98640030 A074000E +9064000C 3D808001 +618C8254 7D8903A6 +4E800421 386000C7 +3D808001 618C8C2C +7D8903A6 4E800421 +38600004 3D808001 +618C7700 7D8903A6 +4E800421 3860001C +3D808002 618C6F2C +7D8903A6 4E800421 +3D808021 618CB2D8 +7D8903A6 4E800421 +3AA00000 1C150024 +7E96A378 7ED60214 +3D808000 618C569C +7D8903A6 4E800421 +88960060 7C840774 +7C041800 41820028 +38600000 3D808000 +618C56A0 7D8903A6 +4E800421 3D808000 +618C56A8 7D8903A6 +4E800421 3AB50001 +2C150006 3AD60024 +4180FFB0 A074000E +3D808022 618C519C 7D8903A6 4E800421 -4BFFFF8C 3A9D0005 -3C808043 60842078 -88740060 90640014 -88740063 98640018 -88740084 9064001C -88740087 98640020 -887400A8 90640024 -887400AB 98640028 -887400CC 9064002C -887400CF 98640030 -A074000E 9064000C -3D808001 618C8254 -7D8903A6 4E800421 -386000C7 3D808001 -618C8C2C 7D8903A6 -4E800421 38600004 -3D808001 618C7700 -7D8903A6 4E800421 -3860001C 3D808002 -618C6F2C 7D8903A6 -4E800421 3D808021 -618CB2D8 7D8903A6 -4E800421 3AA00000 -1C150024 7E96A378 -7ED60214 3D808000 -618C569C 7D8903A6 -4E800421 88960060 -7C840774 7C041800 -41820028 38600000 +7C641B78 38600001 3D808000 618C56A0 7D8903A6 4E800421 3D808000 618C56A8 7D8903A6 4E800421 -3AB50001 2C150006 -3AD60024 4180FFB0 -A074000E 3D808022 -618C519C 7D8903A6 -4E800421 7C641B78 -38600001 3D808000 -618C56A0 7D8903A6 -4E800421 3D808000 -618C56A8 7D8903A6 -4E800421 3D808002 -618C7168 7D8903A6 -4E800421 8062F240 -2C030000 40820018 -38600001 3D808002 -618C4030 7D8903A6 -4E800421 3D808002 -618C4F6C 7D8903A6 -4E800421 3D80801A -618C4B60 7D8903A6 -4E800421 48000068 -4E800021 C33E0000 -00000000 00000000 -3F800000 3F19999A -43B70000 43AF0000 -432A0000 00000000 -4E800021 57616974 -696E6720 666F7220 -67616D65 25730000 -4E800021 00000000 -2E000000 2E2E0000 -2E2E2E00 4E800021 -736C6970 70692E67 -67000000 BA810008 -800100B4 382100B0 -7C0803A6 4E800020 -3D80801A 618C6368 -7D8903A6 4E800420 -807F0000 00000000 +3D808002 618C7168 +7D8903A6 4E800421 +8062F240 2C030000 +40820018 38600001 +3D808002 618C4030 +7D8903A6 4E800421 +3D808002 618C4F6C +7D8903A6 4E800421 +3D80801A 618C4B60 +7D8903A6 4E800421 +48000068 4E800021 +C33E0000 00000000 +00000000 3F800000 +3F19999A 43B70000 +43AF0000 432A0000 +00000000 4E800021 +57616974 696E6720 +666F7220 67616D65 +25730000 4E800021 +00000000 2E000000 +2E2E0000 2E2E2E00 +4E800021 736C6970 +70692E67 67000000 +BA810008 800100B4 +382100B0 7C0803A6 +4E800020 3D80801A +618C6368 7D8903A6 +4E800420 807F0000 +60000000 00000000 041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm 043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm diff --git a/Playback/Core/Scene/SceneThink_Playback.asm b/Playback/Core/Scene/SceneThink_Playback.asm index 41e5e661..889800fb 100644 --- a/Playback/Core/Scene/SceneThink_Playback.asm +++ b/Playback/Core/Scene/SceneThink_Playback.asm @@ -19,6 +19,8 @@ .set SLPLOGO_CAMDESC, 0x4 .set COBJ_LINKS, 0x24 .set LOGO_GXLINK, 9 +.set JOBJ_XSCALE_OFST, 0x2c +.set JOBJ_XPOS_OFST, 0x38 bl DATA_BLRL mflr REG_LOCAL_DATA_ADDR @@ -32,6 +34,10 @@ DATA_BLRL: .set DO_STRING_SLPLOGO_FILENAME, 0 .string "slplogo_scene_data" .set DO_STRING_SLPLOGO_SYMBOLNAME, DO_STRING_SLPLOGO_FILENAME + 12 +.float 1.48410099 +.set WIDESCREEN_XSCALE_FACTOR, DO_STRING_SLPLOGO_SYMBOLNAME + 19 +.float -1.7 +.set WIDESCREEN_XPOS_OFFSET, WIDESCREEN_XSCALE_FACTOR + 4 .align 2 FBegin: @@ -98,6 +104,24 @@ FBegin: branchl r12, JObj_LoadJoint # (jobj_desc_ptr) mr REG_LOGO_JOBJ,r3 +# if widescreen, fix x scale + lbz r3, isWidescreen(r13) + cmpwi r3, 0 + beq skipWidescreenFix + +# Fix xscale + lfs f1, 0x2c(REG_LOGO_JOBJ) # 0x2c = x scale in jobj + lfs f2, WIDESCREEN_XSCALE_FACTOR(REG_LOCAL_DATA_ADDR) + fmuls f3, f1, f2 + stfs f3, JOBJ_XSCALE_OFST(REG_LOGO_JOBJ) + +# Fix xpos (shift left) + lfs f1, 0x38(REG_LOGO_JOBJ) # 0x38 = x pos in jobj + lfs f2, WIDESCREEN_XPOS_OFFSET(REG_LOCAL_DATA_ADDR) + fadds f3, f1, f2 + stfs f3, JOBJ_XPOS_OFST(REG_LOGO_JOBJ) + +skipWidescreenFix: # Add logo JOBJ to GOBJ mr r3, REG_LOGO_GOBJ li r4, 3 # Stolen from training mode