solitaire-c64/README.md

1.4 KiB

Solitaire C64

A classic Klondike solitaire card game for the Commodore 64, written in c65gm.

Features

  • Full Klondike Solitaire: Stock, waste, 7 tableaus, and 4 foundation piles
  • Dual Input Support: Play with joystick or 1351 mouse
  • Draw Modes: Toggle between draw-1 and draw-3 gameplay
  • Custom Graphics: Character-based card rendering using extended color mode
  • Sprite Cursor: Visual pointer for card selection and movement
  • Smart Shuffling: Hardware-seeded RNG for true randomness

Technical Details

Language: c65gm (C-like language for 6502/C64) Memory Layout: Code at $3000, custom charset at $2000 Graphics: Extended Color Mode (ECM) with custom character set Input: CIA joystick ports + 1351 proportional mouse support

Building

Requires the c65gm compiler and ACME assembler:

./cm.sh

Outputs main.prg ready to load on C64 or emulator.

Project Structure

  • cardgame.c65 - Main entry point and initialization
  • gameloop.c65 - Game loop, interaction, and pile detection
  • cardmoves.c65 - Move validation and execution logic
  • cardrender.c65 - Card and pile rendering routines
  • carddeck.c65 - Deck shuffling and dealing
  • mouse.c65 / joystick.c65 - Input handling
  • pointer.c65 - Sprite cursor management
  • cardsprites.c65 - Sprite data for cursor

License

See LICENSE file for details.