....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
Just to let you know, you can now play DM PC using....
Moderator: Ameena
Forum rules
Please read the Forum rules and policies before posting.
Please read the Forum rules and policies before posting.
Re: Just to let you know, you can now play DM PC using....
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?
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....
What do you mean by dead-ends hidden in the routines and problems with copy protection?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.
Spoiler
(\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/) (\__/)
Spoiler
(@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@) (@.@)
Spoiler
(>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<) (>s<)
Re: Just to let you know, you can now play DM PC using....
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!
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!
- Sophia
- Concise and Honest
- Posts: 4240
- Joined: Thu Sep 12, 2002 9:50 pm
- Location: Nowhere in particular
- Contact:
Re: Just to let you know, you can now play DM PC using....
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.
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....
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).Adamo wrote:What do you mean by dead-ends hidden in the routines and problems with copy protection?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.
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.