Just to make sure you and everyone else reading this is aware, the official MIDI Tuning Standard description is part of
The Complete MIDI 1.0 Detailed Specification PDF document. See PDF page 79.
Here are some notes about the xx yy zz values.
The xx value is the starting MIDI note number (decimal 0 to 127, hex 00 to 7F) you want to use in A440 twelve-tone equal temperament. Middle C is decimal 60, hex 3C. A440 is decimal 69, hex 45.
The yy zz value represents a fractional amount you add to raise the starting note.
The smallest yy zz value of hex 00 00 represents the original note with no raise.
The largest yy zz value of hex 7F 7F is 1 step below the next note.
There are 2^14 = 16384 steps between notes.
Note: The maximum xx yy zz value of hex 7F 7F 7F is reserved to mean "no change", so for xx note hex 7F the highest you can use for yy zz is hex 7F 7E.
To convert a cents value into a yy zz value, you can use this process:
Start with a cents value from 0 to +99.993896484375.
Divide by 100. You now have a value in semitones from 0 to +.99993896484375.
Multiply by 16384. You now have a value in steps from 0 to +16383.
Round to the nearest whole number.
Divide by 128.
Write down the part before the decimal point. This is the decimal value for yy.
Subtract the part before the decimal point leaving just the fractional part after the decimal point.
Multiply by 128.
This is the decimal value for zz.
(Convert the decimal values to hex if you need hex values.)
You can only use positive cents values to raise notes. So if you want to lower a note, change the xx value to the next lower note, and change the cents value to 100 minus the amount you want to lower by.
Examples:
Middle C + 63 cents is the xx yy zz value of hex 3C 50 52.
Middle C - 64 cents is the xx yy zz value of hex 3B 2E 0A.