Page 1 of 1
Just to let you know, you can now play DM PC using....
Posted: Thu Jul 22, 2010 8:55 am
by isamuu
....savestates!
That's right, a guy over in the Dos Box community has added save sate support to Dos Box, and I've tested it thoroughly and it works! No more having to restart the whole game just to back track a mistake you've made. Simply press the load button for any of
TEN different saves slots and you're good to go!
All the more reason to play the DM Dos

Re: Just to let you know, you can now play DM PC using....
Posted: Thu Jul 22, 2010 9:59 am
by Bit
Hehe, especially in CSB the dead-ends are hidden deep in the routines and it isn't easy to come back to the top. Because they added the copy-protection-stuff later (which grants some sudden death too in case), this problem even got worse. So they surely simply had problems to return and reinit clean.
In some cases they use endless loops, in one other they even spent the 'illegal'-opcode to end.
Then again - with a longer reload-process - one is more carefully

But - reload in the clones should be easy, hm?
Re: Just to let you know, you can now play DM PC using....
Posted: Thu Jul 22, 2010 10:50 am
by Adamo
Hehe, especially in CSB the dead-ends are hidden deep in the routines and it isn't easy to come back to the top. Because they added the copy-protection-stuff later (which grants some sudden death too in case), this problem even got worse.
What do you mean by dead-ends hidden in the routines and problems with copy protection?
Re: Just to let you know, you can now play DM PC using....
Posted: Thu Jul 22, 2010 9:11 pm
by zoom
maybe that problems could arise by using save states or that save states could not be entirely, completely satisfyingly save at all? or that it must have been a tough job to make save states work with dm??
It is really programmers talk and maybe a bit more explaining what goes on would help... and would be interesting as well..
isamuu, thanks for the info!
Re: Just to let you know, you can now play DM PC using....
Posted: Thu Jul 22, 2010 9:24 pm
by Sophia
Save states are, on the simplest level, trivial to implement. You just dump all of memory, registers, etc. to a file.
The only trick is in making sure you've copied absolutely everything, so the emulated system looks exactly as it did when you dumped the save state.
Re: Just to let you know, you can now play DM PC using....
Posted: Thu Jul 22, 2010 9:41 pm
by zoom
aha. cheers sophia :O
Re: Just to let you know, you can now play DM PC using....
Posted: Sat Jul 24, 2010 5:00 am
by Bit
Adamo wrote:Hehe, especially in CSB the dead-ends are hidden deep in the routines and it isn't easy to come back to the top. Because they added the copy-protection-stuff later (which grants some sudden death too in case), this problem even got worse.
What do you mean by dead-ends hidden in the routines and problems with copy protection?
The programming part. Routines call subroutines that call subroutines and so on. In CSB the points where the game ends lie a little deeper in those structures than in DM for example. So, if you return from a subroutine you have to continue somehow in that calling routine and handle this until you're 'on the top' again. Reloading the game means also, you maybe have to clean temporary memory (like caches etc.). That's all not done - neither in CSB nor in DM. They simply do an endless loop and solve all those problems by brute force (and saving some more memory by saving some code).
The copy protection leads i.e. to a situation, where (in case of a false copy - I mean the original game!) the party gets killed with some random delay. That's a very practical solution. Each other way had to be connected with the main endpoints too - and then, it would have been much easier to locate and remove the protection.
In my testclones I made 'clean' ends that allow restarts and so reloads. But I had to track the things very carefully.
As Sophia described it: those emulator-'snapshots' are a very easy workaround, because they don't really have something to do with the program itself.