This document serves as a program write-up for "Checkers," a FOCAL-language game developed by Paul M. Klinkman in 1971. The program allows a user to play against a computer.
Key technical aspects include:
- Board Representation: The board uses 8 rows of 8 spaces, represented by variables A(1) through A(64). To save memory, it utilizes a grouping method that ignores the 32 invalid board spaces.
- Game Logic: The computer evaluates potential moves by checking for jumps first. If no jumps are available, it prioritizes "thrust" moves (maneuvering pieces to bait the opponent into a jump) before falling back to legal random moves.
- User Interaction: Players input moves based on the numbered board spaces displayed at the start of the program. The program lacks strict validation for player moves, relying on the user to play legally.
- Constraints: Due to memory limitations, the program is quite basic, lacking sophisticated AI refinements or features such as victory/defeat announcements.