MonoNX - an experimental Nintendo Switch emulator for Android

Screenshot_20190215-002811_MonoNX.png

Hello there, I've been working on this for a few days and I thought I'd finally show it off!

Please note that there is absolutely no graphics, only console output! Also, it's not very fast (only runs at 15fps on a SD625) and it only runs old homebrew (e.g. first libtransistor tests and such).

Discord support: https://discord.gg/fn8VV9T
Source code: https://github.com/Cyuubi/MonoNX

Credits:
Ryujinx Team - For the base of MonoNX, without them this would not be possible! Show them some love over at their GitHub (https://github.com/Ryujinx/Ryujinx).
Xamarin - For allowing us C# developers to program on Android.
Dr.Hacknik - Logo design.

Requirements:
An ARM64 or 64-bit x86 processor

Play Store download: https://play.google.com/store/apps/details?id=com.cyuubiapps.mononx
Alternative APK downloads: https://github.com/Cyuubi/MonoNX/releases
Test ROM download: https://drive.google.com/open?id=1cVa5BDn1w6FNb6QEKmch2m6k67t_q5c_
 

Attachments

  • Screenshot_20190215-002811_MonoNX.png
    Screenshot_20190215-002811_MonoNX.png
    189.7 KB · Views: 376
Last edited by ItsKaitlyn03,
Play Store build has been released, all APKs have been removed! Please uninstall MonoNX and install the Play Store build. Thanks.
https://play.google.com/store/apps/details?id=com.cyuubiapps.mononx

--------------------- MERGED ---------------------------

Also, because I fixed the release build it now runs at 15fps on a SD625. Have fun!
 
  • Like
Reactions: wicksand420
why do people make emulators for android? they cannot run at their full potentisl. even some pcs can barely emulate the wii u, still no cellphone can emulate the 3ds

Just for everyone putting this down.

Dolphin, which is the Gamecube/Wii emulator that is one of the most well known and developed emulators; started development in 2003, two years after the Gamecube was released.

And this was a time when 3D games were finally starting to look nice, so there would need to be even more work done to document what makes these modern consoles run. And for a time, yeah, they were pretty bare bones, barely running anything, horrible speed, abysmal compatibility, and numerous crashes.

Yet look at it today, it's been worked on by probably thousands of people, either contributing small commits or large ones, 16 years of working on a single emulator; and that's only Dolphin, look at Cemu, RPCS3, Yuzu for gosh sakes. The Switch hasn't even been out for what, two years? And after only a year of work they've already got games like Super Mario Odyssey working at fullspeed.

Wait a few years, wait a single year, who knows! It's more about how far they're willing to work for it. So be considerate.
 
  • Like
Reactions: Cyan
I got a loading error i have 4 gb ram i gabe it storage perms ((btw im using a huawei p smart plus aka huawei nova 3i))
 

Attachments

  • Screenshot_20190217-094704.jpg
    Screenshot_20190217-094704.jpg
    401.7 KB · Views: 203
Congratulations on your work so far. Despite what some people seem to think, this is quite an achievement and a damn good start on a potentially fully functional emulator in the future.
 
While this is a very good initiative, you should try to focus your efforts in C++ instead of C# due to the fact that Xamarin does not compile to native code when it comes for Android like it does for iOS. Emulating, like a lot of people said, is very demanding. Not being able to run code on a more powerful platform than the console itself will already be a gigantic toll. By using C# + Xamarin, although it can be good for learning if you plan a re-factoring and port later, will always be very very slow due to the fact that you'd be loading the switch rom, passing it though your C# intermediate code, which goes to the Mono.NET virtual machine running on Android, which gets interpreted by ART, which then communicates with the drivers and real hardware... It's virtualisation on top of virtualisation. If you focus your efforts in C or C++ for the core of the emulation, you can use Xamarin or plain Java for Android in order to easily create your UI. But as a developer, I strongly advise you to take it slow and maybe take some extra time to port the code to a more low-level language and go from there, and this is the time to do it, since you just started it. The more code and effort you put into this now, it will only mean that the port later on will be harder and probably more bug-prone.
Either way, power to you and I really hope you can get some awesome learning out of this project.

Just my 2 cents
 
what games can this emulator have?
 

Attachments

  • Screenshot_2019-02-18-21-30-11-200_com.cyuubiapps.mononx.png
    Screenshot_2019-02-18-21-30-11-200_com.cyuubiapps.mononx.png
    294.6 KB · Views: 204
It's loading the ROM, black screen and it returns to the file manager.
Tested with S8+ US SD835 4GB Ram (Qualcomm)
 

Site & Scene News

Popular threads in this forum