Famicom Network Controller

The Famicom Network Controller (HVC-051) is a 23-button controller for use with the Famicom Network System. It is essentially a standard controller that adds a number pad, and can be used with normal games.
.------------------------------------------.
| (<) (>) (1) (2) (3) (*) (C) |
| SEL _ STA (END) |
| _| |_ (4) (5) (6) (#) (.) |
| |_ _| |
| |_| (7) (8) (9) ( 0 ) (B) (A) |
'------------------------------------------'
(ASCII art courtesy Nocash)
- The Select button has the additional text 前ぺージ = Previous Page
- The Start button has the additional text 次ページ = Next Page
- The B button has the additional text 目次 = Table of Contents
- The A button has the additional text 実行 = Execute
- The button marked “END” instead has the text 通信終了 = End of Communication
The protocol looks like a standard Famicom expansion port controller, returning its result via reads from $4016 D1. After the initial eight reads, the following sixteen reads return the following bits in order:
0-7 - see Standard controller
8 - 0
9 - 1
10 - 2
11 - 3
12 - 4
13 - 5
14 - 6
15 - 7
16 - 8
17 - 9
18 - *
19 - #
20 - .
21 - C
22 - (Always 0)
23 - 通信終了
Like the standard controller, reads after the first 24 read as logic 1.
- Super Famicom NTT Data Keypad - The equivalent Super Famicom controller with a number pad.