Configurable timeout and brightness settings

Change-Id: I924297ab0dcf920cd4b4b617949c3b16cbc68e43
diff --git a/Android.mk b/Android.mk
index 58b0607..9c16b1f 100644
--- a/Android.mk
+++ b/Android.mk
@@ -228,6 +228,12 @@
 ifeq ($(TW_USE_MODEL_HARDWARE_ID_FOR_DEVICE_ID), true)
     LOCAL_CFLAGS += -DTW_USE_MODEL_HARDWARE_ID_FOR_DEVICE_ID
 endif
+ifneq ($(TW_BRIGHTNESS_PATH),)
+	LOCAL_CFLAGS += -DTW_BRIGHTNESS_PATH=$(TW_BRIGHTNESS_PATH)
+endif
+ifneq ($(TW_MAX_BRIGHTNESS),)
+	LOCAL_CFLAGS += -DTW_MAX_BRIGHTNESS=$(TW_MAX_BRIGHTNESS)
+endif
 ifeq ($(TARGET_BOARD_PLATFORM),rk30xx)
     LOCAL_CFLAGS += -DRK3066
 endif
diff --git a/data.cpp b/data.cpp
index 6566bcd..a4cb464 100644
--- a/data.cpp
+++ b/data.cpp
@@ -40,6 +40,7 @@
 #include "data.hpp"
 #include "partitions.hpp"
 #include "twrp-functions.hpp"
+#include "gui/blanktimer.hpp"
 
 #ifdef TW_USE_MODEL_HARDWARE_ID_FOR_DEVICE_ID
     #include "cutils/properties.h"
@@ -62,6 +63,7 @@
 map<string, string>                     DataManager::mConstValues;
 string                                  DataManager::mBackingFile;
 int                                     DataManager::mInitialized = 0;
+extern blanktimer blankTimer;
 
 // Device ID functions
 void DataManager::sanitize_device_id(char* device_id) {
@@ -429,7 +431,10 @@
 
     if (pos->second.second != 0)
         SaveValues();
-    gui_notifyVarChange(varName.c_str(), value.c_str());
+	if (varName == "tw_screen_timeout_secs")
+		blankTimer.setTime(atoi(value.c_str()));
+	else
+		gui_notifyVarChange(varName.c_str(), value.c_str());
     return 0;
 }
 
@@ -849,6 +854,31 @@
 	mValues.insert(make_pair("tw_terminal_state", make_pair("0", 0)));
 	mValues.insert(make_pair("tw_background_thread_running", make_pair("0", 0)));
 	mValues.insert(make_pair(TW_RESTORE_FILE_DATE, make_pair("0", 0)));
+	mValues.insert(make_pair("tw_screen_timeout_secs", make_pair("60", 1)));
+#ifdef TW_MAX_BRIGHTNESS
+	if (strcmp(EXPAND(TW_BRIGHTNESS_PATH), "/nobrightness") != 0) {
+		LOGI("TW_BRIGHTNESS_PATH := %s\n", EXPAND(TW_BRIGHTNESS_PATH));
+		mConstValues.insert(make_pair("tw_has_brightnesss_file", "1"));
+		mConstValues.insert(make_pair("tw_brightness_file", EXPAND(TW_BRIGHTNESS_PATH)));
+		ostringstream val100, val25, val50, val75;
+		int value = TW_MAX_BRIGHTNESS;
+		val100 << value;
+		mConstValues.insert(make_pair("tw_brightness_100", val100.str()));
+		value = TW_MAX_BRIGHTNESS * 0.25;
+		val25 << value;
+		mConstValues.insert(make_pair("tw_brightness_25", val25.str()));
+		value = TW_MAX_BRIGHTNESS * 0.5;
+		val50 << value;
+		mConstValues.insert(make_pair("tw_brightness_50", val50.str()));
+		value = TW_MAX_BRIGHTNESS * 0.75;
+		val75 << value;
+		mConstValues.insert(make_pair("tw_brightness_75", val75.str()));
+		mValues.insert(make_pair("tw_brightness", make_pair(val100.str(), 1)));
+		mValues.insert(make_pair("tw_brightness_display", make_pair("100", 1)));
+	} else {
+		mConstValues.insert(make_pair("tw_has_brightnesss_file", "0"));
+	}
+#endif
 }
 
 // Magic Values
@@ -998,6 +1028,14 @@
 		PartitionManager.Mount_By_Path(ext_path, 0);
 	}
 	update_tz_environment_variables();
+#ifdef TW_MAX_BRIGHTNESS
+	if (strcmp(EXPAND(TW_BRIGHTNESS_PATH), "/nobrightness") != 0) {
+		string brightness_path = EXPAND(TW_BRIGHTNESS_PATH);
+		string brightness_value = GetStrValue("tw_brightness");
+		LOGI("writing %s to brightness\n", brightness_value.c_str());
+		TWFunc::write_file(brightness_path, brightness_value);
+	}
+#endif
 }
 
 string DataManager::GetCurrentStoragePath(void)
diff --git a/gui/blanktimer.cpp b/gui/blanktimer.cpp
index f64bb5f..d991d40 100644
--- a/gui/blanktimer.cpp
+++ b/gui/blanktimer.cpp
@@ -50,6 +50,10 @@
 	orig_brightness = getBrightness();
 }
 
+void blanktimer::setTime(int newtime) {
+	sleepTimer = newtime;
+}
+
 int blanktimer::setTimerThread(void) {
 	pthread_t thread;
 	ThreadPtr blankptr = &blanktimer::setClockTimer;
@@ -84,13 +88,15 @@
 		usleep(1000);
 		clock_gettime(CLOCK_MONOTONIC, &curTime);
 		diff = TWFunc::timespec_diff(btimer, curTime);
-		if (diff.tv_sec > sleepTimer && conblank != 1)
+		if (sleepTimer && diff.tv_sec > sleepTimer && conblank != 1) {
+			orig_brightness = getBrightness();
 			setBlank(1);
+			PageManager::ChangeOverlay("lock");
+		}
 		if (conblank == 1 && blanked != 1) {
 			blanked = 1;
 			gr_fb_blank(conblank);
 			setBrightness(0);
-			PageManager::ChangeOverlay("lock");
 		}
 	}
 	return -1;
diff --git a/gui/blanktimer.hpp b/gui/blanktimer.hpp
index 74712bd..4135635 100644
--- a/gui/blanktimer.hpp
+++ b/gui/blanktimer.hpp
@@ -1,55 +1,56 @@
-/*

-        Copyright 2012 bigbiff/Dees_Troy TeamWin

-        This file is part of TWRP/TeamWin Recovery Project.

-

-        TWRP is free software: you can redistribute it and/or modify

-        it under the terms of the GNU General Public License as published by

-        the Free Software Foundation, either version 3 of the License, or

-        (at your option) any later version.

-

-        TWRP is distributed in the hope that it will be useful,

-        but WITHOUT ANY WARRANTY; without even the implied warranty of

-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

-        GNU General Public License for more details.

-

-        You should have received a copy of the GNU General Public License

-        along with TWRP.  If not, see <http://www.gnu.org/licenses/>.

-*/

-

-#ifndef __BLANKTIMER_HEADER_HPP

-#define __BLANKTIMER_HEADER_HPP

-

-#include <pthread.h>

-#include <sys/time.h>

-

-using namespace std;

-

-class blanktimer {

-	public:

-		blanktimer(void);

-		int setTimerThread(void);

-		void resetTimerAndUnblank(void);

-

-	private:

-		void setBlank(int blank);

-		int getBlank(void);

-		void setTimer(void);

-		timespec getTimer(void);

-		int getBrightness(void);

-		int setBrightness(int brightness);

-		int setBlankTimer(void);

-		int setClockTimer(void);

-		typedef int (blanktimer::*ThreadPtr)(void);

-		typedef void* (*PThreadPtr)(void*);

-		pthread_mutex_t blankmutex;

-		pthread_mutex_t timermutex;

-		int conblank;

-		timespec btimer;

-		unsigned long long sleepTimer;

-		int orig_brightness;

-		int blanked;

-};

-

-extern blanktimer blankTimer;

-

-#endif // __BLANKTIMER_HEADER_HPP

+/*
+        Copyright 2012 bigbiff/Dees_Troy TeamWin
+        This file is part of TWRP/TeamWin Recovery Project.
+
+        TWRP is free software: you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation, either version 3 of the License, or
+        (at your option) any later version.
+
+        TWRP is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with TWRP.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef __BLANKTIMER_HEADER_HPP
+#define __BLANKTIMER_HEADER_HPP
+
+#include <pthread.h>
+#include <sys/time.h>
+
+using namespace std;
+
+class blanktimer {
+	public:
+		blanktimer(void);
+		int setTimerThread(void);
+		void resetTimerAndUnblank(void);
+		void setTime(int newtime);
+
+	private:
+		void setBlank(int blank);
+		int getBlank(void);
+		void setTimer(void);
+		timespec getTimer(void);
+		int getBrightness(void);
+		int setBrightness(int brightness);
+		int setBlankTimer(void);
+		int setClockTimer(void);
+		typedef int (blanktimer::*ThreadPtr)(void);
+		typedef void* (*PThreadPtr)(void*);
+		pthread_mutex_t blankmutex;
+		pthread_mutex_t timermutex;
+		int conblank;
+		timespec btimer;
+		unsigned long long sleepTimer;
+		int orig_brightness;
+		int blanked;
+};
+
+extern blanktimer blankTimer;
+
+#endif // __BLANKTIMER_HEADER_HPP
diff --git a/gui/devices/1024x600/res/ui.xml b/gui/devices/1024x600/res/ui.xml
index 9d66a90..393e40d 100755
--- a/gui/devices/1024x600/res/ui.xml
+++ b/gui/devices/1024x600/res/ui.xml
@@ -62,9 +62,9 @@
 		<variable name="col3_medium_x" value="517" />
 		<variable name="col4_medium_x" value="647" />
 		<variable name="row1_medium_y" value="105" />
-		<variable name="row2_medium_y" value="175" />
+		<variable name="row2_medium_y" value="200" />
 		<variable name="row3_medium_y" value="245" />
-		<variable name="row4_medium_y" value="315" />
+		<variable name="row4_medium_y" value="440" />
 		<variable name="row5_medium_y" value="405" />
 		<variable name="row1_text_y" value="58" />
 		<variable name="row2_text_y" value="105" />
@@ -2402,21 +2402,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting?</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation on backups</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2424,7 +2416,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 checking of backup files</text>
 				<data variable="tw_skip_md5_check" />
@@ -2432,7 +2424,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup</text>
 				<data variable="tw_ignore_image_size" />
@@ -2440,7 +2432,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate most actions for theme testing</text>
 				<data variable="tw_simulate_actions" />
@@ -2449,7 +2441,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row9_text_y%" />
+				<placement x="%col1_x%" y="%row8_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions</text>
 				<data variable="tw_simulate_fail" />
@@ -2467,6 +2459,15 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col4_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
+				<highlight color="%highlight_color%" />
 				<placement x="%col_center_x%" y="%slider_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2610,6 +2611,121 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_text_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row4_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/1024x768/res/ui.xml b/gui/devices/1024x768/res/ui.xml
index cf74e0a..5748e43 100644
--- a/gui/devices/1024x768/res/ui.xml
+++ b/gui/devices/1024x768/res/ui.xml
@@ -62,9 +62,9 @@
 		<variable name="col3_medium_x" value="517" />
 		<variable name="col4_medium_x" value="647" />
 		<variable name="row1_medium_y" value="105" />
-		<variable name="row2_medium_y" value="175" />
+		<variable name="row2_medium_y" value="245" />
 		<variable name="row3_medium_y" value="245" />
-		<variable name="row4_medium_y" value="315" />
+		<variable name="row4_medium_y" value="450" />
 		<variable name="row5_medium_y" value="405" />
 		<variable name="row1_text_y" value="58" />
 		<variable name="row2_text_y" value="105" />
@@ -649,14 +649,6 @@
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
-			<object type="checkbox">
-				<placement x="%col2_x%" y="%row8_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
 			<object type="text" color="%text_color%">
 				<font resource="font" />
 				<placement x="%center_x%" y="%row10_text_y%" placement="5" />
@@ -2402,21 +2394,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting?</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation on backups</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2424,7 +2408,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 checking of backup files</text>
 				<data variable="tw_skip_md5_check" />
@@ -2432,7 +2416,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup</text>
 				<data variable="tw_ignore_image_size" />
@@ -2440,7 +2424,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate most actions for theme testing</text>
 				<data variable="tw_simulate_actions" />
@@ -2449,7 +2433,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row9_text_y%" />
+				<placement x="%col1_x%" y="%row8_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions</text>
 				<data variable="tw_simulate_fail" />
@@ -2467,6 +2451,15 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col4_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
+				<highlight color="%highlight_color%" />
 				<placement x="%col_center_x%" y="%slider_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2610,6 +2603,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_text_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row4_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/1280x800/res/ui.xml b/gui/devices/1280x800/res/ui.xml
index 8e96c7b..9533189 100644
--- a/gui/devices/1280x800/res/ui.xml
+++ b/gui/devices/1280x800/res/ui.xml
@@ -62,9 +62,9 @@
 		<variable name="col3_medium_x" value="645" />
 		<variable name="col4_medium_x" value="775" />
 		<variable name="row1_medium_y" value="105" />
-		<variable name="row2_medium_y" value="175" />
+		<variable name="row2_medium_y" value="245" />
 		<variable name="row3_medium_y" value="245" />
-		<variable name="row4_medium_y" value="315" />
+		<variable name="row4_medium_y" value="450" />
 		<variable name="row5_medium_y" value="405" />
 		<variable name="row1_text_y" value="58" />
 		<variable name="row2_text_y" value="105" />
@@ -649,14 +649,6 @@
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
-			<object type="checkbox">
-				<placement x="%col2_x%" y="%row8_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
 			<object type="text" color="%text_color%">
 				<font resource="font" />
 				<placement x="%center_x%" y="%row10_text_y%" placement="5" />
@@ -2402,21 +2394,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting?</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation on backups</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2424,7 +2408,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 checking of backup files</text>
 				<data variable="tw_skip_md5_check" />
@@ -2432,7 +2416,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup</text>
 				<data variable="tw_ignore_image_size" />
@@ -2440,7 +2424,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate most actions for theme testing</text>
 				<data variable="tw_simulate_actions" />
@@ -2449,7 +2433,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row9_text_y%" />
+				<placement x="%col1_x%" y="%row8_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions</text>
 				<data variable="tw_simulate_fail" />
@@ -2467,6 +2451,15 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col4_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
+				<highlight color="%highlight_color%" />
 				<placement x="%col_center_x%" y="%slider_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2610,6 +2603,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_text_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row4_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/1920x1200/res/ui.xml b/gui/devices/1920x1200/res/ui.xml
index cbe6353..874dcaa 100644
--- a/gui/devices/1920x1200/res/ui.xml
+++ b/gui/devices/1920x1200/res/ui.xml
@@ -50,7 +50,7 @@
 		<variable name="col3_x" value="970" />
 		<variable name="col4_x" value="1350" />
 		<variable name="row1_y" value="220" />
-		<variable name="row2_y" value="600" />
+		<variable name="row2_y" value="680" />
 		<variable name="col_center_x" value="780" />
 		<variable name="center_x" value="960" />
 		<variable name="screen_width" value="1920" />
@@ -62,9 +62,9 @@
 		<variable name="col3_medium_x" value="970" />
 		<variable name="col4_medium_x" value="1170" />
 		<variable name="row1_medium_y" value="105" />
-		<variable name="row2_medium_y" value="175" />
+		<variable name="row2_medium_y" value="365" />
 		<variable name="row3_medium_y" value="245" />
-		<variable name="row4_medium_y" value="515" />
+		<variable name="row4_medium_y" value="720" />
 		<variable name="row5_medium_y" value="700" />
 		<variable name="row1_text_y" value="90" />
 		<variable name="row2_text_y" value="140" />
@@ -649,14 +649,6 @@
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
-			<object type="checkbox">
-				<placement x="%col2_x%" y="%row8_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
 			<object type="text" color="%text_color%">
 				<font resource="font" />
 				<placement x="%center_x%" y="%row10_text_y%" placement="5" />
@@ -2402,21 +2394,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting?</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation on backups</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2424,7 +2408,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 checking of backup files</text>
 				<data variable="tw_skip_md5_check" />
@@ -2432,7 +2416,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup</text>
 				<data variable="tw_ignore_image_size" />
@@ -2440,7 +2424,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate most actions for theme testing</text>
 				<data variable="tw_simulate_actions" />
@@ -2449,7 +2433,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row9_text_y%" />
+				<placement x="%col1_x%" y="%row8_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions</text>
 				<data variable="tw_simulate_fail" />
@@ -2467,6 +2451,15 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col4_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
+				<highlight color="%highlight_color%" />
 				<placement x="%col_center_x%" y="%slider_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2610,6 +2603,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_text_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row4_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/2560x1600/res/ui.xml b/gui/devices/2560x1600/res/ui.xml
index 834aa2a..bd058c1 100644
--- a/gui/devices/2560x1600/res/ui.xml
+++ b/gui/devices/2560x1600/res/ui.xml
@@ -62,9 +62,9 @@
 		<variable name="col3_medium_x" value="1310" />
 		<variable name="col4_medium_x" value="1580" />
 		<variable name="row1_medium_y" value="105" />
-		<variable name="row2_medium_y" value="175" />
+		<variable name="row2_medium_y" value="500" />
 		<variable name="row3_medium_y" value="245" />
-		<variable name="row4_medium_y" value="515" />
+		<variable name="row4_medium_y" value="1000" />
 		<variable name="row5_medium_y" value="950" />
 		<variable name="row1_text_y" value="120" />
 		<variable name="row2_text_y" value="195" />
@@ -161,7 +161,7 @@
 		<variable name="listbox_background" value="#303030" />
 		<variable name="listbox_spacing" value="18" />
 		<variable name="sd_plus_x" value="408" />
-		<variable name="lock_x" value="660" />
+		<variable name="lock_x" value="880" />
 		<variable name="lock_y" value="300" />
 		<variable name="filemanager_select_x" value="2000" />
 		<variable name="filemanager_select_y" value="1360" />
@@ -649,14 +649,6 @@
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
-			<object type="checkbox">
-				<placement x="%col2_x%" y="%row8_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
 			<object type="text" color="%text_color%">
 				<font resource="font" />
 				<placement x="%center_x%" y="%row10_text_y%" placement="5" />
@@ -2402,21 +2394,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting?</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation on backups</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2424,7 +2408,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 checking of backup files</text>
 				<data variable="tw_skip_md5_check" />
@@ -2432,7 +2416,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup</text>
 				<data variable="tw_ignore_image_size" />
@@ -2440,7 +2424,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate most actions for theme testing</text>
 				<data variable="tw_simulate_actions" />
@@ -2449,7 +2433,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row9_text_y%" />
+				<placement x="%col1_x%" y="%row8_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions</text>
 				<data variable="tw_simulate_fail" />
@@ -2467,6 +2451,15 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col4_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
+				<highlight color="%highlight_color%" />
 				<placement x="%col_center_x%" y="%slider_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2610,6 +2603,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_text_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row4_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/320x480/res/ui.xml b/gui/devices/320x480/res/ui.xml
index c8ff2fb..5de1e7e 100644
--- a/gui/devices/320x480/res/ui.xml
+++ b/gui/devices/320x480/res/ui.xml
@@ -599,14 +599,6 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row9_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
 				<condition var1="tw_has_injecttwrp" var2="1" />
 				<placement x="%col1_x%" y="%row10_text_y%" />
 				<font resource="font" color="%text_color%" />
@@ -2374,21 +2366,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row2_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row3_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting.</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
+				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation during backup.</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2396,7 +2380,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 verification of backup files.</text>
 				<data variable="tw_skip_md5_check" />
@@ -2404,7 +2388,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup.</text>
 				<data variable="tw_ignore_image_size" />
@@ -2412,7 +2396,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate actions for theme testing.</text>
 				<data variable="tw_simulate_actions" />
@@ -2421,7 +2405,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions.</text>
 				<data variable="tw_simulate_fail" />
@@ -2439,6 +2423,14 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col2_x%" y="%row3_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
 				<placement x="%col_center_x%" y="%row4_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2576,6 +2568,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_header_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row3_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/480x800/res/ui.xml b/gui/devices/480x800/res/ui.xml
index 718921d..b44c23d 100644
--- a/gui/devices/480x800/res/ui.xml
+++ b/gui/devices/480x800/res/ui.xml
@@ -598,14 +598,6 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row9_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
 				<condition var1="tw_has_injecttwrp" var2="1" />
 				<placement x="%col1_x%" y="%row10_text_y%" />
 				<font resource="font" color="%text_color%" />
@@ -2373,21 +2365,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row2_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row3_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting.</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
+				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation during backup.</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2395,7 +2379,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 verification of backup files.</text>
 				<data variable="tw_skip_md5_check" />
@@ -2403,7 +2387,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup.</text>
 				<data variable="tw_ignore_image_size" />
@@ -2411,7 +2395,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate actions for theme testing.</text>
 				<data variable="tw_simulate_actions" />
@@ -2420,7 +2404,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions.</text>
 				<data variable="tw_simulate_fail" />
@@ -2438,6 +2422,14 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col2_x%" y="%row3_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
 				<placement x="%col_center_x%" y="%row4_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2575,6 +2567,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_header_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row3_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/480x854/res/ui.xml b/gui/devices/480x854/res/ui.xml
index b8bd53f..8959e99 100644
--- a/gui/devices/480x854/res/ui.xml
+++ b/gui/devices/480x854/res/ui.xml
@@ -597,14 +597,6 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row9_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
 				<condition var1="tw_has_injecttwrp" var2="1" />
 				<placement x="%col1_x%" y="%row10_text_y%" />
 				<font resource="font" color="%text_color%" />
@@ -2372,21 +2364,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row2_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row3_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting.</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
+				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation during backup.</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2394,7 +2378,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 verification of backup files.</text>
 				<data variable="tw_skip_md5_check" />
@@ -2402,7 +2386,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup.</text>
 				<data variable="tw_ignore_image_size" />
@@ -2410,7 +2394,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate actions for theme testing.</text>
 				<data variable="tw_simulate_actions" />
@@ -2419,7 +2403,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions.</text>
 				<data variable="tw_simulate_fail" />
@@ -2437,6 +2421,14 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col2_x%" y="%row3_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
 				<placement x="%col_center_x%" y="%row4_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2574,6 +2566,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_header_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row3_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/540x960/res/ui.xml b/gui/devices/540x960/res/ui.xml
index 01e7f7a..184ffba 100644
--- a/gui/devices/540x960/res/ui.xml
+++ b/gui/devices/540x960/res/ui.xml
@@ -598,14 +598,6 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row9_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
 				<condition var1="tw_has_injecttwrp" var2="1" />
 				<placement x="%col1_x%" y="%row10_text_y%" />
 				<font resource="font" color="%text_color%" />
@@ -2373,21 +2365,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row2_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row3_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting.</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
+				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation during backup.</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2395,7 +2379,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 verification of backup files.</text>
 				<data variable="tw_skip_md5_check" />
@@ -2403,7 +2387,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup.</text>
 				<data variable="tw_ignore_image_size" />
@@ -2411,7 +2395,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate actions for theme testing.</text>
 				<data variable="tw_simulate_actions" />
@@ -2420,7 +2404,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions.</text>
 				<data variable="tw_simulate_fail" />
@@ -2438,6 +2422,14 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col2_x%" y="%row3_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
 				<placement x="%col_center_x%" y="%row4_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2575,6 +2567,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_header_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row3_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/720x1280/res/ui.xml b/gui/devices/720x1280/res/ui.xml
index fa51706..031364b 100644
--- a/gui/devices/720x1280/res/ui.xml
+++ b/gui/devices/720x1280/res/ui.xml
@@ -611,14 +611,6 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row9_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
 				<condition var1="tw_has_injecttwrp" var2="1" />
 				<placement x="%col1_x%" y="%row10_text_y%" />
 				<font resource="font" color="%text_color%" />
@@ -2386,21 +2378,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row2_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row3_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting.</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
+				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation during backup.</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2408,7 +2392,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 verification of backup files.</text>
 				<data variable="tw_skip_md5_check" />
@@ -2416,7 +2400,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup.</text>
 				<data variable="tw_ignore_image_size" />
@@ -2424,7 +2408,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate actions for theme testing.</text>
 				<data variable="tw_simulate_actions" />
@@ -2433,7 +2417,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions.</text>
 				<data variable="tw_simulate_fail" />
@@ -2451,6 +2435,14 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col2_x%" y="%row3_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
 				<placement x="%col_center_x%" y="%row4_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2588,6 +2580,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_header_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row3_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/800x1280/res/ui.xml b/gui/devices/800x1280/res/ui.xml
index 4bb146b..6703376 100755
--- a/gui/devices/800x1280/res/ui.xml
+++ b/gui/devices/800x1280/res/ui.xml
@@ -599,14 +599,6 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row9_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
 				<condition var1="tw_has_injecttwrp" var2="1" />
 				<placement x="%col1_x%" y="%row10_text_y%" />
 				<font resource="font" color="%text_color%" />
@@ -2374,21 +2366,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row2_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips.</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row3_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting.</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
+				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation during backup.</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2396,7 +2380,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 verification of backup files.</text>
 				<data variable="tw_skip_md5_check" />
@@ -2404,7 +2388,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup.</text>
 				<data variable="tw_ignore_image_size" />
@@ -2412,7 +2396,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate actions for theme testing.</text>
 				<data variable="tw_simulate_actions" />
@@ -2421,7 +2405,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions.</text>
 				<data variable="tw_simulate_fail" />
@@ -2439,6 +2423,14 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col2_x%" y="%row3_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
 				<placement x="%col_center_x%" y="%row4_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2576,6 +2568,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_header_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row3_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />
 
diff --git a/gui/devices/800x480/res/ui.xml b/gui/devices/800x480/res/ui.xml
index 9d6abf9..7c815cf 100755
--- a/gui/devices/800x480/res/ui.xml
+++ b/gui/devices/800x480/res/ui.xml
@@ -64,7 +64,7 @@
 		<variable name="row1_medium_y" value="105" />
 		<variable name="row2_medium_y" value="175" />
 		<variable name="row3_medium_y" value="245" />
-		<variable name="row4_medium_y" value="220" />
+		<variable name="row4_medium_y" value="340" />
 		<variable name="row5_medium_y" value="320" />
 		<variable name="row1_text_y" value="58" />
 		<variable name="row2_text_y" value="78" />
@@ -657,14 +657,6 @@
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
-			<object type="checkbox">
-				<placement x="%col2_x%" y="%row8_text_y%" />
-				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
 			<object type="text" color="%text_color%">
 				<font resource="font" />
 				<placement x="%center_x%" y="%row10_text_y%" placement="5" />
@@ -2410,21 +2402,13 @@
 			<object type="checkbox">
 				<placement x="%col1_x%" y="%row3_text_y%" />
 				<font resource="font" color="%text_color%" />
-				<text>Force MD5 check on all zips?</text>
-				<data variable="tw_force_md5_check" />
-				<image checked="checkbox_true" unchecked="checkbox_false" />
-			</object>
-
-			<object type="checkbox">
-				<placement x="%col1_x%" y="%row4_text_y%" />
-				<font resource="font" color="%text_color%" />
 				<text>Use rm -rf instead of formatting?</text>
 				<data variable="tw_rm_rf" />
 				<image checked="checkbox_true" unchecked="checkbox_false" />
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row5_text_y%" />
+				<placement x="%col1_x%" y="%row4_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Skip MD5 generation on backups</text>
 				<data variable="tw_skip_md5_generate" />
@@ -2432,7 +2416,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row6_text_y%" />
+				<placement x="%col1_x%" y="%row5_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Enable MD5 checking of backup files</text>
 				<data variable="tw_skip_md5_check" />
@@ -2440,7 +2424,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row7_text_y%" />
+				<placement x="%col1_x%" y="%row6_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Ignore image size errors during backup</text>
 				<data variable="tw_ignore_image_size" />
@@ -2448,7 +2432,7 @@
 			</object>
 
 			<object type="checkbox">
-				<placement x="%col1_x%" y="%row8_text_y%" />
+				<placement x="%col1_x%" y="%row7_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate most actions for theme testing</text>
 				<data variable="tw_simulate_actions" />
@@ -2457,7 +2441,7 @@
 
 			<object type="checkbox">
 				<condition var1="tw_simulate_actions" var2="1" />
-				<placement x="%col1_x%" y="%row9_text_y%" />
+				<placement x="%col1_x%" y="%row8_text_y%" />
 				<font resource="font" color="%text_color%" />
 				<text>Simulate failure for actions</text>
 				<data variable="tw_simulate_fail" />
@@ -2475,6 +2459,15 @@
 
 			<object type="button">
 				<highlight color="%highlight_color%" />
+				<placement x="%col4_x%" y="%row2_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>Screen</text>
+				<image resource="main_button" />
+				<action function="page">screen</action>
+			</object>
+
+			<object type="button">
+				<highlight color="%highlight_color%" />
 				<placement x="%col_center_x%" y="%slider_y%" />
 				<font resource="font" color="%button_text_color%" />
 				<text>Restore Defaults</text>
@@ -2618,6 +2611,125 @@
 			<object type="template" name="footer" />
 		</page>
 
+		<page name="screen">
+			<object type="template" name="header" />
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row1_text_y%" placement="5" />
+				<text>Screen Settings</text>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<font resource="font" />
+				<placement x="%center_x%" y="%row4_text_y%" placement="5" />
+				<text>Screen Timeout: %tw_screen_timeout_secs% seconds</text>
+			</object>
+
+			<object type="button">
+				<placement x="%col1_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>None</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=0</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col2_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>60</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=60</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col3_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>120</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=120</action>
+			</object>
+
+			<object type="button">
+				<placement x="%col4_medium_x%" y="%row2_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>180</text>
+				<image resource="medium_button" />
+				<action function="set">tw_screen_timeout_secs=180</action>
+			</object>
+
+			<object type="text" color="%text_color%">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<font resource="font" />
+				<placement x="%center_x%" y="%row12_text_y%" placement="5" />
+				<text>Brightness: %tw_brightness_display%</text>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col1_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>25%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_25% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=25%</action>
+					<action function="set">tw_brightness=%tw_brightness_25%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col2_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>50%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_50% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=50%</action>
+					<action function="set">tw_brightness=%tw_brightness_50%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col3_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>75%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_75% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=75%</action>
+					<action function="set">tw_brightness=%tw_brightness_75%</action>
+				</actions>
+			</object>
+
+			<object type="button">
+				<condition var1="tw_has_brightnesss_file" var2="1" />
+				<placement x="%col4_medium_x%" y="%row4_medium_y%" />
+				<font resource="font" color="%button_text_color%" />
+				<text>100%</text>
+				<image resource="medium_button" />
+				<actions>
+					<action function="cmd">echo %tw_brightness_100% > &quot;%tw_brightness_file%&quot;</action>
+					<action function="set">tw_brightness_display=100%</action>
+					<action function="set">tw_brightness=%tw_brightness_100%</action>
+				</actions>
+			</object>
+
+			<object type="action">
+				<touch key="home" />
+				<action function="page">main</action>
+			</object>
+
+			<object type="action">
+				<touch key="back" />
+				<action function="page">settings</action>
+			</object>
+
+			<object type="template" name="footer" />
+		</page>
+
 		<page name="advanced">
 			<object type="template" name="header" />