On Monday 29 August 2005 14:25, Jarno Elonen wrote: > > Saving games on an i386 machine, then trying to load them on an amd64 > > doesn't work. > > Wow, I'd better not ask how you happened to try this.. :)
Well, it's not THAT weird. ;) I have lots of computers; I was playing a NAGI game on a laptop (i386), but then wanted to finish playing on my primary desktop (amd64). > > Looking at the code, it appears it's making an attempt > > to be architecture independent, so I'm pretty sure this is a bug. > > With some luck, it's just that u16 is not really 16 bit or u32 bit is not > really 32 bit. Could you please try and copy the attached patch to > debian/patches/, rebuild and see if it works? I could get that to apply, I get rejects for agi.h. But I patched it manually, and it's a DEFINATE improvement. I was thrown off when I first investigated because I saw that the code used "u32" and "u16", so I figured it was doing it right. (stdint.h is definately a better way.) It's still not loading the game right, but now, instead of getting random garbage on the screen and sometimes a lock up of the program, I get what appears to be a loaded game, with a few weird things: 1) I can still enter commands; "look tree", "help", "inv", etc all work as expected. 2) Not all layers of the background is drawn; for instance, in one loaded game, I see a grass, trees, a river, and the shore, but no stump, no body in the river, no forground rocks, etc. 3) No player sprite, or control. My player doesn't appear, and even if tell him to walk off the screen (there is only one way to exit and it's the whole right wall, no doorways or anything), it doesn't change the room. My bet is that there are still some stray uses of int or unsigned long lying around in some load/save code. Maybe the uint and sint under the RAD_LINUX define area? I will try to narrow it down more here if I can, but I'm not familiar with the code, so any help you have will speed things up. =) -- Wesley J. Landaker <[EMAIL PROTECTED]> OpenPGP FP: 4135 2A3B 4726 ACC5 9094 0097 F0A9 8A4C 4CD6 E3D2
pgpD2zCrP1vuX.pgp
Description: PGP signature