This project is dedicated to the memory of William Morris (aka Frags), who was the main contributor to the bounty but was unable to see the final result.

Sunday, September 2, 2012

Bug! *Splat*

Every developer knows the feeling when finally he/she finds a bug and slaps to the forehead while mumbling: "How on earth was this thing ever been working?..."

Well, it just happened to me, I have fixed a bug that stopped the ROM from booting. It was a rather stupid mistake (as usually); for the details check out the update.
In this other minor update I have fixed one more nuance with the wrong addresses in the dumped PowerPC code log.

Right now the emulation advances even further in the booting process than before, when it stops with this cryptic message:

Compiling error: instruction or addressing mode is not implemented, but marked as implemented: 0x323b

Unfortunately, this is true: this is a move instruction with complex addressing mode (68020), which one is not implemented yet.
Since the move instruction itself is marked as supported and all the addressing mode is listed in the descriptor it busts me big time and calls me a liar. Fair enough.

I promise that I implement all the missing addressing modes soon. Honest.

I was so excited that I tried to run the ROM without compiling the instructions but in this case I got back to the previous problem: the reboot loop. :(

At least one bug was squashed again.

In the meanwhile Tobias managed to port the JIT to PowerPC MacOSX. For the speed check out his comment. I hope he sends me the changes soon and I can add it into the main source repository.


  1. I uploaded the patch to the wiki of the sourceforge project. It was the only way I found to send you an email with attachment.

  2. Did you really checked it in? I cannot see any changes for r19 and r20 in the tree, and the newest files are 6 days old?
    Onfortunately the last checked out version did not work anymore on MorphOS. It will let the emulator crash immediately. I will look where the problem is.

    1. Of course it was checked in. Try this view:

      If you click on the comment for the revision you can see the changed files.

      It is possible that the previous version crashed, Tobias discovered a bug in the branch distance calculation which was just fixed in the recent update.

      Please give this version a go and see how it behaves.

    2. Yes it's working again. Great work