Important: THIS FORK IS UNOFFICIAL! I AM NOT AFFILIATED WITH MELONX TEAM WHATSOEVER. FOR SUPPORT DO NOT GO TO MELONX SUPPORT CHANNELS FOR MELOVERTEX.
This fork fixes the keyboard and a hang bug in initial setup. It also adds support for Tomodachi Life: Living the Dream.
MeloVertex is an iOS Nintendo Switch emulator based on MeloNX which is based on Ryujinx, written primarily in C# and Swift. Designed to bring accurate performance and a user-friendly interface to iOS, MeloVertex makes Switch games accessible on Apple devices. Forked from MeloNX, MeloVertex is open-source and available on Github under the GPLv3 license.
- If the game is crashing, turn on Ignore Missing Services in Advanced Settings.
- Don't forget to attach the "universal.js" script in StikDebug to MeloVertex to get JIT support. To do this, open StikDebug, long press on MeloVertex, and tap "Attach Script" then select "universal.js".
- This fork has different bundle ID than the original MeloNX so that it doesn't replace your existing MeloNX install. I made this fork so that you can use this fork until MeloNX Team actually fixes the original app.
Yes. Tomodachi Life should work with MeloVertex. If there are any crashes, check important section above.
I can't tell you that because I don't support piracy.
MeloVertex emulator is capable of running many homebrew applications, and can be a crucial tool in the development and debugging of homebrew applications and games. To play commercial games, you will need access to a Switch compatible with custom firmware (CFW), which will enable you to dump your system firmware, keys and legally purchased games.
First, you need to hack your Nintendo Switch, which you can learn how to do here: https://nh-server.github.io/switch-guide/.
Once you have hacked your Switch, backed up your keys and dumped your firmware, you may follow these guides to dump keys, updates and DLC, firmware and games:
Keys
Games, Updates and DLC
Firmware
- A Paid Developer account or TrollStore may be needed for specific devices (Read about Entitlements below)
- MeloVertex REQUIRES JIT and CANNOT run without it.
- Recommended iPhone: iPhone 15 Pro+ (8/12GB RAM both have the same memory limit of 6GB)
- Recommended iPad: iPad Pro 5th+ 128GB+ (8GB RAM) / 1TB+ (16GB RAM) or iPad Air 5+ (8GB RAM)
- Lowest Compatible Device (Paid Developer Account): iPhone 6s (iOS 15)
- Lowest Compatible Device (Free Developer Account): iPhone 12
Entitlements are the underlying security permissions that allow an app to access specific features of your device
MeloVertex can use 2 Entitlements:
Increased Memory Limit:
- This allows MeloVertex to be able to use the most amount of ram apple lets us.
Extended Virtual Addressing:
- This allows MeloVertex to be able to ask iOS for more memory / RAM then actually available.
- Extended Virtual Addressing is a PAID entitlement, TrollStore also gives this entitlement.
Increased Memory Limit is required for all devices.
Extended Virtual Addressing is required for specific devices which don't allow us to ask the RAM we need without the Extended Virtual Addressing entitlement.
Those Devices include:
iPads with less than 8GB of RAM.
iPhones with less than 4GB of RAM.
SideStore is recommended (optional) for an on-device Sideloader, and should be installed prior performing this install.
Download and install MeloVertex using PlumeImpactor on a computer.
- Download MeloVertex From Releases
- Open PlumeImpactor > Click Settings > Click Login
- Login with the same Apple ID you are using for SideStore (or AltStore).
- Import the MeloVertex .ipa you downloaded earlier.
- Plug in your iDevice.
- Select your iDevice from the dropdown at the top of the window.
- Click Install.
To have MeloVertex show inside SideStore (or AltStore), You must re-install it:
- Open SideStore on your iDevice
- Select the My Apps tab > Tap the + button.
- Select the MeloVertex .ipa (You may need to download it again.)
- Wait for it to Sideload, then it should show up Inside SideStore.
- Now You can Refresh MeloVertex and Update it without needing a computer.
- Add Encryption Keys and Firmware using the file picker inside MeloVertex,
- Information for where to get these files are here
- Enable JIT using your preferred method, on iOS 26 StikDebug is required.
Download and install MeloVertex using your preferred Apple ID (NOT CERT) sideloader:
- Visit Apple Developer Identifiers.
- Locate MeloVertex and enable the following entitlements:
Increased Memory LimitExtended Virtual AddressingIncreased Debugging Memory Limit
- Delete existing MeloVertex installation
- Sideload MeloVertex again
- Verify Increased Memory Limit is enabled in app
- Add Encryption Keys and Firmware using the file picker inside MeloVertex
- Information for where to get these files are here
- Enable JIT using your preferred method, on iOS 26 StikDebug is required.
SideStore is recommended to Sideload MeloVertex.
The Entitlement App is NOT needed for AltStore Classic
- You may skip Step 2 and Step 3
Download and install both apps using your preferred APPLE ID sideloader:
- MeloVertex: Download from Releases
- Entitlement App: Download IPA
If the Entitlement / GetMoreRam app isn't working correctly, then try the new Plumeimpactor method.
- Open the Entitlement app > Settings
- Sign in with the same Apple ID you used to Sideload MeloVertex.
- Go to App IDs > tap Refresh
- Select MeloVertex (e.g., "com.vertexselection.melovertex.XXXXXX")
- Tap Add Increased Memory Limit
- Delete existing MeloVertex installation
- Sideload MeloVertex again
- Verify Increased Memory Limit is enabled in app
- Add Encryption Keys and Firmware using the file picker inside MeloVertex
- Information for where to get these files are here
- Enable JIT using your preferred method. We recommend StikDebug.
- Audio
Audio output is entirely supported, audio input (microphone) isn't supported.
We use C# wrappers for OpenAL, and SDL2 & libsoundio as fallbacks.
- CPU
The CPU emulator, ARMeilleure, emulates an ARMv8 CPU and currently has support for most 64-bit ARMv8 and some of the ARMv7 (and older) instructions, including partial 32-bit support.
It translates the ARM code to a custom IR, performs a few optimizations, and turns that into x86 code.
There are three memory manager options available depending on the user's preference, leveraging both software-based (slower) and host-mapped modes (much faster).
The fastest option (host, unchecked) is set by default.
Ryujinx also features an optional Profiled Persistent Translation Cache, which essentially caches translated functions so that they do not need to be translated every time the game loads.
The net result is a significant reduction in load times (the amount of time between launching a game and arriving at the title screen) for nearly every game.
NOTE: This feature is enabled by default, You must launch the game at least twice to the title screen or beyond before performance improvements are unlocked on the third launch!
These improvements are permanent and do not require any extra launches going forward.
- GPU
The GPU emulator emulates the Switch's Maxwell GPU using Metal (via MoltenVK) APIs through a custom build of Silk.NET.
- Input
We currently have support for keyboard, touch input, JoyCon input support, and nearly all MFI controllers.
Motion controls are natively supported in most cases, however JoyCons do not have motion support due to an iOS limitation.
Rumble is also natively supported in most cases.
- DLC & Modifications
MeloVertex supports DLC + Game Update Add-ons.
Mods (romfs, exefs, and runtime mods such as cheats) are unsupported; but may work.
- Configuration
The emulator has settings for enabling or disabling logging, remapping controllers, resolution settings, Shader Cache and more.
This project does not distribute, include, or endorse any copyrighted or pirated content. The software is provided for legitimate and lawful use.
Users are solely responsible for ensuring that any copyrighted material they use with this software (including, but not limited to, ROMs, cryptographic keys, and firmware) is obtained legally and in accordance with applicable law. The developers disclaim all responsibility for any misuse of the software or for any legal consequences resulting from the use of illegally obtained content.
Any third-party distribution of this emulator bundled with copyrighted content (including, but not limited to, ROMs, cryptographic keys, and firmware) is done without permission and is not associated with orendorsed by this project.
Nintendo Switch is a trademark of Nintendo Co., Ltd. Nintendo is a trademark of Nintendo Co., Ltd. Pokémon is a trademark of Nintendo/Creatures Inc./Game Freak Inc. Animal Crossing is a trademark of Nintendo Co., Ltd.
This project is an independent, third-party work and is not affiliated with, endorsed by, or associated with Nintendo Co., Ltd., any of its subsidiaries, or any other console manufacturer or game and/or game publisher.
This software is licensed under the terms of the GPLv3 license.
This project makes use of code authored by the libvpx project, licensed under BSD and the ffmpeg project, licensed under LGPLv3.
See LICENSE.txt and THIRDPARTY.md for more details.