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 | |||||||||||||