EmuNewz Network

Full Version: DSx86 0.25 and DS2x86 0.04 Released
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
DSx86 is a PC emulator for Nintendo DS. It's purpose is to allow you to run old DOS games on your Nintendo DS game console.

DS2x86 is a version of DSx86 for the SuperCard DSTwo flash cart .

http://dsx86.patrickaalto.com/

Changes :
Quote:-DSx86 0.25 release info ;

The changes in this version are:

* Built with libnds 1.5.0 (from Feb 14th). This might make it possible to use the DSi mode via a so called "sudoku hack". I don't have access to such a hack, so I have no way of making sure whether it works or not.
* New Smooth screen scaling mode added. NOTE! This mode currently only works in CGA and MCGA graphics modes, all other modes simply show a black screen (or some corrupt data) when going to Smooth screen scaling mode. The Smooth scaling in MCGA mode causes a severe performance hit, so it is not recommended unless you run DSx86 in DSi mode.

I plan to implement the smooth scaling screen modes to EGA and Mode-X graphics modes as well, but both of those will also cause a severe performance hit. I'll also look into the possibility of adding smooth scaling to 80x25 text mode, simply by using a narrower font.

The longer term plans are to add 80286 protected mode features, and taking advantage of the larger RAM in DSi mode, to be able to run Windows 3.0 in Standard mode on a DSi.

-DS2x86 0.04 release info ;

This version has a lot of new protected mode opcodes supported, based on the debug logs you have been sending. Thanks again for those! This version might now run a few more 386-specific games, for example I have been able to make Warcraft: Orcs & Humans start up into the actual game. Every now and then it fails with an unsupported I/O port, which seems to be caused by the game sometimes detecting the SoundBlaster as using DMA channel 3, while in reality it uses DMA channel 1. I suspect there are still some rather serious problems in my audio handling.

I have also made some minor performance improvements, the things mentioned in my previous blog post, and I also moved the temporary variables used by the Mode-X graphics mode opcodes into the small data segment which is accessed by the GP register. This makes the Mode-X graphics handling (as used in Doom, for example) slightly faster.

While making the performance improvements, I again ran into the weird keyboard reading problem I originally fought with at the beginning of this year. After various tests I was able to determine that when I used the new improved Mode-X code (which was slightly smaller), the keyboard behaved very erratically, but going back to the original slightly larger Mode-X code got rid of the problem! The weird thing is that this problem happens immediately in the 4DOS prompt, when none of the changed Mode-X routines have even been run yet!

So, in the end I had to add 1000 bytes of filler at the end of the Mode-X graphics code to make the keyboard reading work properly! This obviously makes absolutely no sense, and I will remove the extra filler bytes as soon as I can figure out what the real problem is. It seems like some sort of alignment problem in the DS2 SDK code that handles the communication between the ARM side and the MIPS side, but that is just a theory and without knowing the internals of the communications code I have no way of properly testing this theory.

I haven't been able to handle all the issues mentioned in the debug logs yet, but many games should at least progress further. Please send me the new debug logs again for this version, and I'll again try to implement as many fixes as possible to the next version.
Reference URL's