| 63 | } |
| 64 | |
| 65 | std::pair<std::optional<Kernel::MemoryMode>, ResultStatus> AppLoader_NCCH::LoadKernelMemoryMode() { |
| 66 | if (!is_loaded) { |
| 67 | ResultStatus res = base_ncch.Load(); |
| 68 | if (res != ResultStatus::Success) { |
| 69 | return std::make_pair(std::nullopt, res); |
| 70 | } |
| 71 | } |
| 72 | |
| 73 | // Provide the memory mode from the exheader. |
| 74 | auto& ncch_caps = overlay_ncch->exheader_header.arm11_system_local_caps; |
| 75 | auto mode = static_cast<Kernel::MemoryMode>(ncch_caps.system_mode.Value()); |
| 76 | return std::make_pair(mode, ResultStatus::Success); |
| 77 | } |
| 78 | |
| 79 | std::pair<std::optional<Kernel::New3dsHwCapabilities>, ResultStatus> |
| 80 | AppLoader_NCCH::LoadNew3dsHwCapabilities() { |
no test coverage detected