62

I'm told that the original Duck Hunt (NES) works fine on all CRT screens, but fails to register successful hits on a plasma or LCD screen. Why is this? Is there a fix for it?

1
  • 2
    This question covers details on the Light gun against CRT TVs, and covers the mechanics of how it specifically works. Don't know if it's enough to explain whether or not it fails on plasma/LCD.
    – Grace Note
    Commented May 27, 2011 at 18:42

4 Answers 4

55

I disagree with both of the contributed answers to this question. They are right but for the wrong reasons. I believe LCDs don't work because of a technical limitation, but this talk about electron beams and "retrace lines" doesn't make sense to someone who understands the technology: a properly contrasted white box is all the light gun looks for. The photo-diode inside the gun can't tell if it's seeing white light from lit phosphors or a properly backlit LCD.

Please understand that my response is founded on my studies in computer engineering (specializing in embedded systems design) at a credible institution, where, out of many projects, I had a particularly pertinent project writing the VHDL code to drive images in frame buffers directly to the raw data pins with horizontal/vertical/blanking timing signals of an LCD display. My response is also based on knowledge of how Duck Hunt and the light gun interact. However the following is mostly based on my observation in getting Duck Hunt working on a recent-model Samsung LCD TV.

This problem is almost certainly to do with timing and image processing. Brightness may play a factor in some people's situation (early LCDs had relatively poor contrast ratios), however the pixel transition time and contrast ratio of the Samsung LCD I used were good enough to occasionally register a hit. The fact that it registered at all may be a miracle but I can assure you it has nothing to do with CRT electron beams or retracing.

Why I believe this to be a latency issue is because of a strange anomaly where, when I could finally get the title screen to register a hit, I'd either end up in the single, double-duck or double-clay pigeon mode. When I'd fire at a target there'd be a roughly 50/50 chance that the white boxes would display at all, and I could never hit a duck in the single-duck game. However in the double-duck/pigeon game, when I would see the white squares and a hit would be registered, the wrong target would get hit.

From what I understand about Duck Hunt, to allow for hits on multiple targets to be distinguished, the game would first blank the screen and show the square for "target 1" for a few milliseconds (not sure on timing), then clear that square and show the square for "target 2" for a few milliseconds. CRT TVs would have no latency in showing the image to the screen and therefore work great for Duck Hunt where the times that white squares were on the screen were timed precisely by the game. What I believe I experienced was that the light gun would see the square for "target 2" when I aimed at "target 1" because of the latency in the image processing algorithm the TV was using to up-convert the image. When I'd fire, the game thought it saw the light from "target 1", because that's the square being shown on the TV at the time, when the target I shot at on the TV was "target 2".

I have a number of tests I want to try and run to confirm if this theory is correct, but if this is the case, TV manufacturers could fix this problem by speeding up the processing of the image. So all my classic-gaming friends, all hope is not lost and as technology gets better we may once again be able to use our NES zapper with future TVs.

5
  • 3
    This is actually the correct answer; the NES displays a white box wherever the "hit zone" is, then polls the Zapper; if it returns "White" when the box is up and "Black" when it is removed, the game registers a hit. The fact that the game checks for both light and dark to verify is what prevents you from just pointing the gun at a lightbulb and firing away.
    – Xkeeper
    Commented Oct 28, 2011 at 16:28
  • 5
    Actually, now that I think about it, utilizing this information it might be possible to make a sort of "Duck Hunt configuration screen", where you point at the screen and fire, and the game tracks how long it takes for white to register, using that later to adjust the timing sensitivity for the gameplay. Hmm...
    – Xkeeper
    Commented Oct 28, 2011 at 16:31
  • 2
    @Xkeeper. It would be difficult to add a config screen to the game itself, but I think if you could throttle the latency outside of the game (maybe on the monitor itself), and actually make it a bit longer than it is currently, you could get back in the refresh pocket, and just be one frame behind where the game thinks it is. But since the duck is pretty big (lots of pixels), this may be good enough. In fact, if the game is just looking for a white-then-black light signature, the accuracy when being one frame behind would be the same. Commented Aug 22, 2012 at 2:47
  • 2
    Also all the people talking about the scanlines and stuff are thinking of light pens, which do indeed only work with CRTs because they detect their XY position by reading the timing of when the beam sweeps by their tip.
    – Spudd86
    Commented May 18, 2016 at 18:05
  • 2
5

The YouTube channel "The Slow Mo Guys" breaks this down beautifully in their video "How the Nintendo Zapper worked in Slow Motion," showing frame-by-frame how the Nintendo Zapper (the light gun used in Duck Hunt) and CRT (Cathode Ray Tube) TVs work together to make the game possible:

The reason Duck Hunt doesn't work on plasma or LCD screens is due to the fundamental difference in how these modern displays function compared to CRT TVs. The Nintendo Zapper relies on the specific way CRTs display images and their specific timing.

In the video, they explain:

Each frame is drawn by the [CRT] TV from top to bottom line by line, and if we slow the footage down to 82,000 frames a second, you can see that each line shoots across the screen from left to right extremely quickly.

A little bit of maths tells us that this specific screen is capable of drawing a line from the left to the right of the frame at approximately 24,500 mph.

This scanning method is crucial for the Zapper's functionality. When you pull the trigger, the following sequence occurs:

  1. The Zapper sends a signal to the console.
  2. The console finishes drawing the current frame.
  3. It then sends an entirely black frame to the display.
  4. On the next frame, a white box is drawn exactly where the duck was.

The Zapper's light sensor looks for this specific black-to-white transition:

One of the reasons it draws an entirely black frame before any of the white boxes is so you can't just point the gun into a bright light source like a light bulb. It actually has to see black then white a frame later; otherwise, it won't reward any points.

This method allows the Zapper to determine if you've hit the target. However, plasma and LCD screens update differently. Instead of drawing the image line by line, they refresh the entire screen at once with different timing. This means the Zapper can't detect the specific timing of the black-to-white transition it needs to function.

As the video explains:

[…] there is even a faint line [on the CRT TV] when it draws an entirely black frame. A vector display would only draw the lit areas and move about the screen almost willy-nilly, but because this is rasterized frames, the beam will travel over every area of the screen whether it draws anything or not.

The zapper itself isn't actually shooting anything. The TV isn't receiving anything. This is the receiver, and it's just using its little lens here to search for the white on the screen.

Unfortunately, there isn't a simple fix to make Duck Hunt work on modern displays. The game relies on the precise timing and display method of CRT televisions. To play Duck Hunt as intended, you'll need to use a CRT TV or monitor.

This limitation showcases how ingenious the original design was, as noted in the video:

I honestly think this is such a genius piece of engineering. The fact that one peripheral and one cable was then compatible with pretty much every TV in existence at the time 40 years ago just blows my mind a little bit.

2

I did quite some tests with the Sega Light Phaser (Master System's light gun), which is pretty much the same technology.

There are two issues involved:

One is indeed the timing. You would need to have a very fast TV with a game-mode so the delay wouldn't affect the results

The second and more important is that, in order to be cheap, the light gun was made using tradicional home appliance electronic components. It uses the same kind of photoreceptor used on TVs and VCRs to receive the IR light from the remote. This means, obviously, that it the light guns can only "see" IR light. Since the CRTs emitted IR light alongside with the visible light, it worked pretty fine. But LCDs emit zero IR light, and this is why the light gun just wouldn't capable to detect the targets on duck hunt even on a hypothetically zero-delay LCD TV. Any hit detected when testing on a LCD TV was much probably caused by IR light reflecting from from some other source, like a fluorescent lamp.

If anyone want to replicate the rest, just connect light gun to an arduino and check the results. The light gun will be able to read white areas on a CRT TV, light emitted from infrared remotes, light from fluorescent lamps. But it will not detect any light coming from a white area in a LCD monitor.

So, one requirement to fix the problem would be to replace the photoreceptor with another that's able to receive visible light. But that would also require adjustments to the circuit, since the logic levels are very different between different types of receptors. Only a skilled electronic engineer would be able to do that.

The third important factor is the detection method used by the video-game. Software-based detection methods like the NES and MSX had can be fixed because it's frame-based. OTOH, hardware based solutions like the SMS, Megadrive and SNES were more precise and indeed rely on the position of the beam to detect the coordinates. This would only work on raster based TVs/monitors, but LCDs and Plasmas are frame-based. In this case, it's just not possible to fix the issue, because the delay requirements are much smaller, close to zero.

-2

Change the contrast button slider all the way to right.

I changed the contrast button to middle of bar when I noticed this. I have both an LCD and CATV display. It confused me, because every once in a while the gun would work on the LCD, I noticed (usually at night or in the dark, but I didn't put it together).
Anyway, I changed it, put Rambo 3 (Sega Master System) and it no longer worked. I retraced my steps, put contrast slider button to right and it went from inoperable to working as if it was turbo fast.
I am not familiar with concept of fast TV's as mentioned in an answer above. I am next going to try it on my LCD, in case this was just coincidence.

It could be that the light gun will work on most TVs if contrast is high enough.

I tested on CATV, but not on LCD.

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .