void loadConfig() { config.showCursor = confGetBool("showcursor", true); config.snapToBorder = confGetBool("snaptoborder", true); config.stretchToFit = confGetBool("stretchtofit", false); config.sensitivity = confGetInt("sensitivity", -5); config.screen = confGetInt("screen", kScreenBoth); // Turn off the backlight of any screen not used if (R_SUCCEEDED(gspLcdInit())) { if (config.screen == kScreenTop) { GSPLCD_PowerOnBacklight(GSPLCD_SCREEN_TOP); GSPLCD_PowerOffBacklight(GSPLCD_SCREEN_BOTTOM); } else if (config.screen == kScreenBottom) { GSPLCD_PowerOnBacklight(GSPLCD_SCREEN_BOTTOM); GSPLCD_PowerOffBacklight(GSPLCD_SCREEN_TOP); } else GSPLCD_PowerOnBacklight(GSPLCD_SCREEN_BOTH); gspLcdExit(); } OSystem_3DS *osys = (OSystem_3DS *)g_system; osys->updateConfig(); }
static int lua_lcdoff(lua_State *L) { int argc = lua_gettop(L); #ifndef SKIP_ERROR_HANDLING if (argc != 1) return luaL_error(L, "wrong number of arguments."); #endif u32 screen = luaL_checkinteger(L, 1); u32 flag; if (screen == 0) flag = GSPLCD_SCREEN_TOP; else if (screen==1) flag = GSPLCD_SCREEN_BOTTOM; else return luaL_error(L, "wrong parameter."); if (gspLcdInit() == 0){ GSPLCD_PowerOffBacklight(flag); gspLcdExit(); if (flag == GSPLCD_SCREEN_TOP) isTopLCDOn = false; else isBottomLCDOn = false; } return 0; }