Can An 8-Bit Light Gun Work On A Modern TV?

It’s an accepted part of retro gaming lore, that 8-bit consoles perform best when used with an original CRT TV. One of the reason for this is usually cited as being because the frame buffer and scaler circuit necessary for driving an LCD panel induces a delay not present on the original, and in particular this makes playing games which relied on a light gun impossible to play. It’s a subject [Nicole Branagan] takes a look at, and asks whether there are any ways to use a classic light gun with a modern TV.

Along the way we’re treated to an in-depth look at the tech behind light gun games, how the gun contained a photodiode which on the NES was triggered by the brief showing of a frame with a white square where the target would sit, and on the Sega consoles by a white screen with an on-board timer counting the screen position at which the gun was aimed.

The conclusion is that the delay means you won’t be playing Duck Hunt or Hogan’s Alley on your 4K TV, but interestingly, all is not lost. There are modified versions of the games that take account of the delay, or an interesting lightgun emulator using a WiiMote. We’d be happy at playing either way, just as long as we can take pot-shots at the annoying Duck Hunt dog.

Light gun image: Evan-Amos, Public domain.

Virtual Mini Pinball Cabinet Scores Big

Do you love pinball, but can’t justify owning a full-size cabinet? Yeah, us either, and that’s why we’re so interested in [mircemk]’s great-looking DIY mini virtual pinball cabinet. Since [mircemk] is a IT service specialist, they are lucky enough to have access to lots used and broken equipment, and that’s what this build is made of.

Essentially two computers working together, the playfield is a old 17-inch monitor that needed its LED lighting replaced before gracing the MDF cabinet The backglass is an ancient 10-inch tablet that was perfect for this application.

Even the motherboard, RAM, and SSD came from one of [mircemk]’s previous PCs. The SSD needed some attention first as well — it didn’t work sometimes, and didn’t show up in the BIOS at all, so [mircemk] threw it in the oven for 10 minutes at 250°, and now all is well.

One thing we really like about this build is that instead of designing a control board for the buttons, [mircemk] used a cheap USB joystick and wired them up to the pads.

So how does the tablet figure into all of this? It’s connected to a PC via USB and does its job thanks to a piece of software called Wired XDisplay. There is even a tilt switch in this bad boy. Because what’s a pinball cabinet without a tilt switch? A cheater’s cabinet, that’s what. Check out the build/demo video after the break.

Don’t even have the space for a mini cabinet? We hear you. Here’s one that fits in the palm of your hand.

Continue reading “Virtual Mini Pinball Cabinet Scores Big”

Playing The Guitar Of DOOM

Over the years, we’ve seen DOOM run on pretty much everything from an 8088 to a single keycap. We’ve also written up one or two controllers, but we don’t think we’ve ever seen anything like this — playing DOOM with an electric guitar.

The guitar in question is a Schecter Hellraiser Deluxe, which seems like a great choice to us. In order to get the notes to control the game, [DOS Storm] converted a handful of notes to MIDI using a VST plugin called Dodo MIDI 2 and the Reaper DAW. Then it was a matter of converting MIDI to keystrokes. This took two programs — loopMIDI to do take the MIDI data and route it elsewhere, and MIDIKey2Key to actually convert the MIDI to the keystrokes that control DOOM.

The result is that the notes that move Doomguy around are mostly in an A-major bar chord formation, with some controls up in the solo range of the fret board. Be sure to check out the demo video below and watch [DOS Storm] clear level one in a fairly impressive amount of time, considering their controller is a guitar.

That key cap isn’t even the most ridiculous thing we’ve seen DOOM running on. It’s probably a toss-up between that and the LEGO brick.

Continue reading “Playing The Guitar Of DOOM”

Famicom-Inspired NES TV Looks Rad In Red

Take it from us, insomnia is no joke. But the wee hours can have a great effect on creativity, and if you’ve got a project in mind, doing that is way better than just sitting around, zoning out to infomercials and wishing for sleep. Over recent nights, [insomniacfactory] has been working on a Sharp C1 Famicon-inspired NES TV, and the result is simply fabulous.

The Sharp C1 Famicom was CRT television with a Famicom (precursor to the NES) built in. It allegedly had better picture quality than either a Famicom or NES with a separate television, and this was because it had direct internal display connection. The picture quality was so good that video game magazines at the time used it for screenshots.

Starting with a couple of TVs and a plan, [insomniacfactory] got to work, using the guts from a newer donor TV and a 1985 NES main board with the region-free mod and the RF module removed.

[insomniacfactory] also added also added a wiring harness and a side loader connector from a broken Game Genie to the NES main board. After some careful Dremeling out of the 1981 AKAI TV, they had room for the clone console’s cartridge slot and controller plugs.

This project took a lot of careful and fiddly work, especially since the boards are all bracketed in place and easy to remove. But it totally looks like it was worth it, and now [insomniacfactory] can retro game all night for a while before starting the next insomnia-driven project.

Are you in the mood for more iconic NES? Take a guided tour.

Tetris On An Oscilloscope, The Software Way

When we talk about video games on an oscilloscope, you’d be pardoned for assuming the project involved an analog CRT scope in X-Y mode, with vector graphics for something like Asteroids or BattleZone. Alas, this oscilloscope Tetris (Russian language, English translation) isn’t that at all — but that doesn’t make it any less cool.

If you’re interested in recreating [iliasam]’s build, it’ll probably help to be a retro-oscilloscope collector. The target instrument here is a Tektronix TDS5400, a scope from that awkward time when everything was going digital, but CRTs were still cheaper and better than LCDs. It’s based on a Motorola 68EC040 processor, sports a boatload of discrete ICs on its main PCB, and runs VxWorks for its OS. Tek also provided a 3.5″ floppy drive on this model, to save traces and the like, as well as a debug port, which required [iliasam] to build a custom UART adapter.

All these tools ended up being the keys to the kingdom, but getting the scope to run arbitrary code was still a long and arduous process, with a lot of trial and error. It’s a good story, but the gist is that after dumping the firmware onto the floppy and disassembling it in Ghidra, [iliasam] was able to identify the functions used to draw graphics primitives on the CRT, as well as the functions to read inputs from the control panel. The result is the simple version of Tetris seen in the video below. If you’ve got a similar oscilloscope, the code is up on GitHub.

Care for a more hardware-based game-o-scope? How about a nice game of Pong? Or perhaps a polar breakout-style game is what you’re looking for. Continue reading Tetris On An Oscilloscope, The Software Way”

Computer Space Replica Is Up And Running

You never forget your first time — watching someone pour several quid’s worth of 10p pieces into a Space Invader machine in 1978, upsetting for a youngster who wanted to have a turn. We’re still waiting, but [Alston] has found an interesting way to get around those arcade video game hoggers by building a replica of Computer Space, the first commercial arcade video game.

Released in 1971, the groundbreaking game was designed by gaming legends [Nolan Bushnell] and [Ted Dabney], and came in a striking curvy fiberglass case that was molded by a manufacturer of swimming pools. [Alston] hasn’t built the case yet, but he does have the electronics up and running.

The electronics of Computer Space are interesting, because there is no microprocessor in there. Instead, it is built from discrete components. [Nolan] had originally planned to use a mini computer called the Data General Nova 800. However, he realized that he could make it cheaper by building it out of discrete components. As [Nolan] described it in an oral history at the Smithsonian [PDF link], the idea came to him after a post-Thanksgiving dinner nap:

“Screw the minicomputer. Get rid of it. Do it all in hardware. Make the game out of this collection, just make it a simple state machine. And the minute that happened, it was like knife through butter. Not only did I get the cost down, but what was budgeted for $1,500 worth of minicomputer, the whole damn computer cost me less than $300 in glue parts. So, I knew that I had something.”

That decision makes it an interesting project to build a replica. Although you can emulate it on a modern computer easily (there is even a version that runs in CSS in the browser). [Alston] is going the hard route, building replica PCBs and using the same components where possible, helped by people who have documented it. So far, the boards are and running and displaying a grainy, pixelated image on a portable TV.

The next step is to take the replica electronics box he has built and make a cabinet to put it into. That’s a big project, and [Alston] is looking for someone with an original cabinet that he can examine and document.

A handheld computer made on a piece of prototyping board running a Tetris clone

Tetris Clone Uses 1000 Lines Of Code, And Nothing Else

If you’re programming on a modern computer, you typically make use of lots of work done by other people. There’s operating systems to abstract away the complexities of modern hardware, standard libraries to implement common tasks, and tons of third-party libraries that prevent you from having to reinvent the wheel all the time: you’re definitely not the first one trying to draw graphics onto a screen or store data in a file.

But if it’s the wheels you’re most interested in, then there’s nothing wrong with inventing new ones now and then. [Michal Zalewski], for instance, has made a beautiful Tetris clone in just 1000 lines of C, without using anyone else’s code.

The purpose of this exercise is to show that it’s possible to make a game with graphics comparable to modern, complex computing systems, without relying on operating systems or third-party libraries. The hardware consists of not much more than an ARM Cortex-M7 MCU, a 240×320 LCD screen and a few buttons soldered onto a piece of prototyping board, all powered by a set of AAA batteries.

The software is similarly spartan: just pure C code running directly on the CPU core. Graphic elements, some generated by AI and others hand-drawn, are stored in memory as plain bitmaps. They are manipulated by 150 lines of code that shuffles sprites around the display at a speed high enough to generate smooth motion. Game mechanics take up about 250 lines, while sound consists of simple square-wave chiptunes written in just 50 lines of code.

[Michal]’s code is very well documented, and his blog post gives even more details about all the problems he had to solve. One example is the length of keypresses: when do you interpret a keypress as a single “press”, and when does it become “press and hold”? Apparently, waiting 250 ms after the first press and 100 ms after subsequent ones does the trick. [Michal] is a bit of an expert on bare-bones game programming by now: he has previously pushed several 8-bit micros to their very limits. Third-party libraries can make your programming life a lot easier, but it’s good to reflect on the dangers of relying too much on other people’s code.

Continue reading Tetris Clone Uses 1000 Lines Of Code, And Nothing Else”