View Full Version : Majora's Mask Timer code request

30th November 2014, 01:27 AM

I hope it's okay that I post here in a new thread. The other MM code thread went pretty off-topic.

I'd like to request a timer stop code. I mean these timers of the minigames and the race against the beaver brothers. I saw that there's already such a code for OoT in the database.

I play the PAL 1.1 version, just to let you know. You can also post a NTSC version, if you'd like, I know the offsets to port them. Fortunately, porting is very easy for N64 games.

Thank you very much for your help!

30th November 2014, 02:53 AM
Edit:Oops,forgot you said PAL 1.1 *facepalms*
New guess made on bottom...

If you open the memory viewer after enabling debugger,you can check to see if the timer code is in the following location...

For NTSC,open the game in PJ64 2.x and go to 0x801F0A40 while in a minigame,and hit refresh after about 5 or more seconds of the timer has passed to see some values changed.
Take note of the timer and look at the numbers in the address location.
If you have less than 50 seconds remaining,it should be below 32.
In hex,if you get to 45 seconds,it should say 2D as the value.
If 801F0A45 has a matching value,it should be your code.
And if it is wrong,then I am WAY off because of an alternate design between OOT and Majora since the latter has several masks as inventory items on a seperate window.

All I can do right now until regaining PC access myself.
My guess is based on OOT's infinite health and infinite time code address difference of 000013A0 found in a hex calculator by subtracting.
The OOT timer code is that much higher than the OOT health code.

Edit2.5:Here is my calculated guess for PAL 1.1 Majora...

Open memory viewer and go to 0x801E82C0 when playing minigame,then hit the refresh button to see what changes.
It should possibly be in 801E82C5 and if not,then I may try to find it the strong-arm way with my leaked beta copy of PJ64.

30th November 2014, 02:06 PM
I sorry, but I guess this didn't help. When I try this, there's only a wall of zeros. There seems to be no activity in these adresses while playing minigames. I also tried it on the NTSC version but I get no values, either.

Maybe the timer is elsewhere because of this weird timer glitch MM experiences. Look at the thread "Zelda Majora's Mask timer too fast".

If the VIs are set to the standard of 2200, the timers run way too fast. To make them count normally you have to set the VIs between 1485 and 1500. Maybe that causes the values to be removed from their normal position?

30th November 2014, 09:23 PM
Sorry,I just can't find a stable one,there is a code that exists for the Wii VC version with NARE as the Game ID.
It does not have any clear address,so I can't find it without being a true expert. :(

30th November 2014, 09:43 PM
Thank you very much! Looking forward to it!

30th November 2014, 10:53 PM
Kinda kills the point if you are not using PJ64 to run it since it is an issue on PJ64 specifically.

1st December 2014, 02:37 PM
I'm using PJ64, don't worry. I don't really like the other emulators very much. PJ64 is much more convenient to use.

2nd December 2014, 04:27 PM
Sorry to bother you but did you already find something? Will you write it down here when you find working code? As I have just a few experiences of the other N64 emulators, I didn't try searching for values on them.

2nd December 2014, 06:24 PM
I can't find it,sorry. :(

It is one of the more difficult codes to deal with since Majora's Mask can be really complex.
The only value that even shown signs of working was one that corrupts save data if set too low,and it is always at a different value when the mini game starts.

All I can say is try copying your save data into PJ64 1.6 and make sure counter factor is 1 for Majora in game settings.
The counter factor on that number fixed it back in 2004 for somebody.
Not sure if 1.6.1 also works or not,but I will test some things since I fail at finding complex codes.

2nd December 2014, 06:45 PM
Okay, I downloaded PJ64 1.6 now and set the counter factor to 1. What should happen now?
How do I enable the debugger on 1.6?

2nd December 2014, 09:36 PM
It has no debugger,and it is not needed,it's just the PJ64 version where the mini game timer is supposedly working properly.

I already said that I can't find this code because I lack the expert skills,specifically for creating the pointer addresses.
I tried so hard and have exhausted every significant address location.
I may have found the stored values once or twice,but they are unwritable and revert to the current main timer value,which is why the virtual console version has a special code instead of just one line.

Edit:Just tried the shooting gallery,and PJ64 1.6 runs it at the right speed.
I set counter factor to 1 as someone mentioned in another forum.