Chess Engine Communication Protocol
# Chess Engine Communication Protocol

Chess Engine Communication Protocol è un protocollo di comunicazione libero che permette ad un motore scacchistico di comunicare con la sua interfaccia grafica.

È stato progettato da Tim Mann, l'autore di XBoard. Inizialmente era pensato solo per far comunicare GNU Chess con una shell testuale, difatti la prima versione era semplicemente una interfaccia a riga di comando per quest'ultimo. Il protocollo venne usato da XBoard per interfacciare poi GNU Chess con una vera interfaccia grafica.

Il protocollo si è sviluppato molto e supporta numerose varianti scacchistiche, come gli scacchi960, bughouse, crazyhouse, vinciperdi, atomic. Supporta la gestione del tempo con orologi tradizionali, con l'incremento di tempo e con il tempo esatto per mossa. Attualmente è supportato in maniera più o meno completa da oltre 300 motori e una trentina di interfacce. Verso il 2008 è stata implementata la possibilità di impostare l'utilizzo di memoria e il numero di thread di ricerca (molto utile nei sistemi multiprocessore).

