Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

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: