Jissen Mahjong controller
From NESdev Wiki
Jump to navigationJump to search
This is a 21-button controller used by the following Capcom games:
- Ide Yousuke Meijin no Jissen Mahjong
- Ide Yousuke Meijin no Jissen Mahjong 2
Button layout
A | B | C | D | E | F | G | H | I | J | K | L | M | Ⓝ |
SEL | ST | カン | ポン | チー | リーチ | ロン |
The カン (kan), ポン (pon), チー (chii), リーチ (riichi) and ロン (ron) buttons appear to be Mahjong-related.[1]
Hardware interface
Input ($4016 write)
7 bit 0 ---- ---- xxxx xRRS ||| ||+- Strobe |+-- Row selection (bit 0) +--- Row selection (bit 1)
Output ($4017 read)
7 bit 0 ---- ---- xxxx xxDx | +- Serial data
Note: The following is my assumption on how the hardware works based on nocash's documentation and could be partially incorrect.[2]
After toggling the strobe bit from 1 to 0, the controller will return 8 bits worth of data (1 bit per read) based on the "row selection" bits.
Row 0 returns no data (?). Row 1 returns: <empty>, <empty>, N, M, L, K, J, I Row 2 returns: H, G, F, E, D, C, B, A Row 3 returns: <empty>, ロン, リーチ, チー, ポン, カン, Start, Select
Buttons return 0 when held down, 1 otherwise.
Notes:
- The exact order of the first 5 buttons on row 3 is unconfirmed(?) (the order written here makes sense considering the button order used in rows 1 & 2).
- The output for <empty> bits or any reads beyond the first 8 bits is unconfirmed. (?)