The NES has two general-purpose controller ports on the front of the console, as well as a (rarely used) 48-pin expansion port underneath.
The Famicom's standard controllers are hardwired to the front of the unit, and a special 15-pin expansion port is commonly used for third-party controllers. The AV Famicom, however, features detachable controllers using the same ports as the NES.
The NES and Famicom have a set of I/O ports used for controllers and other peripherals, consisting of the following:
type | output | Joypad 1 | Joypad 2 | audio output | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
signal | OUT2 | OUT1 | OUT0 | /OE1 | D4 | D3 | D2 | D1 | D0 | /OE2 | D4 | D3 | D2 | D1 | D0 | AUDIO |
access method | write $4016 | [1] | read $4016 | [2] | read $4017 | |||||||||||
available on these ports | ||||||||||||||||
Controller port 1 (AV Famicom) | OUT0 | /OE1 | D0 | |||||||||||||
Controller port 1 (Famicom (internal)) | OUT0 | /OE1 | D0 | |||||||||||||
Controller port 1 (NES) | OUT0 | /OE1 | D4 | D3 | D0 | |||||||||||
Controller port 2 (AV Famicom) | OUT0 | /OE2 | D0 | |||||||||||||
Controller port 2 (Famicom (internal)) | OUT0 | D2 | /OE2 | D0 | ||||||||||||
Controller port 2 (NES) | OUT0 | /OE2 | D4 | D3 | D0 | |||||||||||
Expansion port (Famicom) | OUT2 | OUT1 | OUT0 | /OE1 | D1 | /OE2 | D4 | D3 | D2 | D1 | D0 | AUDIO | ||||
Expansion port (NES) | OUT2 | OUT1 | OUT0 | /OE1 | D4 | D3 | D2 | D1 | D0 | /OE2 | D4 | D3 | D2 | D1 | D0 | AUDIO |
used by these devices | ||||||||||||||||
Controller (port 1)[3] | OUT0 | /OE1 | D0 | |||||||||||||
Controller (port 2)[3] | OUT0 | /OE2 | D0 | |||||||||||||
Controller (Famicom controller 2)[4] | OUT0 | D2 | /OE2 | D0 | ||||||||||||
Controller (expansion port) | OUT0 | /OE1 | D1 | AUDIO[5] | ||||||||||||
Arkanoid controller (port 2)[3] | OUT0 | /OE2 | D4 | D3 | ||||||||||||
Arkanoid controller (expansion port) | OUT0 | D1 | /OE2 | D1 | ||||||||||||
Arkanoid II controller (2 controllers) | OUT0 | D1 | /OE2 | D4 | D3 | D1 | ||||||||||
Bandai Hyper Shot | OUT2 | OUT1 | OUT0 | /OE1 | D1 | D4 | D3 | AUDIO | ||||||||
Exciting Boxing Punching Bag | OUT1 | D4 | D3 | D2 | D1 | |||||||||||
FAM-NET Keyboard | OUT2 | OUT1 | OUT0 | D4 | D3 | D2 | D1 | |||||||||
Family Trainer Mat | OUT2 | OUT1 | OUT0 | D4 | D3 | D2 | D1 | |||||||||
Family BASIC Keyboard | OUT2 | OUT1 | OUT0 | D4 | D3 | D2 | D1 | |||||||||
Famicom 3D System | OUT1 | |||||||||||||||
Famicom Network System controller | OUT0 | /OE1 | D1 | |||||||||||||
Four player adapter (Four Score) | OUT0 | /OE1 | D0 | /OE2 | D0 | |||||||||||
Four player adapter (Hori 4 Players Adapter) | OUT0 | /OE1 | D1 | /OE2 | D1 | |||||||||||
Hori Track | OUT0 | /OE2 | D1 | |||||||||||||
Jissen Mahjong controller | OUT2 | OUT1 | OUT0 | /OE2 | D1 | |||||||||||
Konami Hyper Shot | OUT2 | OUT1 | D4 | D3 | D2 | D1 | ||||||||||
Oeka Kids tablet | OUT1 | OUT0 | D3 | D2 | ||||||||||||
Pachinko controller | OUT0 | /OE1 | D1 | |||||||||||||
Party Tap | OUT0 | /OE2 | D4 | D3 | D2 | |||||||||||
Power Pad (port 2)[3] | OUT0 | /OE2 | D4 | D3 | ||||||||||||
Port test controller | OUT0 | /OE1 | D4 | D3 | D0 | /OE2 | D4 | D3 | D0 | |||||||
TV-NET controller | OUT0 | /OE1 | D1 | |||||||||||||
TV-NET Rank 2 controller | OUT0 | /OE1 | D1 | |||||||||||||
Zapper (port 2) | D4 | D3 | ||||||||||||||
Zapper (expansion port) | D4 | D3 | [6] | |||||||||||||
Zapper (Vs. System) (port 1)[3] | OUT0 | /OE1 | D0 |