Four Score

From NESdevWiki

Jump to: navigation, search

The NES Four Score and NES Satellite accessories allow four NES controllers to be connected to the NES's two controller ports. Controllers connected to this accessory are read using the same process as the standard controller. After the normal 8 reads from one port to get one controller data, 8 more are done to get another controller.

[edit] Input ($4016 write)

7  bit  0
---- ----
xxxx xxxS
        |
        +- Controller shift register strobe

Writing 1 to this bit will record the state of each button on the controller. Writing 0 afterwards will allow the buttons to be read back, one at a time.


[edit] Output ($4016/$4017 read)

7  bit  0
---- ----
xxxx xxxD
        |
        +- Serial controller data

Read $4016 8 times to get the 8 buttons for controller #1.

Read $4016 8 more times to get the buttons for controller #3.

Read $4017 8 times to get the 8 buttons for controller #2.

Read $4017 8 more times to get the buttons for controller #4.

Button status for each controller is returned in the following order: A, B, Select, Start, Up, Down, Left, Right. 1 if pressed, 0 if not pressed.

Personal tools