If you wanted to try your hand at programming some retro games Hackvision can jump-start the process. It is an Arduino-based game console in a controller format. You get four directional buttons and one function button. It has two RCA jacks for mono audio, and black and white video.
We’re happy to find that there’s information about game development that will help you follow along with the Space Invaders and Pong examples. The system uses the Arduino TVout library for video, which is robust and fairly easy to interact with. But once you see the game play in the video after the break it’ll be hard to resist building one of these. Don’t forget, this is Arduino based. If you already have an Arduino that uses an ATmega328 you just need to build the audio, video, and button circuits.
[Thanks Franz]
Getting this to work on arduino takes tweeking an h file. If you have 2 resistors and an arduino you can get hackivision running on your arduino.
Check out my site for details.
http://www.flakelabs.com/index.php/2010/10/hackvision-games-on-arduino/
That D-pad looks absolutely terrible to play on…
Better than nothing right? I mean couldn’t you just make a d.i.y one?
An enclosure wouldn’t be too much, especially for hard-core gamers.
A month ago at World Maker Faire in NYC, we released an open source Arduino shield that uses this same library, and has plugs and circuitry to connect two Wii controllers at the same time.
http://wayneandlayne.com/projects/video-game-shield/
Micheal
In the version of TVout used by both the hackvision and the video game shield the pinout was changed to keep it online with the most up to date code. I changed the pinout so that higher horizontal resolutions can be supported on a regular arduino with a 328 this is digital pin7. The newest version of the library is available in the source section of the google code page. I will make another zip release when I get TVout to a feature complete state, until then I will just be keeping the repository up to date.
Don’t forget AVGA. Colour RGB/VGA + sound on ATmega168, runs entirely under interrupt leaving the foreground loop for game logic.
Sprite based.
http://avga.prometheus4.com/index.php?p=6-0
Cool project, thanks for posting!
RadBrad
Can’t they just make arduino sheild for that?
Just search for the TvOut lib for arduino, add a resistor or two and a transistor or two and its working, then you just need some buttons to play.
Hmm. The “Y” in “PLAY” at 0:02 is upside-down. Hmm.
@Shadyman
Watch the rest of the title screen — it’s just like the arcade version where the alien comes to fix the upside down Y. I remember that!
Intro is in the demo video
http://www.youtube.com/watch?v=fOUa_jcHIkE
http://belogic.com/uzebox/
Cool project. Thank you for posting.
Harvie.CZ, would you want to hold an arduino and shield in your hand to play games on? It’d be pretty terrible!
The D-Pad is surprisingly quite nice to use :)
Oh I’ve still got a few tricks…watch now as I shoot through our own shield!!!
Neat project.
I made a video generator for a project recently. It uses the SPI interface for producing tile based text and simple graphics which allows it to have a good resolution (320×256 at ~17MHz and 384×256 at 20MHz). While the text/graphics are always white it does support a 3 bit RGB background colour. It is a nice trade-off between RAM useage and external hardware (only a few diodes and resistors are needed).
I needed it to work with a normal horizontal screen and with a vertical screen (monitor on its side). For that reason I cut the display area down to 30×30 8×8 blocks so everything can rotate perfectly based on just one tile map.
The only down side is that the SPI interface takes an extra clock cycle to reset for the next byte, so an 8×8 block becomes an 9×8 block. It needed a bit of creativity with the font but works well enough for a user interface.
I’m a grad student TA and I recently assigned a variation of this project to my electronics lab students, since a lot of them are into game design as well as EE. Great success, TY for the tut!
good hack i fancy trying it
p.s i am from england and i love hackaday
Cool project. For that reason I cut the display area down to 30×30 8×8 blocks so everything can rotate perfectly based on just one tile map.
Hello i know this is old, but i’m trying to make a simple console for my son and hackvision is ideal for this. I managed to run tetris but this is the end. It uploaded to arduino only once and it works, but i canot do it again not to mention runing eny other game. I tried to change the *.h and *.cpp to match curent days but no use, something is always missing. Any sugestions? Will try to change bootloader, and run from old IDE, maby it will work.
Hai
I was able to operate 9 out of 12 games
But these games do not work
Asteroids, Tetris and arduinoWorm
Can you help me to still do this work
I use Arduino 1.0.5 software and an Arduino Uno
Kind Regards
I was able to operate 9 out of 12 games
But these games do not work
Asteroids, Tetris and arduinoWorm
Can you help me to still do this work
I use Arduino 1.0.5 software and an Arduino Uno
Kind Regards