Was it created using your patch, wasn't it?
The problem that it doesn't load on x86 (neither with nor without your patch). Your patch is basically removing the compatibility between little endian and big endian systems and it's not that we want.
Please, attach a savegame created by the original code (best with a fresh 2.4-dev build) and the ufoconsole.log contains messages about the failed loading.
-geever
Yes, the patch I made merely drops the function call to "littleLong" in the cp_save.c file. I did not say the patch was suitable for your
source repo - quite the opposite. It is a dirty hack that proves something in littleLong isn't translating properly between x86 and PPC.
To work the bug out properly would obviously require more #ifdefs and checking and perhaps creating a "universal" file.
But as someone mentioned, the xml contained within is not vulnerable to byte swapping so there is something weird going on.
What that is, I do not know. I am just doing ports of code to PPC as a distraction while on sick leave.
All I wanted to do was make 2.3.1 available on PPC in a reasonably stable format - I would only consider my patch as a pointer
to the bug which I suspect is in littleLong(). It is not a universal binary, nor is it an official one, if you guys want me to say that. It is just what I got working on my Mac, by myself and I wanted to share it back.
I will get the 2.4 repo on my Mac, when I am back at work, which will be ironic as then I won't be able to work on it as much.