If you've got a Pocket Mini Computer Kit, you've probably noticed that the "Experimenter's Port" on the right side is labeled P12-P14.   The reasoning for this is that the Propeller microprocessor (The CPU used for this project) has a lot of great existing games and programs already written that support TV output.

This Instructable will teach you how to create the "World's Simplest Video Card" for your Pocket Mini Computer.

Don't know what a Pocket Mini Computer is?   The Pocket Mini Computer is a simple open source computer that runs an 80's style BASIC that you can build from scratch or assemble from a kit.  For more information on the PMC project, see this Instructable.

Step 1: Required Hardware

This simple circuit only takes a handful of parts to create.

Required Hardware:
  • Parallax RCA Breadboard Adapter
  • 1.1k resistor (Brown, Brown, Red)
  • 560 ohm resistor (Green, Blue, Brown) 
  • 270 ohm resistor (Red, Violet, Brown) 
  • 5pin male, right-angle header
  • A small piece of "perf" board
  • A piece of wire.

The perf board I used was cut down to 7x11 rows.  

Take your time while building this project, while it's a simple board, it's fine work.

Step 2: Making the Connections

Here's the assembly:

Insert the resistors as shown in the photograph:

(From left to right, facing forward)
  • 270ohm (Red, Violet, Brown)
  • 560ohm (Green, Blue, Brown)
  • 1.1k (Brown, Brown, Red)
  • Solder each resistor to one pin of the right-angle header at the bottom (see backside picture)
  • The other side of the resistors all connect to "SIG" on the Parallax RCA Breadboard Adapter
  • Skipping a pin, connect the 5th pin (Vss) to "GND" on the Parallax RCA Breadboard Adapter

Step 3: Testing the Circuit

Insert the board with the RCA connector facing outward and toward the rear of the Pocket Mini Computer.

Open the Propeller Tool, and load Graphics Demo from the "Propeller Library - Demos" on the left panel.

Press F10 to send the program to the RAM of the Pocket Mini Computer.

You should see a screen that looks like the picture.  

If the colors look wrong, check to make sure each resistor is soldered into place, and that none of them are touching at the bottom side where they connect to the pin header.

Want a version of COLOR BASIC that works with the TV?

Here's both TVBASIC.BIN and the source for COLOR BASIC version L converted to TV.
(There's also a number of compatible game binaries. (and their sources) in the same folder.)  -Enjoy!!

<p>Good http://salonbisnes.ru/</p>
Is there a way to move the TV out from pins 12, 13, and 14 to another group of pins like P4-P6? I have the VGA version up and running on my Defcon20 badge. &nbsp;Schematic <a href="http://forums.parallax.com/attachment.php?attachmentid=94701&d=1344027736" rel="nofollow">here</a>&nbsp;and breakout <a href="http://yakhack.wordpress.com/2012/08/03/defcon-20-mystery-challenge-and-badge-pinout/" rel="nofollow">here</a>. &nbsp;Pins 12 and 13, on this model, are occupied by the IR tx and rx, and pin 14 doesn't go anywhere. &nbsp;I used P0-P3 to add on the microSD card adapter (scavenged from a cell phone), and P4-P10 are unused and easily available on the breakout. &nbsp;Possible?
@Crispyjones,<br><br>I don't have the answer to this, but it's possible that one of the folks on either the Propellerpowered forums (http://forums.propellerpowered.com) or the Parallax forums (http://forums.parallax.com) will have the answer you need.
After a bit more fiddling the answer is yes. &nbsp;Here is what I changed. &nbsp;In the Basic_TV_versionxx branch of propeller basic I opened BASIC.spin and modified the first line of pub main. &nbsp;The bit in parentheses is the start pin, and I moved the resistor network from pins 12-15 to 4-6. &nbsp;It works!<br> <br> Modified code with my comments below<br> <strong>pub main | err, s, localkey<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br> &nbsp;&nbsp; text.start(4) ''changed vid start pin from 12 to 4&nbsp;</strong><br> <br>
just got the pmc kit witch comes with the quick vga + but i want to keep the quick vga + <br>(don't want to re solder lol) on there and still want to play the games like tron that require the Quickplayer Extreme will this add on replace the Quickplayer Extreme so those games will work <br> <br>BTW i am 12 pleas forgive me for me grammar and spelling
Adding the TV output to the QuickVGA+ will give you the ability to use the games which were run on the Quickplayer Extreme, except those which required two players. (Since there is only a single Wii connection) I think that only knocks out two games I can think of. Congrats on your new PMC kit! If you need help with this, drop by our forums at http://forums.propellerpowered.com -Jeff-
what does the basic code look like for generating these sample shapes, is there a graphics library?
If you are referring to the program screenshot at the end of the Instructable, it is the Spin based &quot;Graphics Demo&quot; created by Parallax which is generally used to verify video is working correctly. Including the graphics library included in the demo, there are approx. 15-30 other VGA and TV compatible graphics/text libraries which feature different abilities, and resolutions. The LOGO programming language (not shown in this instructable) is a good example of an end-user application which employs the same graphics library used in the graphics demo. I should probably add a page about it for those who would like to experiment with it. It can be executed as an external binary from BASIC.

About This Instructable




More by Propellerpowered:Sprites & Graphics On the Micromite Companion Using the ESP8266 module Building your own Micromite Companion Minicomputer 
Add instructable to: