2010-03-28

DSx86 v0.07 Alpha

EmuCR:DSx86DSx86 v0.07 Alpha is released. 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.

DSx86 v0.07 Alpha Changelog:
This version has the following major changes/improvements:


* CGA mode is forced to be blitted even if you have selected
Direct mode. I believe the blitted mode is fast enough for all
CGA games, and removing the direct mode made the code smaller
and simpler, and there is no danger of the game stopping because
of an unsupported CGA graphics opcode any more.

* TEXT mode is now also using a blitted screen copy method with
a dirty buffer, so it is reasonably fast, and it too supports
now all possible opcodes to access the display RAM.

* About a dozen new EGA opcodes added.

* About a dozen new DOS interrupts are supported, including
some DOS internal functions that are needed by software like
Norton Sysinfo, and old FCB file functions that are needed by
very old games like Ultima 3.

* Fixed bugs in "!" key, DOS memory resize function, division opcode,
and 0xE000 segment memory access when not mapped to an EMS page.


I added all the DOS functions that Norton Sysinfo needs,
so I can now run it on the real hardware and check the CPU
emulation speed. I also added (partially faked) disk parameter
block handling, which reads the data from the SD card partition
and presents it like it was a hard disk (I have a 2GB SD card
in my DS Lite). It looks to me like
Sysinfo reads the media descriptor byte at the wrong
offset, it should be 0xF8 and I have put 0xF8 to the offset
I believe is correct, yet Sysinfo displays it as 0xFF.
EmuCR:DSx86
EmuCR:DSx86The CPU speed bar changes between 10.6, 10.7 and 10.8 depending
on whether the screen update mode is 60 FPS, 30 FPS or 15 FPS.
Back in November last year the CPU speed showed 11.3 when running
on real hardware, so my CPU core has gotten a little bit slower
while I have been adding features to it. I'll probably look into
optimizing it further after I have added the most important
missing features.
Plans for the next two weeks (which include my Easter vacation)
are to add mouse support, and then I would like to implement more
graphics modes. Probably the VGA ModeX would be the most useful,
although the higher-resolution EGA/VGA modes might be somewhat simpler
to implement, as I can use the same opcodes, only the screen
blitting function needs to be changed.

Download: DSx86.nds
Download: DSx86.ini
Download: DSx86_LW2.nds
Source:Here

0 Comments

Post a Comment