Pull Goalie with L+R Trigger
Problem:
Pausing the game to pull the goalie kills game flow.
Solution:
This hack allows you to pull / insert the goalie by pressing L+R trigger buttons. Also plays the beep SFX to notify users of the action.
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.
Old Code:
Hijack Instruction LDY.B and LDA.W and JSR (Jump) to the new code we wrote.
Run new code that checks if the goalie is in net and if L+R are pressed for player 1 or 2.
I have included the 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) Hijack old code and point to the new code
Headerless ROM (.SFC)
ROM Offsets: (hex) F50BF-F50C3
Old: A4 91 B9 AA 17
New: 20 6E FB EA EA
Headered ROM (.SMC)
ROM Offsets: (hex) F52BF-F52C3
Old: A4 91 B9 AA 17
New: 20 6E FB EA EA
2) Insert new code that allows you to pull goalie with L+R Trigger
Headerless ROM (.SFC)
ROM Offsets: (hex) F7B6E-F7BC4
OLD: FF's
NEW: A2 00 00 AC 91 00 B9 AA 17 C9 00 FF D0 01 60 B9 C1 FB DD 84 1C F0 09 E8 E8 E0 04 00 D0 F1 80 2D BD 76 07 29 FF 00 C9 30 00 D0 22 B9 AA 17 F0 07 C9 FF FF F0 02 80 16 49 FF FF 99 AA 17 22 07 D4 9F A9 00 70 85 64 A9 05 00 22 7D A1 80 A4 91 B9 AA 17 60 01 00 02 00
Headered ROM (.SMC)
ROM Offsets: (hex) F7D6E-F7DC4
OLD: FF's
NEW: A2 00 00 AC 91 00 B9 AA 17 C9 00 FF D0 01 60 B9 C1 FB DD 84 1C F0 09 E8 E8 E0 04 00 D0 F1 80 2D BD 76 07 29 FF 00 C9 30 00 D0 22 B9 AA 17 F0 07 C9 FF FF F0 02 80 16 49 FF FF 99 AA 17 22 07 D4 9F A9 00 70 85 64 A9 05 00 22 7D A1 80 A4 91 B9 AA 17 60 01 00 02 00
Limitations:
This only works for Player 1 and Player 2, if both players are on the same team, Player 1 gets control of this option.
Only works during game play, you can't pull / insert your goalie in between whistles.