I am just trying a new approach to finally see what’s the issue with the save games: using DOSBox’ heavy debug version, I can use the LOG command to save a number of cycles to a text file. These look, for example, like this:
39F6:0000064A mov ah,3E EAX:00000000 EBX:00000005 ECX:00000016 EDX:0000392E ESI:00000121 EDI:00000001 EBP:0000ACE2 ESP:0000ACE2 DS:4C73 ES:40C2 FS:0000 GS:0000 SS:4C73 CF:1 ZF:0 SF:1 OF:0 AF:0 PF:0 IF:1
With the instruction and register information, there should be everything I need. Furthermore, I have the saved file and can see what is actually saved.
I breaked on INT 21,40 when doing the save process, removed the breakpoint and started to log. 2,000,000 cycles gives a 7.8GB file with 33,554,432 lines – I found the above line, which sets the INT21 function 3E, “close file using handle”, at line 1,381,935 (1,381,964 if a new file was created) – I’ll have to experiment to see if 100,000 cycles are enough as well (from the relation of the lines, it should be around 8,500).
P.S.: 100,000 cycles were not enough, but 300,00 were more than enough.