Controller

The N64 controller, with it's tri-wing design, featured 14 button inputs, and an optical encoder based analog stick. The controller connects to the console over three wires, power, data, and ground. On the bottom, it also had a 32 pin edge board connector for additional accessory PAKs, such as the Controller PAK and Rumble PAK.

Design
The controller's design was unique in that it had three handles, which allowed the player to hold the controller in multiple ways. However, typically the right hand would be on the right-most handle, and the left would alternate between the middle or left depending on whether the game utilized the D-pad or analog stick. The standard controller used rubber-like contacts underneath plastic button caps. When pressed, these contacts would close a circuit printed onto the PCB inside the controller; this is different from a clicky push button, but not uncommon for game controllers.

Accessory Port
PAK devices could be plugged into this port to expand the console's capabilities or to enhance the player's experience. The console would communicate with these devices via the Joybus Protocol. This was typically done by sending packets of 32 bytes to the controller, which were then passed on to the PAK.

The port consists of 32 pins, 8 of which were used for data, and 16 for setting the address to read from or write to.