rchastain / eschecs Goto Github PK
View Code? Open in Web Editor NEWUCI chess GUI
License: GNU Lesser General Public License v2.1
UCI chess GUI
License: GNU Lesser General Public License v2.1
Hello.
Congratulation for that nice grid!
Could it be possible to have some more info, your feelings, the level, etc..., of each engine?
Or maybe only a column "Rating" (Class F-J, Class A-E, Expert, Master).
Thanks.
Fre;D
Hello Roland.
Before to propose a pull-request, here the modifs done.
There was still problems with the Pascal mode.
Is it a reason why you need Delphi mode as default?
Because using other code, like BgrabBitmap or fpGui that use {$mode objfpc}, may create conflicts.
{$mode delphi} is more tolerant about assignation of pointer of pointer ( ^^ ) for example.
If you agree, in next pull-request I will use {$mode objfpc} in all your code.
Other thing, with BGRAfpGUIBitmap.pas, I get a error message compiling on Linux:
bgrafpguibitmap.pas(51,14) Error: (3058) There is no method in an ancestor class to be overridden: "LoadFromDevice(LongInt;TRect);"
bgrafpguibitmap.pas(57,1) Fatal: (10026) There were 2 errors compiling module, stopping
Fatal: (1018) Compilation aborted
So I disabled those 2 methods in BGRAfpGUIBitmap.pas for Linux (maybe a bug report would be welcome).
In image.pas was changed all "" with "directoryseparator" to be Unix compatible.
Last thing, Linux is case-sensitive so, I did change {$R eschecs.res}.
Now all compile ok.
[EDIT] and runs OK.
https://sites.google.com/site/fredvsbinaries/eschecs_linux.png
Fre;D
Since I use the develop branch of fpGUI, there is a problem with the menu bar. When the application starts, the menu bar is not visible, until I click on it.
The test was made under Windows.
Hi, thank you for this awesome chess GUI!
Is it possible to use a different opening book with the engines?
What is the default hash size the engines use? Is there a way to set a different hash size?
Your work on this project is much appreciated, this is one of my favorite GUI to play chess, I love the simplicity.
Hello Roland.
Happy new year!
Wow, I am very impressed by all the engines you added, Eschecs is a must have now.
About sound libraries needed by Eschecs.
Only libraries libPortAudio and libMpg123 are needed in Eschecs project.
All others will never be used and should not be added in
+---audio
| +---lib
Fre;D
Can you support Korean chess?
Hello Roland.
What version of BGRABitmap are you using?
Here, with last BGRABitmap I get this error:
/home/fred/Downloads/eschecs-master/source/board.pas(214,33) Error: (4025) Incompatible type for arg no. 3: Got "LongInt", expected "Boolean"
/home/fred/bgrabitmap-dev-bgrabitmap/bgrabitmap/bgranoguibitmap.pas(119,28) Hint: (5039) Found declaration: Draw(TCanvas;TRect;Boolean=TRUE
);
/home/fred/bgrabitmap-dev-bgrabitmap/bgrabitmap/bgranoguibitmap.pas(114,28) Hint: (5039) Found declaration: Draw(TCanvas;LongInt;LongInt;Boolean=TRUE
);
board.pas(549) Fatal: (10026) There were 1 errors compiling module, stopping
Fatal: (1018) Compilation aborted
Hello Roland.
I have seen that you added 2 new pieces (magnetic and lucena) and 2 new sizes (30, 90 and 100).
Nice!
But for piece-Wood the new sizes (30, 90 and 100) are missing, is it wanted?
Fre;D
Hello Roland.
Here on the video, demo of moving pieces from the simulated engine.
Also at end of video, demo using the keyboard.
It is random result, without any check, only to show it in action.
The log memo uses the "notation algébrique figurine (NAF)" but of course you know better what is the best.
I have to do a break with computer but all is ready to welcome your engines code.
Of course all can be changed, but now I feel more comfortable with Eschecs + mse.
Video:
eschecs_mse_movingpieces.mp4.zip
Source:
[Edit: updated in last post]
A bientôt.
Fre;D
Hello Roland.
Included binary of eschecs.exe 64 bit with heaptrace.
Here on Windows no error nor memory leak.
Could you try it on your system?
Fre.D
If I minimize the application and restore it, the form is empty: the widgets are not redrawn. The test was made under Windows, with Eschecs 0.0.5 alpha.
Hello Roland.
The memory leak comes from CommandLine
Without using CommandLine, no memory leak.
Very strange because all is freed in finalization LExpr.Free;
For testing I replaced code with followed and no more memory leak.
// if CommandLine.HasOption('coloring', LBool) then
FColoring := LBool;
// if CommandLine.HasOption('font', LStr) then
LFont := LStr;
// if CommandLine.HasOption('language', LInt) then
LLang := TLanguage(LInt);
// if CommandLine.HasOption('movetime', LInt) then
FMoveTime := LInt;
// if CommandLine.HasOption('scale', LInt) then
LScale := LInt;
// if CommandLine.HasOption('style', LInt) then
FStyle := TBoardStyle(LInt);
// if CommandLine.HasOption('chess960', LBool) then
FChess960 := LBool;
Hello Roland.
Here video of Eschecs docked in action:
eschecs_dock.mp4.zip
And here the msegui source:
eschecs_mse.zip
Fre;D
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.