Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
The main server is currently down. We are running on a backup server, so editing and search functionality are temporarily disabled. Please check back in a few hours.

EmuMMC Switch: Difference between revisions

From GameBrew
Created page with "{{Infobox Switch Homebrews |title=emuMMC |image=emummcswitch.png |description=A SDMMC driver replacement for Nintendo's Filesystem Services. |author=m4xw |lastupdated=2023/02/23 |type=System Tools |version=2023 |license=GPL-2.0 |download=https://dlhb.gamebrew.org/switchhomebrews/emummcswitch.7z |website=https://github.com/m4xw/emuMMC |source=https://github.com/m4xw/emuMMC |donation= }} {{#seo: |title=Switch Homebrew Apps (System Tools) - GameBrew |title_mode=append |ima..."
 
No edit summary
Line 11: Line 11:
|website=https://github.com/m4xw/emuMMC
|website=https://github.com/m4xw/emuMMC
|source=https://github.com/m4xw/emuMMC
|source=https://github.com/m4xw/emuMMC
|donation=  
|donation=https://www.patreon.com/m4xwdev
}}
}}
{{#seo:
A SDMMC driver replacement for Nintendo's Filesystem Services, by m4xw.
|title=Switch Homebrew Apps (System Tools) - GameBrew
|title_mode=append
|image=emummcswitch.png
|image_alt=emuMMC
}}
The author m4xw has developed emuMMC, which is a replacement for Nintendo's Filesystem Services' SDMMC driver. It is designed to be compatible with Horizon versions 1.0.0 to 16.0.0.


== Features ==
==Features==
* Arbitrary SDMMC backend selection<br />
*Arbitrary SDMMC backend selection.
'''This allows loading eMMC from SD or even SD from eMMC'''
**This allows loading eMMC from SD or even SD from eMMC.
* On the fly hooking / patching, fully self-infesting<br />
*On the fly hooking / patching, fully self-infesting.
'''Only one payload required for all versions!'''
**Only one payload required for all versions.
* File-based SDMMC backend support (from SD)<br />
*File-based SDMMC backend support (from SD).
'''This allows loading eMMC images from hekate-backups (split or not)'''
**This allows loading eMMC images from hekate-backups (split or not).
* SDMMC device based sector offset (''currently eMMC only'')<br />
*SDMMC device based sector offset (currently eMMC only).
'''Raw partition support for eMMC from SD with less performance overhead'''
**Raw partition support for eMMC from SD with less performance overhead.
* Full support for <code>/Nintendo</code> folder redirection to a arbitrary path<br />
*Full support for /Nintendo folder redirection to a arbitrary path.
'''No 8 char length restriction!'''
**No 8 char length restriction.
* exosphere based context configuration<br />
*exosphere based context configuration.
'''This includes full support for multiple emuMMC images'''
**This includes full support for multiple emuMMC images.


== Compiling ==
== Compiling ==
Line 43: Line 37:


==Media==
==Media==
'''Whats an Emunand/ Emummc and Should you use one? - ([https://www.youtube.com/watch?v=lKXXvxYjmBQ Jonny Troche])'''<br>
'''Whats an Emunand/ Emummc and Should you use one? ([https://www.youtube.com/watch?v=lKXXvxYjmBQ Jonny Troche])'''<br>
<youtube>lKXXvxYjmBQ</youtube>
<youtube>lKXXvxYjmBQ</youtube>
==Compatibility==
Supported Horizon Versions:
1.0.0 - 16.0.0


== Credits ==
== Credits ==
* '''CTCaer''' - The CTCaer hekate fork, file-based emuMMC support, SDMMC driver fixes among other things
* CTCaer - The CTCaer hekate fork, file-based emuMMC support, SDMMC driver fixes among other things.
* '''SciresM, hexkyz''' - The Atmosphere project, FS offsets, additional research related to newer FS versions
* SciresM, hexkyz - The Atmosphere project, FS offsets, additional research related to newer FS versions.
* '''naehrwert''' - The hekate project, its SDMMC driver and being very helpful in the early research phase
* naehrwert - The hekate project, its SDMMC driver and being very helpful in the early research phase.
* '''jakibaki''' - KIP Inject PoC, used in the early dev phase
* jakibaki - KIP Inject PoC, used in the early dev phase.
* '''switchbrew/devkitPro''' - devkitA64 and libnx sources
* switchbrew/devkitPro - devkitA64 and libnx sources.


== External links ==
== External links ==
* Github - https://github.com/m4xw/emuMMC
* GitHub - https://github.com/m4xw/emuMMC
* Twitter - https://twitter.com/m4xwdev/status/1125517414928658434
* Reddit - [https://www.reddit.com/r/SwitchHaxing/comments/bli7vh/comment/emq2x8e/?utm_source=share&utm_medium=web2x&context=3 https://www.reddit.com/r/SwitchHaxing/m4xw_teases_emunand_emummc/]

Revision as of 03:14, 26 April 2023

emuMMC
File:Emummcswitch.png
General
Authorm4xw
TypeSystem Tools
Version2023
LicenseGPL-2.0
Last Updated2023/02/23
Links
Download
Website
Source
Support Author

A SDMMC driver replacement for Nintendo's Filesystem Services, by m4xw.

Features

  • Arbitrary SDMMC backend selection.
    • This allows loading eMMC from SD or even SD from eMMC.
  • On the fly hooking / patching, fully self-infesting.
    • Only one payload required for all versions.
  • File-based SDMMC backend support (from SD).
    • This allows loading eMMC images from hekate-backups (split or not).
  • SDMMC device based sector offset (currently eMMC only).
    • Raw partition support for eMMC from SD with less performance overhead.
  • Full support for /Nintendo folder redirection to a arbitrary path.
    • No 8 char length restriction.
  • exosphere based context configuration.
    • This includes full support for multiple emuMMC images.

Compiling

hekate

Run ./build.sh and copy the produced kipm (Kernel Initial Process Modification) file to /bootloader/sys/

Atmosphere

Run make, the resulting kip can be used for code injection via fusee (place at /atmosphere/emummc.kip)

Media

Whats an Emunand/ Emummc and Should you use one? (Jonny Troche)

Compatibility

Supported Horizon Versions:

1.0.0 - 16.0.0

Credits

  • CTCaer - The CTCaer hekate fork, file-based emuMMC support, SDMMC driver fixes among other things.
  • SciresM, hexkyz - The Atmosphere project, FS offsets, additional research related to newer FS versions.
  • naehrwert - The hekate project, its SDMMC driver and being very helpful in the early research phase.
  • jakibaki - KIP Inject PoC, used in the early dev phase.
  • switchbrew/devkitPro - devkitA64 and libnx sources.

External links

Advertising: