ref: 0560d1d6b657294de891017e1f9c56cf4db07360
parent: 3f09d4b623b0e47d0f1dc6ced19345c0d9454834
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Wed Nov 5 15:42:47 EST 2014
termrc: setup mouse when we have a framebuffer previously, we setup mouse only when vgasize= was specifid in plan9.ini. with efi systems, the framebuffer is already setup for us and theres no requirement for going thru aux/vga setup, but we still want to setup the mouse. so do the mouseport= check once theres a framebuffer by testing the existence of '#i/winname' (which fails when thers no framebuffer).
--- a/rc/bin/termrc
+++ b/rc/bin/termrc
@@ -75,6 +75,7 @@
aux/timesync $TIMESYNCARGS
}
+# setup mouse and graphics
fn ask {
if(~ $"$1 ask){
echo -n $1
@@ -92,27 +93,27 @@
ask $*
}
}
-
-ask vgasize ' is (text, 640x480x8, 1024x768x16, ...)' 1024x768x16
-if(! ~ $"vgasize '' text none){
- ask monitor ' is (vesa, xga, lcd, ...)' vesa
- if(! ~ $"monitor ''){
- if(test -f /dev/mousectl)
- ask mouseport ' is (ps2, ps2intellimouse, 0, 1, 2)' ps2
- if not
- mouseport=none
- @{
- rfork n
- if(~ $monitor vesa)
- aux/realemu
- aux/vga -l $vgasize
+if(test -f /dev/vgactl){
+ ask vgasize ' is (text, 640x480x8, 1024x768x16, ...)' 1024x768x16
+ if(! ~ $"vgasize '' text none){
+ ask monitor ' is (vesa, xga, lcd, ...)' vesa
+ if(! ~ $"monitor ''){
+ @{
+ rfork n
+ if(~ $monitor vesa)
+ aux/realemu
+ aux/vga -l $vgasize
+ }
}
- switch($mouseport){
- case ps2 ps2intellimouse 0 1 2
- aux/mouse $mouseport
- if(~ $accupoint 1)
- pipefile -dr /bin/aux/accupoint /dev/mouse
- }
+ }
+}
+if(test -f /dev/mousectl && test -f '#i/winname'){
+ ask mouseport ' is (ps2, ps2intellimouse, 0, 1, 2)' ps2
+ switch($mouseport){
+ case ps2 ps2intellimouse 0 1 2
+ aux/mouse $mouseport
+ if(~ $accupoint 1)
+ pipefile -dr /bin/aux/accupoint /dev/mouse
}
}
rm -f '/env/fn#ask'