View Single Post
Old 18 January 2013, 20:12   #3
FrodeSolheim
FS-UAE Developer
FrodeSolheim's Avatar
 
Join Date: Dec 2011
Location: Førde, Norway
Age: 40
Posts: 3,990
Hi, there are several issues here, but hopefully I have rescued most of your progress (solution at the end). The issues are:

(1) Your save state dir for this game has become corrupt
(2) The save states cannot be used to restore the game to a valid state

I have found the explanation for (1):

- When using the "load WHDLoad zip file" feature of the launcher, a temporary drive is created and the emulator/game is started.
- When the save state feature is used, information about open files are saved with absolute path to the save state file.
- Thus when later restarting the game, the temporary drive is created (at another path), the originally open files can no longer be located, and UAE creates dummy files for these files when restorting the state. By "coincidence", these dummy files are created directly in the save state dir, and this is the reason for the file conflict when later trying to start the game.

This means that save states and the "load WHDLoad zip file" feature of FS-UAE Launcher are not safe to use together, at least not currently. This may be fixable though.

Another important point is that using save states and hard drives at all may not always work, since the save states and hard drive content may come out of sync when loading earlier states (for example, the Amiga software loaded from the state can assume that some content is available / is not available on the HD, when the opposite is true). So in any case, using the game's own save feature is highly recommended. I think a warning about this in the FS-UAE interface will be appropriate (i.e. that FS-UAE suggests also using the games save feature when you access the save state menu).

The second issue (2) is more.. complex:

When the game is loaded from one your states, the game stops working when file resources are accessed (with the error message you reported ("The installed program has modified the vbr detected on entering via resload_loadfile"). This also prevents you from loading the state and saving your progress via the normal save feature.

By debugging a bit, I've found out that when loading the state, the VBR is first set to 0x001f6fc0, and shortly after set to 0x00000000. I can't right now tell why this happens, but WHDLoad aborts when it detects that the VBR has been modified.

I have tried to rescue your game progress for you:
- I manually recreated the HD files for the game at the locations expected by the save state
- I temporarily hacked FS-UAE to avoid setting VBR to 0x00000000 when loading the state.
- With these changes, I managed to load the last state from January 15th, and use the save feature to save the progress to disk. Hopefully, this savegame is valid (it looks that way, at least it loads after restarting the game).

To use this savegame, do the following:
- Make a backup of the existing save state dir for the game, just in case
- Delete everything inside it, including the save state files and DH0.
- Unzip the attached zip file to the (now empty) state dir, so FED_MAP6 is stored as DHO/Captive/Fed1/FED_MAP6 under the state dir.
- Start the game as usual (and don't use any save states, which you have probably deleted anyway), let the game load, access the load game feature, and "Load Game 6".

I cannot guarantee 100% that there is no problem with the save game, but it seems to work fine here

Remember to use the game's save feature. Also, the modified files are only saved back to the state dir (from the temp dir) by the Launcher when FS-UAE quits, so a power loss (or something) will prevent this from happening. So to ensure progress is really saved with this feature, it's actually best to quit FS-UAE once in a while
Attached Files
File Type: zip DH0.zip (3.7 KB, 164 views)
FrodeSolheim is offline  
 
Page generated in 0.04433 seconds with 12 queries