aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS6
-rwxr-xr-xmonitor-probe5
-rwxr-xr-xmonitor-probe-using-X5
3 files changed, 13 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index bf282d3..f7da7e4 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+- monitor-probe:
+ o probe "using DMI" before "using X"
+- monitor-probe-using-X:
+ o in last resort, get Intel BIOS mode when "BIOS panel mode is bigger than
+ probed programmed mode"
+
Version 1.14 - 10 January 2007
- monitor-edid, monitor-get-edid:
diff --git a/monitor-probe b/monitor-probe
index e3213b7..e41578c 100755
--- a/monitor-probe
+++ b/monitor-probe
@@ -26,9 +26,8 @@ fi
[ -n "$opt_v" ] && echo "probing EDID" 1>&2
monitor-edid --try-in-console $opt_v && exit 0
-[ -n "$opt_v" ] && echo "probing using X" 1>&2
-monitor-probe-using-X $X_driver && exit 0
-
[ -n "$opt_v" ] && echo "probing DMI" 1>&2
lspcidrake | sed -n 's/^\(Resolution\|Diagonal_size\):\([^:]*\):.*/\1: \2/p'
+[ -n "$opt_v" ] && echo "probing using X" 1>&2
+monitor-probe-using-X $X_driver && exit 0
diff --git a/monitor-probe-using-X b/monitor-probe-using-X
index 70b0252..1b6299c 100755
--- a/monitor-probe-using-X
+++ b/monitor-probe-using-X
@@ -177,6 +177,11 @@ sub parse_X_log {
# via format: "Selected Panel Size is 640x480\n", ... (via/via_driver.c)
|| $log =~ m!\bSelected Panel Size is (\d+)x(\d+)$!m
+ # (WW) intel(0): BIOS panel mode is bigger than probed programmed mode, continuing with BIOS mode.
+ # (II) intel(0): BIOS mode:
+ # (II) intel(0): Modeline "1280x800"x0.0 68.88 1280 1296 1344 1410 800 804 807 815 (48.9 kHz)
+ || $log =~ m!BIOS panel mode is bigger than probed programmed mode, continuing with BIOS mode.*?BIOS mode:.*?Modeline "(\d+)x(\d+)"!s
+
or return;
my ($X, $Y) = ($1, $2);