Street Fighter II

Partial

Gottlieb1993GTS3gottlieb.street-fighter-ii.1993

Wire it up

what an authoring tool needs first
Bind this ROM
sfight2

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

Controller platform
pinmame.gts3

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
5–151 (41)
Solenoids
1–32 (30)
Lamps
0–67 (55)

Coverage

Partial

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

Catalog Identity
observed
Address Enumeration
candidate
Semantic Naming
candidate
Physical Wiring
candidate
Mechanisms
unknown
Variant Coverage
candidate
Recreation Knowledge
candidate
Still missing · 13
IdentityController PlatformInput EnumerationInput SemanticsOutput EnumerationOutput SemanticsDisplay InventoryMechanism InventoryMechanism BehaviorPolarityVariant DifferencesRecreation NotesProvenance

Switches

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

41 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
41–48
49–56
57–64
65–72
73–80
81–88
89–96
97–104
105–112
113–120
121–128
129–136
137–144
145–152
Hover or tap an address to identify it.
41 shown
# Name Device ID Evidence
5
Tournament Mode
switch.tournament-mode candidate
10
Pop Bumper
switch.pop-bumper candidate
11
Left Slingshot
switch.left-slingshot candidate
12
Right Slingshot
switch.right-slingshot candidate
13
Left Kicker (Saucer)
switch.left-kicker-saucer candidate
14
Right Kicker (Saucer)
switch.right-kicker-saucer candidate
15
Car Crunch Hit
switch.car-crunch-hit candidate
20
Standup Target (Swapped with 30)
switch.standup-target-swapped-with-30 candidate
21
Trough (Outhole / Drain)
switch.trough-outhole-drain candidate
22
Shooter Lane / Plunger Lane
switch.shooter-lane-plunger-lane candidate
30
Standup Target (Swapped with 20)
switch.standup-target-swapped-with-20 candidate
31
Trough Ball Stack
switch.trough-ball-stack candidate
32
Rollover
switch.rollover candidate
33
Left VUK / Scoop
switch.left-vuk-scoop candidate
34
Right VUK / Scoop
switch.right-vuk-scoop candidate
80
Left Ramp Entry
switch.left-ramp-entry candidate
81
Car Crunch Complete
switch.car-crunch-complete candidate
82
Left Flipper Button
switch.flipper-lower-left candidate
83
Right Flipper Button
switch.flipper-lower-right candidate
90
Left Ramp Made / Ramp Switch
switch.left-ramp-made-ramp-switch candidate
91
Right Ramp Entry / Ramp Switch
switch.right-ramp-entry-ramp-switch candidate
92
Standup Target (Left Bank 1)
switch.standup-target-left-bank-1 candidate
93
Standup Target (Left Bank 2)
switch.standup-target-left-bank-2 candidate
94
Standup Target (Left Bank 3)
switch.standup-target-left-bank-3 candidate
95
Left Outlane / Return Lane
switch.left-outlane-return-lane candidate
96
Right Outlane / Return Lane
switch.right-outlane-return-lane candidate
100
Spinner
switch.spinner candidate
101
Right Ramp Made / Ramp Switch
switch.right-ramp-made-ramp-switch candidate
102
Standup Target (Center Bank 1)
switch.standup-target-center-bank-1 candidate
103
Standup Target (Center Bank 2)
switch.standup-target-center-bank-2 candidate
104
Standup Target (Center Bank 3)
switch.standup-target-center-bank-3 candidate
105
Left Slingshot Area / Lane Switch
switch.left-slingshot-area-lane-switch candidate
106
Right Slingshot Area / Lane Switch
switch.right-slingshot-area-lane-switch candidate
110
Left Ramp Exit / Ramp Switch
switch.left-ramp-exit-ramp-switch candidate
111
Right Ramp Exit / Ramp Switch
switch.right-ramp-exit-ramp-switch candidate
112
Standup Target (Right Bank 1)
switch.standup-target-right-bank-1 candidate
113
Standup Target (Right Bank 2)
switch.standup-target-right-bank-2 candidate
114
Rollover / Lane Switch
switch.rollover-lane-switch candidate
115
Rollover / Lane Switch
switch.rollover-lane-switch.115 candidate
116
Rollover / Lane Switch
switch.rollover-lane-switch.116 candidate
151
Tilt (Plumb Bob)NC
switch.tilt-plumb-bob candidate

Controlled devices

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

Coils, magnets & motors

19
19 shown
# Name Device ID Evidence
1
Pop Bumper
device.pop-bumper candidate
2
Left Slingshot
device.left-slingshot candidate
3
Right Slingshot
device.right-slingshot candidate
4
Left VUK / Scoop Kicker
device.left-vuk-scoop-kicker candidate
5
Right VUK / Scoop Kicker
device.right-vuk-scoop-kicker candidate
6
Diverter 1 (Left)
device.diverter-1-left candidate
7
Diverter 2 (Right)
device.diverter-2-right candidate
8
Left Ramp Diverter
device.left-ramp-diverter candidate
9
Right Ramp Diverter
device.right-ramp-diverter candidate
10
Left Kicker Eject
device.left-kicker-eject candidate
11
Right Kicker Eject
device.right-kicker-eject candidate
14
Car Crunch Reset Motor
device.car-crunch-reset-motor candidate
24
Car Flipper (Underplayfield)
device.car-flipper-underplayfield candidate
25
Chunli Spinning Flipper Motor
device.chunli-spinning-flipper-motor candidate
27
Sound Solenoid
device.sound-solenoid candidate
28
Ball Release (Trough to Shooter Lane)
device.ball-release-trough-to-shooter-lane candidate
29
Trough Eject (Outhole to Trough)
device.trough-eject-outhole-to-trough candidate
30
Knocker
device.knocker candidate
32
Game On Relay
device.game-on-relay candidate

Flashers

11
11 shown
# Name Device ID Evidence
15
Flasher 15
device.flasher-15 candidate
16
Flasher 16
device.flasher-16 candidate
17
Flasher 17
device.flasher-17 candidate
18
Flasher 18
device.flasher-18 candidate
19
Flasher 19
device.flasher-19 candidate
20
Flasher 20
device.flasher-20 candidate
21
Flasher 21
device.flasher-21 candidate
22
Flasher 22
device.flasher-22 candidate
23
Flasher 23
device.flasher-23 candidate
26
Backglass GI Relay
device.backglass-gi-relay candidate
31
GI Relay (Playfield)
device.gi-relay-playfield candidate

Lamps

55

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
65–72
Hover or tap an address to identify it.

Outside the matrix0 — dedicated, diagnostic or flipper-column addresses. See the table below.

55 shown
# Name Device ID Evidence
0
outputs 0
lamp.outputs-0 candidate
2
outputs 2
lamp.outputs-2 candidate
3
outputs 3
lamp.outputs-3 candidate
4
outputs 4
lamp.outputs-4 candidate
5
outputs 5
lamp.outputs-5 candidate
6
outputs 6
lamp.outputs-6 candidate
7
outputs 7
lamp.outputs-7 candidate
10
outputs 10
lamp.outputs-10 candidate
11
outputs 11
lamp.outputs-11 candidate
12
outputs 12
lamp.outputs-12 candidate
13
outputs 13
lamp.outputs-13 candidate
14
outputs 14
lamp.outputs-14 candidate
15
outputs 15
lamp.outputs-15 candidate
16
outputs 16
lamp.outputs-16 candidate
17
outputs 17
lamp.outputs-17 candidate
20
outputs 20
lamp.outputs-20 candidate
21
outputs 21
lamp.outputs-21 candidate
22
outputs 22
lamp.outputs-22 candidate
23
outputs 23
lamp.outputs-23 candidate
24
outputs 24
lamp.outputs-24 candidate
25
outputs 25
lamp.outputs-25 candidate
26
outputs 26
lamp.outputs-26 candidate
27
outputs 27
lamp.outputs-27 candidate
30
outputs 30
lamp.outputs-30 candidate
31
outputs 31
lamp.outputs-31 candidate
32
outputs 32
lamp.outputs-32 candidate
33
outputs 33
lamp.outputs-33 candidate
34
outputs 34
lamp.outputs-34 candidate
35
outputs 35
lamp.outputs-35 candidate
36
outputs 36
lamp.outputs-36 candidate
37
outputs 37
lamp.outputs-37 candidate
40
outputs 40
lamp.outputs-40 candidate
41
outputs 41
lamp.outputs-41 candidate
42
outputs 42
lamp.outputs-42 candidate
43
outputs 43
lamp.outputs-43 candidate
44
outputs 44
lamp.outputs-44 candidate
45
outputs 45
lamp.outputs-45 candidate
46
outputs 46
lamp.outputs-46 candidate
47
outputs 47
lamp.outputs-47 candidate
50
outputs 50
lamp.outputs-50 candidate
51
outputs 51
lamp.outputs-51 candidate
52
outputs 52
lamp.outputs-52 candidate
53
outputs 53
lamp.outputs-53 candidate
54
outputs 54
lamp.outputs-54 candidate
55
outputs 55
lamp.outputs-55 candidate
56
outputs 56
lamp.outputs-56 candidate
57
outputs 57
lamp.outputs-57 candidate
60
outputs 60
lamp.outputs-60 candidate
61
Alphanumeric / Topper Lamp 1
lamp.alphanumeric-topper-lamp-1 candidate
62
Alphanumeric / Topper Lamp 2
lamp.alphanumeric-topper-lamp-2 candidate
63
Alphanumeric / Topper Lamp 3
lamp.alphanumeric-topper-lamp-3 candidate
64
Alphanumeric / Topper Lamp 4
lamp.alphanumeric-topper-lamp-4 candidate
65
Alphanumeric / Topper Lamp 5
lamp.alphanumeric-topper-lamp-5 candidate
66
Alphanumeric / Topper Lamp 6
lamp.alphanumeric-topper-lamp-6 candidate
67
Alphanumeric / Topper Lamp 7
lamp.alphanumeric-topper-lamp-7 candidate

Recreation notes

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

Coverage
partial - source-derived recreation knowledge requiring validation

Overview

Legacy evidence identifies this candidate as Gottlieb (1993). The information below is preserved for recreation work but is not automatically treated as validated physical-machine fact.

Playfield devices

Switch, lamp/GI, and controlled-device candidates are in the adjacent machine definition. Source-specific implementation notes are retained below.

Custom mechanisms

No custom mechanism conclusion has been validated. Manuals, schematics, PinMAME source, and gameplay evidence still need to be checked.

Ball-state transitions

Ball paths, trough ordering, locks, kickouts, and causal transitions have not yet been normalized. Relevant source notes follow under Evidence notes.

Controller interactions

Controller callbacks and bindings are candidate evidence only until reconciled against PinMAME and physical documentation.

Service and setup information

Unknown; locate operator/service documentation.

Timing and tuning observations

Source timing values may describe a particular VPX implementation rather than physical hardware and require review.

Recreation guidance

Do not treat this partial definition as a complete authoring specification. Resolve every coverage requirement and conflict before promotion.

Evidence notes

  • games/street-fighter-ii.json#/switches/0._vbscript_name: swTournament
  • games/street-fighter-ii.json#/switches/0._note: Const swTournament = 5. Controller.Switch(5) set on RightMagnaSave key.
  • games/street-fighter-ii.json#/switches/1._note: vpmTimer.PulseSw 10. Bumper1_Hit fires PulseSw 10.
  • games/street-fighter-ii.json#/switches/2._note: vpmTimer.PulseSw(11). Fired from LeftSlingShot_Slingshot event.
  • games/street-fighter-ii.json#/switches/3._note: vpmTimer.PulseSw(12). Fired from RightSlingShot_Slingshot event.
  • games/street-fighter-ii.json#/switches/4._note: Controller.Switch(13) on/off via sw13_Hit/UnHit. Kicked by SolOutSw13 (sol 10).
  • games/street-fighter-ii.json#/switches/5._note: Controller.Switch(14) on/off via sw14_Hit/UnHit. Kicked by SolOutSw14 (sol 11).
  • games/street-fighter-ii.json#/switches/6._note: vpmTimer.PulseSw 15. Fired in UpdateCar_Timer when car crunch collision occurs (deltay>0 and dCrunch<CrunchDist). Not a physical VPX switch.
  • games/street-fighter-ii.json#/switches/7._note: Controller.Switch(21) = 1 in sw21_Hit. Trough eject sol 29 kicks from sw21. sw31b_UnHit clears Controller.Switch(21). This is the primary drain/outhole switch.
  • games/street-fighter-ii.json#/switches/8._note: Controller.Switch(22) on/off. Checked in KeyUp to determine plunger release sound.
  • games/street-fighter-ii.json#/switches/9._note: sw30_Hit fires vpmTimer.PulseSw 20 (NOT 30). Comment says 'Switches 20 and 30 need to be swapped. Need to confirm -FIXME'. Physical VPX target sw30 sends ROM switch 20.
  • games/street-fighter-ii.json#/switches/10._note: sw20_Hit fires vpmTimer.PulseSw 30 (NOT 20). Comment says 'Switches 20 and 30 need to be swapped. Need to confirm -FIXME'. Physical VPX target sw20 sends ROM switch 30.
  • games/street-fighter-ii.json#/switches/11._note: Controller.Switch(31) on/off via sw31a_Hit/UnHit. Part of custom 3-ball trough chain: sw31o -> sw31a -> sw31b -> sw21. sw31a is the middle trough position.
  • games/street-fighter-ii.json#/switches/12._note: Controller.Switch(32) on/off via sw32_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/13._note: Controller.Switch(33) on/off. sw33_Hit also calls WireRampOff. Kicked by SolOutSw33 (sol 4) with kickz.
  • games/street-fighter-ii.json#/switches/14._note: Controller.Switch(34) on/off. sw34_Hit also calls WireRampOff. Kicked by SolOutSw34 (sol 5) with kickz.
  • games/street-fighter-ii.json#/switches/15._note: Controller.Switch(80) on/off. sw80_Hit calls WireRampOff then WireRampOn True (plastic ramp).
  • games/street-fighter-ii.json#/switches/16._note: vpmTimer.PulseSw 81. Fired in UpdateCar_Timer when dCrunch >= CrunchDist (full car crush). Also triggers F01 flasher. Not a physical VPX switch.
  • games/street-fighter-ii.json#/switches/17._note: Controller.Switch(82) set in KeyDown/KeyUp for LeftFlipperKey. GTS3 flipper button switch convention.
  • games/street-fighter-ii.json#/switches/18._note: Controller.Switch(83) set in KeyDown/KeyUp for RightFlipperKey. GTS3 flipper button switch convention.
  • games/street-fighter-ii.json#/switches/19._note: Controller.Switch(90) on/off. sw90_Hit calls WireRampOn True (plastic ramp).
  • games/street-fighter-ii.json#/switches/20._note: Controller.Switch(91) on/off. sw91_Hit calls WireRampOn False (wire ramp).
  • games/street-fighter-ii.json#/switches/21._note: STHit 92 — StandupTarget class with animated pushback. PulseSw 92 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/22._note: STHit 93 — StandupTarget class with animated pushback. PulseSw 93 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/23._note: STHit 94 — StandupTarget class with animated pushback. PulseSw 94 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/24._note: Controller.Switch(95) on/off via sw95_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/25._note: Controller.Switch(96) on/off via sw96_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/26._note: vpmTimer.PulseSw 100. Fired from sw100_Hit.
  • games/street-fighter-ii.json#/switches/27._note: Controller.Switch(101) on/off. sw101_Hit calls WireRampOn False (wire ramp).
  • games/street-fighter-ii.json#/switches/28._note: STHit 102 — StandupTarget class with animated pushback. PulseSw 102 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/29._note: STHit 103 — StandupTarget class with animated pushback. PulseSw 103 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/30._note: STHit 104 — StandupTarget class with animated pushback. PulseSw 104 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/31._note: Controller.Switch(105) on/off via sw105_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/32._note: Controller.Switch(106) on/off via sw106_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/33._note: Controller.Switch(110) on/off. sw110_UnHit calls WireRampOff.
  • games/street-fighter-ii.json#/switches/34._note: Controller.Switch(111) on/off via sw111_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/35._note: STHit 112 — StandupTarget class with animated pushback. PulseSw 112 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/36._note: STHit 113 — StandupTarget class with animated pushback. PulseSw 113 fired via STAnimate.
  • games/street-fighter-ii.json#/switches/37._note: Controller.Switch(114) on/off via sw114_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/38._note: Controller.Switch(115) on/off via sw115_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/39._note: Controller.Switch(116) on/off via sw116_Hit/UnHit.
  • games/street-fighter-ii.json#/switches/40._note: vpmNudge.TiltSwitch = 151.
  • games/street-fighter-ii.json#/coils/0._inferred_type: bumper
  • games/street-fighter-ii.json#/coils/0._vbscript_callback: (commented out)
  • games/street-fighter-ii.json#/coils/0._note: SolCallback(1) commented out with comment 'Pop bumper'. Handled by VPX physics.
  • games/street-fighter-ii.json#/coils/1._inferred_type: slingshot
  • games/street-fighter-ii.json#/coils/1._vbscript_callback: (commented out)
  • games/street-fighter-ii.json#/coils/1._note: SolCallback(2) commented out with comment 'Left sling'. Handled by VPX physics.
  • games/street-fighter-ii.json#/coils/2._inferred_type: slingshot
  • games/street-fighter-ii.json#/coils/2._vbscript_callback: (commented out)
  • games/street-fighter-ii.json#/coils/2._note: SolCallback(3) commented out with comment 'Right sling'. Handled by VPX physics.
  • games/street-fighter-ii.json#/coils/3._vbscript_callback: SolOutSw33
  • games/street-fighter-ii.json#/coils/3._inferred_type: ball_management
  • games/street-fighter-ii.json#/coils/3._note: Kicks ball out of left scoop (sw33). sw33.kickz 0,40,90,30.
  • games/street-fighter-ii.json#/coils/4._vbscript_callback: SolOutSw34
  • games/street-fighter-ii.json#/coils/4._inferred_type: ball_management
  • games/street-fighter-ii.json#/coils/4._note: Kicks ball out of right scoop (sw34). sw34.kickz 0,40,90,30.
  • games/street-fighter-ii.json#/coils/5._vbscript_callback: SolDiv1
  • games/street-fighter-ii.json#/coils/5._inferred_type: diverter
  • games/street-fighter-ii.json#/coils/5._note: Controls Diverter1 drop state and Diverter1F rotation.
  • games/street-fighter-ii.json#/coils/6._vbscript_callback: SolDiv2
  • games/street-fighter-ii.json#/coils/6._inferred_type: diverter
  • games/street-fighter-ii.json#/coils/6._note: Controls Diverter2 drop state and Diverter2F rotation.
  • games/street-fighter-ii.json#/coils/7._vbscript_callback: SolDiv3
  • games/street-fighter-ii.json#/coils/7._inferred_type: diverter
  • games/street-fighter-ii.json#/coils/7._note: Controls LRampF rotation. Toggles LeftRampDown/LeftRampUp collidable state for ramp up/down position.
  • games/street-fighter-ii.json#/coils/8._vbscript_callback: SolDiv4
  • games/street-fighter-ii.json#/coils/8._inferred_type: diverter
  • games/street-fighter-ii.json#/coils/8._note: Controls RRampF rotation. Toggles RightRampDown/RightRampUp collidable state for ramp up/down position.
  • games/street-fighter-ii.json#/coils/9._vbscript_callback: SolOutSw13
  • games/street-fighter-ii.json#/coils/9._inferred_type: ball_management
  • games/street-fighter-ii.json#/coils/9._note: Kicks ball from sw13 kicker. sw13.kick 200,14.
  • games/street-fighter-ii.json#/coils/10._vbscript_callback: SolOutSw14
  • games/street-fighter-ii.json#/coils/10._inferred_type: ball_management
  • games/street-fighter-ii.json#/coils/10._note: Kicks ball from sw14 kicker. sw14.kick 200,14.
  • games/street-fighter-ii.json#/coils/11._vbscript_callback: CarReset
  • games/street-fighter-ii.json#/coils/11._inferred_type: mechanism
  • games/street-fighter-ii.json#/coils/11._note: Resets car crunch mechanism to home position. bCarReset = True triggers UpdateCarReset which moves CarP.y back at vy_reset velocity.
  • games/street-fighter-ii.json#/coils/12._vbscript_callback: Flasher15
  • games/street-fighter-ii.json#/coils/12._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/12._note: SolModCallBack(15). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/13._vbscript_callback: Flasher16
  • games/street-fighter-ii.json#/coils/13._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/13._note: SolModCallBack(16). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/14._vbscript_callback: Flasher17
  • games/street-fighter-ii.json#/coils/14._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/14._note: SolModCallBack(17). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/15._vbscript_callback: Flasher18
  • games/street-fighter-ii.json#/coils/15._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/15._note: SolModCallBack(18). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/16._vbscript_callback: Flasher19
  • games/street-fighter-ii.json#/coils/16._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/16._note: SolModCallBack(19). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/17._vbscript_callback: Flasher20
  • games/street-fighter-ii.json#/coils/17._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/17._note: SolModCallBack(20). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/18._vbscript_callback: Flasher21
  • games/street-fighter-ii.json#/coils/18._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/18._note: SolModCallBack(21). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/19._vbscript_callback: Flasher22
  • games/street-fighter-ii.json#/coils/19._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/19._note: SolModCallBack(22). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/20._vbscript_callback: Flasher23
  • games/street-fighter-ii.json#/coils/20._inferred_type: flasher
  • games/street-fighter-ii.json#/coils/20._note: SolModCallBack(23). PWM flasher. AdjustBulbTint for incandescent simulation.
  • games/street-fighter-ii.json#/coils/21._vbscript_callback: SolRFlipper1
  • games/street-fighter-ii.json#/coils/21._inferred_type: flipper
  • games/street-fighter-ii.json#/coils/21._note: SolCallback(24). Comment: 'this is the underplayfield flipper'. Controls RightFlipper1 rotation and UpdateCar timer. Sets LowerFlipper flag.
  • games/street-fighter-ii.json#/coils/22._vbscript_callback: SolSpinChunli
  • games/street-fighter-ii.json#/coils/22._inferred_type: mechanism
  • games/street-fighter-ii.json#/coils/22._note: Drives the spinning Chunli flipper animation. SpinningFlipper.startangle rotated at 0.64 rate. 4-frame visual animation (SpinFlip1-4). Motor sound plays while enabled.
  • games/street-fighter-ii.json#/coils/23._vbscript_callback: SolBG
  • games/street-fighter-ii.json#/coils/23._inferred_type: mechanism
  • games/street-fighter-ii.json#/coils/23._note: Controls backglass GI. INVERTED: SolBG(False) = gibg.state=1 (ON). Separate from playfield GI (sol 31).
  • games/street-fighter-ii.json#/coils/24._vbscript_callback: vpmSolSound "SolOn",
  • games/street-fighter-ii.json#/coils/24._inferred_type: sound
  • games/street-fighter-ii.json#/coils/24._note: VPM sound solenoid. Plays SolOn sound effect.
  • games/street-fighter-ii.json#/coils/25._vbscript_callback: SolRelease
  • games/street-fighter-ii.json#/coils/25._inferred_type: ball_management
  • games/street-fighter-ii.json#/coils/25._note: Kicks ball from sw31o (deepest trough position) to shooter lane. sw31o.kick 57,10.
  • games/street-fighter-ii.json#/coils/26._vbscript_callback: SolTrough
  • games/street-fighter-ii.json#/coils/26._inferred_type: ball_management
  • games/street-fighter-ii.json#/coils/26._note: Kicks ball from sw21 (drain/outhole) into trough. sw21.kick 57,20.
  • games/street-fighter-ii.json#/coils/27._vbscript_callback: Knocker
  • games/street-fighter-ii.json#/coils/27._inferred_type: knocker
  • games/street-fighter-ii.json#/coils/27._note: Cabinet knocker solenoid. Calls KnockerSolenoid sub.
  • games/street-fighter-ii.json#/coils/28._vbscript_callback: GIState
  • games/street-fighter-ii.json#/coils/28._inferred_type: mechanism
  • games/street-fighter-ii.json#/coils/28._note: Playfield GI relay. INVERTED: GIState(False) = GI ON (gilvl=1). GIState(True) = GI OFF (gilvl=0). Controls all lights in GI array.
  • games/street-fighter-ii.json#/coils/29._vbscript_callback: (commented out)
  • games/street-fighter-ii.json#/coils/29._inferred_type: mechanism
  • games/street-fighter-ii.json#/coils/29._note: SolCallback(32) = 'GameOn' is commented out. Likely game-on relay but not implemented in VBS.
  • games/street-fighter-ii.json#/lamps/0._note: LM_I_L0 lightmap. Illuminates LFlip/RFlip area. UseLamps=1 (VPX built-in handling).
  • games/street-fighter-ii.json#/lamps/1._note: LM_CC_L02 lightmap. Car Crunch lamp 1 of 6. Illuminates car, lower playfield, layers.
  • games/street-fighter-ii.json#/lamps/2._note: LM_CC_L03 lightmap. Car Crunch lamp 2 of 6.
  • games/street-fighter-ii.json#/lamps/3._note: LM_CC_L04 lightmap. Car Crunch lamp 3 of 6.
  • games/street-fighter-ii.json#/lamps/4._note: LM_CC_L05 lightmap. Car Crunch lamp 4 of 6.
  • games/street-fighter-ii.json#/lamps/5._note: LM_CC_L06 lightmap. Car Crunch lamp 5 of 6.
  • games/street-fighter-ii.json#/lamps/6._note: LM_CC_L07 lightmap. Car Crunch lamp 6 of 6.
  • games/street-fighter-ii.json#/lamps/7._note: LM_I_L10 lightmap. Also has l10_sw95 association in VLM.
  • games/street-fighter-ii.json#/lamps/8._note: LM_I_L11 lightmap. Illuminates LSling and sw105 area.
  • games/street-fighter-ii.json#/lamps/9._note: LM_I_L12 lightmap. Illuminates RSling and sw106 area.
  • games/street-fighter-ii.json#/lamps/10._note: LM_I_L13 lightmap. Also has sw96 association in VLM.
  • games/street-fighter-ii.json#/lamps/11._note: LM_I_L14 lightmap. Illuminates LFlip/RFlip area.
  • games/street-fighter-ii.json#/lamps/12._note: LM_I_L15 lightmap. Illuminates LSling area.
  • games/street-fighter-ii.json#/lamps/13._note: LM_I_L16 lightmap.
  • games/street-fighter-ii.json#/lamps/14._note: LM_I_L17 lightmap. Has l17a_animate for white insert brightness trick.
  • games/street-fighter-ii.json#/lamps/15._note: LM_I_L20 lightmap. Illuminates RSling and Sling2 area.
  • games/street-fighter-ii.json#/lamps/16._note: LM_I_L21 lightmap. Illuminates RSling area.
  • games/street-fighter-ii.json#/lamps/17._note: LM_I_L22 lightmap. Has l22a_animate for white insert brightness trick.
  • games/street-fighter-ii.json#/lamps/18._note: LM_I_L23 lightmap. Has l23a_animate for white insert brightness trick.
  • games/street-fighter-ii.json#/lamps/19._note: LM_I_L24 lightmap.
  • games/street-fighter-ii.json#/lamps/20._note: LM_I_L25 lightmap.
  • games/street-fighter-ii.json#/lamps/21._note: LM_I_L26 lightmap. Has l26a_animate for white insert brightness trick.
  • games/street-fighter-ii.json#/lamps/22._note: LM_I_L27 lightmap. Also illuminates RRampArm.
  • games/street-fighter-ii.json#/lamps/23._note: LM_I_L30 lightmap. Illuminates LPF, sw104, sw94 area.
  • games/street-fighter-ii.json#/lamps/24._note: LM_I_L31 lightmap. Illuminates Car, LPF, sw104 area.
  • games/street-fighter-ii.json#/lamps/25._note: LM_I_L32 lightmap.
  • games/street-fighter-ii.json#/lamps/26._note: LM_I_L33 lightmap. Illuminates sw103 and sw113 standup target area.
  • games/street-fighter-ii.json#/lamps/27._note: LM_I_L34 lightmap. Has l34a_animate for white insert brightness trick. Illuminates sw103 and sw113 area.
  • games/street-fighter-ii.json#/lamps/28._note: LM_I_L35 lightmap. Illuminates Bumper1Ring, sw103, sw112, sw113, sw30 area.
  • games/street-fighter-ii.json#/lamps/29._note: LM_I_L36 lightmap. Illuminates Bumper1Ring, sw102, sw112, sw92 area.
  • games/street-fighter-ii.json#/lamps/30._note: LM_I_L37 lightmap. Has l37a_animate for white insert brightness trick. Illuminates Bumper1Ring, sw112, sw92 area.
  • games/street-fighter-ii.json#/lamps/31._note: LM_I_L40 lightmap. Illuminates upper left flipper area (LFlip1U).
  • games/street-fighter-ii.json#/lamps/32._note: LM_I_L41 lightmap. Illuminates left ramp arm and ramp area.
  • games/street-fighter-ii.json#/lamps/33._note: LM_I_L42 lightmap. Has l42a_animate. Illuminates left ramp arm, ramp, and Layer3.
  • games/street-fighter-ii.json#/lamps/34._note: LM_I_L43 lightmap. Illuminates left ramp, sw103, sw93 area.
  • games/street-fighter-ii.json#/lamps/35._note: LM_I_L44 lightmap. Illuminates left ramp, sw92, sw93 area.
  • games/street-fighter-ii.json#/lamps/36._note: LM_I_L45 lightmap. Has l45a_animate. Illuminates Bumper1Ring and sw92 area.
  • games/street-fighter-ii.json#/lamps/37._note: LM_I_L46 lightmap. Illuminates Car, LPF, sw103, sw113, sw93 area.
  • games/street-fighter-ii.json#/lamps/38._note: LM_I_L47 lightmap. Has l47a_animate. Illuminates Layer3, sw103, sw113.
  • games/street-fighter-ii.json#/lamps/39._note: LM_I_L50 lightmap. Illuminates upper left flipper area (LFlip1U).
  • games/street-fighter-ii.json#/lamps/40._note: LM_I_L51 lightmap. Illuminates upper left flipper area (LFlip1U).
  • games/street-fighter-ii.json#/lamps/41._note: LM_I_L52 lightmap. Has l52a_animate. Illuminates upper left flipper area (LFlip1U).
  • games/street-fighter-ii.json#/lamps/42._note: LM_I_L53 lightmap. Has l53a_animate. Illuminates left ramp arm upper and ramp area.
  • games/street-fighter-ii.json#/lamps/43._note: LM_I_L54 lightmap. Illuminates sw102 and sw92 area.
  • games/street-fighter-ii.json#/lamps/44._note: LM_I_L55 lightmap. Illuminates sw102, sw112, sw92 area.
  • games/street-fighter-ii.json#/lamps/45._note: LM_I_L56 lightmap. Illuminates sw102, sw112, sw92 area.
  • games/street-fighter-ii.json#/lamps/46._note: LM_F_L57 lightmap. Flasher-style lamp. Illuminates Bumper1Ring, SpinFlip1/4, sw102, sw103, sw112, sw113, sw92, sw93 area.
  • games/street-fighter-ii.json#/lamps/47._note: LM_I_L60 lightmap. Illuminates Car, LPF, Layer1/2, RFlip1 area.
  • games/street-fighter-ii.json#/lamps/48._note: LM_A_L61 lightmap. Parts only. Topper/alphanumeric display backlight.
  • games/street-fighter-ii.json#/lamps/49._note: LM_A_L62 lightmap. Parts only.
  • games/street-fighter-ii.json#/lamps/50._note: LM_A_L63 lightmap. Parts only.
  • games/street-fighter-ii.json#/lamps/51._note: LM_A_L64 lightmap. Parts only.
  • games/street-fighter-ii.json#/lamps/52._note: LM_A_L65 lightmap. Parts only.
  • games/street-fighter-ii.json#/lamps/53._note: LM_A_L66 lightmap. Parts only.
  • games/street-fighter-ii.json#/lamps/54._note: LM_A_L67 lightmap. Parts only.
  • games/street-fighter-ii.json#/_source/confidence_notes: High confidence extraction from VPW VBScript by Apophis/Gedankekojote97/Sixtoe. Platform detected as Gottlieb System 3 from LoadVPM call: LoadVPM '03060000', 'gts3.VBS', 3.10. ROM name 'sfight2' from Const cGameName. Trough is a custom non-framework design: 3 balls initialized in kickers sw31o, sw31a, sw31b. sw31a maps to Controller.Switch(31), sw31b triggers Controller.Switch(21). Trough eject (sol 29) kicks from sw21, ball release (sol 28) kicks from sw31o. UpdateTrough cascades balls through the three kickers. No cvpmTrough framework used. Car Crunch mechanism uses a captive ball (CarBall) with physics simulation — sol 14 resets car position, sw15 fires on crunch hits, sw81 fires on full crunch completion. Chunli spinning flipper (sol 25) rotates a visual flipper with 4-frame animation. Flipper button switches sw82/sw83 are set directly in KeyDown/KeyUp handlers for left/right flipper buttons (GTS3 convention). Standup targets use VPW StandupTarget class with PulseSw in STAnimate function. Switches 20 and 30 are swapped in VBS code (FIXME comment in script — sw20_Hit fires PulseSw 30 and vice versa). Lamps identified from VLM lightmap arrays: L0, L10-L17, L20-L27, L30-L37, L40-L47, L50-L56, L57 (flasher-lamp), L60, L61-L67 (alphanumeric/topper). Car crunch lamps L02-L07 are CC (car crunch) lamps. GI is inverted — GIState(False) turns GI ON (gilvl=1). Sol 26 controls backglass GI relay. Flashers 15-23 use SolModCallback (PWM). Sol 24 is the car/underplayfield flipper (RightFlipper1). Sol 27 is a sound solenoid (vpmSolSound). Commented-out solenoids: 1 (pop bumper), 2 (left sling), 3 (right sling) — handled by VPX physics. Sol 12, 13 not used. Sol 32 (GameOn) commented out.

Unresolved questions

  • Is the I/O enumeration complete for every supported physical/controller variant?
  • Which inferred VPX behaviors reflect real hardware, and which are table-script conveniences?
  • Are all mechanism home states, sensors, motion constraints, and ball interactions documented?

Sources

  • legacy.game.street-fighter-ii: games/street-fighter-ii.json at the pinned migration revision.

ROM sets

Every driver that resolves to this physical machine.

ROM set Description Year Parent Hardware
sfight2bStreet Fighter II (rev. 2) 1993sfight2
sfight2aStreet Fighter II (rev. 1) 1993sfight2
sfight2Street Fighter II 1993

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

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.

  • Legacy definition

    legacy.game.street-fighter-ii

    games/street-fighter-ii.json; origin=vbscript-agent-extracted

    by
    pinmame-game-defs contributors
    rev
    4ea106d08072
  • PinMAME catalog

    BSD-3-Clause

    pinmame.catalog.4ec52ff0ac13

    PinmameGetGames

    by
    PinMAME contributors
    rev
    4ec52ff0ac13

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