Medieval Madness

Author ready

Williams1997WPC-95williams.medieval-madness.1997

Wire it up

what an authoring tool needs first
Bind this ROM
mm_10

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

Controller platform
pinmame.wpc-95

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
  • 128x32 dot-matrix display128×32
Address space
Switches
1–118 (80)
Solenoids
1–50 (50)
Lamps
11–88 (64)
GI
0–4 (5)
DIP
1–8 (8)
Cabinet & flipper inputs
112flipper.lower.right.button114flipper.lower.left.button1cabinet.coin.12cabinet.coin.23cabinet.coin.34cabinet.coin.411cabinet.launch13cabinet.start14cabinet.tilt21cabinet.slam-tilt22cabinet.coin-door

Portable roles — the consuming engine maps them to its own input actions.

Playfield

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.

Playfield map

181 placements · 17 stacked · normalised player view · outline is nominal

12 Catapult Target15 Left Troll Target16 Left Outlane17 Right Return Lane18 Shooter Lane25 Right Troll Target26 Left Return Lane27 Right Outlane228 Right Eject · 9 Right Eject331 Trough Eject · 32 Trough Ball 1 · 2 Trough Eject33 Trough Ball 234 Trough Ball 335 Trough Ball 4236 Left Popper · 3 Left Popper637 Castle Gate · 56 Drawbridge Up · 57 Drawbridge Down · 5 Castle Gate Power · 6 Castle Gate Hold · 37 Drawbridge Motor238 Catapult · 8 Catapult241 Moat Enter · 24 Moat Flashers44 Castle Lock445 Left Troll (Under Playfield) · 74 Left Troll Up · 33 Left Troll Power · 34 Left Troll Hold446 Right Troll (Under Playfield) · 75 Right Troll Up · 35 Right Troll Power · 36 Right Troll Hold47 Left Top Lane48 Right Top Lane251 Left Slingshot · 10 Left Slingshot252 Right Slingshot · 11 Right Slingshot353 Left Jet Bumper · 12 Left Jet Bumper · 1 GI 2: Middle Playfield354 Bottom Jet Bumper · 13 Bottom Jet Bumper · 1 GI 2: Middle Playfield355 Right Jet Bumper · 14 Right Jet Bumper · 2 GI 3: Top Playfield58 Tower Exit61 Left Ramp Enter62 Left Ramp Exit63 Right Ramp Enter64 Right Ramp Exit65 Left Loop Low66 Left Loop High67 Right Loop Low68 Right Loop High71 Right Bank Top72 Right Bank Middle73 Right Bank Bottom1 Auto Plunger4 Castle215 Tower Diverter Power · 16 Tower Diverter Hold17 Left Side Low Flashers18 Left Ramp Flashers19 Left Side High Flashers20 Right Side High Flashers21 Right Ramp Flashers21 Right Ramp Flashers22 Castle Right Side Flashers22 Castle Right Side Flashers23 Right Side Low Flashers23 Right Side Low Flashers24 Moat Flashers225 Castle Left Side Flashers · 2 GI 3: Top Playfield25 Castle Left Side Flashers26 Tower Lock Post27 Right Gate28 Left Gate245 Lower Right Flipper Power · 46 Lower Right Flipper Hold247 Lower Left Flipper Power · 48 Lower Left Flipper Hold11 Right Bank Top12 Right Bank Middle13 Right Bank Bottom14 Right Ramp Jackpot15 Save the Damsel!16 Dragon Death17 Dragon Snack18 Dragon Breath21 Right Loop Jackpot22 Right Joust Victory!23 Right Clash!24 Right Charge!25 Patron of the Peasants26 Catapult Ace27 Joust Champion28 Castle Crusher31 Trolls!32 Extra Ball33 Merlin's Magic34 Troll Madness35 Damsel Madness36 Peasant Madness37 Catapult Madness38 Joust Madness41 Left Loop Jackpot42 Left Joust Victory!43 Left Clash!44 Left Charge!45 Catapult Jackpot46 Catapult Slam!47 BAM!48 WAM!51 Center Arrow52 Battle for the Kingdom53 Master of Trolls54 Defender of Damsels55 Left Top Lane56 Right Top Lane57 Left Troll Target58 Right Troll Target61 Francois D'Grimm62 King of Payne63 Earl of Ego64 Left Ramp Jackpot65 Revolting Peasants!66 Ugly Riot!67 Angry Mob!68 Rabble Rouser71 Howard Hurtz72 Magic Shield73 Sir Psycho74 Duke of Bourbon75 Castle Lock 276 Castle Lock 177 Super Jackpot78 Super Jets78 Super Jets81 Right Outlane82 Right Return83 Left Return84 Left Outlane85 Castle Lock 386 Shoot Again0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield0 GI 1: Bottom Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield1 GI 2: Middle Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield2 GI 3: Top Playfield

Hover a marker to identify it, or click to keep it selected. Numbered markers are several devices in one spot — clicking lists them.

Show
Marker shape
  • emitterlights the playfield110
  • sensorsenses the ball44
  • effectmoves the ball27
  • nStackseveral devices in one spot17
145 devices shown

Not on the playfield20 cabinet or service, 18 unused, 13 virtual, 8 dip switch, 2 internal nonvisual, 1 constant — declared rather than missing.

Coverage

Author ready

Full semantic I/O, mechanisms, variants, wiring and recreation notes passed the completeness validator.

Catalog Identity
validated
Address Enumeration
validated
Semantic Naming
validated
Physical Wiring
validated
Mechanisms
validated
Variant Coverage
validated
Recreation Knowledge
validated

Switches

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

79 addresses

Switch map

Column × row matrix — the address is column·row.

used unused
 
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
11
Hover or tap an address to identify it.

Outside the matrix1, 2, 3, 4, 5, 6, 7, 8 — dedicated, diagnostic or flipper-column addresses. See the table below.

79 shown
# Name Device ID Role Wiring Evidence
1
Left Coin Chute
Button
switch.cabinet-1
cabinet.coin.1
J205-1Orange-Brown
WPC-95 CPU board
validated
2
Center Coin Chute
Button
switch.cabinet-2
cabinet.coin.2
J205-2Orange-Red
WPC-95 CPU board
validated
3
Right Coin Chute
Button
switch.cabinet-3
cabinet.coin.3
J205-3Orange-Black
WPC-95 CPU board
validated
4
Fourth Coin Chuteopt
Button
switch.cabinet-4
cabinet.coin.4
J205-4Orange-Yellow
WPC-95 CPU board
validated
5
Service Credits / Escape
Button
switch.cabinet-5
service.escape
J205-6Orange-Green
WPC-95 CPU board
validated
6
Volume Down / Down
Button
switch.cabinet-6
service.down
J205-7Orange-Blue
WPC-95 CPU board
validated
7
Volume Up / Up
Button
switch.cabinet-7
service.up
J205-8Orange-Violet
WPC-95 CPU board
validated
8
Begin Test / Enter
Button
switch.cabinet-8
service.enter
J205-9Orange-Gray
WPC-95 CPU board
validated
11
Launch Ball
Button
switch.matrix-11
cabinet.launch
J206-1Green-Brown
J208-1White-Brown
WPC-95 CPU board
validated
12
Catapult Target
Microswitch
switch.matrix-12
J206-1Green-Brown
J208-2White-Red
WPC-95 CPU board
validated
13
Start Button
Button
switch.matrix-13
cabinet.start
J206-1Green-Brown
J208-3White-Orange
WPC-95 CPU board
validated
14
Plumb Bob Tilt
Tilt
switch.matrix-14
cabinet.tilt
J206-1Green-Brown
J208-4White-Yellow
WPC-95 CPU board
validated
15
Left Troll Target
Microswitch
switch.matrix-15
J206-1Green-Brown
J208-5White-Green
WPC-95 CPU board
validated
16
Left Outlane
Microswitch
switch.matrix-16
J206-1Green-Brown
J208-7White-Blue
WPC-95 CPU board
validated
17
Right Return Lane
Microswitch
switch.matrix-17
J206-1Green-Brown
J208-8White-Violet
WPC-95 CPU board
validated
18
Shooter Lane
Microswitch
switch.matrix-18
J206-1Green-Brown
J208-9White-Gray
WPC-95 CPU board
validated
21
Slam Tilt
Leaf
switch.matrix-21
cabinet.slam-tilt
J206-2Green-Red
J208-1White-Brown
WPC-95 CPU board
validated
22
Coin Door Closed
Microswitch
switch.matrix-22
cabinet.coin-door
J206-2Green-Red
J208-2White-Red
WPC-95 CPU board
validated
23
Not Used Matrix Position 23
switch.matrix-23
J206-2Green-Red
J208-3White-Orange
WPC-95 CPU board
validated
25
Right Troll Target
Microswitch
switch.matrix-25
J206-2Green-Red
J208-5White-Green
WPC-95 CPU board
validated
26
Left Return Lane
Microswitch
switch.matrix-26
J206-2Green-Red
J208-7White-Blue
WPC-95 CPU board
validated
27
Right Outlane
Microswitch
switch.matrix-27
J206-2Green-Red
J208-8White-Violet
WPC-95 CPU board
validated
28
Right Eject
Microswitch
switch.matrix-28
J206-2Green-Red
J208-9White-Gray
WPC-95 CPU board
validated
31
Trough EjectNC
Opto
switch.matrix-31
J206-3Green-Orange
J208-1White-Brown
WPC-95 CPU board
validated
32
Trough Ball 1NC
Opto
switch.matrix-32
J206-3Green-Orange
J208-2White-Red
WPC-95 CPU board
validated
33
Trough Ball 2NC
Opto
switch.matrix-33
J206-3Green-Orange
J208-3White-Orange
WPC-95 CPU board
validated
34
Trough Ball 3NC
Opto
switch.matrix-34
J206-3Green-Orange
J208-4White-Yellow
WPC-95 CPU board
validated
35
Trough Ball 4NC
Opto
switch.matrix-35
J206-3Green-Orange
J208-5White-Green
WPC-95 CPU board
validated
36
Left PopperNC
Opto
switch.matrix-36
J206-3Green-Orange
J208-7White-Blue
WPC-95 CPU board
validated
37
Castle GateNC
Opto
switch.matrix-37
J206-3Green-Orange
J208-8White-Violet
WPC-95 CPU board
validated
38
Catapult
Microswitch
switch.matrix-38
J206-3Green-Orange
J208-9White-Gray
WPC-95 CPU board
validated
41
Moat EnterNC
Opto
switch.matrix-41
J206-4Green-White
J208-1White-Brown
WPC-95 CPU board
validated
42
Not Used Matrix Position 42
switch.matrix-42
J206-4Green-White
J208-2White-Red
WPC-95 CPU board
validated
43
Not Used Matrix Position 43
switch.matrix-43
J206-4Green-White
J208-3White-Orange
WPC-95 CPU board
validated
44
Castle Lock
Microswitch
switch.matrix-44
J206-4Green-White
J208-4White-Yellow
WPC-95 CPU board
validated
45
Left Troll (Under Playfield)
Microswitch
switch.matrix-45
J206-4Green-White
J208-5White-Green
WPC-95 CPU board
validated
46
Right Troll (Under Playfield)
Microswitch
switch.matrix-46
J206-4Green-White
J208-7White-Blue
WPC-95 CPU board
validated
47
Left Top Lane
Microswitch
switch.matrix-47
J206-4Green-White
J208-8White-Violet
WPC-95 CPU board
validated
48
Right Top Lane
Microswitch
switch.matrix-48
J206-4Green-White
J208-9White-Gray
WPC-95 CPU board
validated
51
Left Slingshot
Leaf
switch.matrix-51
J206-5Green-Black
J208-1White-Brown
WPC-95 CPU board
validated
52
Right Slingshot
Leaf
switch.matrix-52
J206-5Green-Black
J208-2White-Red
WPC-95 CPU board
validated
53
Left Jet Bumper
Leaf
switch.matrix-53
J206-5Green-Black
J208-3White-Orange
WPC-95 CPU board
validated
54
Bottom Jet Bumper
Leaf
switch.matrix-54
J206-5Green-Black
J208-4White-Yellow
WPC-95 CPU board
validated
55
Right Jet Bumper
Leaf
switch.matrix-55
J206-5Green-Black
J208-5White-Green
WPC-95 CPU board
validated
56
Drawbridge Up
Microswitch
switch.matrix-56
J206-5Green-Black
J208-7White-Blue
WPC-95 CPU board
validated
57
Drawbridge Down
Microswitch
switch.matrix-57
J206-5Green-Black
J208-8White-Violet
WPC-95 CPU board
validated
58
Tower Exit
Microswitch
switch.matrix-58
J206-5Green-Black
J208-9White-Gray
WPC-95 CPU board
validated
61
Left Ramp Enter
Microswitch
switch.matrix-61
J206-6Green-Blue
J208-1White-Brown
WPC-95 CPU board
validated
62
Left Ramp Exit
Microswitch
switch.matrix-62
J206-6Green-Blue
J208-2White-Red
WPC-95 CPU board
validated
63
Right Ramp Enter
Microswitch
switch.matrix-63
J206-6Green-Blue
J208-3White-Orange
WPC-95 CPU board
validated
64
Right Ramp Exit
Microswitch
switch.matrix-64
J206-6Green-Blue
J208-4White-Yellow
WPC-95 CPU board
validated
65
Left Loop Low
Microswitch
switch.matrix-65
J206-6Green-Blue
J208-5White-Green
WPC-95 CPU board
validated
66
Left Loop High
Microswitch
switch.matrix-66
J206-6Green-Blue
J208-7White-Blue
WPC-95 CPU board
validated
67
Right Loop Low
Microswitch
switch.matrix-67
J206-6Green-Blue
J208-8White-Violet
WPC-95 CPU board
validated
68
Right Loop High
Microswitch
switch.matrix-68
J206-6Green-Blue
J208-9White-Gray
WPC-95 CPU board
validated
71
Right Bank Top
Microswitch
switch.matrix-71
J206-7Green-Violet
J208-1White-Brown
WPC-95 CPU board
validated
72
Right Bank Middle
Microswitch
switch.matrix-72
J206-7Green-Violet
J208-2White-Red
WPC-95 CPU board
validated
73
Right Bank Bottom
Microswitch
switch.matrix-73
J206-7Green-Violet
J208-3White-Orange
WPC-95 CPU board
validated
74
Left Troll Up
Microswitch
switch.matrix-74
J206-7Green-Violet
J208-4White-Yellow
WPC-95 CPU board
validated
75
Right Troll Up
Microswitch
switch.matrix-75
J206-7Green-Violet
J208-5White-Green
WPC-95 CPU board
validated
76
Not Used Matrix Position 76
switch.matrix-76
J206-7Green-Violet
J208-7White-Blue
WPC-95 CPU board
validated
77
Not Used Matrix Position 77
switch.matrix-77
J206-7Green-Violet
J208-8White-Violet
WPC-95 CPU board
validated
78
Not Used Matrix Position 78
switch.matrix-78
J206-7Green-Violet
J208-9White-Gray
WPC-95 CPU board
validated
81
Not Used Matrix Position 81
switch.matrix-81
J206-9Green-Gray
J208-1White-Brown
WPC-95 CPU board
validated
82
Not Used Matrix Position 82
switch.matrix-82
J206-9Green-Gray
J208-2White-Red
WPC-95 CPU board
validated
83
Not Used Matrix Position 83
switch.matrix-83
J206-9Green-Gray
J208-3White-Orange
WPC-95 CPU board
validated
84
Not Used Matrix Position 84
switch.matrix-84
J206-9Green-Gray
J208-4White-Yellow
WPC-95 CPU board
validated
85
Not Used Matrix Position 85
switch.matrix-85
J206-9Green-Gray
J208-5White-Green
WPC-95 CPU board
validated
86
Not Used Matrix Position 86
switch.matrix-86
J206-9Green-Gray
J208-7White-Blue
WPC-95 CPU board
validated
87
Not Used Matrix Position 87
switch.matrix-87
J206-9Green-Gray
J208-8White-Violet
WPC-95 CPU board
validated
88
Not Used Matrix Position 88
switch.matrix-88
J206-9Green-Gray
J208-9White-Gray
WPC-95 CPU board
validated
111
Lower Right Flipper EOS
Leaf
switch.generic-111
internal.flipper.lower.right.eos
J208-13Black-Green
WPC-95 CPU board
validated
112
Lower Right Flipper ButtonNC
Opto
switch.generic-112
flipper.lower.right.button
J212-12Blue-Violet
WPC-95 CPU board
validated
113
Lower Left Flipper EOS
Leaf
switch.generic-113
internal.flipper.lower.left.eos
J208-12Black-Blue
WPC-95 CPU board
validated
114
Lower Left Flipper ButtonNC
Opto
switch.generic-114
flipper.lower.left.button
J212-11Blue-Gray
WPC-95 CPU board
validated
115
Not Used Upper Right Flipper EOS
switch.generic-115
internal.unused.flipper
validated
116
Not Used Upper Right Flipper Button
switch.generic-116
internal.unused.flipper
validated
117
Not Used Upper Left Flipper EOS
switch.generic-117
internal.unused.flipper
validated
118
Not Used Upper Left Flipper Button
switch.generic-118
internal.unused.flipper
validated

Controlled devices

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

Coils, magnets & motors

28
28 shown
# Name Device ID Kind Role Wiring Evidence
1
Auto Plunger
device.auto-plunger Coil
Q72VIO-BRN
WPC-95 power driver board
validated
2
Trough Eject
device.trough-eject Coil
Q68VIO-RED
WPC-95 power driver board
validated
3
Left Popper
device.left-popper Coil
Q71VIO-ORG
WPC-95 power driver board
validated
4
Castle
device.castle Coil
Q67VIO-YEL
WPC-95 power driver board
validated
5
Castle Gate Power
device.castle-gate-power Coil
Q70VIO-GRN
WPC-95 power driver board
validated
6
Castle Gate Hold
device.castle-gate-hold Coil
Q66VIO-BLU
WPC-95 power driver board
validated
7
Knocker
device.knocker Coil
cabinet.knocker
Q69VIO-BLK
WPC-95 power driver board
validated
8
Catapult
device.catapult Coil
Q65VIO-GRY
WPC-95 power driver board
validated
9
Right Eject
device.right-eject Coil
Q44BRN-BLK
WPC-95 power driver board
validated
10
Left Slingshot
device.left-slingshot Coil
Q48BRN-RED
WPC-95 power driver board
validated
11
Right Slingshot
device.right-slingshot Coil
Q43BRN-ORG
WPC-95 power driver board
validated
12
Left Jet Bumper
device.left-jet-bumper Coil
Q47BRN-YEL
WPC-95 power driver board
validated
13
Bottom Jet Bumper
device.bottom-jet-bumper Coil
Q42BRN-GRN
WPC-95 power driver board
validated
14
Right Jet Bumper
device.right-jet-bumper Coil
Q46BRN-BLU
WPC-95 power driver board
validated
15
Tower Diverter Power
device.tower-diverter-power Coil
Q41BRN-VIO
WPC-95 power driver board
validated
16
Tower Diverter Hold
device.tower-diverter-hold Coil
Q45BRN-GRY
WPC-95 power driver board
validated
26
Tower Lock Post
device.tower-lock-post Coil
Q15BLU-RED
WPC-95 power driver board
validated
27
Right Gate
device.right-gate Coil
Q14BLU-ORG
WPC-95 power driver board
validated
28
Left Gate
device.left-gate Coil
Q13BLU-YEL
WPC-95 power driver board
validated
33
Left Troll Power
device.left-troll-power Coil
Q84YEL-VIO
WPC-95 power driver board
validated
34
Left Troll Hold
device.left-troll-hold Coil
Q86ORG-VIO
WPC-95 power driver board
validated
35
Right Troll Power
device.right-troll-power Coil
Q81YEL-GRY
WPC-95 power driver board
validated
36
Right Troll Hold
device.right-troll-hold Coil
Q83ORG-GRY
WPC-95 power driver board
validated
37
Drawbridge Motor
device.drawbridge-motor Motor
U3A and U3BBRN-WHT
WPC-95 power driver board
validated
45
Lower Right Flipper Power
device.lower-right-flipper-power Coil
Q90YEL-GRN
WPC-95 power driver board
validated
46
Lower Right Flipper Hold
device.lower-right-flipper-hold Coil
Q92ORG-GRN
WPC-95 power driver board
validated
47
Lower Left Flipper Power
device.lower-left-flipper-power Coil
Q87YEL-BLU
WPC-95 power driver board
validated
48
Lower Left Flipper Hold
device.lower-left-flipper-hold Coil
Q89ORG-BLU
WPC-95 power driver board
validated

Flashers

9
9 shown
# Name Device ID Wiring Evidence
17
Left Side Low Flashers
device.left-side-low-flashers
Q28BLK-BRN
WPC-95 power driver board
validated
18
Left Ramp Flashers
device.left-ramp-flashers
Q32BLK-RED
WPC-95 power driver board
validated
19
Left Side High Flashers
device.left-side-high-flashers
Q27BLK-ORG
WPC-95 power driver board
validated
20
Right Side High Flashers
device.right-side-high-flashers
Q31BLK-YEL
WPC-95 power driver board
validated
21
Right Ramp Flashers
device.right-ramp-flashers
Q26BLU-GRN
WPC-95 power driver board
validated
22
Castle Right Side Flashers
device.castle-right-side-flashers
Q30BLU-BLK
WPC-95 power driver board
validated
23
Right Side Low Flashers
device.right-side-low-flashers
Q25BLU-VIO
WPC-95 power driver board
validated
24
Moat Flashers
device.moat-flashers
Q29BLU-GRY
WPC-95 power driver board
validated
25
Castle Left Side Flashers
device.castle-left-side-flashers
Q16BLU-BRN
WPC-95 power driver board
validated

Lamps

64

Lamp map

Column × row matrix — the address is column·row.

used unused
 
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
Hover or tap an address to identify it.
64 shown
# Name Device ID Role Wiring Evidence
11
Right Bank Top
lamp.matrix-11
Q96 column driver with Q104 row driver
WPC-95 power driver board
validated
12
Right Bank Middle
lamp.matrix-12
Q96 column driver with Q108 row driver
WPC-95 power driver board
validated
13
Right Bank Bottom
lamp.matrix-13
Q96 column driver with Q103 row driver
WPC-95 power driver board
validated
14
Right Ramp Jackpot
lamp.matrix-14
Q96 column driver with Q107 row driver
WPC-95 power driver board
validated
15
Save the Damsel!
lamp.matrix-15
Q96 column driver with Q102 row driver
WPC-95 power driver board
validated
16
Dragon Death
lamp.matrix-16
Q96 column driver with Q106 row driver
WPC-95 power driver board
validated
17
Dragon Snack
lamp.matrix-17
Q96 column driver with Q101 row driver
WPC-95 power driver board
validated
18
Dragon Breath
lamp.matrix-18
Q96 column driver with Q105 row driver
WPC-95 power driver board
validated
21
Right Loop Jackpot
lamp.matrix-21
Q100 column driver with Q104 row driver
WPC-95 power driver board
validated
22
Right Joust Victory!
lamp.matrix-22
Q100 column driver with Q108 row driver
WPC-95 power driver board
validated
23
Right Clash!
lamp.matrix-23
Q100 column driver with Q103 row driver
WPC-95 power driver board
validated
24
Right Charge!
lamp.matrix-24
Q100 column driver with Q107 row driver
WPC-95 power driver board
validated
25
Patron of the Peasants
lamp.matrix-25
Q100 column driver with Q102 row driver
WPC-95 power driver board
validated
26
Catapult Ace
lamp.matrix-26
Q100 column driver with Q106 row driver
WPC-95 power driver board
validated
27
Joust Champion
lamp.matrix-27
Q100 column driver with Q101 row driver
WPC-95 power driver board
validated
28
Castle Crusher
lamp.matrix-28
Q100 column driver with Q105 row driver
WPC-95 power driver board
validated
31
Trolls!
lamp.matrix-31
Q95 column driver with Q104 row driver
WPC-95 power driver board
validated
32
Extra Ball
lamp.matrix-32
Q95 column driver with Q108 row driver
WPC-95 power driver board
validated
33
Merlin's Magic
lamp.matrix-33
Q95 column driver with Q103 row driver
WPC-95 power driver board
validated
34
Troll Madness
lamp.matrix-34
Q95 column driver with Q107 row driver
WPC-95 power driver board
validated
35
Damsel Madness
lamp.matrix-35
Q95 column driver with Q102 row driver
WPC-95 power driver board
validated
36
Peasant Madness
lamp.matrix-36
Q95 column driver with Q106 row driver
WPC-95 power driver board
validated
37
Catapult Madness
lamp.matrix-37
Q95 column driver with Q101 row driver
WPC-95 power driver board
validated
38
Joust Madness
lamp.matrix-38
Q95 column driver with Q105 row driver
WPC-95 power driver board
validated
41
Left Loop Jackpot
lamp.matrix-41
Q99 column driver with Q104 row driver
WPC-95 power driver board
validated
42
Left Joust Victory!
lamp.matrix-42
Q99 column driver with Q108 row driver
WPC-95 power driver board
validated
43
Left Clash!
lamp.matrix-43
Q99 column driver with Q103 row driver
WPC-95 power driver board
validated
44
Left Charge!
lamp.matrix-44
Q99 column driver with Q107 row driver
WPC-95 power driver board
validated
45
Catapult Jackpot
lamp.matrix-45
Q99 column driver with Q102 row driver
WPC-95 power driver board
validated
46
Catapult Slam!
lamp.matrix-46
Q99 column driver with Q106 row driver
WPC-95 power driver board
validated
47
BAM!
lamp.matrix-47
Q99 column driver with Q101 row driver
WPC-95 power driver board
validated
48
WAM!
lamp.matrix-48
Q99 column driver with Q105 row driver
WPC-95 power driver board
validated
51
Center Arrow
lamp.matrix-51
Q94 column driver with Q104 row driver
WPC-95 power driver board
validated
52
Battle for the Kingdom
lamp.matrix-52
Q94 column driver with Q108 row driver
WPC-95 power driver board
validated
53
Master of Trolls
lamp.matrix-53
Q94 column driver with Q103 row driver
WPC-95 power driver board
validated
54
Defender of Damsels
lamp.matrix-54
Q94 column driver with Q107 row driver
WPC-95 power driver board
validated
55
Left Top Lane
lamp.matrix-55
Q94 column driver with Q102 row driver
WPC-95 power driver board
validated
56
Right Top Lane
lamp.matrix-56
Q94 column driver with Q106 row driver
WPC-95 power driver board
validated
57
Left Troll Target
lamp.matrix-57
Q94 column driver with Q101 row driver
WPC-95 power driver board
validated
58
Right Troll Target
lamp.matrix-58
Q94 column driver with Q105 row driver
WPC-95 power driver board
validated
61
Francois D'Grimm
lamp.matrix-61
Q98 column driver with Q104 row driver
WPC-95 power driver board
validated
62
King of Payne
lamp.matrix-62
Q98 column driver with Q108 row driver
WPC-95 power driver board
validated
63
Earl of Ego
lamp.matrix-63
Q98 column driver with Q103 row driver
WPC-95 power driver board
validated
64
Left Ramp Jackpot
lamp.matrix-64
Q98 column driver with Q107 row driver
WPC-95 power driver board
validated
65
Revolting Peasants!
lamp.matrix-65
Q98 column driver with Q102 row driver
WPC-95 power driver board
validated
66
Ugly Riot!
lamp.matrix-66
Q98 column driver with Q106 row driver
WPC-95 power driver board
validated
67
Angry Mob!
lamp.matrix-67
Q98 column driver with Q101 row driver
WPC-95 power driver board
validated
68
Rabble Rouser
lamp.matrix-68
Q98 column driver with Q105 row driver
WPC-95 power driver board
validated
71
Howard Hurtz
lamp.matrix-71
Q93 column driver with Q104 row driver
WPC-95 power driver board
validated
72
Magic Shield
lamp.matrix-72
Q93 column driver with Q108 row driver
WPC-95 power driver board
validated
73
Sir Psycho
lamp.matrix-73
Q93 column driver with Q103 row driver
WPC-95 power driver board
validated
74
Duke of Bourbon
lamp.matrix-74
Q93 column driver with Q107 row driver
WPC-95 power driver board
validated
75
Castle Lock 2
lamp.matrix-75
Q93 column driver with Q102 row driver
WPC-95 power driver board
validated
76
Castle Lock 1
lamp.matrix-76
Q93 column driver with Q106 row driver
WPC-95 power driver board
validated
77
Super Jackpot
lamp.matrix-77
Q93 column driver with Q101 row driver
WPC-95 power driver board
validated
78
Super Jets
lamp.matrix-78
Q93 column driver with Q105 row driver
WPC-95 power driver board
validated
81
Right Outlane
lamp.matrix-81
Q97 column driver with Q104 row driver
WPC-95 power driver board
validated
82
Right Return
lamp.matrix-82
Q97 column driver with Q108 row driver
WPC-95 power driver board
validated
83
Left Return
lamp.matrix-83
Q97 column driver with Q103 row driver
WPC-95 power driver board
validated
84
Left Outlane
lamp.matrix-84
Q97 column driver with Q107 row driver
WPC-95 power driver board
validated
85
Castle Lock 3
lamp.matrix-85
Q97 column driver with Q102 row driver
WPC-95 power driver board
validated
86
Shoot Again
lamp.matrix-86
Q97 column driver with Q106 row driver
WPC-95 power driver board
validated
87
Launch Button
lamp.matrix-87
cabinet.launch
Q97 column driver with Q101 row driver
WPC-95 power driver board
validated
88
Start Button
lamp.matrix-88
cabinet.start
Q97 column driver with Q105 row driver
WPC-95 power driver board
validated

General illumination

5
5 shown
# Name Device ID Role Wiring Evidence
0
GI 1: Bottom Playfield
gi.string-1
Q5WHT-BRN
WPC-95 power driver board
validated
1
GI 2: Middle Playfield
gi.string-2
Q4WHT-ORG
WPC-95 power driver board
validated
2
GI 3: Top Playfield
gi.string-3
Q3WHT-YEL
WPC-95 power driver board
validated
3
GI 4: Top Insert Panel
gi.string-4
cabinet.insert-panel
Q2WHT-GRN
WPC-95 power driver board
validated
4
GI 5: Bottom Insert Panel
gi.string-5
cabinet.insert-panel
Q1WHT-VIO
WPC-95 power driver board
validated

Virtual & other outputs

13
13 shown
# Name Device ID Role Evidence
29
WPC J111 General-Purpose State Bit A
device.wpc-j111-general-purpose-state-bit-a
internal.wpc-state
validated
30
WPC J111 General-Purpose State Bit B
device.wpc-j111-general-purpose-state-bit-b
internal.wpc-state
validated
31
PinMAME Fast-Flip Game-On State
device.pinmame-fast-flip-game-on-state
internal.wpc-state
validated
32
Unused WPC State Channel 32
device.unused-wpc-state-channel-32
internal.unused.wpc-output
validated
38
Unused WPC-95 LPDC Output 38
device.unused-wpc-95-lpdc-output-38
internal.unused.wpc-output
validated
39
Unused WPC-95 LPDC Output 39
device.unused-wpc-95-lpdc-output-39
internal.unused.wpc-output
validated
40
Unused WPC-95 LPDC Output 40
device.unused-wpc-95-lpdc-output-40
internal.unused.wpc-output
validated
41
Drawbridge Motor LPDC Mirror
device.drawbridge-motor-lpdc-mirror
internal.duplicate.lpdc-mirror
validated
42
Unused WPC-95 LPDC Mirror 42
device.unused-wpc-95-lpdc-mirror-42
internal.unused.wpc-output
validated
43
Unused WPC-95 LPDC Mirror 43
device.unused-wpc-95-lpdc-mirror-43
internal.unused.wpc-output
validated
44
Unused WPC-95 LPDC Mirror 44
device.unused-wpc-95-lpdc-mirror-44
internal.unused.wpc-output
validated
49
PinMAME Simulator Ball-Shooter Channel
device.pinmame-simulator-ball-shooter-channel
internal.unused.wpc-output
validated
50
Reserved WPC Output 50
device.reserved-wpc-output-50
internal.unused.wpc-output
validated

Configuration & other inputs

9 shown
# Name Device ID Kind Wiring Evidence
1
CPU DIP 1 (country code bit)
Dip
switch.dip-1 DIP switch
validated
2
CPU DIP 2 (country code bit)
Dip
switch.dip-2 DIP switch
validated
3
CPU DIP 3 (country code bit)
Dip
switch.dip-3 DIP switch
validated
4
CPU DIP 4 (country code bit)
Dip
switch.dip-4 DIP switch
validated
5
CPU DIP 5 (country code bit)
Dip
switch.dip-5 DIP switch
validated
6
CPU DIP 6 (country code bit)
Dip
switch.dip-6 DIP switch
validated
7
CPU DIP 7 (country code bit)
Dip
switch.dip-7 DIP switch
validated
8
CPU DIP 8 (country code bit)
Dip
switch.dip-8 DIP switch
validated
24
Always Closed
Other
switch.matrix-24 Constant
J206-2Green-Red
J208-4White-Yellow
WPC-95 CPU board
validated

Mechanisms

Logical assemblies with their actuators, sensors and observed behaviour. Click a chip to jump to the address it refers to.

Four-ball trough and ball release

mechanism.trough

Kicker

Four balls rest on opto pairs 32-35, with Trough Ball 1 (32) at the eject end nearest the shooter lane and Trough Ball 4 (35) at the drain entrance. The drain feeds switch 35 and the retained script re-stacks balls toward 32 on a 300 ms settle timer. Solenoid 2 ejects the ball resting on 32 into the shooter lane and the same event asserts trough-eject opto 31. All five positions are printed optos that rest closed, and PinMAME normalizes them, so a recreation asserts the public switch when a ball is present.

Shooter lane and auto plunger

mechanism.shooter-lane

Kicker

Medieval Madness has no manual plunger. The ball ejected from the trough rests on shooter-lane switch 18 and auto-plunger coil 1 launches it when the cabinet Launch Ball button (switch 11) is pressed. The retained script's AutoPlunger callback fires the plunger and plays the saucer-kick sound at switch 18.

Motorized castle drawbridge

mechanism.drawbridge

Motorized

A continuously rotating low-power motor on LPDC output 37 (mirrored by PinMAME at 41) drives the drawbridge through a full cycle; it is not a two-position solenoid. Position switches 56 (up) and 57 (down) close at the two travel limits, and T.18 runs the motor continuously while pausing briefly on each drawbridge up/down switch edge. The ROM reports 'Drawbridge Up Switch Bad' or 'Drawbridge Down Switch Bad' when an edge is missing. PinMAME's own mm_handleMech models the same behaviour with a 500-step position counter that sets switch 56 near steps 490-10 and switch 57 near steps 240-260, and it starts a session with the drawbridge up.

Castle gate (portcullis) and moat entrance

mechanism.castle-gate

Gate

A power/hold coil pair raises and holds the portcullis. T.19 first lowers the drawbridge and refuses to run without the drawbridge-down switch. With the gate closed, a shot runs moat-enter opto 41, castle-gate opto 37, then moat-enter opto 41 again as the ball rebounds. With the gate held open, the shot runs 41, then 37, then castle-lock switch 44 into the lock area. The ROM drops the hold coil after two idle minutes so it cannot overheat. The retained script gates its castle-gate pulse on the portcullis being dropped.

Exploding castle toy

mechanism.exploding-castle

Toy

Solenoid 4 releases the castle superstructure. Pressing Enter inside T.19 makes the castle shake three times and then explode for roughly four seconds; the towers and gate then have to be reset by hand before play continues. Castle-lock switch 44 is the sensor behind the gate that proves the ball reached the castle.

Drives

Castle left popper

mechanism.left-popper

Kicker

Balls that pass the castle gate collect on left-popper opto 36 and are ejected back onto the playfield by solenoid 3. The retained script binds this coil to its SolMoat callback and treats the popper as the single exit from the castle lock area.

Right ramp tower, diverter, and lock post

mechanism.tower

Diverter

T.17 documents two states. With the diverter up, a right-ramp shot runs right-ramp-enter switch 63 then right-ramp-exit switch 64 and returns the ball to the right flipper. With the diverter held down, the same shot runs 63, raises the tower lock post, climbs into the tower, and finally closes tower-exit switch 58. The ROM returns the diverter to the ramp state after two idle minutes so the diverter coil cannot overheat. The lock post works inverted in the PinMAME simulation: a held ball is released when the post output drops.

Left troll

mechanism.left-troll

Toy

Manual page 3-11 states it outright: the upper-right flipper circuit is used for the left troll. A power/hold Fliptronic circuit pair on public solenoids 33 and 34 raises the left troll through the playfield and holds it up. Position switch 74 closes while the troll is raised; PinMAME's own mm_handleMech ties switch 74 directly to the hold output. A ball striking the raised troll closes under-playfield switch 45. Left troll target 15 is the standup behind the troll, reachable while the troll is down. The ROM lowers a raised troll after two idle minutes so the troll coils cannot overheat.

Right troll

mechanism.right-troll

Toy

Manual page 3-11 states it outright: the upper-left flipper circuit is used for the right troll. A power/hold Fliptronic circuit pair on public solenoids 35 and 36 raises the right troll and holds it up. Position switch 75 closes while the troll is raised and PinMAME's mm_handleMech ties it directly to the hold output. A ball striking the raised troll closes under-playfield switch 46, and right troll target 25 is the standup behind it. The ROM lowers a raised troll after two idle minutes.

Catapult saucer

mechanism.catapult

Kicker

Catapult target 12 is the standup in front of the catapult on the left side of the playfield. A ball that enters the catapult saucer closes switch 38 and solenoid 8 flings it up the left ramp path. The retained script's SolCatapult callback and PinMAME's simulation both send the fired ball to the left-ramp-made state.

Merlin's Magic right eject

mechanism.merlin-eject

Kicker

The right eject hole under the jet bumpers is Merlin's Magic hole. A ball resting on switch 28 is ejected by solenoid 9 (retained script callback SolMerlin) and returns to the right loop exit.

Left and right loop control gates

mechanism.loop-gates

Gate

Two solenoid-operated control gates decide whether a loop shot completes the loop or is diverted into the jet bumpers. T.16 documents the exact causality: travelling left to right, the right gate (solenoid 27) opens on the second left-loop switch, Left Loop High (66); travelling right to left, the left gate (solenoid 28) opens on the second right-loop switch, Right Loop High (68). When the opposite gate stays closed the ball is routed through Left Top Lane 47 or Right Top Lane 48 into the jet bumpers instead. The retained script binds solenoid 27 to gate3 and solenoid 28 to gate2.

Left and right slingshots

mechanism.slingshots

Other

Each slingshot assembly carries two switches: an A-17800/A-17794 kick switch (SW-1A-114) and a separate score switch (SW-1A-120) with a diode attached. Only the score switch reaches the matrix, at address 51 on the left and 52 on the right; the retained script pulses those two addresses from the slingshot events.

Lower flipper pair

mechanism.lower-flippers

Other

Two FL-11629 flippers on Fliptronic circuits. Each flipper has a separate power and hold winding: the ROM energizes the power winding on the cabinet button opto (112 right, 114 left), then drops to the hold winding once the end-of-stroke leaf switch (111 right, 113 left) closes. Medieval Madness runs Const UseSolenoids = 2 fast flips, so the ROM drives the coils directly rather than letting the flipper circuit self-commutate, and PinMAME's synthetic game-on state on solenoid 31 follows the ROM's fast-flip flag. There are no upper flippers: the upper-flipper circuits carry the trolls instead.

Right three-bank standup targets

mechanism.right-target-bank

Other

Three A-21576-4 standup targets on the right side of the playfield, top to bottom. They have no coil: the bank is not a drop-target bank and never resets, and the retained script drives them through the shared standup-target animation helper that pulses each matrix address on impact.

Direct wiring

Connections that exist in copper, not in the ROM. These fire whether or not a game is running.

Recreation notes

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

Coverage
author-ready - complete physical I/O inventory, WPC-95 bindings, wiring, mechanism causality, driver-variant boundary, normalized spatial placement, and recreation behavior validated

Identity and evidence precedence

This is the Williams WPC-95 physical product released July 1997, IPDB 4032, manual 16-50059-101, project number 559, game number 50059. It covers the whole mm_* clone tree: mm_05, mm_10, mm_109, mm_109b, mm_109c, mm_10pfx, and mm_10u. Every one of those is a game-ROM revision for the same physical machine; the Zen Studios "Pinball FX" and Global VR "Ultrapin" images only change display text and do not create a separate physical game, so their catalog years 2018 and 2006 never override the 1997 build.

Evidence precedence for this definition: the retained known-working VPW v1.0 script is runtime and mechanism-causality ground truth; the Williams operations manual controls physical construction, part numbers, wiring, polarity, quantities, and device presence; pinned PinMAME controls controller generation, public address topology, and display metadata; the retained VPX geometry supplies normalized coordinates. All four retained manual PDFs are image-only scans, so every printed table used here was read from rendered pages. The OCR text retained beside them is a search index and never an authority.

Controller platform and address topology

GEN_WPC95 (PINMAME_HARDWARE_GEN_WPC95 = 0x80) with wpc_dispDMD, DCS sound, and a security CPU. The controller profile is pinmame.wpc-95.

  • Switches: dedicated coin-door 1-8, matrix 11-88 as drive column then return row, Fliptronic 111-118. The manual states the notation itself in T.13: "The number on the left indicates the column. The number on the right indicates the row. Example - Lamp 23 means 2nd column, 3rd row." PinMAME's mmGameData inverted-switch mask corroborates it, inverting column 3 rows 1-7 and column 4 row 1, which is exactly the printed opto set.
  • Solenoids: physical drivers 1-28; PinMAME state channels 29-32; Fliptronic upper-flipper circuits 33-36; WPC-95 LPDC output 37 with PinMAME's backward-compatibility mirror at 41; Fliptronic lower-flipper circuits 45-48; simulator-only 49 and reserved 50.
  • Lamps: 8x8 matrix 11-88, all 64 addresses populated. The pinned harness observed every one of them active.
  • GI: five strings on public addresses 0-4.

Two WPC-95 numbering facts must not be lost. First, the printed solenoid table numbers the lower flipper circuits 29-32, while PinMAME publishes the same circuits at 45-48; the manual numbers are preserved as manual.address aliases. Second, LPDC output 37 and public address 41 are the same drawbridge motor, because core_getSol duplicates 37-40 into 41-44 for WPC-95. A recreation binds one motor and accepts either address; it must never create two.

Coin-door service buttons

The printed switch matrix aligns dedicated switches D1-D8 with matrix rows 1-8: 1-4 are the left, center, right, and fourth coin chutes, 5 is Service Credits/Escape, 6 is Volume Down/Down, 7 is Volume Up/Up, and 8 is Begin Test/Enter. PinMAME's MAME-only keyboard port (WPC_COMPORTS) labels those four service bits in the opposite order, which is a UI key binding rather than public address semantics. The pinned harness settled the whole group against the running ROM. Holding public switch 8 with the coin door open produced the ROM's own prompt TO RESET SCORES- HOLD ENTER; pulsing public switch 7 raised the ROM's VOLUME display from 12 to 15; pulsing public switch 6 lowered it back to 12. Switch 5 is the remaining position. A consumer that maps an "Enter" action must map it to switch 8, not switch 5.

Ball path, trough, and shooter

Medieval Madness has no manual plunger. Four balls rest on trough optos 32-35, with Trough Ball 1 (32) at the eject end nearest the shooter lane and Trough Ball 4 (35) at the drain entrance. Solenoid 2 ejects the ball on 32 and the same event asserts trough-eject opto 31. The ball lands on shooter-lane switch 18 and auto-plunger coil 1 launches it when the cabinet Launch Ball button (switch 11) is pressed. In loops mode a launched ball travels the full loop and is delivered cleanly to the left flipper.

Trough optos 31-35, left-popper opto 36, castle-gate opto 37, and moat-enter opto 41 are printed as optos that rest closed. PinMAME's mmGameData inverted-switch mask covers exactly those eight (column 3 rows 1-7 plus column 4 row 1), so the public state is already normalized: assert the public switch when a ball is present and never invert again.

Castle: drawbridge, gate, lock, and explosion

The castle is four cooperating devices and the diagnostics prove their order.

  • Drawbridge (solenoid 37). A continuously rotating low-power motor, not a two-position solenoid. Switch 56 closes at the raised limit and 57 at the lowered limit. T.18 runs the motor continuously and pauses briefly on each up/down switch edge; a missing edge produces "Drawbridge Up Switch Bad" or "Drawbridge Down Switch Bad". PinMAME's own mm_handleMech models the same behaviour with a 500-step position counter that closes 56 near steps 490-10 and 57 near steps 240-260, and it starts a session with the drawbridge up.
  • Castle gate / portcullis (solenoids 5 power and 6 hold). T.19 first lowers the drawbridge and refuses to run at all without the drawbridge-down switch. With the gate closed the ball path is moat-enter 41, castle-gate 37, then moat-enter 41 again as the ball rebounds. With the gate held open the path is 41, 37, then castle-lock 44 into the lock area. The ROM drops the hold coil after two idle minutes so it cannot overheat.
  • Castle lock and left popper (solenoid 3). Balls that pass the gate are held behind switch 44 and collect on left-popper opto 36; solenoid 3 returns them to the playfield.
  • Exploding castle (solenoid 4). Pressing Enter inside T.19 shakes the castle three times and then explodes it for roughly four seconds. The superstructure has to be reset by hand afterwards.

Trolls

Two trolls rise through the playfield on Fliptronic upper-flipper circuits: left troll on public solenoids 33 power and 34 hold, right troll on 35 and 36. The flipper circuit diagram on manual page 3-11 says so in a footnote: "The UPPER RIGHT FLIPPER circuit is used for the LEFT TROLL. The UPPER LEFT FLIPPER circuit is used for the RIGHT TROLL." This is the clearest place where physical kind and emulator transport differ: these are troll actuators, not flippers, and mmGameData declares FLIP_SOL(FLIP_L) so PinMAME never drives them as flippers. Position switch 74 (left) or 75 (right) closes while the troll is raised, and PinMAME's mm_handleMech ties each up-switch directly to its hold output. A ball striking a raised troll closes under-playfield switch 45 or 46. Troll targets 15 and 25 are the standups behind each troll, reachable while it is down. The ROM lowers a raised troll after two idle minutes so the troll coils cannot overheat; a recreation must reproduce that timeout rather than leave a troll up indefinitely.

Tower, diverter, and lock post

T.17 documents two tower states. With the tower diverter (solenoids 15 power and 16 hold) up, a right-ramp shot runs right-ramp-enter 63 then right-ramp-exit 64 and returns to the right flipper. With the diverter held down, the shot runs 63, raises tower lock post 26, climbs into the tower, and closes tower-exit switch 58. The ROM returns to the ramp state after two idle minutes so the diverter coil cannot overheat. The lock post works inverted in PinMAME's simulation: a held ball is released when the post output drops, so drive the post's physical state from the output rather than from a scripted timer.

Loops and control gates

Two solenoid gates decide whether a loop shot completes or feeds the jets. T.16 gives the causality exactly: travelling left to right the right gate (solenoid 27) opens on the second left-loop switch, Left Loop High (66); travelling right to left the left gate (solenoid 28) opens on the second right-loop switch, Right Loop High (68). When the opposite gate stays closed the ball is routed through Left Top Lane 47 or Right Top Lane 48 into the jet bumpers instead. The ROM's error strings distinguish the two failure modes: "Gate Stuck Closed" surfaces in loops mode and "Gate Stuck Open" in jets mode.

Standard devices

Three A-12030-3 jet bumpers (coils 12/13/14, skirt switches 53/54/55) sit above the right ramp entrance. Two slingshots (coils 10/11) each carry an A-17800 kick switch and a separate A-17794 score switch with a diode attached; only the score switch reaches the matrix, at 51 and 52. The right three-bank (switches 71/72/73, assembly A-21576-4) is a plain standup bank with no reset coil - it is not a drop-target bank. Catapult target 12 guards the catapult saucer; a ball entering the saucer closes switch 38 and coil 8 flings it up the left ramp path. Merlin's Magic hole under the jets is right-eject switch 28 with coil 9.

Lamps, flashers, and general illumination

All 64 lamp-matrix addresses are populated. Two addresses drive two bulbs: 15 "Save the Damsel!" and 78 "Super Jets". They are different cases. Lamp 15 is one large circular insert lit by two bulbs - the lamp-locations map draws it as a single circle between the triangular 14 and the small rectangular 16 - so it has one placement and a physical quantity of two. Lamp 78 is two separate arrow inserts, one in each orbit lane; the map numbers only the right-hand arrow but draws the matching left-hand arrow uncalled-out, and the retained table binds an emitter to each, so both are placed. Lamps 87 and 88 are the bulbs inside the illuminated Launch and Start buttons and are cabinet hardware. The lamp-locations parts list calls lamp 72 "Ball Save" while the lamp matrix prints the insert legend "Magic Shield"; they are the same insert and the printed insert legend is canonical here.

Flashers 17-25 all drive two bulbs. Addresses 17-20 have a playfield flasher and a separate insert-panel flasher behind the backbox translite - they are the only flasher circuits with two voltage and two drive connections, on J133-6/J134-5 and J111/J112 - so only their playfield bulb gets a coordinate. Addresses 21-25 have two bulbs each, and for 22 and 25 the manual's Note 2 places one on the playfield and one on back-panel assembly A-20158; the retained table has exactly that pair at the rear playfield edge.

GI strings 01-03 are the bottom, middle, and top playfield circuits and the retained script drives them from UpdateGI as the GIB, GIM, and GIT emitter arrays. Strings 04 and 05 are the top and bottom insert panel circuits behind the translite; the printed table marks both "always on, they do not brighten and dim", string 05 also feeds a cabinet connector, and the retained script deliberately leaves both cases empty. The manual prints no per-string bulb count, so the physical quantities recorded here come from the retained table's emitter arrays.

Startup and service state a recreation must establish

  • Trough optos 32-35 asserted with four balls, drawbridge-up switch 56 asserted, coin-door-closed switch 22 asserted.
  • Switch 24 is a permanently closed link (part 5643-15190-00) that proves the matrix is connected; hold it active. The retained VPW script initializes it to 0, which is a table simplification with no observed effect.
  • The A-18249-3 coin-door interlock removes +50 V and +20 V solenoid power when the door opens; with the door open the ROM shows "COIN DOOR IS OPEN / COILS AND FLASHERS ARE DISABLED".
  • PinMAME reports state channel 29 active throughout attract mode. Channel 31 is the ROM's fast-flip flag, not a physical game-on relay: the harness saw it active during ball play and in an attract frame shortly after the coin-door Enter button was released, so do not treat it as a ball-in-play indicator. Neither channel is a physical Medieval Madness device.
  • The pinned harness reproduced a first-boot factory reset ("FACTORY SETTINGS RESTORED" then "BOOKKEEPING TOTALS CLEARED") from empty NVRAM.

Production split and two documented manual disagreements

Williams changed five subassemblies on July 21, 1997, and the parts section prints both configurations. Games produced before that date use A-21712-2 (up/down post), A-21733 (popper), A-21719 (troll), A-21723 (drawbridge/gate) and A-21976 (drawbridge switch/bracket); later games use A-21712-5, A-22027, A-22034, A-22033 and A-22036. The coil and switch part numbers inside them are identical - the A-21719 and A-22034 troll assemblies both carry an FL-11753 coil and a 5647-12693-11 miniature switch - so only the enclosing assembly differs and a recreation does not change behaviour, but the assembly numbers are recorded for both builds.

Two places in the manual disagree with themselves, and both are recorded rather than averaged:

  • Fliptronic positions F5-F8. The game-specific switch-locations parts list on page 2-48 marks all four Not Used, which matches a machine with no upper flippers. The flipper circuit diagram on page 3-11 nonetheless draws F6 and F8 as upper-flipper cabinet optos and labels F5 and F7 "Basket Made Opto" and "Basket Hold" - devices Medieval Madness does not have. Page 3-11 is a reused Williams template, so the game-specific parts list governs and public switches 115-118 stay unused.
  • Lamp 72. The lamp matrix prints the insert legend "Magic Shield"; the lamp-locations parts list calls the same socket "Ball Save". Same insert, two names; the printed insert legend is canonical here.

Supply voltages and the general-illumination circuit

Manual page 3-11 shows the flipper and troll circuits fed from +50 V on J119 (RED-GREEN, RED-BLUE, RED-VIOLET and RED-GRAY), and the drawbridge motor from GRAY-YELLOW +12 V on J139-2. Manual page 3-10 shows all five general-illumination strings running from the 6.3 V transformer secondary, with the three playfield strings on a triac-switched circuit that can be dimmed and the two insert-panel strings on a bridge-rectified circuit that cannot. That page bounds every string at up to 18 bulbs but publishes no exact per-string count, and no parts page itemizes the insert-panel sockets, so the physical bulb count for GI 04 and GI 05 is deliberately not asserted here and has to be read from the machine. The three playfield strings take their counts and coordinates from the retained table's emitter arrays.

Author construction checklist

  • Build the four-ball trough with the drain at Trough Ball 4, the auto-plunger shooter lane, both slingshots, three jet bumpers, the right three-bank, the catapult saucer and its guard target, Merlin's Magic eject, both loops with their two control gates, both ramps, the tower with its diverter and lock post, both trolls with their targets, and the complete castle (drawbridge motor, portcullis power/hold, castle lock, left popper, exploding castle).
  • Preserve opto polarity for 31-37 and 41 and for the two flipper-button optos; do not invert what PinMAME already normalizes.
  • Treat solenoids 37 and 41 as one drawbridge motor, and 33-36 as troll actuators rather than flippers.
  • Reproduce the three anti-overheat timeouts: tower-lock mode reverts after two minutes, castle mode reverts after two minutes, and a raised troll lowers after two minutes.
  • Pick the pre- or post-July-21-1997 assembly set to match the machine being recreated; behaviour is identical, only the assembly part numbers change.
  • Bind every dedicated switch 1-8, every matrix position 11-88 including the printed Not Used positions, Fliptronic 111-118 with 115-118 explicitly not installed, the eight CPU DIP bits, solenoids 1-50, lamps 11-88, GI 0-4, and the 128x32 DMD.

Sources

  • manual.williams.medieval-madness.1997: operations manual 16-50059-101 front matter and Section 1, SHA-256 57d3b23e0d73e31318fb7054a1dc966db0924cf8f908a5844719ba9f50f0e672.
  • manual-parts.williams.medieval-madness.1997: Section 2 Parts Information, SHA-256 9baac8156b1115171c0c5fc1cced2a4bfa2280067c72a49b58678d89c70b6f1d.
  • manual-schematics.williams.medieval-madness.1997: Section 3 Wiring Diagrams and Schematics, SHA-256 1a426136cbc9df6297e8ea41d4f7b166d2b91aa2b188909b74d15be7b1c3d77d.
  • vpx-script.mm-vpw-1-0: retained known-working VPW v1.0 embedded script, SHA-256 cdc5590888d810a44b772ec327789362cd27dd7a6c58870bc148b2d87a0f90f8, binding mm_109b.
  • vpx-table.mm-vpw-1-0: retained table, SHA-256 9a05a555d03aca3d48d73b3e6566220b27fde46aa5d2517a08faacdbc58bcab9, bounds left=0 top=0 right=952.941 bottom=2164.706.
  • pinmame.core.4ec52ff0ac13: src/wpc/sims/wpc/full/mm.c and the WPC-95 core/solenoid/flipper handling at the pinned revision.
  • runtime.medieval-madness.boot-start-and-service: pinned LibPinMAME harness runs recorded in evidence/runtime/wpc-95/medieval-madness-boot-start-and-service.json.

ROM sets

Every driver that resolves to this physical machine.

ROM set Description Year Parent Hardware
mm_10pfxMedieval Madness (1.0 Pinball FX)
1.0 game ROM re-released by Zen Studios for Pinball FX with modified display text only. It is a WPC-95 game ROM image for the same physical machine, not a separate product; the physical playfield, controller generation, and every controller address are unchanged.
2018mm_10compatible
mm_10uMedieval Madness (1.0 Ultrapin)
1.0 game ROM re-released by Global VR for the Ultrapin cabinet with modified display text only. It is a WPC-95 game ROM image for the same physical machine; the physical playfield, controller generation, and every controller address are unchanged.
2006mm_10compatible
mm_109cMedieval Madness (1.09C Profanity)
Williams 1.09C home-machine game ROM with the profanity speech calls restored; speech content only, with no hardware or address difference.
1999mm_10identical
mm_109bMedieval Madness (1.09B)
Williams 1.09B home-machine coin-play game ROM. This is the driver the retained known-working VPW table binds to, and it drives the identical I/O inventory as 1.0.
1999mm_10identical
mm_109Medieval Madness (1.09)
Williams 1.09 home-machine game ROM; a later firmware revision of the same physical machine with no controller-address or playfield change.
1999mm_10identical
mm_10Medieval Madness (1.0)
Williams production 1.0 game ROM shipped with the physical machine and printed on the operations-manual power-up example (project 559, EPROM 1.0).
1997identical
mm_05Medieval Madness (0.50 Prototype)
Williams 0.50 prototype game ROM for the same physical Medieval Madness machine; the switch matrix, lamp matrix, solenoid/flasher table, and playfield hardware are unchanged.
1997mm_10identical

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

Pinball memory maps

External source LGPL-3.0-only3 maps

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.

mm_05.map.json

williams-wpc-12Kv5format 0.8

maps/williams/wpc/mm_05.map.json

Applies to ROMs
mm_05
Sections
auditschecksum16checksum8game_statehigh_scoreslast_played

williams-wpc-12K defines the RAM layout this map’s offsets are read against — the map is not interpretable without it.

mm_10.map.json

williams-wpc-12Kv5format 0.8

maps/williams/wpc/mm_10.map.json

Applies to ROMs
mm_10mm_10pfxmm_10u
Sections
auditschecksum16checksum8game_statehigh_scoreslast_playedmode_champions

williams-wpc-12K defines the RAM layout this map’s offsets are read against — the map is not interpretable without it.

mm_109.map.json

williams-wpc-12Kv5format 0.8

maps/williams/wpc/mm_109.map.json

Applies to ROMs
mm_109mm_109bmm_109c
Sections
auditschecksum16checksum8game_statehigh_scoreslast_playedmode_champions

williams-wpc-12K 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.4ec52ff0ac13

    Pinned catalog driver records for the mm_* clone tree

    by
    PinMAME contributors
    rev
    4ec52ff0ac13
  • PinMAME source

    BSD-3-Clause

    pinmame.core.4ec52ff0ac13

    Source locations

    src/wpc/sims/wpc/full/mm.c switch/solenoid defines, mmGameData GEN_WPC95 with wpc_dispDMD, FLIP_SW(FLIP_L|FLIP_U) with FLIP_SOL(FLIP_L), the inverted-switch mask 0x7f on column 3 and 0x01 on column 4, wpc_set_fastflip_addr(0x81), and mm_handleMech drawbridge/troll handling; src/wpc/core.h WPC solenoid numbering and WPC_swF1..WPC_swF8; src/wpc/core.c core_getSol WPC95 37..40 to 41..44 duplication; src/wpc/wpc.c WPC_FLIPPERSW95 inversion and the J111/fast-flip game-on state; src/libpinmame/libpinmame.h PINMAME_HARDWARE_GEN_WPC95=0x80

    by
    PinMAME contributors
    rev
    4ec52ff0ac13
  • Human review

    BSD-3-Clause

    controller-profile.pinmame-wpc-95

    WPC-95 public switch, DIP, solenoid, lamp, and five-GI address rules with the Fliptronic and LPDC mirror notes

    internal:controllers/pinmame/wpc-95.json
    by
    PinMAME contributors
    rev
    repository
  • Operator manual

    manual.williams.medieval-madness.1997

    Source locations

    Manifest ID archive.arcademanual_Medieval_Madness_1_OPS.williams.medieval-madness.1997.57d3b23e0d73; 89-page image-only scan of Williams operations manual 16-50059-101 (July 1997 FINAL) front matter and Section 1. Rendered page 2 carries the DIP-switch chart and the complete solenoid/flasher, general-illumination, flipper-circuit, and motor-circuit wiring table. Rendered pages 4-5 carry the security-CPU and coin-door interlock notices. Printed pages 1-19 through 1-24 carry the T.16 loop/gate, T.17 tower, T.18 drawbridge, T.19 castle-gate, T.20 trolls, and T.21 empty-balls mechanism procedures.

    external:pinmame-manuals/by-machine/williams.medieval-madness.1997/archive-arcademanual_Medieval_Madness_1_OPS/Medieval_Madness_1_OPS.pdf
    by
    Williams Electronics Games, Inc.; scan hosted by the Internet Archive
    sha256
    57d3b23e0d73…
  • Operator manual

    manual-parts.williams.medieval-madness.1997

    Source locations

    Manifest ID other.arcarc.williams.medieval-madness.1997.9baac8156b11; 57-page image-only scan of Section 2 Parts Information from the same manual. Printed page 2-46 is the lamp-locations parts list, 2-47 the lamp-locations playfield map, 2-48 the switch-locations parts list, 2-49 the switch-locations playfield map, 2-50 the solenoid/flashlamp-locations parts list, 2-51 the solenoid/flashlamp playfield map, 2-52 the lamp matrix, 2-53 the switch matrix, and 2-54 the solenoid/flasher table. The equivalent Internet Archive copy of Section 2 is retained at external:pinmame-manuals/by-machine/williams.medieval-madness.1997/archive-arcademanual_Medieval_Madness_2_OPS/Medieval_Madness_2_OPS.pdf with SHA-256 71d16833c4c5d562830da1310d05214912dd77e90e966111fe5615ec70770319.

    external:pinmame-manuals/by-machine/williams.medieval-madness.1997/arcarc/Medievel%20Madness%20Operations%20Manual.pdf
    by
    Williams Electronics Games, Inc.; scan hosted by Arcade Archive
    sha256
    9baac8156b11…
  • Operator manual

    manual-schematics.williams.medieval-madness.1997

    Source locations

    Manifest ID archive.arcademanual_Medieval_Madness_3_OPS.williams.medieval-madness.1997.1a426136cbc9; 29-page image-only scan of Section 3 Wiring Diagrams and Schematics, including the switch-matrix and dedicated-switch circuits (3-2, 3-3), the lamp-matrix circuit (3-4), the solenoid/flashlamp circuit table and wiring (3-5 through 3-9), the general-illumination circuit (3-10), and the flipper circuit diagram (3-11).

    external:pinmame-manuals/by-machine/williams.medieval-madness.1997/archive-arcademanual_Medieval_Madness_3_OPS/Medieval_Madness_3_OPS.pdf
    by
    Williams Electronics Games, Inc.; scan hosted by the Internet Archive
    sha256
    1a426136cbc9…
  • Human review

    manual-support.williams.medieval-madness.1997

    Source locations

    Retained human transcription of every rendered manual table used by this definition, together with the rendered PNG page cache under external:pinmame-manuals/rendered/williams.medieval-madness.1997/. All four retained PDFs are image-only, so the OCR text under external:pinmame-review-artifacts/medieval-madness-1997/ocr/ is a search index only and never an authority.

    external:pinmame-review-artifacts/medieval-madness-1997/manual-transcription.md
    by
    pinmame-game-defs curation
    rev
    2026-08-05
    sha256
    b0905ec59747…
  • VPX table

    vpx-table.mm-vpw-1-0

    Source locations

    Retained known-working VPW v1.0 recreation of the physical machine (table version 1.0, save revision 941). Exact playfield bounds are left=0 top=0 right=952.941 bottom=2164.706; normalized coordinates are x/952.941 and y/2164.706. Geometry authority only for named table objects.

    external:pinmame-vpx-sources/williams/medieval-madness-1997/source/Medieval%20Madness%20(Williams%201997)%20VPW%20v1.0.vpx
    by
    VPW (Sixtoe, Tomate, Apophis, DaRDog, Mcarter, ClarkKent, Bord, CainArg, Freezy, HauntFreaks, MajorDrain, Tyson171, Niwak, Gedankekojote97, PinStratsDan and the testers named in the table description)
    sha256
    9a05a555d03a…
  • VPX script

    vpx-script.mm-vpw-1-0

    Source locations

    Retained embedded VPW script (211,084 bytes). Runtime and mechanism-causality authority: cGameName = "mm_109b", Const UseSolenoids = 2 (fast flips), Const UseLamps = 1 with vpmMapLights AllLamps, the SolCallback/SolModcallback table for solenoids 1-37 and core.vbs sLRFlipper/sLLFlipper, the Controller.Switch and vpmTimer.PulseSw switch semantics, the trough and drawbridge state machines, and the GiCallBack2 UpdateGI mapping of GI 0/1/2 to the GIB/GIM/GIT playfield emitter arrays.

    external:pinmame-vpx-sources/williams/medieval-madness-1997/extracted-vpxtool/script.vbs
    by
    VPW table authors
    sha256
    cdc5590888d8…
  • VPX table

    vpx-extraction.mm-vpw-1-0

    Source locations

    Canonical manifest covering every sorted relative POSIX path, byte size, and SHA-256 under extracted-vpxtool; manifest SHA-256 2f5a08bb9ce459a90934b3999e6ee96b15b4885f5a07dee8681c1f2b3ca50442; 2793 files, 1073881024 bytes, produced with vpxtool git:v0.33.3 from the retained table. Bounds are left=0 top=0 right=952.941 bottom=2164.706.

    external:pinmame-vpx-sources/williams/medieval-madness-1997/extracted-vpxtool.manifest.json
    by
    vpxtool extraction
  • ROM analysis

    rom.mm-authorized-corpus

    Pre-existing authorized local ROM archive used only to boot the pinned harness; ROM bytes are never copied into this repository

    external:pinmame-roms/mm_10.zip
    by
    Authorized local evidence
    sha256
    aa949281de6f…
  • Runtime run

    runtime.medieval-madness.boot-start-and-service

    Pinned LibPinMAME harness runs that boot mm_10, add credits, start a ball, and hold the coin-door service buttons with the coin door open

    internal:evidence/runtime/wpc-95/medieval-madness-boot-start-and-service.json
    by
    Generated locally from PinMAME and the user-authorized ROM corpus; ROM bytes remain external
    rev
    4ec52ff0ac13

Something wrong or missing?

Canonical machine fixes belong in the definition itself. Editing on GitHub forks it for you and opens the pull request; no local checkout needed.

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