Nine Ball

Partial

Stern1980STERN-MPU200stern.nine-ball.1980

Wire it up

what an authoring tool needs first
Bind this ROM
nineball

6 ROM sets resolve to this machine. Clones share the definition unless a hardware difference is listed.

Controller platform
pinmame.stern-mpu200

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.

Displays

No display inventory recorded yet.

Address space
Switches
4–40 (15)
Solenoids
3–20 (12)
Lamps
9–62 (48)

Coverage

Partial

Real evidence exists, but authoring requirements are still missing or in conflict. Verify before shipping a table.

Completion19%

Progress is derived from the fixed author-readiness requirements. It helps rank unfinished work, but only a 100% author-ready definition passes the publication gate.

Catalog Identity
validated
Address Enumeration
unknown
Semantic Naming
unknown
Physical Wiring
unknown
Mechanisms
unknown
Variant Coverage
candidate
Recreation Knowledge
unknown
Still missing · 13
Driver MappingInput EnumerationInput SemanticsOutput EnumerationOutput SemanticsDisplay InventoryMechanism InventoryMechanism BehaviorPolarityVariant DifferencesRecreation NotesProvenanceSpatial Placement

Switches

The addresses PinMAME reports as closed. Numbers are the public API values, not matrix hardware pins.

15 addresses

Switch map

Sequential addresses, grouped in columns of eight.

used unused
 
+0
+1
+2
+3
+4
+5
+6
+7
1–8
9–16
17–24
25–32
33–40
Hover or tap an address to identify it.
15 shown
# Name Device ID Evidence
4
Sw4
switch.sw4 candidate
5
Sw5
switch.sw5 candidate
17
Sw17
switch.sw17 candidate
25
Sw25
switch.sw25 candidate
26
Sw26
switch.sw26 candidate
27
Sw27
switch.sw27 candidate
28
Sw28
switch.sw28 candidate
29
Right Sling Shot
switch.right-sling-shot candidate
30
Left Sling Shot
switch.left-sling-shot candidate
31
Bumper1
switch.bumper1 candidate
32
Sw32
switch.sw32 candidate
35
Tsw35
switch.tsw35 candidate
38
Sw38
switch.sw38 candidate
39
Sw39
switch.sw39 candidate
40
Ballatplunger
switch.ballatplunger candidate

Controlled devices

Everything the ROM can energise, grouped the way a table author builds it.

Coils, magnets & motors

12
12 shown
# Name Device ID Evidence
3
Sol3 Drop Up
coil.sol3-drop-up candidate
4
Sol2 Drop Up
coil.sol2-drop-up candidate
6
Sol Knocker
coil.sol-knocker candidate
9
Dt7drop
coil.dt7drop candidate
10
Dt6drop
coil.dt6drop candidate
11
Dt5drop
coil.dt5drop candidate
12
Dt4drop
coil.dt4drop candidate
13
Dt3drop
coil.dt3drop candidate
14
Dt2drop
coil.dt2drop candidate
15
Dt1drop
coil.dt1drop candidate
17
Sol Bank Drop Up
coil.sol-bank-drop-up candidate
20
Sol1 Drop Up
coil.sol1-drop-up candidate

Lamps

48

Lamp map

Sequential addresses, grouped in columns of eight.

used unused
 
+0
+1
+2
+3
+4
+5
+6
+7
1–8
9–16
17–24
25–32
33–40
41–48
49–56
57–64
Hover or tap an address to identify it.
48 shown
# Name Device ID Evidence
9
L9a
lamp.l9a candidate
10
L10
lamp.l10 candidate
11
L11
lamp.l11 candidate
12
L12
lamp.l12 candidate
14
L14
lamp.l14 candidate
15
L15
lamp.l15 candidate
17
L17
lamp.l17 candidate
18
L18
lamp.l18 candidate
19
L19
lamp.l19 candidate
20
L20
lamp.l20 candidate
21
L21
lamp.l21 candidate
22
L22
lamp.l22 candidate
23
L23
lamp.l23 candidate
24
L24
lamp.l24 candidate
25
L25
lamp.l25 candidate
26
L26
lamp.l26 candidate
27
L27
lamp.l27 candidate
28
L28
lamp.l28 candidate
29
L29
lamp.l29 candidate
30
L30
lamp.l30 candidate
31
L31
lamp.l31 candidate
33
L33
lamp.l33 candidate
34
L34
lamp.l34 candidate
35
L35
lamp.l35 candidate
36
L36
lamp.l36 candidate
37
L37
lamp.l37 candidate
38
L38
lamp.l38 candidate
39
L39
lamp.l39 candidate
40
L40
lamp.l40 candidate
41
L41
lamp.l41 candidate
42
L42
lamp.l42 candidate
43
L43
lamp.l43 candidate
44
L44
lamp.l44 candidate
46
L46
lamp.l46 candidate
47
L47
lamp.l47 candidate
49
L49
lamp.l49 candidate
50
L50
lamp.l50 candidate
51
L51
lamp.l51 candidate
52
L52
lamp.l52 candidate
53
L53
lamp.l53 candidate
54
L54
lamp.l54 candidate
55
L55
lamp.l55 candidate
56
L56
lamp.l56 candidate
57
L57
lamp.l57 candidate
58
L58
lamp.l58 candidate
59
L59
lamp.l59 candidate
60
L60
lamp.l60 candidate
62
L62
lamp.l62 candidate

Recreation notes

Working knowledge that has no schema field yet — edition differences, tuning values, pitfalls.

Coverage: partial - machine identity plus candidate-only I/O attachments. Playfield devices, wiring, mechanisms, and behavior are evidenced only as unverified candidates.

This record was promoted from the generated catalog stub stub.pinmame.nineball by the catalog-wide identity pass of 2026-08-29. The promotion resolves machine identity and carries the catalog's residual driver grouping over unchanged, the platform and device attachments below were added by the 2026-08-29/30 candidate passes and assert nothing beyond candidate provenance. Every requirement in the definition's coverage.missing is genuinely outstanding.

Identity

  • PinMAME catalog: root driver nineball, description "Nine Ball", manufacturer "Stern", catalog year "1980".
  • OPDB record G4jjx-MDbz2 (IPDB 1678) names this machine "Nine Ball" (Stern Electronics, manufacture date 1980-12-01); the resolved identity rests on the agreement of the PinMAME catalog and this reviewed mapping.
  • The definition's driver list is exactly the clone tree PinMAME declares under nineball; whether every listed driver really runs on this physical machine is unverified.

Drivers this record holds

  • ninebafp (1980, Stern, clone of nineball).
  • ninebala (2020, Stern / Idleman, clone of nineball).
  • ninebalb (2007, Stern / Oliver, clone of nineball).
  • ninebalc (2021, Stern / Idleman, clone of nineball).
  • ninebald (2021, Stern / Idleman, clone of nineball).
  • nineball (1980, Stern).

PinMAME source contract (candidate)

  • The pinned PinMAME source declares nineball at src/wpc/stgames.c:974 with machine module by35_mST200; the definition declares controller platform pinmame.stern-mpu200 from it.

VPX script candidates (candidate)

  • 1 retained community table script(s) declare this machine's driver; their extracted switch/lamp/solenoid/GI candidates are carried as 75 candidate devices. When curator work weighs sources, a retained script outranks emulator-derived candidates for runtime semantics, but every device here is still a candidate until a known-working table is verified against this exact physical machine.

What a curator must establish next

Full input, output, and display enumeration with semantic names; physical wiring and polarity; mechanism inventory and behavior; variant differences across the clone tree; recreation knowledge from a manual, schematic, or known-working table; runtime provenance; and a normalized spatial placement for every physical device. No manual, schematic, or runtime-harness evidence is retained for this machine yet; the candidate sections above are the only retained I/O evidence so far.

ROM sets

Every driver that resolves to this physical machine.

ROM set Description Year Parent Hardware
ninebaldNine Ball (Gameplay MOD beta21) 2021nineball
ninebalcNine Ball (Ball handling MOD beta19) 2021nineball
ninebalaNine Ball (Ball handling MOD beta18) 2020nineball
ninebalbNine Ball (modified rules rev. 85) 2007nineball
nineballNine Ball 1980
ninebafpNine Ball (Free Play) 1980nineball

Parent set: nineball — clones share this definition unless a hardware difference is noted.

Pinball memory maps

External source LGPL-3.0-only1 map

RAM layouts published by an independent project and mirrored here at a pinned commit. They are not part of this machine’s definition: nothing below was used as evidence for the definition, and none of it counts towards coverage. Check claims against the upstream project.

Commit
d8693b9

This program makes use of content from the Pinball Memory Maps project.

nineball.map.json

stern-m200v3format 0.8

maps/stern/m200/nineball.map.json

Applies to ROMs
nineball
Sections
adjustmentsauditsgame_statehigh_scores

stern-m200 defines the RAM layout this map’s offsets are read against — the map is not interpretable without it.

Evidence

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.

  • PinMAME catalog

    BSD-3-Clause

    pinmame.catalog.8371478a7640

    PinmameGetGames

    by
    PinMAME contributors
    rev
    8371478a7640
  • PinMAME source

    BSD-3-Clause

    pinmame.core.8371478a7640

    src/wpc/stgames.c:974 (machine module by35_mST200)

    by
    PinMAME contributors
    rev
    8371478a7640
  • VPX script

    vpx-script.53e98ab906854109

    vpx-standalone-scripts: Nine Ball (Stern 1980)/Nine Ball (Stern 1980).vbs

    by
    Authors credited in Nine Ball (Stern 1980)/Nine Ball (Stern 1980).vbs and repository contributors
    rev
    15d112648a1b
    sha256
    53e98ab90685…

Something wrong or missing?

This definition still has 13 unmet requirements, 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.

Same platform