Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
controls:nes_snes_controller [2006/01/24 11:16]
65.73.151.96 Corrected the colors
controls:nes_snes_controller [2009/06/12 02:21]
80.221.27.219
Line 1: Line 1:
 ===== NES/​SNES/​Famicom Pad Pinouts ===== ===== NES/​SNES/​Famicom Pad Pinouts =====
  
-|  {{http://​www.gamesx.com/​grafx/​nescontrolportg.gif}} ​ |  {{http://​www.gamesx.com/​grafx/​snesconportg.gif}} ​ |  {{http://​www.gamesx.com/​grafx/​famicomconcon.gif}} ​ |+|  {{controls:nes.gif}} ​ |  {{controls:snes.gif}} ​ |  {{controls:fami.gif}} ​ |
 ^NES Controller Port^SNES Controller Port^Famicom Controller Port^ ^NES Controller Port^SNES Controller Port^Famicom Controller Port^
  
- +This page is divided into two halves: The pinouts (above) and the labels for them (immediately below). Farther down you'll a brief description of how it all works and a diagram detailing the internals of a SNES controller. Special thanks, as usual, to Game Lab magazine (Japanese only, sadly) and Kevin Horton who helped me wrap my head around this odd little IC.
-This page is divided into two halves: The pinouts (to your left) and the labels for them (immediately below). Farther down you'll a brief description of how it all works and a diagram detailing the internals of a SNES controller. Special thanks, as usual, to Game Lab magazine (Japanese only, sadly) and Kevin Horton who helped me wrap my head around this odd little IC.+
  
  
 ^  Pinout Data  ^^^^ ^  Pinout Data  ^^^^
 ^Pin Name^NES Pin #^SNES Pin #^Famicom Pin #^ ^Pin Name^NES Pin #^SNES Pin #^Famicom Pin #^
-|GND|2|1|8| +|GND|1|1|8| 
-|P/​S|3|5|12| +|P/S (Latch)|3|5|12| 
-|Clock|5|6|10| +|Clock|7|6|10| 
-|Data|7|4|11| +|Data|5|4|11| 
-|Vcc +5v|7|7|9|+|Vcc +5v|2|7|9|
 |Data 2((Data 2 and Data 3 are not used for normal controllers. For the NES they'​re used for things like the Zapper and other specialized controls (Arkanoid paddle, etc). Ditto for the SNES - these lines are reserved for use with things like the Super Scope.))|4|N/​A|N/​A|  |Data 2((Data 2 and Data 3 are not used for normal controllers. For the NES they'​re used for things like the Zapper and other specialized controls (Arkanoid paddle, etc). Ditto for the SNES - these lines are reserved for use with things like the Super Scope.))|4|N/​A|N/​A|
 |Data 3|6|N/​A|N/​A| |Data 3|6|N/​A|N/​A|
Line 20: Line 19:
  ​There'​s not much to it. The 4021 IC is an 8-channel parallel to serial convertor. Every time the P/S line is switched on, the IC '​loads'​ each of the inputs. It makes each one a single '​bit'​ - 0 if not pressed, 1 if pressed. Every time the '​clock'​ line pulses, the IC shifts one bit out the serial output line.  ​There'​s not much to it. The 4021 IC is an 8-channel parallel to serial convertor. Every time the P/S line is switched on, the IC '​loads'​ each of the inputs. It makes each one a single '​bit'​ - 0 if not pressed, 1 if pressed. Every time the '​clock'​ line pulses, the IC shifts one bit out the serial output line.
  
-This about it this way: The NES is constantly outputting a '​clock'​ signal - a pulse of electricity switching between on and off very rapidly. Every time the NES wants to know what buttons are being pressed, it briefly activates the '​P/​S'​ line (think of it as a '​load'​ line) causing the 2014 to '​load'​ each button as one bit.+This about it this way: The NES is constantly outputting a '​clock'​ signal - a pulse of electricity switching between on and off very rapidly. Every time the NES wants to know what buttons are being pressed, it briefly activates the '​P/​S'​ line (think of it as a '​load'​ line) causing the 4021 to '​load'​ each button as one bit.
  
-If you imagine the inside of the 2014 as a conveyor belt, it's just placed each '​bit'​ (A 1 or 0) onto the belt, each in it's own little pocket on the belt. The '​load'​ line turns off, and the conveyor belt moves in time to the '​clock'​ signal. Every time the clock '​pulses'​ the conveyor belt moves one bit over, and shoves the next bit out the serial line. When all the bits are gone, the NES activates the load line and loads the next 8 bits onto the conveyor.+If you imagine the inside of the 4021 as a conveyor belt, it's just placed each '​bit'​ (A 1 or 0) onto the belt, each in it's own little pocket on the belt. The '​load'​ line turns off, and the conveyor belt moves in time to the '​clock'​ signal. Every time the clock '​pulses'​ the conveyor belt moves one bit over, and shoves the next bit out the serial line. When all the bits are gone, the NES activates the load line and loads the next 8 bits onto the conveyor.
  
-There'​s only one more step to this with the SNES controller. As you can see below, there are two chips. One line of the 2014 is a serial input. Imagine two conveyor belts hooked together - the bottom chip shoves the bits into the end of the first one, making one long 16-bit conveyor belt. The SNES activates the '​load'​ line every sixteen bits and then waits while the '​clock'​ line shifts the conveyor 16-bits along. Once all sixteen bits are received, the load line is activated again, and the bits are reloaded onto the belt. +There'​s only one more step to this with the SNES controller. As you can see below, there are two chips. One line of the 4021 is a serial input. Imagine two conveyor belts hooked together - the bottom chip shoves the bits into the end of the first one, making one long 16-bit conveyor belt. The SNES activates the '​load'​ line every sixteen bits and then waits while the '​clock'​ line shifts the conveyor 16-bits along. Once all sixteen bits are received, the load line is activated again, and the bits are reloaded onto the belt. 
  
 {{http://​www.gamesx.com/​grafx/​snesnesicschem.gif}} {{http://​www.gamesx.com/​grafx/​snesnesicschem.gif}}
  
-There'​s not too much to it. The blue lines are the inputs - each one is labelled. The green line is the '​conveyor belt' connector, bridging the serial output of the bottom IC into the input of the top one. The red line is the '​Load'​ line. The always-pulsing clock line is pink. There are four extra buttons not used on the 2nd chip, you can see they'​re not attached. Each line is held "​high"​ by the +5v power and the 10k ohm resistor (see the [[http://​www.gamesx.com/​misctech/​controltech.htm|Controller Primer]]) until a switch is pressed, grounding the pin. To make a NES connector, simply ignore the second IC. Please note that button '​Y'​ above is button 'A' on NES+There'​s not too much to it. The blue lines are the inputs - each one is labelled. The green line is the '​conveyor belt' connector, bridging the serial output of the bottom IC into the input of the top one. The red line is the '​Load'​ line. The always-pulsing clock line is pink. There are four extra buttons not used on the 2nd chip, you can see they'​re not attached. Each line is held "​high"​ by the +5v power and the 10k ohm resistor (see the [[http://​www.gamesx.com/​misctech/​controltech.htm|Controller Primer]]) until a switch is pressed, grounding the pin. To make a NES connector, simply ignore the second IC. 
 + 
 +{{controls:​nesicschem.gif}} 
 + 
 +Please note the changes: Button ​routed to pin 1, B to pin 15, pin 11 routed to ground. 
 + 
 +For more complicated explanation of the SNES communication protocol, see [[http://​www.gamesx.com/​controldata/​snesdat.htm|our old page]]. 
 + 
 +On SNES controller boards manufactured by Mitsumi a single custom chip is used. The schematic is shown below for reference. 
 + 
 +{{controls:​snes_mitsumi_upd.gif}} 
  
-For a more complicated explanation,​ see [[http://​www.gamesx.com/​controldata/​snesdat.htm|our old page]]. 
 
 controls/nes_snes_controller.txt · Last modified: 2009/06/12 02:21 (external edit)
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 4.0 International
Recent changes RSS feed Driven by DokuWiki