Hi,
I downloaded, xboard-4.5.2a.tar.gz , extracted the content, moved into winboard directory and opened the winboard.dsw MS VC++ workspace. I then tried compiling the project and was hit with thousands of warnings and these 2 errors.
1>Linking...
1>CVTRES : fatal error CVT1100: duplicate resource. type:MANIFEST, name:1, language:0x0409
1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt
1>Build log was saved at "file://D:\xboard-4.5.2a\xboard-4.5.2a\winboard\Debug\BuildLog.htm"
1>winboard - 2 error(s), 671 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
And, I am quite positive that there will be lot more errors I will encounter.
Since, as you already told, compiling this isn't an easy job, are there any step-by-step wiki that guides us to compiling our own winboard?
As, a secondary question, my pseudo-engine written as a console program sucks up astonishing 50% CPU of my dual core CPU while it is thinking. Its acceptable for genuine engines. And Indeed fmax also consumes same amount of CPU while thinking. But my-pseudo engine don't have much anything to do. It just needs to periodically Poll a disk-file to check if new move has arrived (from the matlab-robot-interface). Is there some-way to reduce its CPU consumption?
You are right, I should be able to find out if the target square is empty or not, I was just wishing if an easy route was available
As for the time control, I don't need that level of optimized time control. This Robot isn't going to beat grand-masters, but only local-masters. So, only a mere decreasing of the computer time by fixed time (as a reserve for executing move) should work.
Why? castling should be easy. If I get 0-0 I order the robot to first move the king then the rook.(I know where the king and the rook resides
) If I get 0-0-0 I do the same.For capture, I first remove the piece being captured then move my piece. (So, first for everymove, I need to check if its a capture ).
Promotions seems hard. Perhaps I will do that manually.