mirror of
https://github.com/LumaTeam/Luma3DS.git
synced 2026-02-22 01:44:38 +00:00
rosalina: move power off/reboot back, in a single menu entry this time
This commit is contained in:
parent
1c737d499f
commit
0a11d29d8b
@ -38,6 +38,8 @@ void RosalinaMenu_ProcessList(void);
|
|||||||
void RosalinaMenu_SaveSettings(void);
|
void RosalinaMenu_SaveSettings(void);
|
||||||
void RosalinaMenu_Cheats(void);
|
void RosalinaMenu_Cheats(void);
|
||||||
|
|
||||||
|
void RosalinaMenu_PowerOffOrReboot(void);
|
||||||
|
|
||||||
void RosalinaMenu_ShowSystemInfo();
|
void RosalinaMenu_ShowSystemInfo();
|
||||||
|
|
||||||
bool rosalinaMenuShouldShowDebugInfo(void);
|
bool rosalinaMenuShouldShowDebugInfo(void);
|
||||||
|
|||||||
@ -44,5 +44,3 @@ void SysConfigMenu_ToggleCardIfPower(void);
|
|||||||
void SysConfigMenu_LoadConfig(void);
|
void SysConfigMenu_LoadConfig(void);
|
||||||
void SysConfigMenu_AdjustVolume(void);
|
void SysConfigMenu_AdjustVolume(void);
|
||||||
void SysConfigMenu_ChangeScreenBrightness(void);
|
void SysConfigMenu_ChangeScreenBrightness(void);
|
||||||
void SysConfigMenu_PowerOff(void);
|
|
||||||
void SysConfigMenu_Reboot(void);
|
|
||||||
|
|||||||
@ -55,6 +55,7 @@ Menu rosalinaMenu = {
|
|||||||
{ "System configuration...", MENU, .menu = &sysconfigMenu },
|
{ "System configuration...", MENU, .menu = &sysconfigMenu },
|
||||||
{ "Miscellaneous options...", MENU, .menu = &miscellaneousMenu },
|
{ "Miscellaneous options...", MENU, .menu = &miscellaneousMenu },
|
||||||
{ "Save settings", METHOD, .method = &RosalinaMenu_SaveSettings },
|
{ "Save settings", METHOD, .method = &RosalinaMenu_SaveSettings },
|
||||||
|
{ "Power off / reboot", METHOD, .method = &RosalinaMenu_PowerOffOrReboot },
|
||||||
{ "System info", METHOD, .method = &RosalinaMenu_ShowSystemInfo },
|
{ "System info", METHOD, .method = &RosalinaMenu_ShowSystemInfo },
|
||||||
{ "Credits", METHOD, .method = &RosalinaMenu_ShowCredits },
|
{ "Credits", METHOD, .method = &RosalinaMenu_ShowCredits },
|
||||||
{ "Debug info", METHOD, .method = &RosalinaMenu_ShowDebugInfo, .visibility = &rosalinaMenuShouldShowDebugInfo },
|
{ "Debug info", METHOD, .method = &RosalinaMenu_ShowDebugInfo, .visibility = &rosalinaMenuShouldShowDebugInfo },
|
||||||
@ -93,6 +94,42 @@ void RosalinaMenu_SaveSettings(void)
|
|||||||
while(!(waitInput() & KEY_B) && !menuShouldExit);
|
while(!(waitInput() & KEY_B) && !menuShouldExit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RosalinaMenu_PowerOffOrReboot(void)
|
||||||
|
{
|
||||||
|
Draw_Lock();
|
||||||
|
Draw_ClearFramebuffer();
|
||||||
|
Draw_FlushFramebuffer();
|
||||||
|
Draw_Unlock();
|
||||||
|
|
||||||
|
do
|
||||||
|
{
|
||||||
|
Draw_Lock();
|
||||||
|
Draw_DrawString(10, 10, COLOR_TITLE, "Power Off / Reboot");
|
||||||
|
Draw_DrawString(10, 30, COLOR_WHITE, "Press A to power off.\nPress Y to reboot.\nPress B to go back.");
|
||||||
|
Draw_FlushFramebuffer();
|
||||||
|
Draw_Unlock();
|
||||||
|
|
||||||
|
u32 pressed = waitInputWithTimeout(1000);
|
||||||
|
|
||||||
|
if(pressed & KEY_Y)
|
||||||
|
{
|
||||||
|
menuLeave();
|
||||||
|
APT_HardwareResetAsync();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if(pressed & KEY_A)
|
||||||
|
{
|
||||||
|
// Soft shutdown
|
||||||
|
menuLeave();
|
||||||
|
srvPublishToSubscriber(0x203, 0);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if(pressed & KEY_B)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
while(!menuShouldExit);
|
||||||
|
}
|
||||||
|
|
||||||
void RosalinaMenu_ShowSystemInfo(void)
|
void RosalinaMenu_ShowSystemInfo(void)
|
||||||
{
|
{
|
||||||
u32 kver = osGetKernelVersion();
|
u32 kver = osGetKernelVersion();
|
||||||
|
|||||||
@ -44,8 +44,6 @@ Menu sysconfigMenu = {
|
|||||||
{ "Toggle Power Button", METHOD, .method=&SysConfigMenu_TogglePowerButton },
|
{ "Toggle Power Button", METHOD, .method=&SysConfigMenu_TogglePowerButton },
|
||||||
{ "Toggle power to card slot", METHOD, .method=&SysConfigMenu_ToggleCardIfPower},
|
{ "Toggle power to card slot", METHOD, .method=&SysConfigMenu_ToggleCardIfPower},
|
||||||
{ "Change screen brightness", METHOD, .method = &SysConfigMenu_ChangeScreenBrightness },
|
{ "Change screen brightness", METHOD, .method = &SysConfigMenu_ChangeScreenBrightness },
|
||||||
{ "Power off", METHOD, .method = &SysConfigMenu_PowerOff },
|
|
||||||
{ "Reboot", METHOD, .method = &SysConfigMenu_Reboot },
|
|
||||||
{},
|
{},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -591,60 +589,3 @@ void SysConfigMenu_ChangeScreenBrightness(void)
|
|||||||
|
|
||||||
Draw_Unlock();
|
Draw_Unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
void SysConfigMenu_PowerOff(void) // Soft shutdown.
|
|
||||||
{
|
|
||||||
Draw_Lock();
|
|
||||||
Draw_ClearFramebuffer();
|
|
||||||
Draw_FlushFramebuffer();
|
|
||||||
Draw_Unlock();
|
|
||||||
|
|
||||||
do
|
|
||||||
{
|
|
||||||
Draw_Lock();
|
|
||||||
Draw_DrawString(10, 10, COLOR_TITLE, "Power off");
|
|
||||||
Draw_DrawString(10, 30, COLOR_WHITE, "Press A to power off, press B to go back.");
|
|
||||||
Draw_FlushFramebuffer();
|
|
||||||
Draw_Unlock();
|
|
||||||
|
|
||||||
u32 pressed = waitInputWithTimeout(1000);
|
|
||||||
|
|
||||||
if(pressed & KEY_A)
|
|
||||||
{
|
|
||||||
menuLeave();
|
|
||||||
srvPublishToSubscriber(0x203, 0);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
else if(pressed & KEY_B)
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
while(!menuShouldExit);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SysConfigMenu_Reboot(void)
|
|
||||||
{
|
|
||||||
Draw_Lock();
|
|
||||||
Draw_ClearFramebuffer();
|
|
||||||
Draw_FlushFramebuffer();
|
|
||||||
Draw_Unlock();
|
|
||||||
|
|
||||||
do
|
|
||||||
{
|
|
||||||
Draw_Lock();
|
|
||||||
Draw_DrawString(10, 10, COLOR_TITLE, "Reboot");
|
|
||||||
Draw_DrawString(10, 30, COLOR_WHITE, "Press A to reboot, press B to go back.");
|
|
||||||
Draw_FlushFramebuffer();
|
|
||||||
Draw_Unlock();
|
|
||||||
|
|
||||||
u32 pressed = waitInputWithTimeout(1000);
|
|
||||||
|
|
||||||
if(pressed & KEY_A)
|
|
||||||
{
|
|
||||||
menuLeave();
|
|
||||||
APT_HardwareResetAsync();
|
|
||||||
return;
|
|
||||||
} else if(pressed & KEY_B)
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
while(!menuShouldExit);
|
|
||||||
}
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user