Interfacing With External Program
1 view (last 30 days)
Show older comments
I am making a chess playing robot which will be controlled online by matlab through serial interface. Currently, I need to interface with a chess engine. It should go like this. The chess engine is running separately. I send it string queries such as "move e2-e4" It returns string answers such as "bestmove g2-g4" I don't see where I can start. Can someone please link me to some example communication with external programs. I don't have C-source code of the program. Just an exe.
0 Comments
Accepted Answer
Daniel Shub
on 19 May 2011
If you were not in MATLAB how would you call the chess engine? You can call external exe files with system.
doc system
3 Comments
Daniel Shub
on 19 May 2011
Did you look at the documentation for system?
try:
[status, result] = system('c:\ChessEnginePath\engine.exe move e2-e4')
More Answers (1)
Clemens
on 19 May 2011
On a similar problem I used the program expect to talk to the "bad" program for me. Say as mediator. (manual is at eg http://www.tcl.tk/man/expect5.31/expect.1.html and there are many samples online )
In your case the comand should look like:
[status,result] = system(...
'expect -c ''spawn engine; send "move e2-e4\r"; close;''')
It can be installed on windows via cygwin (as I did) or mingw.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!