fixed compile
This commit is contained in:
@@ -16,16 +16,15 @@
|
|||||||
* from GCC preprocessor output
|
* from GCC preprocessor output
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "oc_common.hpp"
|
#include "oc_common.hpp"
|
||||||
|
namespace ams::ldr::oc {
|
||||||
namespace ams::ldr::oc {
|
|
||||||
#define MAX(A, B) std::max(A, B)
|
#define MAX(A, B) std::max(A, B)
|
||||||
#define MIN(A, B) std::min(A, B)
|
#define MIN(A, B) std::min(A, B)
|
||||||
#define CEIL(A) std::ceil(A)
|
#define CEIL(A) std::ceil(A)
|
||||||
#define FLOOR(A) std::floor(A)
|
#define FLOOR(A) std::floor(A)
|
||||||
|
const u8 ramtmarker[4] = {'R', 'A', 'M', 'T'};
|
||||||
//Preset One
|
//Preset One
|
||||||
const std::array<u32, 6> tRCD_values = {18, 17, 16, 15, 14, 13};
|
const std::array<u32, 6> tRCD_values = {18, 17, 16, 15, 14, 13};
|
||||||
const std::array<u32, 6> tRP_values = {18, 17, 16, 15, 14, 13};
|
const std::array<u32, 6> tRP_values = {18, 17, 16, 15, 14, 13};
|
||||||
@@ -232,4 +231,5 @@ namespace ams::ldr::oc {
|
|||||||
// tPDEX2MRR (timing delay from exiting powerdown mode to MRR command) in ns
|
// tPDEX2MRR (timing delay from exiting powerdown mode to MRR command) in ns
|
||||||
const double tPDEX2MRR = tXP + tMRRI;
|
const double tPDEX2MRR = tXP + tMRRI;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1,74 +0,0 @@
|
|||||||
#!python3
|
|
||||||
|
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
|
|
||||||
def file_replace_str(file_path, search_replace_list):
|
|
||||||
assert file_path
|
|
||||||
assert search_replace_list
|
|
||||||
with open(file_path, "r") as f:
|
|
||||||
content = f.read()
|
|
||||||
|
|
||||||
for entry in search_replace_list:
|
|
||||||
(search, replace) = entry
|
|
||||||
if search in content:
|
|
||||||
content = content.replace(search, replace)
|
|
||||||
else:
|
|
||||||
assert replace in content, f"Pattern \"{search}\" not found"
|
|
||||||
|
|
||||||
with open(file_path, "w") as f:
|
|
||||||
f.write(content)
|
|
||||||
|
|
||||||
|
|
||||||
dir_path = os.path.dirname(__file__)
|
|
||||||
|
|
||||||
os.chdir(dir_path)
|
|
||||||
os.system("git reset --hard")
|
|
||||||
|
|
||||||
ldr_process_creation = os.path.join(dir_path, "ldr_process_creation.cpp")
|
|
||||||
file_replace_str(ldr_process_creation,
|
|
||||||
[("""#include "ldr_ro_manager.hpp"
|
|
||||||
|
|
||||||
namespace ams::ldr {""",
|
|
||||||
"""#include "ldr_ro_manager.hpp"
|
|
||||||
#include "oc/oc_loader.hpp"
|
|
||||||
|
|
||||||
namespace ams::ldr {"""),
|
|
||||||
(""" NsoHeader g_nso_headers[Nso_Count];
|
|
||||||
|
|
||||||
Result ValidateProgramVersion(ncm::ProgramId program_id, u32 version) {""",
|
|
||||||
""" NsoHeader g_nso_headers[Nso_Count];
|
|
||||||
|
|
||||||
/* Pcv/Ptm check cache. */
|
|
||||||
bool g_is_pcv;
|
|
||||||
bool g_is_ptm;
|
|
||||||
|
|
||||||
Result ValidateProgramVersion(ncm::ProgramId program_id, u32 version) {"""),
|
|
||||||
(""" R_UNLESS(meta->aci->program_id <= meta->acid->program_id_max, ldr::ResultInvalidProgramId());
|
|
||||||
|
|
||||||
/* Validate the kernel capabilities. */""",
|
|
||||||
""" R_UNLESS(meta->aci->program_id <= meta->acid->program_id_max, ldr::ResultInvalidProgramId());
|
|
||||||
|
|
||||||
/* Check if nca is pcv or ptm */
|
|
||||||
g_is_pcv = meta->aci->program_id == ncm::SystemProgramId::Pcv;
|
|
||||||
g_is_ptm = meta->aci->program_id == ncm::SystemProgramId::Ptm;
|
|
||||||
|
|
||||||
/* Validate the kernel capabilities. */"""),
|
|
||||||
(""" LocateAndApplyIpsPatchesToModule(nso_header->module_id, map_address, nso_size);
|
|
||||||
}""",
|
|
||||||
""" LocateAndApplyIpsPatchesToModule(nso_header->module_id, map_address, nso_size);
|
|
||||||
|
|
||||||
/* Apply pcv and ptm patches. */
|
|
||||||
if (g_is_pcv)
|
|
||||||
oc::pcv::Patch(map_address, nso_size);
|
|
||||||
if (g_is_ptm)
|
|
||||||
oc::ptm::Patch(map_address, nso_size);
|
|
||||||
}""")])
|
|
||||||
|
|
||||||
ldr_meta = os.path.join(dir_path, "ldr_meta.cpp")
|
|
||||||
file_replace_str(ldr_meta,
|
|
||||||
[(""" Result ValidateAcidSignature(Meta *meta) {
|
|
||||||
/* Loader did not check signatures prior to 10.0.0. */""",
|
|
||||||
""" Result ValidateAcidSignature(Meta *meta) {
|
|
||||||
R_SUCCEED();
|
|
||||||
/* Loader did not check signatures prior to 10.0.0. */""")])
|
|
||||||
Reference in New Issue
Block a user