Upstream 240p Test Suite for Nintendo 64 has a new test called "Diagonal Test". At 3:48 in the video, see four 5-pixel-wide bars with 5-pixel spaces between them. This amounts to 35 by 200 pixels on N64 (or probably 35 by 140 on GBA).
Per the Diagonal Test source code, a plausible set of controls for the GBA is roughly as follows:
- Right, autorepeating at 60 Hz: rotate clockwise by 1/(360 * speed divisor) turn
- Left, autorepeating at 60 Hz: rotate counterclockwise by 1/(360 * speed divisor) turn
- Up: Decrease speed divisor (minimum 1)
- Down: Increase speed divisor (maximum 20)
- A Button: toggle automatic rotation in last rotation (Left or Right)
Because 1/(360*19) and 1/(360*20) are so close, the rotation angle will need all the precision it can get. Consider a 32-bit fraction of a turn, and consider evaluating the sine and cosine using CORDIC.
Upstream 240p Test Suite for Nintendo 64 has a new test called "Diagonal Test". At 3:48 in the video, see four 5-pixel-wide bars with 5-pixel spaces between them. This amounts to 35 by 200 pixels on N64 (or probably 35 by 140 on GBA).
Per the Diagonal Test source code, a plausible set of controls for the GBA is roughly as follows:
Because
1/(360*19)and1/(360*20)are so close, the rotation angle will need all the precision it can get. Consider a 32-bit fraction of a turn, and consider evaluating the sine and cosine using CORDIC.