Coin-door, switch-matrix, Fliptronic flipper, and optional custom switch column inputs
pinmame.input.switch
- 1 … 88 slots
- 11 … 188 slots
- 21 … 288 slots
- 31 … 388 slots
- 41 … 488 slots
- 51 … 588 slots
- 61 … 688 slots
- 71 … 788 slots
- 81 … 888 slots
- 91 … 988 slots
- 111 … 1188 slots
- libpinmamechannel=switch
- controller_plugingroup_id=1 · contract_revision=a6f6d7266d30
Technical details for Coin-door, switch-matrix, Fliptronic flipper, and optional custom switch column inputsSource-derived address behavior and exceptions
Cabinet inputs
Addresses 1-8 are the four coin chutes and the four coin-door service buttons in printed row order.
Matrix inputs
Public matrix addresses use WPC column/row notation 11-88, where the left digit is the drive column and the right digit is the return row; values ending in 9 or 0 are not matrix positions.
Fliptronic inputs
This generation always has Fliptronic flipper inputs, so 111-118 are the eight EOS/button positions in WPC_swF1..WPC_swF8 order:
| Address | Position |
|---|---|
111 |
lower-right EOS |
112 |
lower-right button |
113 |
lower-left EOS |
114 |
lower-left button |
115 |
upper-right EOS |
116 |
upper-right button |
117 |
upper-left EOS |
118 |
upper-left button |
These positions are exactly as on WPC-95.
Custom switch column
A driver may declare one additional custom switch column through core_tGameData custSwCol (CORE_CUSTSWCOL = CORE_STDSWCOLS = 12 internally), which PinMAME reports publicly at 91-98. A definition declares this range only when its own machine populates it.
Normalization
Unlike WPC-95, this generation's WPC_FLIPPERS register read (core_r offset WPC_FLIPPERS) unconditionally returns the bitwise complement of the flipper switch column regardless of hardware generation. The public Fliptronic state is already normalized here exactly as it is on WPC-95 via WPC_FLIPPERSW95; a recreation must not re-invert either range.