* Implemented coprocessor 15 ability to switch ARM9 vector execution address from 0xffff0000 to 0x00000000. Required for DSLinux to work. Unfortunately DSLinux still doesn't run under DSEmu but it's a step on the way.
* Fixed implementation of ARM opcodes that used suffix 'S'. These weren't dealing with the spsr and cpsr correctly.
* Implemented timers 0, 1, 2 and 3 and attempted to get them running at approximately the right rate.
* Got keyboard interrupts working. Tutorial eight now works in DSEmu.
* Implemented coprocessor 15 ability to switch the ARM9 into low power mode.
* Changed SWI 4 and SWI 5 implementation to use coprocessor 15's instruction to switch into low power mode, and implemented in ARM assembly in the fake ARM9 BIOS instead of C. This works much more like the actual DS hardware now. Previously SWI 4 and 5 only really worked for the vertical blank interrupt, now it works for all interrupts.
* Fixed some timing issues with interrupts and low power mode.