Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Visual Pinball
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Visual PinMAME == {{ infobox software | name = Visual PinMAME | screenshot = [[File:Screenshot_VPM_3.2_Monster_Bash.png|256px]] | caption = Visual PinMAME rendition of [[WMS Industries#Solid state pinball|Williams]]' ''[[Monster Bash (pinball)|Monster Bash]]'' (1998) [[Dot-matrix display|DMD]] | developer = Initially Steve Ellenoff, Tom Haukap, Martin Adrian, Gerrit Volkenborn, continued by various Open Source contributors | released = {{start date and age|1999|04|01}} | latest_release_version = 3.6 | latest_release_date = {{Start date and age|2025|01|29|df=yes}} | operating_system = [[Microsoft Windows]], (lib)PinMAME also [[macOS]], [[iOS]], [[tvOS]], [[Linux]], [[Android (operating system)|Android]] | genre = [[Pinball]] | license = [[Freeware]] for non-commercial use with source code available (the original [[MAME#License|MAME license]]) | repo = {{URL|https://github.com/vpinball/pinmame}} | website = {{URL|https://vpforums.org}} }} The simulation of most modern pinball machines (especially those made after 1992, using large portions of [[Dot-matrix display|DMD]] animations and digital sound samples) requires the Visual PinMAME program (sometimes referred to as VPinMAME or '''VPM''') to emulate physical machines as closely as possible. VPM increases Visual Pinball's system requirements and, like other emulators, uses image files of actual ROMs from physical pinball machines, executing them as simulations of the embedded CPUs, sound chips and displays from the original machines. Since its 3.6 release, it also allows to physically simulate light bulb, [[Light-emitting diode|LED]] and alphanumeric segment display behaviors to match the analogue circuits more closely. On top, [[Flicker fusion threshold|flicker fusion]] is simulated to match human perception on real hardware. VPM is a program (a [[Component Object Model|COM]] class) designed to work in combination with Visual Pinball (or nowadays, any other program that can use the COM class, e.g. ''Unit3D Pinball''<ref>{{cite web |url=http://unit3dpinball.net/index.php?pa=software |title=Unit3D Pinball - the new pinball experience |website=unit3dpinball.net |access-date=12 January 2022 |archive-url=https://web.archive.org/web/20160809091517/http://unit3dpinball.net/index.php?pa=software |archive-date=9 August 2016 |url-status=dead}}</ref>) to allow [[3D computer graphics|3D renderings]] of actual [[pinball]] table designs. It is responsible for [[emulator|emulating]] [[Central processing unit|CPUs]] and the connected [[Read-only memory|ROM]]s used in modern pinball tables, as opposed to tables with electro-mechanical mechanisms that contain no ROMs or advanced [[Integrated circuit|IC]]s. VPM displays the LEDs or [[Dot-matrix display|DMD]] of the machines in a separate window, and emulates integrated sound chips. To work properly with a rendered table, it requires that specific table's ROM images. VPM was written by a programming team including Steve Ellenoff, Tom Haukap, Martin Adrian and Gerrit Volkenborn, and was released on March 30, 2001 with version 0.99 beta. The underlying PinMAME core—which drives all emulation components, and is responsible for emulating LED displays, the DMD and playback of the emulated sound and music—was already started in April 1999.<ref>{{Cite web|url=https://github.com/vpinball/pinmame/blob/master/release/history.txt|title = PinMAME|website = [[GitHub]]|date = 9 January 2022}}</ref> VPM is named after the original [[MAME]] program for emulating [[arcade game]]s and is based on some parts of the MAME core .7X. The VPM project started as WPCMAMECOM (and its underlying core as WPCMAME, based on the [[Williams Pinball Controller|WPC]] and MAME acronyms). VPM is written in the [[C++]] programming language, whereas PinMAME is still based on [[C (programming language)|C]]. On August 1, 2008, the full source code of PinMAME 2.0 was made available to the public.<ref>{{cite web |url=http://www.pinmame.com/ |title=PinMAME |website=www.pinmame.com |access-date=12 January 2022 |archive-url=https://web.archive.org/web/20170505144706/http://www.pinmame.com/ |archive-date=5 May 2017 |url-status=dead}}</ref><ref>{{Cite web|url=https://github.com/vpinball/pinmame/blob/master/release/license.txt|title = PinMAME|website = [[GitHub]]|date = 9 January 2022}}</ref> Since then, development continues with the help of open-source contributors. In 2017, the effort of making the PinMAME core interact with other programs through other APIs than the Windows exclusive COM was started (initially called PinMAMEdll). Over the years, this was further extended to result in a platform-independent library (libPinMAME) initially released in January 2021, that can be employed also on [[macOS]], [[iOS]], [[tvOS]], [[Linux]] and [[Android (operating system)|Android]], and in [[32-bit computing|32-bit]] and [[64-bit computing|64-bit]] flavors.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)