Homebrew WIP Experimental Switch emulator in C#

gdkchan

Well-Known Member
OP
Member
Joined
Jul 8, 2015
Messages
181
Trophies
0
Age
24
XP
405
Country
Brazil
This is an experimental emulator, currently in early stages of development, that I started last year. The main difference from other emulators is that it is written in C#, instead of other languages like C++ where emulators are usually written. It translates the Arm64 machine code into the .NET intermediate language (MSIL), which in turn is transformed by the .net JIT (RyuJIT) into x86 machine code.

Demos

Currently, the emulator can only run a few homebrew apps, and it is quite slow too.

Running Sonic 3 on the PicoDrive retroarch port (video): https://gfycat.com/NiceWealthyEastsiberianlaika

It doesn't run any commercial games yet, althrough Puyo Puyo Tetris show some logos:
CF9gQP6.png
However it gets stuck on that screen due to unimplemented audren:u functionality (and its also really really slow).
Other games usually fail earlier due to unimplemented services or bugs due to poorly implemented svc and/or services.

Source:

The source can be found on the following repository: https://github.com/gdkchan/Ryujinx

The .NET Core runtime or SDK is necessary to run it.
Any contribution, suggestion or constructive criticism is always welcome.
If you have some homebrew that currently doesn't work on it, I also accept PMs with the compiled NRO/NSO and source code if possible and will work to make them work. LibNX is know to be broken because I don't have any app compiled on it.

Special thanks goes to the people working on reverse engineering the Switch OS and writing the docs at Switchbrew.

Discord:

Thanks to Dr. Hacknik we now have a Discord server! If you want to get in touch, ask questions or want to contribute to the project, join our server: https://discord.gg/VkQYXAZ
 
Last edited by gdkchan,

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
21,968
Trophies
3
Location
Space
XP
11,172
Country
Norway
That's an interesting approach to coding an emulator, I wonder if it'll be as fast as native code.
I'm a C# coder myself, so I find this pretty cool.
Good luck with your project, looking forward to seeing how it progresses.
 
  • Like
Reactions: Dr.Hacknik
General chit-chat
Help Users
    DEMONGreninjaPG @ DEMONGreninjaPG: or executer