diff --git a/Source/Core/Core/IOS/IPC.cpp b/Source/Core/Core/IOS/IPC.cpp index acda13e05f..8c5b50d063 100644 --- a/Source/Core/Core/IOS/IPC.cpp +++ b/Source/Core/Core/IOS/IPC.cpp @@ -161,7 +161,7 @@ constexpr u32 RAM_VENDOR_MIOS = 0xCAFEBABE; // The writes are usually contained in a single function that // mostly writes raw literals to the relevant locations. // e.g. IOS9, version 1034, content id 0x00000006, function at 0xffff6884 -constexpr std::array ios_memory_values = { +constexpr std::array ios_memory_values = { {{ 9, 0x9040a, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -169,6 +169,13 @@ constexpr std::array ios_memory_values = { 0x933E0000, 0x933E0000, 0x93400000, HOLLYWOOD_REVISION, RAM_VENDOR, PLACEHOLDER, PLACEHOLDER, 0, }, + { + 11, 0xb000a, 0x102506, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93400000, MEM2_ARENA_BEGIN, + 0x933E0000, 0x933E0000, 0x93400000, HOLLYWOOD_REVISION, + RAM_VENDOR, PLACEHOLDER, PLACEHOLDER, 0, + }, { 12, 0xc020e, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -204,6 +211,13 @@ constexpr std::array ios_memory_values = { 0x933E0000, 0x933E0000, 0x93400000, HOLLYWOOD_REVISION, RAM_VENDOR, PLACEHOLDER, PLACEHOLDER, 0, }, + { + 20, 0x14000c, 0x102506, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93400000, MEM2_ARENA_BEGIN, + 0x933E0000, 0x933E0000, 0x93400000, HOLLYWOOD_REVISION, + RAM_VENDOR, PLACEHOLDER, PLACEHOLDER, 0, + }, { 21, 0x15040f, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -225,6 +239,13 @@ constexpr std::array ios_memory_values = { 0x937E0000, 0x937E0000, 0x93800000, HOLLYWOOD_REVISION, RAM_VENDOR, 0x93800000, 0x93820000, 0, }, + { + 30, 0x1e0a10, 0x40308, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93600000, MEM2_ARENA_BEGIN, + 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, + RAM_VENDOR, 0x93600000, 0x93620000, 0, + }, { 31, 0x1f0e18, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -274,6 +295,7 @@ constexpr std::array ios_memory_values = { 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, RAM_VENDOR, 0x93600000, 0x93620000, 0, }, + // No functional version of IOS40 is present on NUS. { 41, 0x290e17, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -309,6 +331,27 @@ constexpr std::array ios_memory_values = { 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, RAM_VENDOR, 0x93600000, 0x93620000, 0, }, + { + 50, 0x321319, 0x101008, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93600000, MEM2_ARENA_BEGIN, + 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, + RAM_VENDOR, 0x93600000, 0x93620000, 0, + }, + { + 51, 0x331219, 0x071108, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93600000, MEM2_ARENA_BEGIN, + 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, + RAM_VENDOR, 0x93600000, 0x93620000, 0, + }, + { + 52, 0x34161d, 0x101008, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93600000, MEM2_ARENA_BEGIN, + 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, + RAM_VENDOR, 0x93600000, 0x93620000, 0, + }, { 53, 0x35161f, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -351,6 +394,13 @@ constexpr std::array ios_memory_values = { 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, RAM_VENDOR, 0x93600000, 0x93620000, 0, }, + { + 60, 0x3c181e, 0x112408, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93600000, MEM2_ARENA_BEGIN, + 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, + RAM_VENDOR, 0x93600000, 0x93620000, 0, + }, { 61, 0x3d161e, 0x030110, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, @@ -365,6 +415,13 @@ constexpr std::array ios_memory_values = { 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, RAM_VENDOR, 0x93600000, 0x93620000, 0, }, + { + 70, 0x461a1f, 0x060309, MEM1_SIZE, + MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END, + MEM2_SIZE, MEM2_SIZE, 0x93600000, MEM2_ARENA_BEGIN, + 0x935E0000, 0x935E0000, 0x93600000, HOLLYWOOD_REVISION, + RAM_VENDOR, 0x93600000, 0x93620000, 0, + }, { 80, 0x501b20, 0x030310, MEM1_SIZE, MEM1_SIZE, MEM1_END, MEM1_ARENA_BEGIN, MEM1_ARENA_END,