Managed to fix the strange behavour in Jetpac where the only bonus falling from the top of the screen was gold bars. The problem was staring me in the face… literally.
The R register is commonly used as a random number generator. My calculation of the register had a bug which reset it to 0 after each instruction. I’m not sure why I didn’t spot it sooner, considering it is displayed on the debug screen!
I have also looked into the Chuckie Egg crash problem. It looks like there is a problem with the mode 2 interrupt handling. When an interrupt fires it seems to be executing the wrong section of memory and causes a crash…