McMarkis Posted December 13, 2023 Report Share Posted December 13, 2023 (edited) Enable 1 Minute Penalties Problem: The SNES rom crashes when you try to modify penalties to be 1 minute, as the game developers never expected there to be 1 minute penalties. Solution: Modify the penalty length in the ROM and skip the problematic check for 0 or 1 if the penalty length is one minute. Technical Details: Similar to the "Defense Ctrl" code injection method, we have to swap out some of the existing code and insert a jump to new code that we create. This new code will be placed in the free space at the end of the 9E bank. Problem Code: Hijack Instruction before the problem code and run new code (One_Min_Pen) Run new code to skip the compare if we know its a one minute penalty and continue like normal as if it was a 2 min penalty. I have included the 1 min penalty rom to play around with or compare for differences if interested. Or you can download the tool and create your own ROM. https://github.com/Mhopkinsinc/NHL94SNESVault/releases nhl94.sfc Hex Version: 1) Change all the penalties from 02 minutes to 01 minutes. Headerless ROM (.SFC) ROM Offsets: (hex) 54C7,54E9,550B,552B,554B,556B,558C,55B1,55C9 Change:02 to 01 Headered ROM (.SMC) ROM Offsets: (hex) 56C7,56E9,570B,572B,574B,576B,578C,57B1,57C9 Change:02 to 01 2) Hijack old code and point to the new code Headerless ROM (.SFC) ROM Offsets: (hex) F3417-F3419 Change:29 FF 00 to 4C 5B FB Headered ROM (.SMC) ROM Offsets: (hex) F3617-F3619 Change:29 FF 00 to 4C 5B FB 3) Insert new code that fixes the bug Headerless ROM (.SFC) ROM Offsets: (hex) F7B5B-F7B6D Change: FF's to C9 01 04 F0 05 C9 01 0A D0 03 4C 21 B4 29 FF 00 4C 1A B4 Headered ROM (.SMC) ROM Offsets: (hex) F7D5B-F7D6D Change: FF's to C9 01 04 F0 05 C9 01 0A D0 03 4C 21 B4 29 FF 00 4C 1A B4 Edited February 17 by McMarkis Updated, added Hex version so this can be done by hand 1 1 1 Quote Link to comment Share on other sites More sharing options...
Smashville Posted December 13, 2023 Report Share Posted December 13, 2023 Any work on the SNES makes the day much nicer. 🤣 1 Quote Link to comment Share on other sites More sharing options...
dangler Posted February 16 Report Share Posted February 16 Any way this can be explained in Hex @McMarkis? Like go to byte xxx,xxx and replace this “…… “ with this “……”? I’m not able to follow what you did to do it myself. Quote Link to comment Share on other sites More sharing options...
McMarkis Posted February 16 Author Report Share Posted February 16 (edited) Updated with Hex values so it can be done manually. Edited February 19 by McMarkis Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.