![]() |
![]() |
![]() |
![]() |
|
|||||||||||||||||||
One Chip Video PokerThis is a simple video poker game for the PIC 16F628 and a 20x4 character LCD. It's written in PIC assembly for MPASM. I started the project in 2002. I originally intended it as a birthday present for my brother, who is an enthusiastic if occasional player of casino video poker. This Mark I version foundered, though, as the PIC 16F84 didn't have quite enough program ROM to handle it; I shelved the project until just recently when I got a programmer that could handle the 16F628. As of this writing (Aug. 10, 2004) I still haven't gotten around to making a “production model” suitable as a gift, but the brother may yet receive one. If you build this project, please email me and let me know what you think of it! For Those Who Just Want To Build ItThe Hardware Section is for you – it shows the schematic and parts list and has the .hex file ready to burn! |
One Chip Video Poker Project Sections: Video Poker: The Basics— The Hardware — The Random Number Generator — Dealing — Drawing — Scoring — Bets and Payoffs — Gallery |
||||||||||||||||||
OverviewWhy Video Poker, you ask?
The following sections discuss the innards of One Chip Video Poker in great, even exaggerated, detail. I'm hoping this will be useful to novice assembly programmers in finding out ways to handle various types of tasks, while not being too tedious for the more advanced programmer to read. I developed One Chip Poker in stages, testing each stage separately to make sure they worked. This approach, called unit testing, is a good way to organize complex projects. By PIC terms, One Chip Poker is fairly complex. The sections about software show unit tests for the particular part of the program they're describing. |
The Mark I ModelHere are some pictures of the original 16F84 version, which I built in 2002. It is playable, but not finished because I ran out of program memory before I could get the code put in for handling bets and payoffs. The F628 version uses a lot of the same code. click thumbnails for larger images. Screen shot of game in progress The prototype rig |
||||||||||||||||||
The sections
|
DisclaimerIt is not the author's intent to encourage gambling for money, nor to discourage it, particularly. This project is presented simply as a fun thing to build and a way to learn some assembly programming tricks. The author takes no responsibility for gambling addiction, repetitive motion disorders, or other malady which may arise or be exacerbated by the reader's exposure to this project. This project is also not consistent with the standards required of real casino games, and should not be used for betting. It's just for laughs. | ||||||||||||||||||
|
Page Top
|