Author: Mats Forsén
Date: 05:10:58 03/11/98
Howdy folks.. I've begun sketching on a new chess program that is to be done in OWL (win95).. I plan to use a simple 0x88 move gen and simplistic eval etc.. no frills.. Have I missed something obvious? (TT is too tough) Especially the AI and UI classes are simplistic.. I'll have to add more as I get along with making them.. The basic classes should be okay tho imho.. class ChessBoard int8 Board[144] // piece+color present int16 Flags Castling flags (woo,wooo,boo,boo) void SetupBoard( epd string ) void ResetBoard( ) void ApplyMove( Move ) void UndoMove( Move ) void GenerateMoves( Player.Color, MoveList& ) void RemoveCheckMoves( Player.Color, MoveList& ) int16 Evaluate( Player.Color ) Player int8 Type (player/computer) char* Name int8 Color (white/black) int8 Skill (Computer only) Game Player black, white ChessBoard Board MoveList[200] Moves // All moves in game NumMoves int32 TimeLeft (white/black) Options Sound Music Speech En Pessant Time Limits Helplevel MoveList Moves * NumMoves Move int32 movement // specialflags | piece_moved | piece_taken | Fromsquare | Tosquare // Various funcs to extract data from above, inline AI int16 Nodes Generated, total and for each depth int16 Visited nodes, total and for each depth int8 Maxdepth int32 Maxtime xx historysortdata void OpeningBook( ChessBoard, Move& ) Negamax() // std args SortMoves( MoveList ) // Historysort UI DrawBoard(Chessboard) DrawSquare(square) SayMove(Move) // Speech New game etc.. win32 GUI Bitmap Draw(x,y) // Chess figurines / Garnax, garnax@texoma.spamela.net (remove .spamela)
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.