Ocelot Arcade System Illustrates the Scope of Vector Graphics

Who knows how far the Vectrex system, or vector graphics gaming in general could have gone if not for the crash of ’83? The console wars might have been completely different if not for this market saturation-based reset button.

[Matt Carr] doesn’t own a Vectrex, but he does have a Tektronix 465 oscilloscope. After an intense labor of love and documentation, he also has a shiny new vector graphics arcade system that he built himself. It’s based on a dsPIC33 and uses a dual-channel DAC to produce wire frame 3-D graphics and send X-Y coordinates to the ‘scope via phono outputs. The PIC’s internal DAC is meant for audio and didn’t do so well with graphics, so [Matt] used a TLV5618A piggybacked on the PIC’s DAC pins.

The Ocelot doesn’t take cartridges, though it might someday. For now, changing games means getting out the PICkit. There are currently two to choose from: Star Lynx, an awesome flying shooter where you get to save a feline population, and Mattsteroids, which is exactly what it sounds like. There’s only one Ocelot in existence, and although it isn’t for sale, [Matt] has terrific technical documentation should you care to replicate it. One thing you might not be able to replicate is the awesome vintage advert he made for the Ocelot, which is cued up after the break.

Don’t have a ‘scope? You can do vector graphics on a CRT with an FPGA.

Continue reading “Ocelot Arcade System Illustrates the Scope of Vector Graphics”

Extracting A Vector Font From A Vintage Plotter

There is a huge variety of hardware out there with a font of some form or other baked into the ROM. If it’s got a display it needs a font, and invariably that font is stored as a raster. Finding these fonts is trivial – dump the ROM, render it as a bitmap, and voilà – there’s your font. However, what if you’re trying to dump the font from a vintage Apple 410 Color Plotter? It’s stored in a vector format, and your job just got a whole lot harder.

The problem with a vector font is that the letters aren’t stored as individual images, but as a series of instructions that, when parsed correctly, draw the character. This has many benefits for generating characters in all manner of different sizes, but makes the font itself much harder to find in a ROM dump. You’re looking for both the instructions that generate the characters, as well as the code used to draw them, if you want a full representation of the font.

The project begins by looking at what’s known about the plotter. The first part of any such job is always knowing where to look, of course. It’s quickly determined that the font is definitely stored in the main ROM, and that there is no other special vector drawing chip or ROMs on board. The article then steps through the search process, beginning with plaintext searches of the binary dump, before progressing to a full disassembly of the plotter firmware. After testing out various assumptions and working methodically, the vector data is found and eventually converted into a modern TrueType font.

In the end, the project is successful, and it’s a great guide on how to approach similar projects. The key is to lay out everything you know at the start, and use that to guide your search step by step, testing and discarding assumptions until you hit paydirt. We’ve seen similar works before, like this project to dump the voice from an ancient Chrysler Electronic Voice Alert.

Light-Painting Robot Turns any Floor into Art

Is [SpongeBob SquarePants] art? Opinions will differ, but there’s little doubt about how cool it is to render a pixel-mapped time-lapse portrait of Bikini Bottom’s most famous native son with a roving light painting robot.

Inspired by the recent trend of long exposure pictures of light-adorned Roombas in darkened rooms, [Hacker House] decided to go one step beyond and make a lighted robot with less random navigational tendencies. A 3D-printed frame and wheels carries a pair of steppers and a Raspberry Pi. An 8×8 Neopixel matrix on top provides the light. The software is capable of rendering both simple vector images and rastering across a large surface to produce full-color images. You’ll notice the careful coordination between movement and light in the video below, as well as the impressive turn-on-a-dime performance of the rover, both of which make the images produced so precise.

We’ve covered a lot of light-painting videos before, including jiggering a 3D-printer and using a hanging plotter to paint. But we haven’t seen a light-painter with an essentially unlimited canvas before. We’d also love to see what two or more of these little fellows could accomplish working together.

Continue reading “Light-Painting Robot Turns any Floor into Art”

Light Replaces Electrons for Giant Vector-Graphics Asteroids Game

For all its simplicity, the arcade classic Asteroids was engaging in the extreme, with the ping of the laser, the rumble of the rocket, the crash of crumbling space rocks, and that crazy warble when the damn flying saucers made an appearance. Atari estimates that the game has earned operators in excess of $500 million since it was released in 1979. That’s two billion quarters, and we’ll guess a fair percentage of those coins came from the pockets of Hackaday’s readers and staff alike.

One iconic part of Asteroids was the vector display. Each item on the field was drawn as a unit by the CRT’s electron beam dancing across the phosphor rather than raster-scanned like TV was at the time. The simple graphics were actually pretty hard to create, and with that in mind, [standupmaths] decided to take a close look at the vector display of Asteroids and try to recreate it using a laser.

To be fair, [Seb Lee-Delisle] does all the heavy lifting here, with [standupmaths] providing context on the history and mathematics of the original vector display. [Seb] is a digital artist by trade, and has at the ready a 4-watt RGB laser projector for light shows and displays. Using the laser as a replacement for the CRT’s electron beam, [Seb] was able to code a reasonably playable vector-graphic version of Asteroids on a large projections screen. Even the audio is faithful to the original. The real treat comes when the laser is slowed and a little smoke added to show us how each item is traced out in order.

All [Seb]’s code is posted on GitHub, so if you have a laser projector handy, by all means go for it. Or just whip up a custom vector display for your own tabletop version of Asteroids.

Continue reading “Light Replaces Electrons for Giant Vector-Graphics Asteroids Game”

Raindrops On An Oscilloscope

Something very beautiful appeared in our feed this evening, something that has to be shared. [Duncan Malashock] has created an animation of raindrops creating ripples. Very pretty, you might say, but where’s the hack? The answer is, he’s done it as a piece of vector display work on an oscilloscope.

He’s using [Trammell Hudson’s] V.st Teensy-powered vector graphics board. We’ve featured this board before, but then it was playing vector games rather than today’s piece of artwork. The ‘scope in question is slightly unusual, a Leader LBO-51, a device optimized for vector work rather than the general purpose ‘scopes we might be used to. The artwork is written using Processing, and all the code is available in a GitHub repository.

So sit back and enjoy the artwork unfolding in the video. We look forward to more work featuring this hardware.

Continue reading “Raindrops On An Oscilloscope”

Laser Cut Settlers of Catan Board = Best Christmas Gift Ever

[JoshBaker] wanted to make something special for his brother this past Christmas.  He decided on making a wooden game board version of the Settlers of Catan game. [Josh] used CorelDraw to construct the vector images needed for the board. Then, he set out cutting the base, engraving and cutting out the many wooden pieces with a laser cutter. All the pieces were stained and then sealed with polyurethane. He assembled the base so that the removable hex tiles, ports, and resource numbers sit nicely in the recessed parts and don’t shift during gameplay. He complemented the board with tokens and game pieces that he hand-painted. [Josh] also created a new set of cards to fit with the board’s aesthetic.

The board is done incredibly well, not to mention beautiful to look at. The hex tiles’ designs are very detailed. The stained and engraved wood really adds to the atmosphere of the game. We featured a coffee table that would be perfect to play it on. [Josh] has listed all of the vector files for the version he gave his brother, as well as additional ones for the Cities and Knights Expansion. We wish we could have seen the look on his brother’s face when he got such an awesome Christmas gift!

[via Instructables]

Vector Display Output on an Oscilliscope

V3zirb1

What can we say, we’re a sucker for projects featuring our logo. That being said, this one is seriously awesome. [CNLohr] has figured out how to create a vector display output on an oscilloscope… from a VGA port.

He was inspired by a game called Trace Vector, which is done in the same style as some of the old classics like Asteroids. This got [Charles] thinking, and he decided to see what it would take to make his own vector capable display. An oscilloscope is perfect for this, as it already works by controlling the position of the beam (like a vector), as opposed to standard LCDs and CRTs that use rasterizing (horizontal scanning). This means to get the oscilloscope to display a graphic, all you need to do is to vary the voltages going into the X and Y channels — well, at a high speed!

But where are you going to find such a high speed digital to analog converter? Oh yeah, your computer’s VGA port! For a few dollars [Charles] threw together a VGA adapter with a few resistors using just the red and blue outputs (source code). A bit of programming later, and he’s created his own vector display!

Stick around to see our lovely skull and cross-wrenches rotate on his oscilloscope! Oh, and for a more in depth explanation and more impressive vector video demonstration.

Continue reading “Vector Display Output on an Oscilliscope”