nds4droid release 36

Release time! This one incorporates everything from release 35 (which was not generally made public), as well as fixes for issues brought up by the beta tester group. Get it on Google Play and sourceforge. Here are the specific release 35 -> release 36 bug fixes:

  • Fixed bugs with the “lightning JIT” engine when loading save states or new ROMs
  • Fixed a bug where setting the JIT block size to zero would cause the app to crash

For reference, here’re the “public” release notes for the new version on Google Play:

  • Added new “lightning JIT” execution engine (thanks gechdcb), on by default, which can give 10-15% performance increases
  • Removed tinycc JIT, exophase JIT, and DeSmuME JIT execution engines
  • Fixed a bug where setting the JIT block size to zero would cause the app to crash
  • Various internal compatibility fixes and updates

I get a constant 60 FPS with New Super Mario Bros. in levels on my Note II :). On a side note, OUYA has rejected release 34 even though all it does is contain performance increases. This is like, rejection number six. Not quite sure what their deal is. But regardless, enjoy!

nds4droid release 35 beta

Okie dokie, here’s the scoop. I’ve merged in gechdcb’s new lightning based JIT into nds4droid, as well as bringing in updates to some of the DeSmuME core. In doing so I also removed the tinycc JIT, exopase JIT, and DeSmuME JIT execution engines, so now all platforms support just three execution engines: Intrepreter, Threaded Interpreter, and lightning.

The good news is that I’m seeing about a 10-15% performance increase with this build. The bad news is that a lot has changed (and potentially broken). So, rather than push this on the half million nds4droid users all at once, I’m going to start using Google Play’s staged rollout feature. This means that you can opt-in and start receiving this (and future) nds4droid updates early and (hopefully) provide feedback before it goes out to the unsuspecting masses.

Here’s the official changelog for release 35:

  • Added new “lightning JIT” execution engine, on by default, which can give 10-15% performance increases
  • Removed tinycc JIT, exophase JIT, and DeSmuME JIT execution engines
  • Various internal compatibility fixes and updates

So, if you’d like to become an official nds4droid beta tester and receive this and other pre-release versions through Google Play. To do this, complete the following:

  1. Join the nds4droid beta tester Google Group
  2. Opt-in for beta upates on Google Play here 

You can also directly download release 35 from sourceforgePlease give me feedback about this new version! When submitting reports remember that adb bugreport logs can help a lot!

nds4droid release 34

I have pushed a small release for nds4droid. As always it’s on Google Play and sourceforge. The changes:

  • Added a Japanese translation
  • Enabled move to SD card

As I noted in the forums I’ve been pretty busy with some other stuff in my life recently and haven’t had much time to devote to nds4droid (something I do completely for free — I think most people forget this), but I should be able to focus more on it again soon. Until then, enjoy!

nds4droid release 33

Since I’m not at Google I/O this year (thanks to a massive fuck up in Google’s ticket ordering site), thought I’d make another nds4droid release. As always you can get it at Google Play and sourceforge. Changes:

  • Performance enhancements for 3D heavy games

I’m seeing about a 3 FPS increase on games like Pokemon Diamond. In other news, Google has shipped me my Google Glass that I ordered at Google I/O last year, so expect some unboxing photos to be posted here once I get it within the next few days.

nds4droid release 31/32

UPDATE: I have pushed release 32 to fix a crash in release 31 on certain non-English language devices (thanks to Shake for helping me confirm the problem and fix). I’ve updated the links below to reflect this.

Hey there homies, time for another nds4droid release. You can get it at all the usual places: Google Play and sourceforge. The changes are (drum roll please):

  • Two new execution engines, exophase JIT for ARM devices and DeSmuME JIT for x86 devices. Please note that currently these engines are HIGHLY EXPERIMENTAL — use at your own risk!
  • Fixed a bug where ARMv6 and x86 builds didn’t include the tinycc JIT engine
  • Minor performance enhancements

Okay, so, everyone take a deep breath. This release does contain the exophase JIT — I spent a lot of time learning exactly how it works and was able to fix the problems I’d talked about on the forums. However, overall it’s pretty unstable still and should be considered an experimental feature. Not all games work on it — and some games just stop working unexpectedly half way through. Furthermore, the program will sometimes freeze up when switching your execution engine from one of the old engines to the exophase JIT. I will work more on fixing these, but I wanted to get this release out so people could start fiddling with it. But again, use it carefully, be sure you have a game state saved before using it or risk losing all your progress!

Also included in this build is the ARM -> x86 JIT from the latest DeSmuME release. I only tested this on the emulator since I don’t have a real Android x86 device, so anyone who has one let me know how it performs.

Finally, thought I’d share some stats with you guys regarding nds4droid that I found interesting. These all come from the statistics provided to me automatically by the Google Play store, so they don’t account for sideloaded (direct APK) installs.

  • As of May 9, 2013, nds4droid has been installed by 2,300,397 users
  • Of these, 395,068 are “active” installs
  • 38% of active installs are on 4.1 Jellybean, 30% are on Ice Cream Sandwich, 19% are on Gingerbread, and 10% are on 4.2 Jellybean
  • The most popular device is the Galaxy S3 with 6.9% of active installs. The second most popular device is the Nexus 7 with 5.8% of active installs
  • The most popular country is the United States, with 30% of active installs. South Korea is in second with 16%
  • The most popular wireless carrier is Verizon Wireless at 6.36% of active installs. SK Telecom is second with 6.07%
  • A list of a user’s Android version and the average rating they give nds4droid on Google Play: Jellybean 4.2 — 4.3, Jellybean 4.1 — 4.29, Ice Cream Sandwich — 4.09, Gingerbread — 3.69


nds4droid release 29

Got another nds4droid release for y’all. Where to find it? You know, Google Play and sourceforge. The changes:

  • New/updated translations: Simplified Chinese (thanks beeflot), Portuguese (thanks shake), Italian (thanks Andrea B.), French (thanks Mike F.), and Romanian (thanks Mike F.)
  • Added new option, JIT block size for the threaded interpreter/tinycc JIT. Higher values are faster, but can break some games (like Professor Layton and the Diabolical Box)
  • Added OpenGL renderer back, use at your own risk!
  • Better microphone support
  • Added an “about” screen


nds4droid release 28

The promised nds4droid update is here! As always it’s on Google Play and sourceforge. Many of the bugs fixed were a result of reports from the forums, keep using them! The changelog:

  • Full Korean translation
  • Added sound sync option for games with voice-overs (like Professor Layton and the Curious Village)
  • Removed renderer option, forced to software
  • Fixed a bug when binding multiple buttons to the same key
  • Fixed stuttering sound when loading a new ROM
  • Increased game compatibility with the threaded interpreter (Professor Layton and the Diabolical Box and Harvest Moon: Tale of Two Towns now work)
  • Extended optimizations from release 27 to all ARM-v7a devices

The new sound sync option (it is turned off by default) does cause a slight a performance drop but gives you smooth sound in a lot of games when it was previously distorted. Try it out if you’re having sound quality issues. Enjoy!

nds4droid forums

I know a lot of people wanted a better place to discuss nds4droid related topics, so I’ve opened up the nds4droid forums! I will posting smaller status updates regarding nds4droid, and I’ve added a place where people can discuss game compatibility as well as report bugs and get support in a more manageable environment than the comments section.