mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2024-11-26 13:52:21 +00:00
git subrepo clone --force --branch=develop https://github.com/m4xw/emummc
subrepo: subdir: "emummc" merged: "24bdbec8" upstream: origin: "https://github.com/m4xw/emummc" branch: "develop" commit: "24bdbec8" git-subrepo: version: "0.4.1" origin: "???" commit: "???"
This commit is contained in:
parent
f72b21d665
commit
1525c66de7
4 changed files with 9 additions and 8 deletions
|
@ -5,8 +5,8 @@
|
||||||
;
|
;
|
||||||
[subrepo]
|
[subrepo]
|
||||||
remote = https://github.com/m4xw/emuMMC
|
remote = https://github.com/m4xw/emuMMC
|
||||||
branch = exo2
|
branch = develop
|
||||||
commit = 6a814ebbe72cf5245b863b9edea9cd3801437a12
|
commit = 24bdbec869be2d29d3769a3e88a76d389d094bd5
|
||||||
parent = f551ca4461a79908c37307db10cd8cacf8b98f17
|
parent = f72b21d665657b27d8de41729a6416982a79fff3
|
||||||
method = rebase
|
method = rebase
|
||||||
cmdver = 0.4.1
|
cmdver = 0.4.1
|
||||||
|
|
|
@ -155,8 +155,8 @@ void __initheap(void)
|
||||||
static void _receive_process_handle_thread(void *_session_handle) {
|
static void _receive_process_handle_thread(void *_session_handle) {
|
||||||
Result rc;
|
Result rc;
|
||||||
|
|
||||||
// Convert the argument to a handle we can use.
|
// Convert the argument to a handle copy we can use.
|
||||||
Handle session_handle = (Handle)(uintptr_t)_session_handle;
|
Handle session_handle = *(Handle*)_session_handle;
|
||||||
|
|
||||||
// Receive the request from the client thread.
|
// Receive the request from the client thread.
|
||||||
memset(armGetTls(), 0, 0x10);
|
memset(armGetTls(), 0, 0x10);
|
||||||
|
@ -194,7 +194,7 @@ static void _init_process_handle(void) {
|
||||||
|
|
||||||
// Create a new thread to receive our handle.
|
// Create a new thread to receive our handle.
|
||||||
Handle thread_handle;
|
Handle thread_handle;
|
||||||
rc = svcCreateThread(&thread_handle, _receive_process_handle_thread, (void *)(uintptr_t)server_handle, temp_thread_stack + sizeof(temp_thread_stack), 0x20, 3);
|
rc = svcCreateThread(&thread_handle, _receive_process_handle_thread, &server_handle, temp_thread_stack + sizeof(temp_thread_stack), 0x20, 3);
|
||||||
if (rc != 0)
|
if (rc != 0)
|
||||||
{
|
{
|
||||||
fatal_abort(Fatal_BadResult);
|
fatal_abort(Fatal_BadResult);
|
||||||
|
|
|
@ -38,6 +38,7 @@ static inline uintptr_t _GetIoMapping(u64 io_addr, u64 io_size)
|
||||||
u64 vaddr;
|
u64 vaddr;
|
||||||
u64 aligned_addr = (io_addr & ~0xFFFul);
|
u64 aligned_addr = (io_addr & ~0xFFFul);
|
||||||
u64 aligned_size = io_size + (io_addr - aligned_addr);
|
u64 aligned_size = io_size + (io_addr - aligned_addr);
|
||||||
|
|
||||||
if (emuMMC_ctx.fs_ver >= FS_VER_10_0_0) {
|
if (emuMMC_ctx.fs_ver >= FS_VER_10_0_0) {
|
||||||
u64 out_size;
|
u64 out_size;
|
||||||
if (svcQueryIoMapping(&vaddr, &out_size, aligned_addr, aligned_size) != 0) {
|
if (svcQueryIoMapping(&vaddr, &out_size, aligned_addr, aligned_size) != 0) {
|
||||||
|
@ -48,6 +49,7 @@ static inline uintptr_t _GetIoMapping(u64 io_addr, u64 io_size)
|
||||||
fatal_abort(Fatal_IoMappingLegacy);
|
fatal_abort(Fatal_IoMappingLegacy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return (uintptr_t)(vaddr + (io_addr - aligned_addr));
|
return (uintptr_t)(vaddr + (io_addr - aligned_addr));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -18,8 +18,7 @@ for i in range(6):
|
||||||
if i < len(section_names):
|
if i < len(section_names):
|
||||||
section["Name"] = section_names[i]
|
section["Name"] = section_names[i]
|
||||||
|
|
||||||
section["OutOffset"], section["DecompressedSize"], section["CompressedSize"], section["Attribute"] = unpack(
|
section["OutOffset"], section["DecompressedSize"], section["CompressedSize"], section["Attribute"] = unpack("IIII", section_bytes)
|
||||||
"IIII", section_bytes)
|
|
||||||
sections.append(section)
|
sections.append(section)
|
||||||
print(section)
|
print(section)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue