Enter Your Reply The Comment You're Replying To H. G. Muller wrote on Tue, Oct 7, 2008 09:54 PM UTC:Fergus, I have gone to the GC preset for normal Chess, played a few moves in solitaire mode, and then asked for the source code of the page. I suppose the move you referred to is the one in the form that is displayed below the board, in the SELECT NAME='movenum' field (which triggers the message 'use this menu to select a move to view'). So what the GUI backend would have to do is scan the downloaded html code for this SELECT tag, and then look for a following OPTION tag before the corresponding /SELECT tag, which end in SELECTED DISABLED. After this tag if finds the most recent move, preceeded by a number, and possibly some periods (if it is a black move). The back-end should keep trying this (every second, or every 10 seconds) until it sees an opponent move there, extract the coordinates of From and To square from the move, and send those to WinBoard. When WinBoard sends a move to the back-end, the latter must translate the WinBoard move into GC syntax by adding the hyphen, and then mimic the submission of the form containing it. To see how the browser submits the form, I will have to use the packet sniffer. I will try this tomorrow. So it seems the basics are quite simple to achieve. The more tricky part would be to set up the game: if the uer starts up WinBoard, with the GC adapter back-end as pseudo-engine, the selection of a new variant from the WinBoard menu, and requesting a new game in it, should somehow lead to the creaton of a web page on the GC server for this new game. As I have only tried solitaire mode, I have no idea how this works yet. I guess at some point it would be needed to transmit the name of your intended opponent to the server. I could have the pseudo-engine ask for a name through WinBoard (WinBoard can pop up an input dialog box on request of the engine), and then have the pseudo-engine transmit that name to the GC server in a context that would initiate a game against that opponent. So the whole process would become as follows: 1) Start up WinBoard in the mode with computer opponent, but in stead of entering the name of a true engine, request to play against the GC pseudo-engin. 2) The pseudo-engine on startup (or in fact on the starting of any new game) downloads a few pages from the GC server, to find out which opponents are available for the currently selected variant. 3) It presents the list of available opponents in a popup dialog box, and the user could type the number of the opponent he wants to play, or a zero if he wants to be added to the list himself. 4) WinBoard would relay the typed number to the pseudo-engine, which would perform the required communication with the GC server to initiate the game 5) After that, it would be a simple exchange of moves, as discussed above. This sounds quite feasible. Main disadvantage would be the huge waste of bandwith: while the pseudo-engine was polling for a new move, it would receive this enormous html page with the board display and rules of the game each time it polls, while it needs only 4 characters of it. Edit Form You may not post a new comment, because ItemID Standards does not match any item.