Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- the system isn't really "picking" between timer0 values. here's how it works:
- timer0 is a fast timer that sits at 0x04000100 and it just counts from 0-65535 over and over. based on a control byte next to it(4000102), it runs at 1 of 4 different speeds. If you check the memory, the control byte is C1, which is F/64 for timer speed.(F = 16.78 mHz, the DS clock speed) 16.78mHz/64 == 262187 Hz, so 262.187 kHz meaning that it's doing 262187 cycles of 0-65535 per frame(i think, possibly per second?). anyway, that said, it's a very fast timer and the game is grabbing it at a given point in its advancement and using the value at that point as an encryption variable.
- it seems that something causes the number grabbed to not always be the same, causes the DS to grab the value a small fraction of a second later. i personally think it's firmware-related, though there isn't enough data to say for sure.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement