Changes

Jump to: navigation, search

Little Rook Chess

3,250 bytes added, 10:38, 11 October 2020
Created page with "'''Home * Engines * Little Rook Chess''' FILE:dogm128_shield_chess.jpg|border|right|thumb|link=https://github.com/olikraus/u8glib/wiki/little_rook_chess |..."
'''[[Main Page|Home]] * [[Engines]] * Little Rook Chess'''

[[FILE:dogm128_shield_chess.jpg|border|right|thumb|link=https://github.com/olikraus/u8glib/wiki/little_rook_chess
| Little Rook Chess <ref>Image from [https://github.com/olikraus/u8glib/wiki/little_rook_chess little_rook_chess · olikraus/u8glib Wiki · GitHub]</ref> with DOGM128 (128x64 dots) <ref>[http://www.lcd-module.com/eng/pdf/grafik/dogm128e.pdf dogm128e.pdf] by ''Electronic Assembly''</ref>
]]

'''Little Rook Chess''',<br/>
a small [[Dedicated Chess Computers|dedicated]] [[:Category:Open Source|open source chess program]] by [[Oliver Kraus]],
written in [[C]], developed to run on an [[Arduino#UNO|Arduino Uno]] with 32 KiB of [https://en.wikipedia.org/wiki/Flash_memory Flash memory]
and only 2 KiB of [[Memory#RAM|RAM]]. As a demonstration project how to use Oliver's ''u8glib'',
the universal graphics library (monochrom [https://en.wikipedia.org/wiki/OLED OLEDs] and [https://en.wikipedia.org/wiki/Liquid-crystal_display GLCDs]) for [https://en.wikipedia.org/wiki/Embedded_system embedded systems]
<ref>[https://github.com/olikraus/u8glib/wiki olikraus/u8glib Wiki · GitHub]</ref>,
the focus is on implementing the dedicated [[User Interface|user interface]] realized with an ''Electronic Assembly DOG [https://en.wikipedia.org/wiki/Liquid-crystal_display LCD module]''
<ref>[https://www.lcd-module.com/produkte/dog.html Chip-On-Glass DOG Displays from Electronic Assembly, Display Visions]</ref>
and button shield. Little Rook Chess is part of ''u8glib'' under the terms of the [https://en.wikipedia.org/wiki/BSD_licenses new bsd license]
<ref>[https://github.com/olikraus/u8glib/blob/master/license.txt u8glib/license.txt at master · olikraus/u8glib · GitHub]</ref>.

=Chess AI=
The "chess AI" of Little Rook Chess is rather rudimentary so far, with pure [[Minimax|minimax]] rather than [[Alpha-Beta|alpha-beta]].
The [[Evaluation|evaluation]] is based on [[Material|material]] with [[Point Value|point values]] of {1, 3, 3, 5, 9} and has a few positional terms.
The program keeps an [[8x8 Board|8x8 board]] [[Array|array]], but uses [[0x88]] coordinates to validate square indices,
and always [[0x88#Transformation|transforms]] those coordinates at each board access <ref>[https://github.com/olikraus/u8glib/blob/master/csrc/chessengine.c u8glib/chessengine.c at master · olikraus/u8glib · GitHub]</ref>. Little Rook Chess lacks [[Promotions#MinorPromotion|minor promotions]] and is unaware of [[Repetitions|repetitions]] and the [[Fifty-move Rule|50-move rule]], but otherwise plays legal chess with [[Castling|castling]] and [[En passant|en passant]] implemented <ref>[https://github.com/olikraus/u8glib/wiki/little_rook_chess little_rook_chess · olikraus/u8glib Wiki · GitHub]</ref>.

=See also=
* [[Arduino]]
* [[Micro-Max]]

=External Links=
* [https://github.com/olikraus/u8glib/wiki/little_rook_chess little_rook_chess · olikraus/u8glib Wiki · GitHub]
* [https://github.com/olikraus/u8glib/blob/master/csrc/chessengine.c u8glib/chessengine.c at master · olikraus/u8glib · GitHub]

=References=
<references />
'''[[Engines|Up one Level]]'''
[[Category:Open Source]]
[[Category:Dedicated]]
[[Category:Arduino]]
[[Category:Chess Pieces]]

Navigation menu