Skip to content
A SDMMC driver replacement for Nintendo's Filesystem Services.
Branch: develop
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode Initial commit. Jun 15, 2019
source Add Atmosphere fatal error context Jul 2, 2019
tools Fix macro line endings Jun 18, 2019
.gitignore Initial commit. Jun 15, 2019
LICENSE Initial commit. Jun 15, 2019
Makefile emummc: improve linkscript/building Jun 16, 2019
README.md Update README, change comment Jun 24, 2019
build.sh Initial commit. Jun 15, 2019
emummc.json Add svcReadWriteRegister to JSON Jun 27, 2019

README.md

emuMMC

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

Supported Horizon Versions

1.0.0 - 8.1.0

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)

License

emuMMC is released as GPLv2

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
You can’t perform that action at this time.