Jump to content
  • entries
    53
  • comments
    536
  • views
    68,402

Congo Mockup


Guest

661 views

.You guessed it! Congo is a board game. This chess-like game sets you up with a menagerie of African animals. Your pieces are a giraffe, a monkey, two elephants on either side of a lion, a crocodile, a zebra, and a row of 7 pawns. Each piece moves according to its own rules, and the object of the game is to capture the opponent's lion. For more information, check out chessvariants.org.The mockup above is definitely doable. An asymmetrical playfield with 9 color changes already exists in my Go kernel. The 6 columns between squares can be drawn with P0, P1, M0, and M1.The challenge will be to find a way to load new PF data every scanline. With a Supercharger or 3E bankswitching, this is simple. Just keep multiple copies of the scanline code in RAM, and use LDA #$xx for each piece of the PF. If RAM is restricted to the regular 128 bytes however, it will be tricky. It may be possible to use the stack to retrieve playfield data. (Indexed addressing is probably not available because X and Y are used for color changes). Reading data from the stack requires the PLA instruction, which takes up 4 cycles. It might be possible to fit 5 PLAs, 5 STA PFx's, and 7 STX COLUPF's into a single scanline. I'd have to try it out to know for sure.There are several ways to store a board position in RAM. The one I would go with is to store 5 bytes for each row. Each byte represents a pair of pieces (there are 81 combinations) corresponding to the part of PF where they appear. A number stored this way can serve as an index and will allow quick access to PF data. The 35 bytes is not the most compact method, but it allows for fast kernel drawing.Of course, the game logic and AI would be complicated, but it should be as doable as video chess.It would be cool to see how many people would be interested in this project. At this time though Congo is just a fun exercise in kernel design. I have other projects to do before starting this one.

1 Comment


Recommended Comments

This sounds really cool. Just reading about programming the VCS is making me want to get into it. Guess that makes me a masochist! :)

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...