mirror of
https://github.com/Atmosphere-NX/Atmosphere
synced 2024-11-25 02:50:18 +00:00
c7026b9094
* Implement NCM * Modernize ncm_main * Remove unnecessary smExit * Give access to svcCallSecureMonitor * Stack size bump * Fix incorrect setup for NandUser's content storage entry * Fix a potential data abort when flushing the placeholder accessor cache * Fix HasFile and HasDirectory * Use r+b, not w+b * Misc fixes * errno begone * Fixed more stdio error handling * More main fixes * Various command improvements * Make dispatch tables great again * Fix logic inversion * Fixed content path generation * Bump heap size, fix CleanupAllPlaceHolder * Various fixes. Note: This contains debug stuff which will be removed later. I was getting tired of having to cherrypick tiny changes * Fixed placeholder/content deletion * Fixed incorrect content manager destruction * Prevent automatic placeholder creation on open * Fixed List implementation. Also lots of debug logging. * Removed debug code * Added a scope guard for WritePlaceHolder * Manually prevent placeholder/content appending * Revert "Removed debug code" This reverts commit |
||
---|---|---|
.. | ||
.vscode | ||
source | ||
tools | ||
.gitignore | ||
.gitrepo | ||
build.sh | ||
emummc.json | ||
LICENSE | ||
Makefile | ||
README.md |
emuMMC
A SDMMC driver replacement for Nintendo's Filesystem Services, by m4xw
Supported Horizon Versions
1.0.0 - 9.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