Four-ball trough
mechanism.trough
Four physical balls occupy switches 18-21 from left to right. Output 1 advances the rightmost ball to the shooter lane through jam opto 22; the proven table initializes 18-21 closed.
Stern2012SAMstern.x-men-limited-edition.2012 1 of 2 editions
10 ROM sets resolve to this machine. Clones share the definition unless a hardware difference is listed.
PinMAME already reports logical active state. Do not invert again in the table — normally-closed is a physical fact recorded per switch, not a runtime transform.
A single aggregate GI channel — the whole string switches together.
Create balls on these switches so the ROM finds a full trough at boot.
Portable roles — the consuming engine maps them to its own input actions.
Where each address physically sits. The switch and lamp maps below show the electrical layout — this shows the same devices as the player sees them.
172 placements · 24 stacked · normalised player view · outline is nominal
Hover a marker to identify it, or click to keep it selected. Numbered markers are several devices in one spot — clicking lists them.
Not on the playfield48 unused, 20 cabinet or service, 8 dip switch, 3 internal nonvisual, 1 virtual — declared rather than missing.
Real evidence exists, but authoring requirements are still missing or in conflict. Verify before shipping a table.
The addresses PinMAME reports as closed. Numbers are the public API values, not matrix hardware pins.
Sequential addresses, grouped in columns of eight.
Outside the matrix-7, -6, -5, -4, -3, -2, -1, 0 — dedicated, diagnostic or flipper-column addresses. See the table below.
| # | Name | Device ID | Role | Wiring | Evidence |
|---|---|---|---|---|---|
| -7 | Pendulum tilt Tilt | switch.pendulum-tilt | cabinet.tilt | validated | |
| -6 | Slam tiltNC Tilt | switch.slam-tilt | cabinet.tilt | validated | |
| -5 | Ticket notchopt Microswitch | switch.ticket-notch | service.ticket | validated | |
| -4 | Unused dedicated switch D20 | switch.unused-dedicated-switch-d20 | validated | ||
| -3 | Coin-door Back button Button | switch.coin-door-back-button | service.button | validated | |
| -2 | Coin-door Minus button Button | switch.coin-door-minus-button | service.button | validated | |
| -1 | Coin-door Plus button Button | switch.coin-door-plus-button | service.button | validated | |
| 0 | Coin-door Select button Button | switch.coin-door-select-button | service.button | validated | |
| 1 | Left two-bank bottom target Microswitch | switch.left-two-bank-bottom-target | J1-P1GRN-BRN J6-P9WHT-BRN CPU/Sound board | validated | |
| 2 | Left two-bank top target Microswitch | switch.left-two-bank-top-target | J1-P1GRN-BRN J6-P8WHT-RED CPU/Sound board | validated | |
| 3 | Unused matrix switch 3 | switch.unused-matrix-switch-3 | J1-P1GRN-BRN J6-P7WHT-ORG CPU/Sound board | validated | |
| 4 | Lower-left eject Microswitch | switch.lower-left-eject | ball.loaded | J1-P1GRN-BRN J6-P6WHT-YEL CPU/Sound board | validated |
| 5 | Unused matrix switch 5 | switch.unused-matrix-switch-5 | J1-P1GRN-BRN J6-P5WHT-GRN CPU/Sound board | validated | |
| 6 | Unused matrix switch 6 | switch.unused-matrix-switch-6 | J1-P1GRN-BRN J6-P3WHT-BLU CPU/Sound board | validated | |
| 7 | Right two-bank top target Microswitch | switch.right-two-bank-top-target | J1-P1GRN-BRN J6-P2WHT-VIO CPU/Sound board | validated | |
| 8 | Right two-bank bottom target Microswitch | switch.right-two-bank-bottom-target | J1-P1GRN-BRN J6-P1WHT-GRY CPU/Sound board | validated | |
| 9 | Unused matrix switch 9 | switch.unused-matrix-switch-9 | J1-P1GRN-BRN J12-P9TAN-BLK CPU/Sound board | validated | |
| 10 | Unused matrix switch 10 | switch.unused-matrix-switch-10 | J1-P1GRN-BRN J12-P8TAN-RED CPU/Sound board | validated | |
| 11 | Left ramp exit Opto | switch.left-ramp-exit | J1-P1GRN-BRN J12-P7TAN-ORG CPU/Sound board | validated | |
| 12 | Left Nightcrawler down Microswitch | switch.left-nightcrawler-down | position.down | J1-P1GRN-BRN J12-P6TAN-YEL CPU/Sound board | validated |
| 13 | Left ramp entrance Opto | switch.left-ramp-entrance | J1-P1GRN-BRN J12-P4TAN-GRN CPU/Sound board | validated | |
| 14 | Left orbit Leaf | switch.left-orbit | J1-P1GRN-BRN J12-P3TAN-BLU CPU/Sound board | validated | |
| 15 | Tournament start Button | switch.tournament-start | cabinet.tournament | J1-P1GRN-BRN J12-P2TAN-VIO CPU/Sound board | validated |
| 16 | Start Button | switch.start | cabinet.start | J1-P1GRN-BRN J12-P1TAN-WHT CPU/Sound board | validated |
| 17 | Unused matrix switch 17 | switch.unused-matrix-switch-17 | J1-P3GRN-RED J6-P9WHT-BRN CPU/Sound board | validated | |
| 18 | Trough 4 left Microswitch | switch.trough-4-left | ball.position | J1-P3GRN-RED J6-P8WHT-RED CPU/Sound board | validated |
| 19 | Trough 3 Microswitch | switch.trough-3 | ball.position | J1-P3GRN-RED J6-P7WHT-ORG CPU/Sound board | validated |
| 20 | Trough 2 Microswitch | switch.trough-2 | ball.position | J1-P3GRN-RED J6-P6WHT-YEL CPU/Sound board | validated |
| 21 | Trough 1 right Microswitch | switch.trough-1-right | ball.position | J1-P3GRN-RED J6-P5WHT-GRN CPU/Sound board | validated |
| 22 | Trough jam Opto | switch.trough-jam | ball.position | J1-P3GRN-RED J6-P3WHT-BLU CPU/Sound board | validated |
| 23 | Shooter lane Microswitch | switch.shooter-lane | ball.position | J1-P3GRN-RED J6-P2WHT-VIO CPU/Sound board | validated |
| 24 | Left outlane Leaf | switch.left-outlane | J1-P3GRN-RED J6-P1WHT-GRY CPU/Sound board | validated | |
| 25 | Left return lane Leaf | switch.left-return-lane | J1-P3GRN-RED J12-P9TAN-BLK CPU/Sound board | validated | |
| 26 | Left slingshot Leaf | switch.left-slingshot | J1-P3GRN-RED J12-P8TAN-RED CPU/Sound board | validated | |
| 27 | Right slingshot Leaf | switch.right-slingshot | J1-P3GRN-RED J12-P7TAN-ORG CPU/Sound board | validated | |
| 28 | Right return lane left Leaf | switch.right-return-lane-left | J1-P3GRN-RED J12-P6TAN-YEL CPU/Sound board | validated | |
| 29 | Right outlane Leaf | switch.right-outlane | J1-P3GRN-RED J12-P4TAN-GRN CPU/Sound board | validated | |
| 30 | Left pop bumper Leaf | switch.left-pop-bumper | J1-P3GRN-RED J12-P3TAN-BLU CPU/Sound board | validated | |
| 31 | Right pop bumper Leaf | switch.right-pop-bumper | J1-P3GRN-RED J12-P2TAN-VIO CPU/Sound board | validated | |
| 32 | Bottom pop bumper Leaf | switch.bottom-pop-bumper | J1-P3GRN-RED J12-P1TAN-WHT CPU/Sound board | validated | |
| 33 | Right return lane right Leaf | switch.right-return-lane-right | J1-P4GRN-ORG J6-P9WHT-BRN CPU/Sound board | validated | |
| 34 | Iceman home Microswitch | switch.iceman-home | position.home | J1-P4GRN-ORG J6-P8WHT-RED CPU/Sound board | validated |
| 35 | Iceman away Microswitch | switch.iceman-away | position.away | J1-P4GRN-ORG J6-P7WHT-ORG CPU/Sound board | validated |
| 36 | Wolverine bash target Microswitch | switch.wolverine-bash-target | J1-P4GRN-ORG J6-P6WHT-YEL CPU/Sound board | validated | |
| 37 | Unused matrix switch 37 | switch.unused-matrix-switch-37 | J1-P4GRN-ORG J6-P5WHT-GRN CPU/Sound board | validated | |
| 38 | Center lock 2 Opto | switch.center-lock-2 | ball.position | J1-P4GRN-ORG J6-P3WHT-BLU CPU/Sound board | validated |
| 39 | Center lock 3 Opto | switch.center-lock-3 | ball.position | J1-P4GRN-ORG J6-P2WHT-VIO CPU/Sound board | validated |
| 40 | Center lock 4 top Opto | switch.center-lock-4-top | ball.position | J1-P4GRN-ORG J6-P1WHT-GRY CPU/Sound board | validated |
| 41 | Light lock target left Microswitch | switch.light-lock-target-left | J1-P4GRN-ORG J12-P9TAN-BLK CPU/Sound board | validated | |
| 42 | Light lock target right Microswitch | switch.light-lock-target-right | J1-P4GRN-ORG J12-P8TAN-RED CPU/Sound board | validated | |
| 43 | Unused matrix switch 43 | switch.unused-matrix-switch-43 | J1-P4GRN-ORG J12-P7TAN-ORG CPU/Sound board | validated | |
| 44 | Unused matrix switch 44 | switch.unused-matrix-switch-44 | J1-P4GRN-ORG J12-P6TAN-YEL CPU/Sound board | validated | |
| 45 | Unused matrix switch 45 | switch.unused-matrix-switch-45 | J1-P4GRN-ORG J12-P4TAN-GRN CPU/Sound board | validated | |
| 46 | Unused matrix switch 46 | switch.unused-matrix-switch-46 | J1-P4GRN-ORG J12-P3TAN-BLU CPU/Sound board | validated | |
| 47 | Cyclops spinner Other | switch.cyclops-spinner | J1-P4GRN-ORG J12-P2TAN-VIO CPU/Sound board | validated | |
| 48 | Right ramp entrance Opto | switch.right-ramp-entrance | J1-P4GRN-ORG J12-P1TAN-WHT CPU/Sound board | validated | |
| 49 | Right orbit Leaf | switch.right-orbit | J1-P5GRN-YEL J6-P9WHT-BRN CPU/Sound board | validated | |
| 50 | Left Nightcrawler hit Microswitch | switch.left-nightcrawler-hit | J1-P5GRN-YEL J6-P8WHT-RED CPU/Sound board | validated | |
| 51 | Right Nightcrawler hit Microswitch | switch.right-nightcrawler-hit | J1-P5GRN-YEL J6-P7WHT-ORG CPU/Sound board | validated | |
| 52 | Right ramp exit Opto | switch.right-ramp-exit | J1-P5GRN-YEL J6-P6WHT-YEL CPU/Sound board | validated | |
| 53 | Center lock 1 bottom Opto | switch.center-lock-1-bottom | ball.position | J1-P5GRN-YEL J6-P5WHT-GRN CPU/Sound board | validated |
| 54 | Left inner loop Leaf | switch.left-inner-loop | J1-P5GRN-YEL J6-P3WHT-BLU CPU/Sound board | validated | |
| 55 | Left up-kicker Microswitch | switch.left-up-kicker | ball.loaded | J1-P5GRN-YEL J6-P2WHT-VIO CPU/Sound board | validated |
| 56 | Right Nightcrawler down Microswitch | switch.right-nightcrawler-down | position.down | J1-P5GRN-YEL J6-P1WHT-GRY CPU/Sound board | validated |
| 57 | Unused matrix switch 57 | switch.unused-matrix-switch-57 | J1-P5GRN-YEL J12-P9TAN-BLK CPU/Sound board | validated | |
| 58 | Unused matrix switch 58 | switch.unused-matrix-switch-58 | J1-P5GRN-YEL J12-P8TAN-RED CPU/Sound board | validated | |
| 59 | Unused matrix switch 59 | switch.unused-matrix-switch-59 | J1-P5GRN-YEL J12-P7TAN-ORG CPU/Sound board | validated | |
| 60 | Unused matrix switch 60 | switch.unused-matrix-switch-60 | J1-P5GRN-YEL J12-P6TAN-YEL CPU/Sound board | validated | |
| 61 | Unused matrix switch 61 | switch.unused-matrix-switch-61 | J1-P5GRN-YEL J12-P4TAN-GRN CPU/Sound board | validated | |
| 62 | Unused matrix switch 62 | switch.unused-matrix-switch-62 | J1-P5GRN-YEL J12-P3TAN-BLU CPU/Sound board | validated | |
| 63 | Unused matrix switch 63 | switch.unused-matrix-switch-63 | J1-P5GRN-YEL J12-P2TAN-VIO CPU/Sound board | validated | |
| 64 | Unused matrix switch 64 | switch.unused-matrix-switch-64 | J1-P5GRN-YEL J12-P1TAN-WHT CPU/Sound board | validated | |
| 65 | Left coin chute Button | switch.left-coin-chute | cabinet.coin | validated | |
| 66 | Center coin chute Button | switch.center-coin-chute | cabinet.coin | validated | |
| 67 | Right coin chute Button | switch.right-coin-chute | cabinet.coin | validated | |
| 68 | Fourth coin chuteopt Button | switch.fourth-coin-chute | cabinet.coin | validated | |
| 69 | Fifth coin chuteopt Button | switch.fifth-coin-chute | cabinet.coin | validated | |
| 70 | Unused dedicated switch D6 | switch.unused-dedicated-switch-d6 | validated | ||
| 71 | Unused dedicated switch D7 | switch.unused-dedicated-switch-d7 | validated | ||
| 72 | Unused dedicated switch D8 | switch.unused-dedicated-switch-d8 | validated | ||
| 81 | Right flipper end-of-strokeNC Leaf | switch.right-flipper-end-of-stroke | validated | ||
| 82 | Right flipper button Button | switch.right-flipper-button | flipper.right.button | validated | |
| 83 | Left flipper end-of-strokeNC Leaf | switch.left-flipper-end-of-stroke | validated | ||
| 84 | Left flipper button Button | switch.left-flipper-button | flipper.left.button | validated | |
| 85 | Unused dedicated switch D16 | switch.unused-dedicated-switch-d16 | validated | ||
| 86 | Upper-right flipper button Button | switch.upper-right-flipper-button | flipper.upper.button | validated | |
| 87 | Unused dedicated switch D14 | switch.unused-dedicated-switch-d14 | validated | ||
| 88 | Unused dedicated switch D13 | switch.unused-dedicated-switch-d13 | validated |
Everything the ROM can energise, grouped the way a table author builds it.
| # | Name | Device ID | Kind | Role | Wiring | Evidence |
|---|---|---|---|---|---|---|
| 1 | Trough up-kicker | device.trough-up-kicker | Coil | Q1BRN-BLK I/O Power Driver board | validated | |
| 2 | Auto launch | device.auto-launch | Coil | Q2BRN-RED I/O Power Driver board | validated | |
| 3 | Lower-left eject | device.lower-left-eject | Coil | Q3BRN-ORG I/O Power Driver board | validated | |
| 4 | Magneto magnet | device.magneto-magnet | Magnet | Q4BRN-YEL I/O Power Driver board | validated | |
| 5 | Left up-kicker | device.left-up-kicker | Coil | Q5BRN-GRN I/O Power Driver board | validated | |
| 6 | Center lock up-posts | device.center-lock-up-posts | Coil | Q6BRN-BLU I/O Power Driver board | validated | |
| 7 | Center lock latch | device.center-lock-latch | Coil | Q7BRN-VIO I/O Power Driver board | validated | |
| 8 | Shaker motoropt | device.shaker-motor | Motor | cabinet.shaker | Q8BRN-GRY I/O Power Driver board | validated |
| 9 | Left pop bumper | device.left-pop-bumper | Coil | Q9BLU-BRN I/O Power Driver board | validated | |
| 10 | Right pop bumper | device.right-pop-bumper | Coil | Q10BLU-RED I/O Power Driver board | validated | |
| 11 | Bottom pop bumper | device.bottom-pop-bumper | Coil | Q11BLU-ORG I/O Power Driver board | validated | |
| 12 | Upper-right flipper | device.upper-right-flipper | Coil | Q12BLU-YEL I/O Power Driver board | validated | |
| 13 | Left slingshot | device.left-slingshot | Coil | Q13BLU-GRN I/O Power Driver board | validated | |
| 14 | Right slingshot | device.right-slingshot | Coil | Q14BLU-BLU I/O Power Driver board | validated | |
| 15 | Left flipper | device.left-flipper | Coil | Q15ORG-GRY I/O Power Driver board | validated | |
| 16 | Right flipper | device.right-flipper | Coil | Q16ORG-VIO I/O Power Driver board | validated | |
| 23 | Disc motor power | device.disc-motor-power | Relay | Q23VIO-BLK I/O Power Driver board | validated | |
| 24 | Coin meteropt | device.coin-meter | Coil | cabinet.coin-meter | Q24VIO-GRY I/O Power Driver board | validated |
| 26 | Orbit diverter | device.orbit-diverter | Coil | Q26BLK-RED I/O Power Driver board | validated | |
| 27 | Iceman ramp motor | device.iceman-ramp-motor | Motor | Q27BLK-ORG I/O Power Driver board | validated | |
| 51 | Wolverine magnet | device.wolverine-magnet | Magnet | Q41ORG-BRN 520-5325-00 eight-transistor auxiliary driver board | validated | |
| 52 | Left Nightcrawler raise | device.left-nightcrawler-raise | Coil | Q42ORG-RED 520-5325-00 eight-transistor auxiliary driver board | validated | |
| 53 | Right Nightcrawler raise | device.right-nightcrawler-raise | Coil | Q43ORG-BLK 520-5325-00 eight-transistor auxiliary driver board | validated | |
| 57 | Left Nightcrawler latch release | device.left-nightcrawler-latch-release | Coil | Q47ORG-VIO 520-5325-00 eight-transistor auxiliary driver board | validated | |
| 58 | Right Nightcrawler latch release | device.right-nightcrawler-latch-release | Coil | Q48ORG-GRY 520-5325-00 eight-transistor auxiliary driver board | validated |
| # | Name | Device ID | Wiring | Evidence |
|---|---|---|---|---|
| 17 | Left-side double flasher | device.left-side-double-flasher | Q17VIO-BRN I/O Power Driver board | validated |
| 18 | Right-side flasher | device.right-side-flasher | Q18VIO-RED I/O Power Driver board | validated |
| 19 | Disc clear double flasher | device.disc-clear-double-flasher | Q19VIO-ORG I/O Power Driver board | validated |
| 20 | Disc blue double flasher | device.disc-blue-double-flasher | Q20VIO-YEL I/O Power Driver board | validated |
| 21 | Wolverine flasher | device.wolverine-flasher | Q21VIO-GRN I/O Power Driver board | validated |
| 22 | Magneto left/right double flasher | device.magneto-left-right-double-flasher | Q22VIO-BLU I/O Power Driver board | validated |
| 25 | Pop bumper flasher | device.pop-bumper-flasher | Q25BLK-BRN I/O Power Driver board | validated |
| 28 | Backpanel left triple flasher | device.backpanel-left-triple-flasher | Q28BLK-YEL I/O Power Driver board | validated |
| 29 | Backpanel right triple flasher | device.backpanel-right-triple-flasher | Q29BLK-GRN I/O Power Driver board | validated |
| 30 | Magneto spotlight flasher | device.magneto-spotlight-flasher | Q30BLK-BLU I/O Power Driver board | validated |
| 31 | Bottom-arch double flasher | device.bottom-arch-double-flasher | Q31BLK-VIO I/O Power Driver board | validated |
| 32 | Magneto figure flasher | device.magneto-figure-flasher | Q32BLK-GRY I/O Power Driver board | validated |
Sequential addresses, grouped in columns of eight.
| # | Name | Device ID | Role | Wiring | Evidence |
|---|---|---|---|---|---|
| 1 | Unused lamp 1 | lamp.unused-lamp-1-1 | I/O Power Driver board lamp matrix | validated | |
| 2 | Unused lamp 2 | lamp.unused-lamp-2-2 | I/O Power Driver board lamp matrix | validated | |
| 3 | Unused lamp 3 | lamp.unused-lamp-3-3 | I/O Power Driver board lamp matrix | validated | |
| 4 | Unused lamp 4 | lamp.unused-lamp-4-4 | I/O Power Driver board lamp matrix | validated | |
| 5 | Unused lamp 5 | lamp.unused-lamp-5-5 | I/O Power Driver board lamp matrix | validated | |
| 6 | Unused lamp 6 | lamp.unused-lamp-6-6 | I/O Power Driver board lamp matrix | validated | |
| 7 | Unused lamp 7 | lamp.unused-lamp-7-7 | I/O Power Driver board lamp matrix | validated | |
| 8 | Unused lamp 8 | lamp.unused-lamp-8-8 | I/O Power Driver board lamp matrix | validated | |
| 9 | Unused lamp 9 | lamp.unused-lamp-9-9 | I/O Power Driver board lamp matrix | validated | |
| 10 | Unused lamp 10 | lamp.unused-lamp-10-10 | I/O Power Driver board lamp matrix | validated | |
| 11 | Unused lamp 11 | lamp.unused-lamp-11-11 | I/O Power Driver board lamp matrix | validated | |
| 12 | Unused lamp 12 | lamp.unused-lamp-12-12 | I/O Power Driver board lamp matrix | validated | |
| 13 | Unused lamp 13 | lamp.unused-lamp-13-13 | I/O Power Driver board lamp matrix | validated | |
| 14 | Unused lamp 14 | lamp.unused-lamp-14-14 | I/O Power Driver board lamp matrix | validated | |
| 15 | Unused lamp 15 | lamp.unused-lamp-15-15 | I/O Power Driver board lamp matrix | validated | |
| 16 | Unused lamp 16 | lamp.unused-lamp-16-16 | I/O Power Driver board lamp matrix | validated | |
| 17 | Omega Red | lamp.omega-red-17 | I/O Power Driver board lamp matrix | validated | |
| 18 | Sentinels | lamp.sentinels-18 | I/O Power Driver board lamp matrix | validated | |
| 19 | Brotherhood | lamp.brotherhood-19 | I/O Power Driver board lamp matrix | validated | |
| 20 | Rogue | lamp.rogue-20 | I/O Power Driver board lamp matrix | validated | |
| 21 | Iceman | lamp.iceman-21 | I/O Power Driver board lamp matrix | validated | |
| 22 | Wolverine | lamp.wolverine-22 | I/O Power Driver board lamp matrix | validated | |
| 23 | Xavier | lamp.xavier-23 | I/O Power Driver board lamp matrix | validated | |
| 24 | Storm | lamp.storm-24 | I/O Power Driver board lamp matrix | validated | |
| 25 | Phoenix | lamp.phoenix-25 | I/O Power Driver board lamp matrix | validated | |
| 26 | Cyclops | lamp.cyclops-26 | I/O Power Driver board lamp matrix | validated | |
| 27 | Beast | lamp.beast-27 | I/O Power Driver board lamp matrix | validated | |
| 28 | Sabretooth | lamp.sabretooth-28 | I/O Power Driver board lamp matrix | validated | |
| 29 | Shadow King | lamp.shadow-king-29 | I/O Power Driver board lamp matrix | validated | |
| 30 | Hellfire Club | lamp.hellfire-club-30 | I/O Power Driver board lamp matrix | validated | |
| 31 | Juggernaut | lamp.juggernaut-31 | I/O Power Driver board lamp matrix | validated | |
| 32 | Shoot Again | lamp.shoot-again-32 | I/O Power Driver board lamp matrix | validated | |
| 33 | Left Special | lamp.left-special-33 | I/O Power Driver board lamp matrix | validated | |
| 34 | Left return lane | lamp.left-return-lane-34 | I/O Power Driver board lamp matrix | validated | |
| 35 | Left two-bank bottom | lamp.left-two-bank-bottom-35 | I/O Power Driver board lamp matrix | validated | |
| 36 | Left two-bank top | lamp.left-two-bank-top-36 | I/O Power Driver board lamp matrix | validated | |
| 37 | Wolverine | lamp.wolverine-37 | I/O Power Driver board lamp matrix | validated | |
| 38 | Wolverine red | lamp.wolverine-red-38 | I/O Power Driver board lamp matrix | validated | |
| 39 | Start button | lamp.start-button-39 | cabinet.start | I/O Power Driver board lamp matrix | validated |
| 40 | Unused lamp 40 | lamp.unused-lamp-40-40 | I/O Power Driver board lamp matrix | validated | |
| 41 | Bottom pop bumper | lamp.bottom-pop-bumper-41 | I/O Power Driver board lamp matrix | validated | |
| 42 | Right pop bumper | lamp.right-pop-bumper-42 | I/O Power Driver board lamp matrix | validated | |
| 43 | Left pop bumper | lamp.left-pop-bumper-43 | I/O Power Driver board lamp matrix | validated | |
| 44 | Unused lamp 44 | lamp.unused-lamp-44-44 | I/O Power Driver board lamp matrix | validated | |
| 45 | Dark Phoenix | lamp.dark-phoenix-45 | I/O Power Driver board lamp matrix | validated | |
| 46 | Extra Ball | lamp.extra-ball-46 | I/O Power Driver board lamp matrix | validated | |
| 47 | Danger Room | lamp.danger-room-47 | I/O Power Driver board lamp matrix | validated | |
| 48 | Villain | lamp.villain-48 | I/O Power Driver board lamp matrix | validated | |
| 49 | Left inner loop green | lamp.left-inner-loop-green-49 | I/O Power Driver board lamp matrix | validated | |
| 50 | Rogue | lamp.rogue-50 | I/O Power Driver board lamp matrix | validated | |
| 51 | Left inner loop red | lamp.left-inner-loop-red-51 | I/O Power Driver board lamp matrix | validated | |
| 52 | Gambit | lamp.gambit-52 | I/O Power Driver board lamp matrix | validated | |
| 53 | Beast | lamp.beast-53 | I/O Power Driver board lamp matrix | validated | |
| 54 | Left orbit red | lamp.left-orbit-red-54 | I/O Power Driver board lamp matrix | validated | |
| 55 | Left ramp red | lamp.left-ramp-red-55 | I/O Power Driver board lamp matrix | validated | |
| 56 | Storm | lamp.storm-56 | I/O Power Driver board lamp matrix | validated | |
| 57 | Up-kicker red | lamp.up-kicker-red-57 | I/O Power Driver board lamp matrix | validated | |
| 58 | Xavier | lamp.xavier-58 | I/O Power Driver board lamp matrix | validated | |
| 59 | Left eject top | lamp.left-eject-top-59 | I/O Power Driver board lamp matrix | validated | |
| 60 | Light Lock left | lamp.light-lock-left-60 | I/O Power Driver board lamp matrix | validated | |
| 61 | Unused lamp 61 | lamp.unused-lamp-61-61 | I/O Power Driver board lamp matrix | validated | |
| 62 | Unused lamp 62 | lamp.unused-lamp-62-62 | I/O Power Driver board lamp matrix | validated | |
| 63 | Unused lamp 63 | lamp.unused-lamp-63-63 | I/O Power Driver board lamp matrix | validated | |
| 64 | Unused lamp 64 | lamp.unused-lamp-64-64 | I/O Power Driver board lamp matrix | validated | |
| 65 | Magneto green | lamp.magneto-green-65 | I/O Power Driver board lamp matrix | validated | |
| 66 | Magneto | lamp.magneto-66 | I/O Power Driver board lamp matrix | validated | |
| 67 | Magneto red | lamp.magneto-red-67 | I/O Power Driver board lamp matrix | validated | |
| 68 | Right return lane left | lamp.right-return-lane-left-68 | I/O Power Driver board lamp matrix | validated | |
| 69 | Right return lane right | lamp.right-return-lane-right-69 | I/O Power Driver board lamp matrix | validated | |
| 70 | Right Special | lamp.right-special-70 | I/O Power Driver board lamp matrix | validated | |
| 71 | Right two-bank bottom | lamp.right-two-bank-bottom-71 | I/O Power Driver board lamp matrix | validated | |
| 72 | Right two-bank top | lamp.right-two-bank-top-72 | I/O Power Driver board lamp matrix | validated | |
| 73 | Iceman | lamp.iceman-73 | I/O Power Driver board lamp matrix | validated | |
| 74 | Right ramp red | lamp.right-ramp-red-74 | I/O Power Driver board lamp matrix | validated | |
| 75 | Right inner loop red | lamp.right-inner-loop-red-75 | I/O Power Driver board lamp matrix | validated | |
| 76 | Cyclops | lamp.cyclops-76 | I/O Power Driver board lamp matrix | validated | |
| 77 | Light Lock right | lamp.light-lock-right-77 | I/O Power Driver board lamp matrix | validated | |
| 78 | Right orbit red | lamp.right-orbit-red-78 | I/O Power Driver board lamp matrix | validated | |
| 79 | Phoenix | lamp.phoenix-79 | I/O Power Driver board lamp matrix | validated | |
| 80 | Right orbit green | lamp.right-orbit-green-80 | I/O Power Driver board lamp matrix | validated |
| # | Name | Device ID | Role | Wiring | Evidence |
|---|---|---|---|---|---|
| 0 | General illumination master | gi.master | validated | ||
| 54 | White GI subtract/dim | device.white-gi-subtract-dim | internal.gi.channel | Q44ORG-YEL 520-5325-00 eight-transistor auxiliary driver board | validated |
| 55 | Red GI subtract/dim | device.red-gi-subtract-dim | internal.gi.channel | Q45ORG-GRN 520-5325-00 eight-transistor auxiliary driver board | validated |
| 56 | Blue GI subtract/dim | device.blue-gi-subtract-dim | internal.gi.channel | Q46ORG-BLU 520-5325-00 eight-transistor auxiliary driver board | validated |
| # | Name | Device ID | Evidence |
|---|---|---|---|
| 33 | ROM flipper-enable state | virtual.flipper-enable | validated |
| # | Name | Device ID | Evidence |
|---|---|---|---|
| 1 | CPU/Sound board DIP switch 1 Dip | switch.dip-1 | validated |
| 2 | CPU/Sound board DIP switch 2 Dip | switch.dip-2 | validated |
| 3 | CPU/Sound board DIP switch 3 Dip | switch.dip-3 | validated |
| 4 | CPU/Sound board DIP switch 4 Dip | switch.dip-4 | validated |
| 5 | CPU/Sound board DIP switch 5 Dip | switch.dip-5 | validated |
| 6 | CPU/Sound board DIP switch 6 Dip | switch.dip-6 | validated |
| 7 | CPU/Sound board DIP switch 7 Dip | switch.dip-7 | validated |
| 8 | CPU/Sound board DIP switch 8 Dip | switch.dip-8 | validated |
Logical assemblies with their actuators, sensors and observed behaviour. Click a chip to jump to the address it refers to.
mechanism.trough
Four physical balls occupy switches 18-21 from left to right. Output 1 advances the rightmost ball to the shooter lane through jam opto 22; the proven table initializes 18-21 closed.
mechanism.auto-launcher
Output 2 launches a ball held at shooter-lane switch 23. Preserve a manual plunger input as well because the shooter assembly supports player plunges.
mechanism.lower-left-eject
Switch 4 stays active while a ball is held. Output 3 ejects it back onto the playfield; the working VPX geometry uses a near-horizontal 354-degree kick with high speed.
mechanism.left-up-kicker
Switch 55 holds the ball below the playfield. Output 5 kicks vertically and diverts the ball onto the left ramp.
mechanism.center-lock
A four-position vertical lock is retained by two linked up-posts. Output 6 raises both posts for release; output 7 actuates the latch and the proven script lowers both posts after a 500 ms delay. Sensors 53, 38, 39, and 40 report bottom-to-top occupancy.
mechanism.orbit-diverter
Output 26 rotates the orbit diverter between the normal orbit and the route into the rear of the Magneto lock.
mechanism.magneto-disc
PWM output 4 controls the playfield magnet beneath the disc. Output 23 powers the disc motor; no index or home switch exists. The proven VPX implementation uses a turntable speed of 100 with a spin-down value of 10 and keeps the magnet independent of motor state.
mechanism.wolverine
The Wolverine is a passive wobbling bash toy sensed by switch 36. Public auxiliary output 51 (physical Q41) controls the nearby magnet; the proven table does not center-grab the ball, which preserves the real toy's deflecting behavior.
mechanism.iceman-ramp
Output 27 moves the ramp toward the opposite endpoint. Home switch 34 closes at the 14-degree endpoint; away switch 35 closes at the 60-degree endpoint; both are open in transit. The proven 8 ms simulation advances 0.16 degree per tick, reverses the next travel direction at each endpoint, and carries a ball with the rotating ramp rather than letting it fall through.
mechanism.left-nightcrawler
Output 52 raises the figure and clears down switch 12. The top position is held mechanically without an upper sensor. A ball strike closes switch 50 and shakes the figure; output 57 releases the latch so gravity returns it, closing switch 12 only when fully down.
mechanism.right-nightcrawler
Output 53 raises the figure and clears down switch 56. The top position is held mechanically without an upper sensor. A ball strike closes switch 51 and shakes the figure; output 58 releases the latch so gravity returns it, closing switch 56 only when fully down.
mechanism.color-gi
GI 0 is the master on/off state. Modulated public outputs 54-56 map to physical Q44-Q46 and subtract/dim the white, red, and blue channels respectively: the proven table renders channel intensity as 255 minus the output value while GI 0 is on.
mechanism.flippers
Outputs 15 and 16 drive the lower flippers; output 12 drives the upper-right flipper. Dedicated inputs 84/83 are left button/EOS, 82/81 right button/EOS, and 86 is the upper staged button. Public virtual output 33 is the ROM flipper-enable state used by the proven table to gate all three coils.
mechanism.pop-bumpers
The three independently switched pops use outputs/switches 9/30 left, 10/31 right, and 11/32 bottom. Output 25 is their shared flasher.
mechanism.slingshots
Left and right slings use output/switch pairs 13/26 and 14/27.
mechanism.spinner
Each rotation pulse of the passive Cyclops spinner closes switch 47.
mechanism.standup-targets
The left Hellfire pair is switches 1/2, the right Brotherhood pair 7/8, the Light Lock pair 41/42, and Wolverine is switch 36. These are standups/bash targets, not resettable drop targets.
mechanism.ramps-and-orbits
Build the two main molded ramps plus the Iceman transfer ramp, the left and right orbits, and the inner loop. Switches 13/11 bracket the left ramp, 48/52 the right ramp, 14/49 the outer orbits, and 54 the inner loop.
mechanism.optional-shaker
Output 8 is the optional 16 VAC shaker installation and may be absent from a stock machine.
Working knowledge that has no schema field yet — edition differences, tuning values, pitfalls.
This definition covers both artwork packages of the Limited Edition hardware: Magneto LE (IPDB 5823, 250 units) and Wolverine LE (IPDB 5824, 300 units), Stern model I-00D2. They share the same playfield and I/O. Drivers xmn_*h/xmn_*hc are LE firmware, and early xmn_102 is also explicitly identified as Limited Edition by PinMAME even though it predates the h naming convention. Non-h Pro revisions have materially different hardware and are not compatible with this definition.
The known-working X-Men LE (Stern 2012) VPW v1.0.6.vbs is ground truth for public PinMAME addresses, callbacks, initial states, and mechanism causality. The Stern manual governs physical inventory, diagnostic numbering, wiring, and assemblies. Pinned PinMAME source governs the SAM transport, 128x32 DMD, driver identities, and the eight-transistor board's public custom-output range.
The SAM switch matrix is 1-64; dedicated cabinet switches use PinMAME public values 65-72, 81-88, and -7 through 0; DIP inputs are 1-8. The four-ball trough closes switches 18-21 at initialization. General illumination is public GI 0. Physical main-driver Q1-Q32 are public solenoids 1-32. PinMAME public 51-58 map in order to physical auxiliary Q41-Q48. Public solenoid 33 is a software flipper-enable event used by the proven VPX table and is not a cabinet transistor.
LE-only switches are 12 left Nightcrawler down, 34/35 Iceman endpoints, 50/51 Nightcrawler hit sensors, and 56 right Nightcrawler down. LE-only public auxiliary outputs are 51 Wolverine magnet, 52/53 Nightcrawler raise coils, 54/55/56 white/red/blue GI dim channels, and 57/58 Nightcrawler latch releases. The LE also uses main output 23 for the Magneto disc motor and output 27 for the Iceman ramp motor. Do not transfer these devices to a Pro recreation.
The Magneto disc motor and magnet are independent. Output 23 spins the disc without a position sensor; PWM output 4 controls its magnet. Behind it, the orbit diverter on output 26 routes balls into a four-level vertical lock. Lock sensors are 53 at the bottom, then 38, 39, and 40 at the top. Outputs 6 and 7 operate the dual linked up-post and latch mechanism; the proven model raises both posts and schedules their return after 500 ms.
Each Nightcrawler has separate raise and latch-release coils. Output 52 raises the left figure and output 53 the right; the down switches 12/56 clear immediately. The figures mechanically latch at full height without upper sensors. Switches 50/51 register ball strikes. Outputs 57/58 release the latches, after which the figures fall and close their down switches only at the bottom. A faithful simulation must model the un-sensed upper latch and should move a resting ball out of the travel envelope before raising, as the proven table does.
Output 27 drives a two-position motorized ramp that transfers the ball from the right side toward the left. The known endpoints are 14 degrees home and 60 degrees away. Switch 34 is home, switch 35 away, and both remain open during travel. The ROM energizes the motor toward the next endpoint; the working implementation remembers direction and reverses it after each limit. Move any ball already on the ramp with the rotating surface.
The Wolverine assembly combines a passive bash toy on switch 36 with a separate playfield magnet on public output 51/physical Q41. The toy should wobble from impact rather than behave like a drop target. The Power Scoop at switch 4 ejects through output 3. The vertical up-kicker at switch 55 fires with output 5 and diverts the ball onto the left ramp. Output 2 auto-launches from shooter switch 23. The upper-right flipper is output 12 with dedicated button 86; lower flippers are 15/16 with buttons 84/82 and normally-closed EOS contacts 83/81.
The standard lamp matrix is exactly 1-80; 1-16, 40, 44, and 61-64 are explicitly unused in the service chart. The remaining addresses and names are enumerated in the JSON. GI 0 is the master supply. Public modulated outputs 54-56 are active subtraction/dimming channels: the proven table computes each color as 255 - output while GI is on. This polarity matters when recreating red, blue, white, and mixed illumination.
The machine has four balls, three flippers, three pops, two slings, a passive Cyclops spinner, two main molded ramps, the Iceman transfer ramp, seven standup/bash targets, the Magneto diverter/lock, two playfield magnets, two eject devices, and an optional shaker. The left pair 1/2 are Hellfire targets, right pair 7/8 Brotherhood, 41/42 Light Lock, and 36 Wolverine. None of these target banks is a resettable drop-target bank.
The partial spatial records retain direct coordinates when an exact LE VPX table object supplies them, and explicitly disclosed derived/shared assembly anchors where the working script and mechanism justify reusing a table point. The VPW v1.0 table supplies the normalized controller/device points; the exact LE v2.0.1 table supplies the named flasher geometry retained for F18, F22, F28, F29, and F31. Placement provenance names only the table that supplies each coordinate. The exact LE v2.2.7a_TEST table remains retained as corroborating evidence, but it is not incorrectly claimed as a coordinate source.
The official Stern manual PDF page 60 was visually verified at the root: F17 reads FLASH: LEFT SIDE (X2) and F18 reads FLASH: RIGHT SIDE, so F18 quantity is one. The reviewed flasher set contains 21 manual sockets; 16 direct placements are retained for F17/F18/F21/F22/F25/F28/F29/F31/F32, while F19/F20/F30 retain their manual quantities without spatial placements. F19 and F20 each expose only one virtual/render center per circuit, and the F30 point is an undisclosed Cyclops spinner proxy; duplicated or semantically mismatched points are not socket geometry.
The four ball-position switches 18-21 use exact table kicker centers. Switch 22 is a distinct manual trough-jam opto; the retained LE tables do not supply its exact geometry, so it has no speculative placement. Outputs Q6/Q7 share the exact Trigger.sw53.center anchor only as derived assembly geometry: the working script/mechanism ties both actuators to the center-lock assembly, but this is not an exact actuator object coordinate. F22 uses the exact v2.0.1 Light.f122a (0.608390, 0.169829) and Light.f122b (0.450827, 0.172193) emitter centers; the prior Primitive.Target_004_*/Target_001_* lightmap recipients are excluded. F30 exact emitter geometry is unresolved: no f130 emitter exists, and (0.689153, 0.184374) is a Cyclops spinner proxy rather than an F30 placement. F19/F20 per-socket geometry, F30 emitter geometry, and switch 22 exact geometry are the authoring-critical spatial blockers. The definition remains partial with coverage.missing containing spatial_placement and coverage.dimensions.spatial_placement set to unknown. Cabinet/service inputs, the start-button lamp, shaker, coin meter, unused channels, the DIP bank, GI dim control outputs 54-56, and virtual output 33 remain explicitly controlled non-playfield records. The Pro table and archive xmn_151 table are excluded from LE spatial evidence.
Every driver that resolves to this physical machine.
| ROM set | Description | Year | Parent | Hardware |
|---|---|---|---|---|
| xmn_151hc | X-Men Limited Edition (V1.51) (Colored MOD) Colored-ROM modification only; physical I/O and mechanisms are unchanged. | 2014 | xmn_151h | identical |
| xmn_151h | X-Men Limited Edition (V1.51) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2014 | — | identical |
| xmn_150h | X-Men Limited Edition (V1.5) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2014 | xmn_151h | identical |
| xmn_130h | X-Men Limited Edition (V1.3) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2013 | xmn_151h | identical |
| xmn_124h | X-Men Limited Edition (V1.24) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2013 | xmn_151h | identical |
| xmn_123h | X-Men Limited Edition (V1.23) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2012 | xmn_151h | identical |
| xmn_122h | X-Men Limited Edition (V1.22) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2012 | xmn_151h | identical |
| xmn_121h | X-Men Limited Edition (V1.21) Firmware revision within this physical edition; playfield I/O and mechanisms are unchanged. | 2012 | xmn_151h | identical |
Parent set: xmn_151h — clones share this definition unless a hardware difference is noted.
Every claim above traces to one of these. When they disagree: a known-working VPX script wins on controller addresses and causality, the manual wins on wiring and construction, pinned PinMAME wins on emulator routing and display layout.
manual.x-men-pro-le.2012
XMenManual_042214.pdf: PDF pages 56-62 and 97-117; official low-resolution manufacturer copy; page 60 was visually verified at the root for the F17/F18 flasher quantities
manual.x-men-pro-le.2012.high-resolution
Higher-resolution scan of the same Stern manual; switch table page 56, lamp table page 58, coil table page 60, eight-transistor board page 101, LE LED boards pages 103-104, GI maps pages 109-111
vpx.x-men-le-vpw-1.0.6
X-Men LE (Stern 2012) VPW v1.0.6.vbs: initialization, solenoid callbacks, GI callbacks, Iceman movement, Nightcrawler state machines, Magneto disc, lock, kickers, trough, and switches
stern.x-men-product-page
Manufacturer Pro and Limited Edition feature inventories, including edition-only Ice Slide, Nightcrawler, spinning disc, and color GI mechanisms
pinmame.core.4ec52ff0ac13
src/wpc/sam.c X-Men INITGAME and full driver family; src/wpc/sam_original.c historical ROM identity; public custom outputs 51-58 for the eight-transistor board
pinmame.catalog.4ec52ff0ac13
PinmameGetGames X-Men driver records
runtime.x-men-le.boot-start
Exact xmn_151h boot/start scenario with switches 18-21 initialized, four coin pulses, and start; ROM archive SHA-256 cc8069743e6a0f45c3b310c0804230241739b5cf8c51f0481d96810f9edab5be
vpx-table.x-men-le-vpw-1.0
Exact physical LE table found in the first requested VPX search location and retained byte-for-byte at external:pinmame-vpx-sources/stern/x-men-limited-edition-2012/source/X-Men LE (Stern 2012) VPW v1.0.vpx. vpxtool git:v0.33.3 extraction is retained at external:pinmame-vpx-sources/stern/x-men-limited-edition-2012/extraction/VPW_v1.0; candidate and review artifacts are retained at external:pinmame-review-artifacts/stern/x-men-limited-edition-2012. Canonical playfield bounds are left=0 top=0 right=952 bottom=2115. The embedded script is the VPW v1.0 implementation of the pinned LE v1.0.6 semantic mapping.
vpx-table.x-men-le-v2.0.1
Exact physical LE corroborating table found in the first requested VPX search location and retained byte-for-byte at external:pinmame-vpx-sources/stern/x-men-limited-edition-2012/source/X-Men LE (Stern 2012) v2.0.1.vpx; vpxtool git:v0.33.3 extraction is retained at external:pinmame-vpx-sources/stern/x-men-limited-edition-2012/extraction/v2.0.1 and review artifacts at external:pinmame-review-artifacts/stern/x-men-limited-edition-2012. Its canonical playfield bounds are left=0 top=0 right=952 bottom=2115.
vpx-table.x-men-le-v2.2.7a-test
Exact physical LE corroborating test table found in the first requested VPX search location and retained byte-for-byte at external:pinmame-vpx-sources/stern/x-men-limited-edition-2012/source/X-Men LE (Stern 2012) v2.2.7a_TEST.vpx; vpxtool git:v0.33.3 extraction is retained at external:pinmame-vpx-sources/stern/x-men-limited-edition-2012/extraction/v2.2.7a_TEST and review artifacts at external:pinmame-review-artifacts/stern/x-men-limited-edition-2012. Its canonical playfield bounds are left=0 top=0 right=952 bottom=2115.
This definition still has 1 unmet requirement, listed under Coverage above. Fixes belong in the definition itself — editing on GitHub forks it for you and opens the pull request.
Cite a source for anything you change — a manual page, a line in a working VPX script, PinMAME source, or a reading from the machine's own service menu. Claims without provenance cannot be validated.
X-Men shipped in 2 editions with different playfields. Compare what each one actually has before building against this definition.