Address Error Exception
On the N64's CPU, the VR4300 can throw an Address Error Exception. This occurs when lookup to an invalid or non-existent address occurs, most commonly as a null-reference exception.
Exploits
Because the exception only occurs on the N64 and not the Wii VC it could potentially be exploited. The Wii VC will skip the write or read when the exception would occur. This means that a read from an invalid address into a register will actually leave the register untouched with its last value and resume normal execution.
We can then analyze crashes that cause Address Error Exceptions.
Cause | ACE Exploitable | Any Exploitable | Notes |
---|---|---|---|
Exceed the object limit | |||
Have too many objects at once on the screen | |||
Walking at PU speed for only a portion of the 4 quarter steps on a frame | |||
Moving at PU speed with no joystick input for all 4 quarter steps on a frame | |||
Moving at PU speed directly into a wall | |||
Deleting a non-existent file on the File Select Screen | |||
Moving a shadow above surface 12 while it's over OOB | |||
Killing a Monty Mole remotely | |||
Killing an uninitialized Monty Mole | No | No | |
Going out of bounds in a room with a painting | |||
Being pushed off of a hang-able ceiling while in the idle hanging action | |||
Sound glitch | |||
Moving the camera immediately when entering VCutM |