Next Generation Emulation banner

1 - 3 of 3 Posts

9,504 Posts
Discussion Starter #1
<div>I don't think NGemu ever covered this Nintendo DS emulator before.  Anyways, DSEmu 0.4.3 is released.  Here are the release changes:</div>
  • &nbsp;
  • The Delay SWI has been implemented. </li>
  • The POWER_CR register is now seperated into one for the ARM7 and one for the ARM9. </li>
  • A workaround has been implemented so ndslib console text displays correctly as well as some tile demos working ok. In 0.4.2 the latter was broken. </li>
  • A fix to VRAM mapping. </li>
  • The second screen did not work in 0.4.2. This has been fixed. Both screens should work now. </li>
  • The screens were often flipped compared to how they worked on hardware. This should be fixed. </li>
  • Responsiveness of the GUI has been improved for those demo's that enter 'busy loops'. </li>
  • Touchscreen has been re-implemented by implementing parts of the Serial Periphiral Interface (registers SERIAL_CR and SERIAL_DATA). This should mean that demo's using IPC v1 or IPC v2 work fine without having to hard code the IPC structure into DSEmu. This will require tweaks to get working right as I've done the minimum needed to get ndslib demo's working. </li>
  • The touchscreen bit of XKEYS now works. Programs can detect whether the screen is touched or not. </li>
  • Some logging data removed which was impacting performance.</li>
</div>» Download DSEmu 0.4.3 <a href="">here</a></div>
<div>» DSEmu <a href="" target="_blank">homepage</a> </div>

Back to regular business
3,258 Posts
Actually NGemu did, but the first versions of this emu only emulated the "GBA part" of the DS.

Experenced But New User
866 Posts
New Version as of 04 July 2005

0.4.4 has the following fixes from 0.4.3:
* Implemented coprocessor 15 ability to switch ARM9 vector execution address from 0xffff0000 to 0x00000000. Required for DSLinux to work. Unfortunately DSLinux still doesn't run under DSEmu but it's a step on the way.
* Fixed implementation of ARM opcodes that used suffix 'S'. These weren't dealing with the spsr and cpsr correctly.
* Implemented timers 0, 1, 2 and 3 and attempted to get them running at approximately the right rate.
* Got keyboard interrupts working. Tutorial eight now works in DSEmu.
* Implemented coprocessor 15 ability to switch the ARM9 into low power mode.
* Changed SWI 4 and SWI 5 implementation to use coprocessor 15's instruction to switch into low power mode, and implemented in ARM assembly in the fake ARM9 BIOS instead of C. This works much more like the actual DS hardware now. Previously SWI 4 and 5 only really worked for the vertical blank interrupt, now it works for all interrupts.
* Fixed some timing issues with interrupts and low power mode.
1 - 3 of 3 Posts