gui "M A5 0 J"
gui "M A6 0 J"
if {[info exists watchdog]} { gui "P 1" }
-# gui_polarity 0x$polarity
+ gui_polarity
foreach seg [array names segdetect] {
gui "D1 $seg"
}
fileevent $p readable {}
}
-proc gui_polarity {diff} {
- set l {}
- if {$diff & 0x06} { lappend l X10 X9 }
- if {$diff & 0x09} { lappend l X8 X1 X2 X3 X4 X5 X6 X7 }
- foreach seg $l {
- gui "R $seg"
+proc gui_polarity {} {
+ global pname
+ set 1 {}
+ switch -exact $pname {
+ l { lappend 0 X1 X3 X5 X7 X9; lappend 0 X2 X4 X6 X8 X10 }
+ x { lappend 1 X1 X3 X5 X7 X9; lappend 0 X2 X4 X6 X8 X10 }
+ y { lappend 0 X1 X3 X5 X7 X9; lappend 1 X2 X4 X6 X8 X10 }
+ }
+ foreach v {0 1} {
+ foreach seg [set $v] {
+ gui "R $v $seg"
+ }
}
}
debug "polarising $newpname"
if {![string compare $pname $newpname]} return
tellpic $polmsg($newpname)
-# gui_polarity
set pname $newpname
+ gui_polarity
}
proc pt_now {how point pos xtra} {