
                          144 LED Game Console

Featuring original recoded clones of two classic games: Snake and Tetris!
by Art 2010                 Note: This is not an official Tetris product.



                  144 LED Game Console - Bill Of Material

001 x Microchip Pic 16F877 or 16F877A microcontroller
001 x 40 pin DIL socket
001 x PCB speaker
018 x BC549C or similar Transistors
145 x LEDs (144 of one colour, and 1 of another for the power/error indicator)
001 x 20 MHz Crystal
009 x 330R Resistors
018 x 1K2 Resistors
004 x 10K Resistors
001 x 4K7 Resistor
002 x 22pF Disc Ceramic Capacitors
001 x 0.1 uF Monolythic Capacitor
001 x Prototype Printed Circuit Board (display)
001 x Small Prototype Printed Circuit Board (joypad)
004 x Momentary Push Buttons

Schematic diagrams are included in this package.

See a collection of YouTube Demos and latest news here:
http://www.freewebs.com/defxev/scroll.htm

Use the file "pic.hex" to program the 16F877 or 16F877A microcontroller.

When you've constructed the circuit, power it with 5 Volts (or 4x AA batteries in series).
You should hear a startup beep, and the Message scroller should start straight away.
Pressing buttons while the message scroller is active will activate fancy effects.

To play Snake, turn the unit on while holding down the DOWN button.
To play Tetris, turn the unit on while holding down the UP button.
To see the Invader Sprite test demo, turn on the unit while holding down the LEFT button.
To see the Pong Screensaver (not playable), turn on the unit while holding down both LEFT and RIGHT buttons.

To program a new text message via PC serial port, open a terminal program and
set the serial port to 19200 baud 8N1.
Connect the PC serial transmit line to the pic porte.1.
Turn on the unit while holding the RIGHT button.
Now you can type in a message up to 250 characters long.

Snake:
Guide your snake to the pellet to grow one unit larger for every pellet eaten.
Don't crash into the walls or any part of the snake's body!

Tetris:
Manuever the falling pieces into position so that they lock in with maximum
space efficiency. The more rows you fill in at one time, the more points you
are awarded. The game ends when you can not fit another shape in the well.

High scores for both games are written to on-chip eeprom.
When you beat a high score in the Snake game, an exlaimation mark is displayed.
WHen you beat a high score in Tetris, your score will flash as it is displayed.

This project is provided for free and without warranty.
You must assume responsibility for any errors or omission in the provided material.
I made three units and they all work fine for me, but I can't guarantee your work.
Please respect my efforts and do not re-release modified code without my permission.

If you'd like to design a PCB layout, go ahead, and please send me a copy :)

Note:
If a Printed Circuit Board is designed with an attached joystick, some code modification
will be required to set the correct joystick orientation when you turn the unit sideways to play Tetris.
This should be a simple adjustment to the input routine in the Tetris section of the source code.

BushProgrammer@gmail.com
bmar8190@bigpond.net.au

Cheers, Art.
