|
From: Michael C. M. <mcm...@st...> - 2002-10-27 06:32:51
|
I've just committed a three-line fix that lets Linux load and save games, and lets Win32 load and save its older save files. Currently, the LoadGame and SaveGame routines do direct memory dumps of the game state to or from disk. Since some of the entries in the game state are heap pointers, these are cached by LoadGame before reading it in, and then restored afterwards. It missed "clock_sem". However, this is wildly endian-unsafe, as well as wasting a good deal of space. When the big push to convert to endian-safety rolls around, these routines should be rewritten to never touch the pointer values at all. (Various conversion utilities should also probably be written to let people convert old-form save files to new ones. If anyone wants to volunteer to reverse-engineer the old PC save files and transform those into things the current system can see, that would probably be great.) --Michael |