PDA

View Full Version : DS2x86 EGA work



wraggster
December 5th, 2010, 20:50
News of the latest work on the Dos Emulator for DS from Pate:

Last week was a very busy week at the office, we had a big customer delivery of our software, so that I did not even have time to work on DS2x86 on the evenings. Thus, nothing much has happened since the previous blog post. I started working on porting the EGA graphics code from the original DSx86 to DS2x86, though. That is a somewhat boring work, as it just means translating the same algorithms from ARM assembly to MIPS assembly. However, I decided to change the memory organization of the emulated EGA graphics to better suit the DS2x86 16-bit color screen blitting, so that will at least cause some changes.

Since the last blog post I have also improved the SB digital audio handling a bit, so that it now sounds pretty good in Wing Commander II. It is still not very good when playing LineWars II, most likely because LW2 uses very short DMA buffers and my 60Hz DMA buffer scanning rate in DS2x86 might be too slow for that. Other minor improvements include better debug screen handling, so that I can now print debug strings also while simultaneously showing the touchpad keyboard. This helps me in debugging the new features, but it won't affect the release version.

In general I have not had any problems with the DS2 SDK any more, DS2x86 seems now to start properly every time. Also my screen and audio updating routines seem to be quite robust at the moment, so that I can focus on improving the actual x86 emulation. There are still a lot of things missing, and my current focus is to get many of the same games that run in DSx86 running in DS2x86, so that I can release the first alpha version by the end of the year. After that I will focus on the 386-specific and protected mode features. The DS2x86.plg file is already almost 2 megabytes, and it takes 6 minutes to FTP-transfer to my DS Lite, which is quite annoying. I always try to think of something else to do while it transfers, but especially if there is a minor bug in the latest code, it is quite frustrating to fix the problem in a few seconds, build a new version, and then again wait over 6 minutes to see if the problem got fixed.

Tomorrow is the independence day of Finland, so it is a holiday and I can continue working on the EGA features. I hope to get something showing on the screen in an EGA game by tomorrow evening. That's all for this short blog post, hopefully I have something more interesting to tell in my next blog post. :-)


http://dsx86.patrickaalto.com/DSblog.html