|
February 27th, 2011, 23:27 Posted By: wraggster
News via http://dsx86.patrickaalto.com/DSblog.html
Firstly, sorry that I had failed to mention in my previous blog posts that the Worms and Warcraft versions I used to test DS2x86 were shareware demo versions. It seems that the proper games do not yet work in the current DS2x86 version. Sorry about this. I managed to find a proper version of Warcraft, and am currently testing it, so there is a bigger chance that it at least will work in the next version.
Since last week I have been working on improving the opcode support. I started going through all the opcodes in order, and implementing the missing versions. There are practically two groups of opcodes, the normal opcodes 0x00-0x0E and 0x10-0xFF, and then the extended group of opcodes beginning with the 0x0F byte. I have now implemented opcodes 0x00-0x0E and 0x10-0x7F (that is, half of the normal opcodes) for all the 16bit/32bit and real/protected mode variations. I am currently working on the second part of the normal opcodes. I doubt I will have time to implement all of them before the next weekend, but some more games might again work in the next version.
I also increased the emulated EMS memory size to 4MB, mainly for The Elder Scrolls: Arena, for which there seems to be interest. After incresing the EMS memory and implementing a couple of new opcodes, it seems to at least start up. I have managed to create a character, save the game, load the game and walk around a little bit. Other than that I don't know how far it would get (as I don't actually know how to play it properly), but it is worth a try in the next version. Oh, and I believe this time I have the proper version of the game. :-)
I have also managed to get little bit further along in Jazz Jackrabbit, as I implemented true General Protection Fault handling. However, it still fails to start, and it seems like the current problem is caused by it not copying correct data into memory. I am debugging it trying to determine the cause for this problem. I am also debugging Warcraft, which currently hangs when giving an order to dig for gold. This seems to be a "soft" hang, the routine it never returns from looks like code that determines the best route to take to reach the digging area, so I plan to compare the behaviour of that algorithm in DS2x86 emulation with that of DOSBox, and the difference should point out the misbehaving opcode in DS2x86.
So, my primary goal for the next version is to get more opcodes implemented, and some bugs in the opcodes fixed. No major new features planned in the next version yet.
For more information and downloads, click here!
There are 0 comments - Join In and Discuss Here
|
|