Ben Hague a écrit : > Hi, > I've just got a Dream Cheeky USB Roll-Up Chess Game. > http://www.dreamlink.info/product/roll-up-chess-game.php . This uses a > very simple protocol where you press on the origin square and then the > destination square. I have written a simple driver and added support on > SCID by using the text move entry interface. The code is > > proc openCheekyChess {} { > set cheeky [open "/tmp/cheeky_chess" RDONLY] > fconfigure $cheeky -buffering line -blocking 0 > fileevent $cheeky readable [list readCheekyChess $cheeky] > return $cheeky > } > > proc readCheekyChess {cheeky args} { > global moveEntry > if {![eof $cheeky]} { > set moveEntry(Text) [read $cheeky] > set moveEntry(List) [sc_pos matchMoves $moveEntry(Text) > $moveEntry(Coord)] > set len [llength $moveEntry(List)] > if {$len == 1} { > set move [string tolower [lindex $moveEntry(List) 0]] > > if {$moveEntry(AutoExpand) > 0 || > ![string compare [string tolower $moveEntry(Text)] $move]} { > moveEntry_Complete > } > } > updateStatusBar > } > } > > openCheekyChess > > at the bottom of main.tcl. The problems I have are that this is Linux > only, doesn't fail gracefully and should be a configurable option. > However I know very little about tcl so I'm not clear on how this should > be done, particularly how to fit it into SCID properly. > Also, it seems to would be nice to have all possible input devices, such > as the DGT or Citrine in the same place, but they appear to work in > rather different ways, so would this be possible? > > If anyone is interested in the driver code let me know. > > Ben Hague > Hi,
This is nice to see this device working with Scid. I just ordered a Novag Citrine, and I will try to make it work with Scid also. Can you tell us a bit more about Dream Cheeky ? Is it reliable ? Considering the driver, I suppose you wrote a kernel module ? Wouldn't it be possible to use a user space program ? Maybe using sockets for IPC, hence making something more portable between various OS. I don't know if this would suffice to open /dev/ttyUSB0 for example without any driver under Linux, then the only configuration needed is to point to the correct /dev/ node. Pascal ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Scid-users mailing list Scid-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/scid-users