Title: N64 GameShark "Savestate" Codes (1.0 J/1.1 J Only) Post by: Volvagia on October 20, 2015, 08:04:30 PM Primarily for 100% practice. Some issues (listed in this page) will be ironed out soon.
Pastebin for real-time updates: http://pastebin.com/h6Kx8hK7 ================================== | Ocarina of Time | | N64 GameShark Codes | | Codes by @Faschz | ================================== HOW TO USE: ================================= To use these codes you will need a cart of the Japanese Ocarina of Time (either Version 1.0 or Version 1.1), Super Mario 64 (for resetting the GameShark) and a GameShark Version 3.3 - no lower version number of GameShark will work, only 3.3 will work with these codes. If you have a GameShark already, put it in your N64, put Super Mario 64 ontop of it and turn it on and go to the Game Codes section towards the bottom of the options. Scroll through these codes until you find the one for Zelda and select it. You'll be prompted to turn off your console if you confirm you own the game and switch Mario with Ocarina of Time. Doing so should boot the GameShark up like================================== | Ocarina of Time | | N64 GameShark Codes | | Codes by @Faschz | ================================== HOW TO USE: ================================= To use these codes you will need a cart of the Japanese Ocarina of Time (either Version 1.0 or Version 1.1), Super Mario 64 (for resetting the GameShark) and a GameShark Version 3.3 - no lower version number of GameShark will work, only 3.3 will work with these codes. If you have a GameShark already, put it in your N64, put Super Mario 64 ontop of it and turn it on and go to the Game Codes section towards the bottom of the options. Scroll through these codes until you find the one for Zelda and select it. You'll be prompted to turn off your console if you confirm you own the game and switch Mario with Ocarina of Time. Doing so should boot the GameShark up like normal but with Ocarina of Time added ontop instead of Mario. From here, you can add codes to the Games listing (You will need to add Ocarina of Time J to the listing yourself, Japanese Ocarina of Time is not listed here by default. Any reference to Ocarina of Time is to the American versions of the game and the codes will not work for the Japanese version unless you switch the master codes. It's recommended you make a new game listing.) After you've added the codes and selected them (turned them on) you can boot the game with the codes on. KNOWN ISSUES: =================================== * Golden Skulltulas don't respawn * Nabooru Knuckle doesn't respawn (You Get Stuck) * Saving sometimes deletes a file (We're not sure what exactly causes it. If someone can reproduce it consistently please inform @Faschz on twitter.) * Unique Entrance Cutscene (e.g: Deku tree opening) will only play once. * Inventory, once set, e.g, getting Slingshot, is now in your menu even after reload area/dungeon. * Game crashes if you press L without being paused (due to Inventory Editor) * Required to hold L to browse the Inventory Editor or you activate other codes. FAQ: =================================== ---------------------------------------------- Q: I pressed reset with OoT on the GameShark now my GameShark won't turn on again. How do I fix this? A: When you turn this off or press the reset button often times the GameShark will not come back on again normally. To resolve this you need to press the reset button on the GameShark cartridge and put Mario back ontop of the unit and re-power on the system. This will cause the GameShark to go back to it's factory status. Simply repeat the standard process for loading OoT from here to get OoT to work again. ---------------------------------------------- Q: I have a code request or an issue with a code, who can I contact about this? A: @Faschz (on Twitter) made most of these GameShark codes. You can ask him about queries. Q: I have a question about the step process of this guide, who can I contact about this? A: This pastebin was written by @Volvagia224 on twitter. You can contact me there. ----------------------------------------------- Q: What do all the values mean in the Inventory Editor. A: Please read this very detailed page: https://tcrf.net/Proto:The_Legend_of_Zelda:_Ocarina_of_Time_Master_Quest/Inventory_Editor ----------------------------------------------- Q: The GameShark crashes when I press reset. How am I supposed to practice sections with save warping? A: Press D-PAD up to go to the file select screen when you save. This is the alternative. ---------------------------------------------- Q: I have a 1.0 code that I need to work on 1.1 that currently doesn't, how do I work this out? A: In hex: 1.0_address + 1C0 = 1.1_address ---------------------------------------------- OCARINA OF TIME (J) V1.0 CODES =================================== Master Code F10004E4 2400 EE000000 0000 Reload Last Loading Zone with D-Pad Down D11C84B4 0400 801DA2B5 0014 <-- Reload Title Screen with D-Pad Up D01C84B4 0008 8011B92F 0002 <-- Title D01C84B4 0008 801DA2B5 0014 <-- Reload D01C84B4 0008 801DA2B4 0000 <-- Deku Default D-Pad Left to set at Health to 3 Hearts D01C84B4 0002 8111A600 0030 Destroy all Dungeon Flags 50004802 0000 8111A6A4 0000 8011A734 0040 <-- Water Temple Water level 50004F01 0000 8011A735 0000 Destroy all Dungeon (boss room) Flags 50007002 0000 8111A880 0000 Inventory Editor D01C84B5 0020 801D8DD7 0002 A list of generic gameshark codes for Version 1.0 can be found here, for infinite ammo and such in specific equipment or other "useful" codes. The codes above are custom ones for practice purposes made by @Faschz: http://www.hotcheats.com/legendofzeldaocarinaoftimegamesharkcheatsnintendo64.html OCARINA OF TIME (J) V1.1 CODES =================================== Master Code F10004E4 2400 EE000000 0000 Reload Last Loading Zone with D-Pad Down D11C8674 0400 801DA475 0014 <-- Reload Title Screen with D-Pad Up D01C8674 0008 8011BAEF 0002 <-- Title D01C8674 0008 801DA475 0014 <-- Reload D01C8674 0008 801DA474 0000 <-- Deku Default D-Pad Left to set at 3 Hearts D01C8674 0002 8111A7C0 0030 Destroy all Dungeon Flags 50004802 0000 8111A864 0000 8011A8F4 0040 <-- Water Temple Water level 50004F01 0000 8011A8F5 0000 Destroy all Dungeon (boss room) Flags 50007002 0000 8111AA40 0000 Inventory Editor D01C8675 0020 801D8F97 0002 A list of generic gameshark codes for Version 1.1 can be found here, for infinite ammo and such in specific equipment or other "useful" codes. The codes above are custom ones for practice purposes made by @Faschz: http://www.hotcheats.com/legendofzeldaocarinaoftimegamesharkcheatsv11nintendo64.html Title: Re: N64 GameShark "Savestate" Codes (1.0 J/1.1 J Only) Post by: mzxrules on November 11, 2015, 07:00:18 AM The reason the save file is being deleted is due to the checksum test failing. When the game boots (during the spinning N logo sequence), all 6 save files are individually loaded into what I call the "sram" block in memory (i think), and the checksum is tested on the all the saves. If a code modifies any of the values within the "sram" block (which the health and dungeon flags codes do), it will invalidate the checksum and the save will be marked as invalid.
Second, these codes work for a US NTSC 1.0 and 1.1 carts. There's even a code that effectively converts NTSC 1.0/1.1 into the Japanese or US version... I don't know why Fasch didn't add that one. Lastly, it'd be fairly trivial to convert this short list of codes to any version of Ocarina of Time, because all of the addresses reside within two relatively well known spaces in ram: the "sram" block, and the global context Title: Re: N64 GameShark "Savestate" Codes (1.0 J/1.1 J Only) Post by: Chain on November 19, 2015, 06:58:15 PM Would it be possible to make a code which sets your rupee value to the value of the wrong warp timer in the Deku tree? This way you could see the warp timer without using software like MHS.
I want to do some wrong warp testing in Deku but mupen is awful so if at all possible I'd like to avoid using it. Title: Re: N64 GameShark "Savestate" Codes (1.0 J/1.1 J Only) Post by: mzxrules on November 21, 2015, 05:28:29 AM I actually tried making a hack like this. The problem I had was that the rupee count wasn't being visibly updated fast enough to match up. This might not matter if you're using pause buffers/unload the blue warp, since it would give the display time to catch up.
Are you planning on testing on real hardware or something? Title: Re: N64 GameShark "Savestate" Codes (1.0 J/1.1 J Only) Post by: Chain on November 21, 2015, 11:11:13 AM I want to do some testing on PJ64 since mupen buffering sucks and I might make a gecko code for VC since oob chu hovers crash on emulator but work on VC (I'm working on a setup for timerless deku to bongo ww)
If you still have the code could you post it please? Title: Re: N64 GameShark "Savestate" Codes (1.0 J/1.1 J Only) Post by: mzxrules on November 22, 2015, 03:17:25 PM Ah. In that case (at least for the PJ64 testing bit) you are dumb, and you should feel dumb for not better researching the program you're using (http://memoryhacking.com/feature.php) (scroll to the bottom).
But anyway, the proper way to hook on to Project 64 1.6 addresses with MHS is this:
Now to explain: the point of the [] is that they allow you to capture a 32 bit pointer. In Project 64 1.6, address D6A1C contains the pointer to the emulated n64 ram space, thus the [project64.exe+D6A1C]. The + 0h bit (which can be written as 0x0 if you want) you probably understand but for the people who don't it works like this: Say you want to monitor the real N64 address 8011A5D0, or a cheat code like 8111A5D0. You would drop the 80/81 first, giving you 11A5D0. Then
Complex addresses make it really easy to port mhs addresses to different emulators, since all you have to do is find and replace the [project64.exe+D6A1C] constant for the emulator you're porting the list to. |