From d53533c758f12a1e214923fda9587ef257426ecf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Dreptin?= Date: Tue, 8 Nov 2022 00:11:43 +0100 Subject: [PATCH] Added a Reboot function to Xam --- include/Xam_.h | 3 +++ src/Xam_.cpp | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/include/Xam_.h b/include/Xam_.h index 2e1bb87..b9ef787 100644 --- a/include/Xam_.h +++ b/include/Xam_.h @@ -102,6 +102,9 @@ class Xam // Check if an address is accessible and writable. static bool IsAddressValid(void *pAddress); + + // Reboot the console. + static void Reboot(); }; } diff --git a/src/Xam_.cpp b/src/Xam_.cpp index 3bb8b0d..1f4964e 100644 --- a/src/Xam_.cpp +++ b/src/Xam_.cpp @@ -10,6 +10,8 @@ extern "C" DWORD XamGetCurrentTitleId(); bool MmIsAddressValid(void *pAddress); + + void HalReturnToFirmware(uint32_t powerDownMode); } namespace XexUtils @@ -116,4 +118,12 @@ bool Xam::IsAddressValid(void *pAddress) return MmIsAddressValid(pAddress); } +void Xam::Reboot() +{ + // Declared in xkelib + const uint32_t rebootRoutine = 1; + + HalReturnToFirmware(rebootRoutine); +} + }