CRT Vector Graphics Arcade Game Built From An FPGA Board

[Sprite_TM] wanted to challenge his VHDL skills, and there’s no more satisfying way of doing this than making something that will be playable when you’re done. He decided to try his hand at creating a vector-based CRT arcade. The distinction here is that vector-based games take control of the magnetic ring that guides the electron path toward the screen. This technique allows point-to-point graphic generation rather than the pixel-based scanning that CRT televisions use.

He had a small color CRT on hand and decided to grab a VHDL version of asteroids from the Internet to see if he could get it to work. But upon further inspection of the source he found that it had a chunk of code which rasterized the vectors for use with a scanning monitor. After removing that chunk, and giving it a spin he had enough confidence that he knew what he was doing to start implementing his own game. The choice of what title really came down to the hardware the original arcade cabinets used. He was not interested in implementing a soft-process for the math chips used in games like Star Wars and Tempest. In the end he got a version of Black Widow up and running, and even built a miniature cabinet for the thing. Check out some of the gameplay in the clip after the break.

Continue reading “CRT Vector Graphics Arcade Game Built From An FPGA Board”

Get Ready To Play Some Wicked Air Harp

Who needs a tactile interface when you can wave your hands in the air to make music? Air String makes that possible and surprisingly it does so without the use of a Kinect sensor.

In the image above, you can see that two green marker caps are used as plectra to draw music out of the non-existent strings. Judiciously perched atop that Analysis and Design of Digital Systems with VHDL textbook is a camcorder recording an image of the player. This signal is processed by an FPGA (hence the textbook) in real-time, and shown on the monitor seen to the right. A set of guides are overlaid on the image, so the player knows where to pluck to get the notes she is expecting.

The program is designed to pick up on bright green colors as the inputs. It works like a charm as you can see in the video after the break. The team of Cornell students responsible for the project also mention a few possible improvements like adding a distance sensor (ultrasonic rangefinder?) so that depth can be used for the dynamics of the sound.

Continue reading “Get Ready To Play Some Wicked Air Harp”

Robot Follows The Rules Of The Road

[youtube=http://www.youtube.com/watch?v=Y6R0wO1o01g]

This is a fantastic high school project. [Shmendrik213] built and robot a programmed it to follow common traffic rules. The robot drives itself with a DC motor, using one servo for steering and another to pan a webcam back and forth. The netbook that comes along for the ride is running a VB.NET program that can detect an upcoming intersection, read the street sign, and react based on other cars currently at the intersection.

The hardware is running on an Altera processor using firmware programmed in VHDL. We remember building a tissue box holder for one of our high school projects. Looks like the times have changed since then.

AVR8 Virtual Processor On FPGA

[Jack] wrote in to let us know about a project that creates a virtual microprocessor core based on the ATmega103 by using a Field-Programmable Gate Array. Great, we thought. Here’s another rather esoteric project like the NES on a FPGA, but what’s the motivation behind it? We asked [Jack] and he provided several scenarios where this is quite useful.

Implementing the AVR core allows code already written for the chips to be easily ported to an FPGA without a code rewrite. This way, if your needs outpaced the capabilities of the microcontroller long after the project has started, you can keep the code and move forward from that point with the added capabilities of the gate array. Having the core already implemented, you then only need to work with HDL for the parts of the project the AVR was unable to handle. He also makes the point that having an open source AVR core implementation provides a great tool for people already familiar with AVR to study when learning VHDL.

With products like the Butterfly that this project is based around, or the Maple we’ve seen in the past, programmable logic for the recreational hacker is starting to get a little easier.