NES Zapper: Improved with Lasers

The Zapper gun from the original Nintendo was ahead of its time. That time, though, was around 30 years ago and the iconic controller won’t even work with most modern televisions. With a little tinkering they can be made to work, but if you want to go in a different direction they can be made to do all kinds of other things, too. For example, this one can shoot green lasers and be used as a mouse.

The laser pointer was installed in the gun using a set of 3D printed rings to make sure the alignment was correct. It’s powered with a Sparkfun battery pack and control board which all fit into the gun’s case. The laser isn’t where the gun really shines, though. There’s a Wiimote shoved in there too that allows the gun to be used as a mouse pointer when using it with a projector. Be sure to check out the video below to see it in action. Nothing like mixing a little bit of modern Nintendo with a classic!

The Wiimote is a great platform for interacting with a computer. Since the Wii was released it’s been relatively easy to interface with them via Bluetooth. One of the classic Wiimote hacks is using an IR pen and projector to create a Smart Board of sorts for a fraction of the price. They’ve also been used with some pretty interesting VR displays.

Continue reading “NES Zapper: Improved with Lasers”

Tricking Duck Hunt to See A Modern LCD TV as CRT

A must-have peripheral for games consoles of the 1980s and 1990s was the light gun. A lens and photo cell mounted in a gun-like plastic case, the console could calculate where on the screen it was pointing when its trigger was pressed by flashing the screen white and sensing the timing at which the on-screen flying spot triggered the photo cell.

Unfortunately light gun games hail from the era of CRT TVs, they do not work with modern LCDs as my colleague [Will Sweatman] eloquently illustrated late last year. Whereas a CRT displayed the dot on its screen in perfect synchronization with the console output, an LCD captures a whole frame, processes it and displays it in one go. All timing is lost, and the console can no longer sense position.

[Charlie] has attacked this problem with some more recent technology and a bit of lateral thinking, and has successfully brought light gun games back to life. He senses where the gun is pointing using a Wiimote with its sensor bar on top of the TV through a Raspberry Pi, and feeds the positional information to an Arduino. He then takes the video signal from the console and strips out its sync pulses which also go to the Arduino. Knowing both position and timing, the Arduino can then flash a white LED stuck to the end of the light gun barrel at the exact moment that part of the CRT would have been lit up, and as far as the game is concerned it has received the input it is expecting.

He explains the timing problem and his solution in the video below the break. He then shows us gameplay on a wide variety of consoles from the era using the device. More information and his code can be found on his GitHub repository.

Continue reading “Tricking Duck Hunt to See A Modern LCD TV as CRT”

HoloLens NES Emulator For Augmented Retro Gaming

[Andrew Peterson] was looking for a way to indulge in his retro gaming passions in a more contemporary manner. His 3D NES emulator “N3S” for Windows brings Nintendo classics to the HoloLens, turning pixels into voxels, and Super Mario into an augmented reality gingerbread man.

To run NES games on the HoloLens, [Andrew’s] emulator uses the Nestopia libretro core. Since AR glasses cry for an augmentation of the game itself, the N3S re-emulates the NES’ picture processing unit (PPU), allowing it to interpret a Nintendo game’s graphics in a 3D space. [Andrew] also put together a comprehensive explanation of how the original Nintendo PPU works, and how he re-implemented it for the HoloLens.

The current version of the N3S PPU emulator automatically generates voxels by simply extruding the original pattern data from the game’s ROM, but [Andrew] is thinking about more features. Users could sculpt their own 3D versions of the original graphic elements in an inbuilt editor, and model sets could then be made available in an online database. From there, players would just download 3D mods for their favorite games and play them on the HoloLens.

According to [Andrew], the emulator reaches the limits of what the current pre-production version of the HoloLens can render fluently, so the future of this project may depend on future hardware generations. Nevertheless, the HoloLens screen capture [Andrew] recorded makes us crave for more augmented retro gaming. Enjoy the video!

Hacklet 119 – Retrogaming Console Hacks

If you haven’t heard, retrogaming is a thing. 40-somethings are playing the games of their youth alongside millennials who are just discovering these classic games. There are even folks developing new homebrew games for consoles as far back as the Nintendo Entertainment System and the Atari 2600. This week on the Hacklet, we’re highlighting some of the best retrogaming console hardware hacks on Hackaday.io. Note that I did say hardware hacks. The focus this week is on games played on the original hardware. Don’t worry though, I’ll give emulated projects some love in a future Hacklet.

bankerWe start with [danjovic] and Atari 2600 Bankswitch Cartridge. The Atari 2600 is a legendary system. Millions of hackers’ first exposure to gaming came through its one button joystick. To make the unit affordable, Atari used a MOS Technology 6507 processor. Essentially it’s a 6502 in a 28-pin package. This meant several features got nerfed, most notably the address space. The 6507 can only address 8KB of RAM. In the Atari, only 4KB is available to the cartridge. Games got around the 4KB limit by bank switching – write a value to a magic address, and the bank switching logic would swap in a whole different section of cartridge ROM. There were several different bank switching schemes used over the years. [Danjovic] has created his own version of this bank switching logic, using only classic 74 series logic chips.

 

nesmodNext up is [ThunderSqueak] with Top Loader NES composite mod. Toward the end of the NES’s life, Nintendo introduced a cost-reduced version known as the “top loader”. This version had a top loading cartridge and no DRM lock-out chip. Unfortunately it also did away with composite AV ports. The only way to hook this NES to your TV was through the RF modulated output. [ThunderSqueak] and a number of other intrepid hackers have fixed this problem. All it takes is a 2N3906 PNP transistor and a few jellybean parts. The video and audio outputs are pulled from the motherboard before they enter the RF modulator. One nice feature is the clean connectors. [ThunderSqueak] used connectors from modular in-wall AV boxes for a setup that looks as good as it works.

segaNext we have [makestuff] with USB MegaDrive DevKit. Sega’s MegaDrive, or Genesis as it was known here in the USA, was a groundbreaking console. It used a Motorola 68000 16-bit CPU while most other systems were still running a Z80 or a 6502. People loved this console, and there are plenty who still want to develop software for it. Enter [makestuff] with his development kit. On a card with a $40 USD bill of materials, he’s managed to fit SDRAM, an FPGA, and a USB interface. This is everything you need to load and debug software on an unmodified console. The FPGA had enough logic left over that [makestuff] was able to implement a continuous bus cycle tracer over USB. Nice work!

robbbFinally, we have our own [Joshua Vasquez] with R.O.B. 2.0. The original NES came in a deluxe version with a special pack in – a robot. Robotic Operating Buddy, or ROB for short, would play games with the player. Unfortunately ROB was a bit of a flop. It only worked with two games, Gyromite and Stack-Up Ice Climber. Most ROB units eventually found their way to the recycling bin. [Joshua] is building a new version of the ROB, with modern controls. He’s already modeled and 3D printed ROB’s head. I can’t wait to see this project come together!

If you want to see more retrogaming goodness, check out our new retrogaming hardware hacks list. See a project I might have missed? Don’t be shy, just drop me a message on Hackaday.io. That’s it for this week’s Hacklet, As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!

This NES Emulator Build Lets You Use Cartridges to Play Games

You may not remember this, but Nintendo hardware used to be a pretty big deal. The original Game Boy and NES both had remarkable industrial design that, like the Apple II and IBM Thinkpad, weren’t quite appreciated until many years after production ended. But, like many of you, [daftmike] had nostalgia-fueled memories of the NES experience still safely locked away.

Memories like lifting the cartridge door, blowing on the cartridge, and the feel of the cartridge clicking into place. So, understandably, reliving those experiences was a key part of [daftmike’s] Raspberry Pi-based NES build, though at 40% of the original size. He didn’t just want to experience the games of his youth, he wanted to experience the whole NES just as he had as a child.

20160727_181746

Now, like any respectable hacker, [daftmike] didn’t let gaps in his knowledge stop him. This project was a learning experience. He had to teach himself a lot about 3D design and modeling, using Linux, and programming. But, the end result was surely worth the work; the attention to detail shows in features like the USB placement, the power and reset buttons, and of course the game cartridges which work with the magic of NFC and still include the insert and toggle action of the original cartridge carriage.

If you have a 3D printer and Raspberry Pi available, you could build a similar NES emulator yourself. But if you don’t have a 3D printer, but do have an original NES lying around, you could pull of the Raspberry Pi in a NES case hack. Whichever you do, the NES’s beauty deserves to be displayed in your home.

Continue reading “This NES Emulator Build Lets You Use Cartridges to Play Games”

Recreating Chiptunes In Verilog

The semester is wrapping up at Cornell, and that means it’s time for the final projects from [Bruce Land]’s lab. Every year we see some very cool projects, and this year is no exception. For their project, [Andre] and [Scott] implemented the audio processing unit (APU) of the Nintendo Entertainment System (NES). This is the classic chiptune sound that regaled a generation with 8-bit sounds that aren’t really eight bits, with the help of a 6502 CPU that isn’t really a 6502 CPU.

Unlike the contemporaneous MOS 6581 SID, which is basically an analog synthesizer on a chip, the APU in the NES is extraordinarily spartan. There are two pulse wave channels, a triangle wave channel, a random noise channel, and the very rarely used delta modulation channel (DMC) used to play very low quality audio samples. This is a re-implementation of the NES APU for a university lab; it is very understandable that [Andre] and [Scott] didn’t implement the rarely used DMC.

Everything about the circuitry of the NES is well documented, so [Andre] and [Scott] had a great wiki for their research. At the highest level, the APU runs on a 894kHz clock and controls three channels through dedicated registers. These outputs are fed through a mixer, which the guys scaled and combined into a 16-bit output played through a Wolfson WM8731 audio codec.

After implementing the NES APU, [Andre] and [Scott] added an SD card reader that can read the Nintendo Sound Format – the standard distribution format for NES chiptunes – and emulated a 6502 to control the registers. The result is a relatively simple device that plays NES chiptunes with amazing accuracy. The sound files on the project report sound like the real thing, but this is entirely emulated on modern hardware.

NES Light Gun Turned (Video) Synthesizer

[Russell Kramer] made our day today. We’re tremendous fans of minimalism in electronics design, dirty noise hacks, and that old NES  light gun. He’s posted up a project that combines all three to make a light-gun controlled, VGA video display that makes bleepy-bloopy noises to boot. Check out the video below!

To appreciate this hack, you really need to read through the project logs in detail. Start with the VGA signal creation, for instance. The easiest way to go these days is to throw a microcontroller at the problem. But because he’s done that to death, [Russell] takes a step back thirty years and generates the sync pulses periodically with a relaxation oscillator and a binary counter IC. The rest of the build follows this aesthetic choice: everything is op amps and CMOS logic. The rainbow effect, for instance, is created from the audio signal through a three-stage, 120-degree phase-shift oscillator sent to the R, G, and B channels. Kudos!

The high-level overview is that the light intensity and position hitting the gun’s sensor is converted into a voltage that drives an audio-frequency oscillator. This audio output is then piped back into the video generator. Watching the video, it’s obvious that pointing the gun at different parts of the screen changes the pitch, but playing a given pitch is nearly impossible on this thing with all the feedback going on. [Russell] added a bit of more control into the system — when the gun’s trigger is pulled, it registers full-brightness regardless of the video input — but even so, we’d be hard-pressed to play “Mary Had a Little Lamb”.

But that’s not the point. The point is awesome, light-gun-waving noisy madness set to a responsive colorful video background. And that’s been achieved in spades!

Continue reading “NES Light Gun Turned (Video) Synthesizer”