diff --git a/skeleton/TF2/.system/rg35xx/paks/MinUI.pak/launch.sh b/skeleton/TF2/.system/rg35xx/paks/MinUI.pak/launch.sh index f0ae7ee..bb700d2 100755 --- a/skeleton/TF2/.system/rg35xx/paks/MinUI.pak/launch.sh +++ b/skeleton/TF2/.system/rg35xx/paks/MinUI.pak/launch.sh @@ -1,9 +1,5 @@ #!/bin/sh -# disable MicroSD card powersaving (should help reduce load stutter, test) -echo on > /sys/devices/b0238000.mmc/mmc_host/mmc0/power/control -echo on > /sys/devices/b0230000.mmc/mmc_host/mmc1/power/control - export SDCARD_PATH="/mnt/sdcard" export BIOS_PATH="$SDCARD_PATH/Bios" export SAVES_PATH="$SDCARD_PATH/Saves" @@ -12,36 +8,44 @@ export CORES_PATH="$SYSTEM_PATH/cores" export USERDATA_PATH="$SDCARD_PATH/.userdata/rg35xx" export LOGS_PATH="$USERDATA_PATH/logs" +####################################### + export PATH=$SYSTEM_PATH/bin:$PATH export LD_LIBRARY_PATH=$SYSTEM_PATH/lib:$LD_LIBRARY_PATH -mkdir -p "$LOGS_PATH" -mkdir -p "$USERDATA_PATH/.minui" +####################################### + +echo on > /sys/devices/b0238000.mmc/mmc_host/mmc0/power/control +echo on > /sys/devices/b0230000.mmc/mmc_host/mmc1/power/control -echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor export CPU_SPEED_MENU=504000 export CPU_SPEED_GAME=1296000 -export CPU_SPEED_PERF=1488000 # improves binary launch times +export CPU_SPEED_PERF=1488000 export CPU_PATH=/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed +echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor +####################################### + +mkdir -p "$LOGS_PATH" +mkdir -p "$USERDATA_PATH/.minui" AUTO_PATH=$USERDATA_PATH/auto.sh if [ -f "$AUTO_PATH" ]; then "$AUTO_PATH" fi -cd $(dirname "$0") +####################################### keymon.elf & # &> /mnt/sdcard/keymon.txt & # ./batmon.sh &> /mnt/sdcard/batmon.txt & +####################################### + +cd $(dirname "$0") export EXEC_PATH=/tmp/minui_exec touch "$EXEC_PATH" && sync - while [ -f "$EXEC_PATH" ]; do - ./minui.elf &> $LOGS_PATH/minui.txt - - # overclock to speedup binary launch time echo $CPU_SPEED_PERF > "$CPU_PATH" + ./minui.elf &> $LOGS_PATH/minui.txt sync NEXT="/tmp/next" @@ -49,6 +53,7 @@ while [ -f "$EXEC_PATH" ]; do CMD=`cat $NEXT` eval $CMD rm -f $NEXT + echo $CPU_SPEED_PERF > "$CPU_PATH" sync fi done diff --git a/src/minui/main.c b/src/minui/main.c index e776e5f..ea0974c 100644 --- a/src/minui/main.c +++ b/src/minui/main.c @@ -1233,7 +1233,6 @@ int main (int argc, char *argv[]) { if (autoResume()) return 0; // nothing to do dump("MinUI"); - POW_setCPUSpeed(CPU_SPEED_MENU); SDL_Surface* screen = GFX_init(MODE_MAIN); InitSettings(); @@ -1243,6 +1242,9 @@ int main (int argc, char *argv[]) { Menu_init(); + // now that (most of) the heavy lifting is done, take a load off + POW_setCPUSpeed(CPU_SPEED_MENU); + PAD_reset(); int dirty = 1; int show_setting = 0; // 1=brightness,2=volume