MeowOS for HiBy R3 Pro II — 公共发布版本(历史已重置)
• 全新单提交:清除含敏感信息的旧历史(sudo 口令、内网 IP、SSH 密钥路径、热点 SSID、设备 MAC) • 本地开发文档/测试记录/构建脚本全部移入 gitignored 的 devdocs/ 与 scripts/build/(不入库) • 保留:MeowOS 源码(launcher/watchdog/bootmenu/meow_svcd/SDK)、项目规范文档、mips-repo 增补组件:SDK 统一日志+通知 API、meow_svcd 服务管理器、mips-repo 软件仓库
This commit is contained in:
commit
245bee2946
136 files changed
+32730
No files matched your search
@@ -0,0 +1,48 @@
|
||||
#!/bin/sh
|
||||
# run_bugcond.sh — A/B test of launcher v6.5 (bug) vs v6.6 (fix) under the
|
||||
# bug condition: the display is on buffer1 (yoffset=720) with the player's
|
||||
# frame in buffer1 (the post-power screen-off state). Reproduces the reported
|
||||
# "menu invisible / screen frozen on last frame".
|
||||
HPID=976
|
||||
st(){ awk '{print $3}' "/proc/$HPID/stat" 2>/dev/null; }
|
||||
yoff(){ /data/fbprobe 2>/dev/null | grep -oE "yoffset = [0-9]+"; }
|
||||
|
||||
setup_bugcond(){
|
||||
# player frame into buffer1 (simulates the player's screen-off frame), then
|
||||
# put the display on buffer1 so yoffset=720 -> buffer1 displayed.
|
||||
/data/fbcopy >/dev/null 2>&1
|
||||
/data/fbpan 720 >/dev/null 2>&1
|
||||
echo " setup: buffer1<-buffer0, yoffset=$(yoff)"
|
||||
}
|
||||
|
||||
run_one(){
|
||||
BIN=$1; TAG=$2
|
||||
echo "=== $TAG ($BIN) ==="
|
||||
rm -f /usr/data/meow_launcherd.pid
|
||||
"$BIN" --sim-hotkey 1200 --sim-exit 9000 >/tmp/m_$TAG.log 2>&1 &
|
||||
LPID=$!
|
||||
sleep 4
|
||||
echo " DURING t=4s: player_stat=$(st) yoffset=$(yoff)"
|
||||
dd if=/dev/fb0 of=/tmp/${TAG}_menu_b0.raw bs=960 count=720 status=none
|
||||
dd if=/dev/fb0 of=/tmp/${TAG}_menu_b1.raw bs=960 skip=720 count=720 status=none
|
||||
echo " menu b0=$(md5sum /tmp/${TAG}_menu_b0.raw 2>/dev/null | awk '{print $1}') b1=$(md5sum /tmp/${TAG}_menu_b1.raw 2>/dev/null | awk '{print $1}')"
|
||||
echo " player_stat_after_capture=$(st)"
|
||||
sleep 6
|
||||
echo " AFTER t=10s: player_stat=$(st) yoffset=$(yoff)"
|
||||
dd if=/dev/fb0 of=/tmp/${TAG}_close_b1.raw bs=960 skip=720 count=720 status=none
|
||||
echo " close b1=$(md5sum /tmp/${TAG}_close_b1.raw 2>/dev/null | awk '{print $1}')"
|
||||
echo " log: $(grep -E 'fb:|fb backup|fb pan|fb restore|menu open|menu close' /tmp/m_$TAG.log | tr '\n' ' | ')"
|
||||
kill "$LPID" 2>/dev/null; sleep 1; killall meow_launcherd 2>/dev/null
|
||||
echo " killed; player_stat=$(st)"
|
||||
}
|
||||
|
||||
echo "launcher stopped, player pid=$HPID"
|
||||
setup_bugcond
|
||||
run_one /data/meow_launcherd.v65 OLD
|
||||
setup_bugcond # re-setup for the NEW run (player frame still in buffer1)
|
||||
run_one /data/meow_launcherd.v66 NEW
|
||||
echo "=== cleanup ==="
|
||||
/data/fbpan 720 >/dev/null 2>&1 # leave display on buffer1 (player's frame)
|
||||
echo "final yoffset=$(yoff) player_stat=$(st)"
|
||||
echo "BACKLIGHT: $(cat /sys/class/backlight/backlight_pwm0/brightness 2>/dev/null)"
|
||||
echo DONE
|
||||
Reference in new issue
Block a user