Android port of melonDS
Go to file
2021-02-07 18:22:49 +00:00
app Refactor DirectoryPickerPreference into StoragePickerPreference to allow both files and directories to be selected 2021-02-07 18:22:49 +00:00
gradle/wrapper Attempt to make this run on Android R devices 2021-01-02 23:40:38 +00:00
melonDS-android-lib@ea8443f014 Add option to boot firmware without a ROM 2021-01-30 18:03:07 +00:00
.gitignore Exclude IDE folder from VCS 2020-06-02 18:57:34 +01:00
.gitmodules Initial commit 2018-11-25 18:14:01 +00:00
build.gradle Add proper dependency injection 2021-01-03 16:31:06 +00:00
gradle.properties Migrate to AndroidX 2020-05-22 19:39:27 +01:00
gradlew Initial commit 2018-11-25 18:14:01 +00:00
gradlew.bat Initial commit 2018-11-25 18:14:01 +00:00
LICENSE Initial commit 2018-11-25 18:14:01 +00:00
README.md Add support for mic input 2021-01-09 20:51:13 +00:00
settings.gradle Attempt to make this run on Android R devices 2021-01-02 23:40:38 +00:00

melonDS Android port

This is a WIP Android frontend for the melonDS Android port. For the Android port of the emulator, check out https://github.com/rafaelvcaetano/melonDS-android-lib

What is working

  • Device scanning for ROMS
  • Games can boot and run
  • Sound
  • Input
  • Mic input
  • Game saves
  • Save states
  • GBA ROM support
  • DSi support
  • Controller support
  • Settings

What is missing

  • Wi-Fi
  • OpenGL renderer

Performance

Performance is solid on 64 bit devices with thread rendering and JIT enabled, and should run at full speed on flagship devices. Performance on older devices, specially 32 bit devices, is very poor due to the lack of JIT support.

Integration with third party frontends

It's possible to launch melonDS from third part frontends. For that, you simply need to call the emulation activity with the absolute path to the ROM file. The parameters are the following:

  • Package name: me.magnum.melonds
  • Activity name: me.magnum.melonds.ui.emulator.EmulatorActivity
  • Parameters:
    • PATH - a string with the absolute path to the NDS ROM (ZIP files are not yet supported)

Building

To build the project you will need Android NDK and CMake.

Build steps:

  1. Clone the project, including submodules with:

    git clone --recurse-submodules https://github.com/rafaelvcaetano/melonDS-android.git

  2. Open the project in Android Studio.

  3. Install the Android NDK and CMake from the SDK Manager

  4. Hit Run