Notes/Ocarina Functions
This is a sub-page of Notes.
THE DATA:
I set these all to 0 or FF and it disabled effects.
--POSSIBLE EFFECT VALUES--
[79] 0x5b9095b3, 0x00000000, [I64 I32 I16 I8 ] [80] 0x5b9095b6, 0x00000000, [I64 ] [81] 0x5b9095b7, 0x00000000, [I64 ] [82] 0x5b9095b8, 0x00000000, [I64 ] [83] 0x5b9095b9, 0x00000000, [I64 ] [84] 0x5b9095ba, 0x00000000, [I64 I32 ] [85] 0x5b9095bb, 0x00000000, [I64 I32 ] [86] 0x5b9095bc, 0x00000000, [I64 I32 I16 ] [87] 0x5b9095bd, 0x00000000, [I64 I32 I16 I8 ]
-probably not these-
[106] 0x5b962657, 0x300000000000000, [I64 ] [107] 0x5b962658, 0x3000000000000, [I64 ] [108] 0x5b962659, 0x30000000000, [I64 ] [109] 0x5b96265a, 0x300000000, [I64 ] [110] 0x5b96265b, 0x03000000, [I64 I32 ] [111] 0x5b96265c, 0x00030000, [I64 I32 ] [112] 0x5b96265d, 0x00000300, [I64 I32 I16 ] [113] 0x5b96265e, 0x00000003, [I64 I32 I16 I8 ]
[114] 0x5b9626df, 0x00000000, [I8 ] [115] 0x5b9626e3, 0x00000000, [I32 I16 I8 ] [116] 0x5b962aff, 0x00000000, [I64 I32 I16 I8 ]
80130F38 - cutscene-like mode boolean value
8016B9F9 - Sheik songs (first time you play songs)
0x800EE6F4 to 0x800EE818 - Ocarina playing functions such as:
Cutscene-like mode (unable to move when completed a song)
Note/Title rendering (when you're playing a song) 0x800EE790
Note playing 0x800EE758
Note/Song checking
Note checking (play a wrong note and you get a 'ding' sound, like when you're learning a song.)
I think that's it.
800ED5B4 - play 09 note automatically if nopd
8016BA20 - note buffer
80131878 - song to play
T9 - song number?
A2 - song length
V1 - successful matches
0x800ED200 - this function.
@0x800ED2FC - 'note buffer' address; 0x8016BA20
@0x800EE758 - button press function check,
will play a note if you nop some beqs, im sure it's possible to play by changing values in ram somewhere. just got to look further into this.
@0x800ECD80, 0x800ECC94,0x800ECCCC - counts until it starts to check, The game only starts to check what you're playing once you've hit the 5th note!
THE HACK:
- Change instruction which clears song value when ocarina is used.
- Coincidentally (or not!), T3 already has Epona's song value in it.
- So we use it instead of R0 (Which holds zero, always)
.ORG 0x800ECCD4
SB T3, 0x1878(AT)
- Instruction which clears song value once ocarina is being used,
- we get rid of this so it doesn't happen.
.ORG 0x800ECB0C
NOP