Address Error Exception: Difference between revisions

wii vc does not ignore all aees
(I looked into this and it seems RIP for the reasons given, correct me daddy)
(wii vc does not ignore all aees)
Line 1: Line 1:
The [[Nintendo 64]]'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.
The [[Nintendo 64]]'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 Pointer Exception''', which is an Address Error Exception caused by attempting to access an address of 0 (NULL).


== Exploits ==
== 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.
Address Error Exceptions often have exploit potential on [[Wii VC]] since the Wii VC emulator ignores null pointer exceptions. This means that a read from a null address into a register will actually leave the register untouched with its last value and resume normal execution.


We can then analyze [[Crash|crashes]] that cause Address Error Exceptions.  
We can then analyze [[Crash|crashes]] that cause Address Error Exceptions.