Thread overview
Access Violation Error Message
Jun 25, 2016
Tony
Jul 11, 2016
Walter Bright
Oct 30, 2016
Lucien Baumann
June 25, 2016
I have been playing the game on Windows XP with out issues, However whenever I try to play a previously saved game on a Windows 7 or Windows 10 OS I get a Access Violation error message.  is there away to play previously saved games on a Windows 7 or Windows 10 platform?
July 11, 2016
On 6/25/2016 4:45 PM, Tony wrote:
> I have been playing the game on Windows XP with out issues, However
> whenever I try to play a previously saved game on a Windows 7 or Windows
> 10 OS I get a Access Violation error message.  is there away to play
> previously saved games on a Windows 7 or Windows 10 platform?

I'm afraid not, as the game save simply writes the memory it is using out to disk.
October 30, 2016
On Monday, 11 July 2016 at 22:16:24 UTC, Walter Bright wrote:
> I'm afraid not, as the game save simply writes the memory it is using out to disk.

The only problem is when the pointers are restored from the file.
There are only three pointers for each player in the EMP file: the map, the display and the current unit.
The map pointer is overwritten at lines 235 & 239 in var.d.
The current unit pointer is set to null at line 242 in var.d.
The display pointer is set to a new display at line 1324 in winmain.d.

The only instruction that causes the crash is at line 1320 of winmain.d. It uses the restored display pointer of player #0 to do display.text.TTinit(). But since the player #0 is not a real player, we can just remove that instruction.

I patched the EXE with NOPs replacing line 1320, and it works.