I couldn't find easy to follow instructions for setting up Visual Pinball X with VPinMAME, so I created one. I've tested these instructions using Windows 11. With these settings, I can run any VPX game at full speed at 2560x1440 resolution on my i9-9900K CPU with a GTX1050Ti video card.
Replace "D:" with whatever drive you prefer in the instructions that follow.
Follow these steps in order.
Download and run "Main.Download.Installer.-.VPX72setup.exe". Install to D:\Visual Pinball
.
Example:
Invoke-WebRequest -Uri 'https://github.com/vpinball/vpinball/releases/download/v10.7.2-366-f94da1e/Main.Download.Installer.-.VPX72setup.exe' -OutFile 'VPX72setup.exe'
./VPX72setup.exe
Download and extract "VPinballX-10.8.0-1975-051104c-Release-win-x64.zip" to D:\Visual Pinball
, overwriting any existing files.
Example:
Invoke-WebRequest -Uri 'https://github.com/vpinball/vpinball/releases/download/v10.8.0-1975-051104c/VPinballX-10.8.0-1975-051104c-Release-win-x64.zip' -OutFile 'VPinballX-10.8.0-1975-051104c-Release-win-x64.zip'
Expand-Archive -Path 'VPinballX-10.8.0-1975-051104c-Release-win-x64.zip' -DestinationPath 'D:\Visual Pinball' -Force
Download and extract "VPinMAME-sc-3.6.0-998-a77c2d2-win-x64.zip" to D:\Visual Pinball\VPinMAME
, overwriting any existing files.
Example:
Invoke-WebRequest -Uri 'https://github.com/vpinball/pinmame/releases/download/v3.6.0-998-a77c2d2/VPinMAME-sc-3.6.0-998-a77c2d2-win-x64.zip' -OutFile 'VPinMAME-sc-3.6.0-998-a77c2d2-win-x64.zip'
Expand-Archive -Path 'VPinMAME-sc-3.6.0-998-a77c2d2-win-x64.zip' -DestinationPath 'D:\Visual Pinball\VPinMAME' -Force
Install both of these, if they aren't already installed. This is so that the correct 64-bit versions of the DLL are on the system. Otherwise it tries to load the 32-bit versions of xinput1_3.dll and d3dx9_43.dll that's in the Visual Pinball directory placed by the VPX 10.7.2 installer and then just crash.
- Visual Studio 2013 runtime - choose "vcredist_x64.exe".
- DirectX runtime
See VPX Launcher instructions for installation and use.
Note: Settings are stored in $env:AppData\VPinballX\VPinballX.ini
, unless Options > UI Options "Store settings file in same folder as executable" is checked.
cd 'D:\Visual Pinball'
Launch .\VPinballX64.exe
.
Press "Cancel" on the "Select a Table" dialog that shows.
Choose Preferences > Video/Graphics Options...
Click "Reset to Defaults", then "Set for High End PC".
- Choose monitor native resolution, color depth AND refresh rate, e.g. "2560 x 1440 (59Hz 16:9)"
- Exclusive full screen
- Under Anti-Aliasing, set "Post-Processed AA" and "Sharpen" to Disabled.
Click "Save Changes" then "Close".
Preferences > Scripting Security Options...
- Always create controls
Note: Settings are stored in HKEY_CURRENT_USER\Software\Freeware\Visual PinMame
. Defaults are under the "default" key.
cd 'D:\Visual Pinball\VPinMAME'
Run ./setup64.exe
Click "Install".
Click "OK" on "Global Settings"
On "Default Options" page:
- Skip Pinball Startup Test
- Cabinet Mode
- Show DMD/Display window
Click "OK".
Important: Text should now read "* Visual PinMAME Version ... is currently installed on your computer."
Run the following commands elevated.
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
New-ItemProperty -Path 'HKCR:.VPX' -Name '(Default)' -Value 'vpx_file'
New-Item -Path 'HKCR:vpx_file'
New-Item -Path 'HKCR:vpx_file\shell'
New-Item -Path 'HKCR:vpx_file\shell\open'
New-Item -Path 'HKCR:vpx_file\shell\open\command'
New-ItemProperty -Path 'HKCR:vpx_file\shell\open\command' -Name '(Default)' -Value '"D:\Visual Pinball\VPinballX64.exe" -ExtMinimized -Play "%1"'
Download Champion Pub (Williams 1998) and copy "Champion Pub (Williams 1998) v1.43.vpx" to D:\Visual Pinball\Tables
.
cd 'D:\Visual Pinball\Tables'
& '.\Champion Pub (Williams 1998) v1.43.vpx'
This should fail indicating "Champion Pub, the (1.6)" (cp_16) ROMs are missing.
To fix, download Champion Pub (1.6) - ROM - cp_16.zip and copy (not extract) the ZIP file to D:\Visual Pinball\VPinMAME\roms
.
The next time you start the table, it should work fine.
Button | Key |
---|---|
Insert Coin | 5 |
Start Button | 1 |
Left Flipper | L Shift |
Right Flipper | R Shift |
Plunger | Enter |
Left Nudge | Z |
Fwd Nudge | Space |
Right Nudge | / |
Left Magna Save | L Ctrl |
Right Magna Save | R Ctrl |
Lock bar Fire | Menu |
Custom 1 | Up |
Custom 2 (e.g. Plunger Strength) | Down |
Custom 3 | Left |
Custom 4 | Right |
Mech Tilt | T |
Exit Game | Q (twice) |
Pause | P (or ESC) |
Volume - | - |
Volume + | = |
Button | Key |
---|---|
VPinMAME Settings | F1 |
Key Assignment List | F2 |
VPM Restart | F3 |
Table Options | F6 |
Debug/Perf Info | F11 |
Tweak | F12 |
VPM Restart: If you see "Factory settings restored - bookkeeping totals cleared" message on a machine, press the "VPM Restart" key to get the machine ready to accept coins.
Links to some high quality verified tables. Extract/Copy all VPX files to D:\Visual Pinball\Tables
.
ROM set (if needed) is also named. Copy (not extract) the ROM ZIP file to D:\Visual Pinball\VPinMAME\roms
.
Table | Manufacturer | Year | ROM |
---|---|---|---|
8 Ball | Williams | 1966 | |
AC/DC | Stern | 2013 | acd_170h |
Addams Family | Bally | 1992 | taf_l7 |
Adventures of Rocky and Bullwinkle and Friends | Data East | 1993 | rab_320 |
Ali | Stern | 1980 | ali |
Amazing Spider-Man Classic Edition | Stern | 2016 | smanve_101 |
Apollo 13 | Sega | 1995 | apollo13 |
Atlantis | Bally | 1989 | atlantis |
Attack from Mars | Bally | 1995 | afm_113b |
Austin Powers | Stern | 2001 | austin |
Bad Cats | Williams | 1989 | bcats_l5 |
Bally Game Show | Bally | 1990 | gs_la3 |
Banzai Run | Williams | 1988 | bnzai_l3 |
Barracora | Williams | 1981 | barra_l1 |
Batman | Data East | 1991 | btmn_106 |
Big Bang Bar | Capcom | 1996 | bbb109 |
Big Brave | Gottlieb" | 1974 | |
Big Buck Hunter Pro | Stern | 2010 | bbh_170 |
Black Knight | Williams | 1980 | bk_l4 |
Black Rose | Bally | 1992 | br_l4 |
Bobby Orr Power Play Hockey | Bally | 1977 | pwerplay |
Bone Busters Inc. | Gottlieb | 1989 | bonebstr |
Bram Stoker's Dracula | Williams | 1993 | drac_l1 |
Breakshot | Capcom | 1996 | bsv103 |
Bugs Bunny's Birthday Ball | Bally | 1991 | bbnny_l2 |
Cactus Canyon | Bally | 1998 | cc_13 |
Cactus Jacks | Gottlieb | 1991 | cactjack |
Capersville | Bally | 1966 | |
Capt. Fantastic and The Brown Dirt Cowboy | Bally | 1976 | |
Card Whiz aka Royal Flush | Gottlieb | 1976 | |
Centigrade 37 | Gottlieb | 1977 | |
Champion Pub | Williams | 1998 | cp_16 |
Checkpoint | Data East | 1991 | ckpt_a17 |
Cheetah | Stern | 1980 | cheetah2 |
Circus | Gottlieb | 1980 | circus7 |
Cirqus Voltaire | Bally | 1997 | cv_20h |
Class of 1812 | Gottlieb | 1991 | clas1812 |
Congo | Williams | 1995 | congo_21 |
Creature from the Black Lagoon | Bally | 1992 | cftbl_l4 |
Deadly Weapon | Gottlieb | 1990 | deadweap |
Diner | Williams | 1990 | diner_l4 |
Dr. Dude & His Excellent Ray | Bally | 1990 | dd_l2 |
Earthshaker | Williams | 1989 | esha_la3 |
Eight Ball Deluxe | Bally | 1981 | eballdlx |
El Dorado | Gottlieb | 1975 | |
Elektra | Bally | 1981 | elektra |
Elvira and the Party Monsters | Bally | 1989 | eatpm_l4 |
Elvis | Stern | 2004 | elvis |
Embryon | Bally | 1981 | embryond |
Evel Knievel | Bally | 1977 | evelknie |
Fathom | Bally | 1981 | fathom |
Fireball | Bally | 1972 | |
Fish Tales | Williams | 1992 | ft_l5 |
Flash Gordon | Bally | 1981 | flashgdn |
Flash | Williams | 1979 | flash_l1 |
Flintstones | Williams | 1994 | fs_lx5 |
Four Million B.C. | Bally | 1971 | |
Freddy a Nightmare on Elm Street | Gottlieb | 1994 | freddy |
Genesis | Gottlieb | 1986 | genesis |
Genie | Gottlieb | 1979 | genie |
Gigi | Gottlieb | 1963 | |
Gilligan's Island | Bally | 1991 | gi_l9 |
Godzilla | Sega | 1998 | godzilla |
Goldeneye | Sega | 1996 | gldneye |
Gorgar | Williams | 1979 | grgar_l1 |
Guns N' Roses | Data East | 1994 | gnr_300 |
Harlem Globetrotters On Tour | Bally | 1979 | hglbtrtb |
Haunted House | Gottlieb | 1982 | hh |
Heat Wave | Williams | 1964 | |
High Speed | Williams | 1986 | hs_l4 |
Indiana Jones: The Pinball Adventure | Williams | 1993 | ij_l7 |
Indianapolis 500 | Bally | 1995 | i500_11r |
Iron Man Vault Edition | Stern | 2014 | im_185ve |
Jet Spin | Gottlieb | 1977 | |
Johnny Mnemonic | Williams | 1995 | jm_12r |
Jokerz! | Williams | 1988 | jokrz_l6 |
Judge Dredd | Bally | 1993 | jd_l1 |
Jungle Lord | Williams | 1981 | jngld_l2 |
Jurassic Park | Data East | 1993 | jupk_600 |
King of Diamonds | Gottlieb | 1967 | |
KISS | Bally | 1979 | kissc |
Lady Luck | Bally | 1986 | ladyluck |
Laser War | Data East | 1987 | lwar_a83 |
Last Action Hero | Data East | 1993 | lah_113 |
Lawman | Gottlieb | 1971 | |
Lethal Weapon 3 | Data East | 1992 | lw3_208 |
Lord of the Rings | Stern | 2003 | lotr |
Machine: Bride of Pin·bot | Williams | 1991 | bop_l7 |
Magic City | Williams | 1967 | |
Maverick | Data East | 1994 | mav_402 |
Medieval Madness | Williams | 1997 | mm_109c |
Metallica | Stern | 2013 | mtl_180h |
Monster Bash | Williams | 1998 | mb_106b |
Mustang | Stern | 2014 | mt_145h |
NBA Fastbreak | Bally | 1997 | nbaf_31 |
No Fear: Dangerous Sports | Williams | 1995 | nf_23x |
Operation Thunder | Gottlieb | 1992 | opthund |
Outer Space | Gottlieb | 1972 | |
OXO | Williams | 1973 | |
Party Zone | Bally | 1991 | pz_f4 |
Pat Hand | Williams | 1975 | |
Phantom of the Opera | Data East | 1990 | poto_a32 |
Police Force | Williams | 1989 | polic_l4 |
Popeye Saves the Earth | Bally | 1994 | pop_lx5 |
Quicksilver | Stern | 1980 | quicksil |
Radical | Bally | 1990 | radcl_l1 |
Red & Ted's Road Show | Williams | 1994 | rs_l6 |
Rescue 911 | Gottleb | 1994 | rescu911 |
Ripley's Believe it or Not | Stern | 2004 | ripleys |
Road Race | Gottlieb | 1969 | |
Robocop | Data East | 1989 | robo_a34 |
Robot | Zaccaria | 1985 | robot |
RollerCoaster Tycoon | Stern | 2002 | rctycn |
Safe Cracker | Bally | 1996 | sc_18n11 |
Simpsons Pinball Party | Stern | 2003 | simpprty |
Sing Along | Gottlieb | 1967 | |
Slick Chick | Gottlieb | 1963 | |
Sopranos | Stern | 2005 | sopranos |
Sorcerer | Williams | 1985 | sorcr_l2 |
Space Mission | Williams | 1976 | |
Star Trek: The Next Generation | Williams | 1993 | sttng_l7 |
Star Wars | Data East | 1992 | stwr_107 |
Stargod | Zaccaria | 1980 | stargoda |
Starship Troopers | Sega | 1997 | startrp2 |
Stellar Wars | Williams | 1979 | stlwr_l2 |
Stingray | Stern | 1977 | stingray |
Surfer | Gottlieb | 1976 | |
Tales from the Crypt | Data East | 1993 | tftc_400 |
Tales of the Arabian Nights | Williams | 1996 | totan_14 |
Tee'd Off | Gottlieb | 1993 | teedoff3 |
Terminator 2: Judgment Day | Williams | 1991 | t2_l8 |
Transformers | Stern | 2011 | tf_180 |
Tron Legacy | Stern | 2011 | |
Twilight Zone | Bally | 1993 | tz_94h |
Twister | Sega | 1996 | twst_405 |
Victory | Gottlieb | 1987 | victory |
Walking Dead | Stern | 2014 | twd_160h |
Wheel of Fortune | Stern | 2007 | wof_500 |
White Water | Williams | 1993 | ww_lh6 |
Who Dunnit | Bally | 1995 | wd_12 |
Who's Tommy Pinball Wizard | Data East | 1994 | tomy_500 |
Whoa Nellie! | Stern | 2015 | |
World Cup Soccer | Bally | 1994 | wcs_l2 |
X-Men | Stern | 2012 | xmn_151h |
DirectB2S files are "Background to 2nd Screen" files, which allow for animated back glass to be sent to a second screen. This is useful for dedicated machines, or perhaps if you want an animated back glass on a second monitor.
I don't recommend using B2S on a single monitor setup.
See the B2S Wiki for more details.
To install, download B2S Server and extract to D:\Visual Pinball\B2S server
.
Example:
Invoke-WebRequest -Uri 'https://github.com/vpinball/b2s-backglass/releases/download/v2.1.2/B2SServer-2.1.2-win.zip' -OutFile 'B2SServer-2.1.2-win.zip'
Expand-Archive -Path 'B2SServer-2.1.2-win.zip' -DestinationPath 'D:\Visual Pinball\B2S server' -Force
Run "./B2SBackglassServerRegisterApp.exe". It will elevate. If it asks you to re-register, choose "Yes".
If it asks you to register the context menu, choose "No".
Run "B2S_ScreenResIdentifier.exe" in Tables folder.
Example:
cd 'd:\Visual Pinball\Tables`
& 'd:\Visual Pinball\B2s server\B2S_ScreenResIdentifier.exe'
Set up configuration for your display configuration.
Ensure "generate comments" and "Enhanced res file" are checked, and press "Save settings".
You will now have a "ScreenRes.txt" file in your Tables folder, which B2S uses to determine where to place the background window.
If you decide you don't want B2S Server functionality, there's no built-in uninstall, but you can do the following in an elevated PowerShell to remove it.
reg.exe DELETE 'HKEY_CLASSES_ROOT\CLSID\{09E233A3-CC79-457A-B49E-F637588891E5}' /F
reg.exe DELETE 'HKEY_CLASSES_ROOT\B2S.Server' /F
In the Visual Pinball folder, there are other files. They're for playing older tables incompatible with the latest VPX. Here's what they are:
- VPinball8.exe - version 0.8.9506
- VPinball921.exe - version 9.2.1
- VPinball99_PhysMod5_Updated.exe - version 9.9.0 (Physmod5 AccelMod PlungerMod SurroundMod)
- VPinball995.exe - version 9.9.5
- VPinballX.exe - version 10.7.2 Final (Revision 366, f94da1e, 32bit)
- VPinballX64.exe - latest version
If everything is working for you with VPinballX64 (as it should), ignore all of those other versions.
Use: VPinballX64.exe -ExtractVBS [VPX_filename]
. A VBS file will be created in the current directory.
A set of pages I've found useful.
- Visual Pinball X releases
- PinMAME Releases
- VPX Pinball Tables (VPUniverse)
- PinMAME ROMs
- VPX Tables by VPinWorkshop
- VPX Tables by EMUnderdogs
- Visual Pinball Installation Guide
- Alphabetical Listing of VPM tables w/Links to Tutorials
- Super's Guide to Visual Pinball
- IPDB Top 300 Rated Pinball Machines
- Virtual Pinball Spreadsheet - choose [X] Features: VPX on left-hand side.
You probably want to right click zip files and "unblock" them before extracting.