element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
element14's The Ben Heck Show
  • Challenges & Projects
  • element14 presents
  • element14's The Ben Heck Show
  • More
  • Cancel
element14's The Ben Heck Show
Forum An NES Zapper for modern LCD TVs?
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join element14's The Ben Heck Show to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 16 replies
  • Subscribers 37 subscribers
  • Views 10195 views
  • Users 0 members are here
Related

An NES Zapper for modern LCD TVs?

Former Member
Former Member over 11 years ago

This is a post i made previously on another thread, but i'm now posting it as its own discussion to hopefully get some response from Ben or anyone else who can figure out how to do this build.

 

Dear Ben (or anyone else with the technical skill to solve this problem),

 

For a while now I've been looking for a way to modify an NES Zapper to work on modern televisions. After a lot of research, i think i have figured out exactly why it doesn't work. Unfortunately, however, i am just a computer science student with only very basic experience in working with electronics, so i do not know how to even begin implementing a solution. I was hoping you would be able to help.

 

As you probably know, the Zapper works by having the entire screen go black save for the targets, at which point a photo diode senses whether or not it is pointing into the light. However, this is actually accomplished by a multistage process which i will outline below:

 

1) The NES redraws the screen completely black for one frame. The Zapper checks to make sure no light is detected before proceeding, preventing any accidental readings from other light sources (this is why pointing it at a light bulb doesn't work).

2) The NES redraws the screen with only target #1 illuminated for one frame. The Zapper checks for light, and the Nintendo determines if the player has hit target #1.

3) The NES redraws the screen with only target #2 illuminated for one frame. The Zapper checks for light, and the Nintendo determines if the player has hit target #2.

4) This process repeats for all targets on screen.

 

The obvious issue with modern televisions is that they tend to upscale the image, resulting in a slight delay that messes up the precise timing required for this sequence to work. Another potential issue i have read about is the nature of the photo diode itself. I have heard that Nintendo opted to use cheap photo diodes that only detect the infrared light coming from the CRT, thus preventing it from working on modern televisions, however i can not verify this.

 

I was hoping that you would be able to come up with a creative solution to this problem that even someone as inexperienced as me would be able to follow (maybe even make an episode out of it ).

 

-Andrew

 

Sources:

https://www.youtube.com/watch?v=c3tBk-LYyzo

nes monitor - Why doesn't Duck Hunt work on plasma or LCD screens? - Arqade

 

EDIT: Someone on youtube has been working on a solution to this problem, but it has been a year since they last updated so i have no idea if they ever finished it. If you have any doubt that this is possible, here is a video where he shows his working prototype: https://www.youtube.com/watch?v=8D624JADDOw

 

EDIT 2: A possible solution i have considered would be to connect to the expansion port on the bottom of the nintendo using an ENIO board to allow the gun to directly interface with the 2A03, but i have no idea how i would implement this or how it would actually work. It would probably need to tell the game to flash the targets on screen, then wait until the gun can determine whether or not it is pointing at a target before advancing to the next bit of code.

 

EDIT 3: I have recently tested an NES zapper on an old projection tv. This proves that the issue is caused by input lag and not the lcd screen itself, because it shows that the zapper CAN indeed work on a non-CRT television.

  • Sign in to reply
  • Cancel

Top Replies

  • Former Member
    Former Member over 10 years ago +2
    Hopefully I can explain why this would be impossible by adding something to the console or by modifying the zapper in anyway. There is no way to get around the delay. The only way possible is to figure…
  • beacon_dave
    beacon_dave over 8 years ago in reply to shabaz +2
    This may be of interest, using a R-Pi, Wiimote and an Arduino... Tricking Duck Hunt to See A Modern LCD TV as CRT http://hackaday.com/2016/08/30/tricking-duck-hunt-to-see-a-modern-lcd-tv-as-crt/ https…
  • shabaz
    shabaz over 8 years ago in reply to beacon_dave +2
    Hi Dave, That's a good idea. I was thinking of non-lightgun ways to identify the position and then trick the lightgun input at the correct time, but I couldn't think of a simple solution like the Wii …
  • shabaz
    shabaz over 8 years ago in reply to beacon_dave

    Hi Dave,

     

    That's a good idea. I was thinking of non-lightgun ways to identify the position and then trick the lightgun input at the correct time, but I couldn't think of a simple solution like the Wii 'mote. Very cool : )

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • cgibbons
    cgibbons over 8 years ago in reply to Former Member

    I'm not clear on why modifying the zapper would not work. As long as the delay is constant, shouldn't you be able to simply introduce the same delay to the output of the trigger? You would need to make a custom cartridge with a calibration program to set the length of the delay, but that would not be that difficult.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • kennyl
    kennyl over 7 years ago in reply to cgibbons

    The problem is you're seeing it backwards.  By the time the screen draws the duck in X location, you should have ALREADY pulled the trigger.  Because there's so much delay in the display.  You can't modify the gun to get around this, it would have to be the games code so it isn't looking for an instant reaction but a delayed one.  This is why rhythm games like Guitar Hero built in delay calibration.  With the notes on screen set to 0 delay compared to the song, you can hardly play the game on an LCD but on a CRT you can play it fine.  It has to be on the software side.  It should be theoretically possible, but modifications to the NES hardware and Zapper gun it's self shouldn't be needed in my opinion.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • r4builder
    r4builder over 7 years ago in reply to beacon_dave

    Slightly Sorry for the thread bump.  This has me pondering if you couldn't take it a step further and remove the zapper completely from the equation, and just use a wiimote for the games.  Instead of outputting to an LED, use a serial output to send the signal to the console itself.  It would mean extra work per system to mimic the controller, and a serial interface, but boy would that be clean.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • makerkaren
    makerkaren over 7 years ago in reply to r4builder

    Subbing in a wiimote for the zapper to play Duck hunt seems the best solution I have heard yet to be able to play the game on a modern television. However, at that point, it's so much work, and likely impossible, to make the wiimote work with the original hardware that the ideal solution is probably just to emulate the game and work the emulation to work with the wiimote. Do you agree?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morskoyzmey
    morskoyzmey over 7 years ago

    Hi,

     

    I know theme is old, but still actual!

     

    I've made two ROM modifications. Duck Hunt and Wild Gunman. With auto delay algorithm. http://neslcdmod.com

     

    It works on Famicom and Famiclones, but with chinese guns. Not sure about Zapper. I have negative reports with it.

    The problem is in demodulator in its circuitry. It prevents to react to LCD screens. So software way not helped here, I think.

    But I'm searching for simple Zapper mod solution.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
<
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube