Browse Source

[3DS] Disable bottom screen backlight

pull/1032/head
MrHuu 6 years ago committed by Anders Jenbo
parent
commit
6524e70c39
  1. 43
      SourceX/platform/ctr/system.cpp
  2. 3
      SourceX/platform/ctr/system.h

43
SourceX/platform/ctr/system.cpp

@ -5,6 +5,44 @@
bool isN3DS;
aptHookCookie cookie;
void aptHookFunc(APT_HookType hookType, void *param)
{
switch (hookType) {
case APTHOOK_ONSUSPEND:
ctr_lcd_backlight_on();
break;
case APTHOOK_ONSLEEP:
break;
case APTHOOK_ONRESTORE:
ctr_lcd_backlight_off();
break;
case APTHOOK_ONWAKEUP:
ctr_lcd_backlight_off();
break;
case APTHOOK_ONEXIT:
ctr_lcd_backlight_on();
break;
default:
break;
}
}
void ctr_lcd_backlight_on()
{
gspLcdInit();
GSPLCD_PowerOnBacklight(GSPLCD_SCREEN_BOTTOM);
gspLcdExit();
}
void ctr_lcd_backlight_off()
{
gspLcdInit();
GSPLCD_PowerOffBacklight(GSPLCD_SCREEN_BOTTOM);
gspLcdExit();
}
bool ctr_check_dsp()
{
FILE *dsp = fopen("sdmc:/3ds/dspfirm.cdc", "r");
@ -27,10 +65,15 @@ void ctr_sys_init()
if( ctr_check_dsp() == false )
exit(0);
aptHook(&cookie, aptHookFunc, NULL);
APT_CheckNew3DS(&isN3DS);
if(isN3DS)
osSetSpeedupEnable(true);
ctr_lcd_backlight_off();
atexit([]() { ctr_lcd_backlight_on(); });
romfsInit();
atexit([]() { romfsExit(); });
}

3
SourceX/platform/ctr/system.h

@ -1,5 +1,8 @@
#pragma once
void ctr_lcd_backlight_on();
void ctr_lcd_backlight_off();
bool ctr_check_dsp();
void ctr_sys_init();

Loading…
Cancel
Save