Ahem. Sorry again.
The HRM section about resetting actually doesn't say anything about jmp (a0) having to be aligned. It aligns the Supervisor() target address.
Must all code invoked by supervisor state be 4-aligned? SuperState() on 2.0+ doesn't.
Also if things can be patched and monitored maybe it's best to do as much as possible with hardware code. TRAP into supervisor instead of using Exec etc. If we're turning off ints anyway, I mean...