"Pinball browser" can browse all the sounds, images, videos, messages, adjustments, high scores in the firmware of the supported pinballs. And the best is that you can also replace them
It should work with all Stern SAM and Spike firmwares (I tried AC/DC Avatar, Avengers, Tron, Iron man, XMen, Transformers, Tron, Rolling stones, WWE, Kiss, ...).
It can also open WPC games (it can only display DMD frames - no modifications), and Whitestar games (it can only play and modify sounds).
Please update the list of games linked to this topic if it works with one that is not already listed.
It can be downloaded here (v6.40 - See change log at the end of this post - if the link points to the wrong version, clear your browser cache and retry)
This zip file contains all the necessary files :
- naudio.dll : this file is used for the sound engine.
- facebook.dll : this file is used by "Remote SmartDmd" to publish DMD screenshots on your facebook wall. If you don't use this feature, you can delete this file, otherwise put it in the same directory than Pinball-Browser.exe
- MySql.Data.dll : this file is necessary for the bookmark online synchonization
- comm118.hex : Communication patch that is used by Pinball Browser to communicate with your pinball with a serial link. To use this file, see "Communication with your pinball" below.
If you get an error message like "To run this application, you first must install one of the following versions of the .NET Framework: v4.0", download it here.
You can also use it on MAC OS : see here
Happy mod !
Additional infos :
Check the FAQ
You can select your language between English, French, German or Spanish
You can either use the embedded editor or import images.
Regarding the imported image format, there is no requirement : it will be resized to the correct size and converted to gray scale. You can also use other formats that JPEG (bmp, png, ...). Best result when you use BMP or PNG with the same size than the orginal image.
For raster-1 and raster-12, the new image is stored at the same place; so, there is no limitation in the number of images you can replace; for other types, you can also replace them, but you are limited by the free available memory in the firmware.
The image size and type is displayed just below the scrollbar.
- Pinball Browser can import many file formats (wav, mp3, ... and even video sound tracks). The embedded small editor will allow you to crop the sound and adjust the volume. It will also convert the file to the adequate format. No need to use Audacity anymore in most cases.
- The sound track duration cannot be changed. If your file is too long, it will be cut; if it is too short, there will be no sound for the remaining time. Internal structures are too complex to allow this kind of modification (a sound-request is generally made of several sound-scripts; each sound-script can be split into several sound-fragments...); Use the embedded sound editor or Audacity to adjust your sounds.
- More info here
On some Spike games, like WWE-LE, you can replace the videos.
You'll need ffmpeg; If needed, Pinball Browser will ask you to download it. Just follow the instructions.
- For sounds and images, the combo box (right next to the scrollbar), will give you a direct access to them when you select the corresponding line. You can enter a new name, or modify an existing one : enter the name, and click on 'Set Name'.
- You can synchonize them with the online database : click on Sync
- You can also :
* Enter 0x123 into images combo box to jump to image 0x123
* Enter 0x123 into sounds combo box to jump to sound script 0x123
* Enter 123 into sounds combo box to jump to sound request 123
- Additional info here and here
- Most of the messages are listed in the 'Messages' tab : Choose your language and double-click on the message you want to modify, or click the Edit button. You can also use the seach field.
- When you modify a message, it can be stored in-place : its length cannot be increased (or just a few bytes); if you click on 'override max length', it will be moved to free memory, and its length can be increased.
- Several messages can use the same memory location : if you modify one, all the other ones will also be affected. When modifying such messages, you can change this behaviour : just click on 'Modify this instance only'.
- Never remove or modify '%' patterns... or your firmware will crash when the message is displayed. Those strings are used by 'printf' to format items.
- If a string is not listed in the message tab, you can use the 'Search Firmware' function (on the same tab). However, these strings cannot be moved to free memory : they can be modified but their length cannot be increased.
- The 'Adjustments' tab can be used to define your favorite adjustments when you load the firmware.
- The 'default' value is the one used after a factory reset; 'Min' and 'Max' are the min/max values that you can define in the service menu; 'Increment' is the step used when you increase/decrease a value in the service menu.
If you have installed the communication patch (see below), you can also :
- modify your adjustments in real time.
- populate the list with the current pinball values (rightmost part of each line); this function will also generate a macro for each value that is different from its factory default value. These macros can later be used to restore the current configuration.
High scores :
You can only modify the default names/scores that are used after a factory or highscore reset.
If you have installed the communication patch (see below), you alse can :
- backup/restore your current high scores
- modify your highscores in real time
- populate the list with the current pinball highscores
- Macro can be used to share your mods. Each time you make a modification, it is recorded in the "Macros" tab. Anyone who runs your macro on a stock firmware will have your mods
- Do not share songs or binary files if you don't own the copyrights; instead, use macros.
- Macros can also be used to optimize memory : if you replace the same image several times, it will consume memory. To prevent this, clean up the macro list of all the tests you made (and you don't want to keep), and re-run it on the stock firmware : it will only use the minimum required memory.
More infos here.
SmartDmd is an interface that allows you to display your Dmd on a screen, colorize images, upscale your Dmd, broadcast its images over your network, ...
Pinball Browser is used to colorize images (on a frame by frame basis), receive and display broadcast images througth the network, post Facebook snapshots, configure the system, and more !
To select a palette for a specific DMD image, click on Edit and select the palette you want (you must first choose SmartDmd as DMD type on the "Display System" tab, and configure your palettes on the "SmartDmd" tab).
The "Remote SmartDmd" feature allows you to broadcast your DMD on your network and display it with Pinball-Browser (SmartDmd tab, Display). You can even publish a DMD on your Facebook wall.
More infos here
Communication with your pinball :
Since version 3.10, Pinball Browser can communicate with your pinball with a serial link (with this kind of cable : amazon.com link »
This allow you to make real-time modifications :
- Modify adjustments (music volume, language, ...) : Edit an adjustment and click on "Get/Set" current value
- Read/Write/Backup/Restore your high scores : See the high scores tab
Each modification you make is immediately taken into account by your pin
To enable this feature, you first need to use the communication patch :
- Connect your pc to your pin with a RS232 cable
- Load a stock firmware in Pinball Browser
- Specify the serial communication port in Pinball-Browser (Advanced tab); there is a 'test' button. At this stage, it should report that the "communication patch" is NOT installed.
- Load the "commXXX.hex" patch that is included into the .zip you've downloaded (Advanced Tab / Load Patch button). If you have any error or warning during this, it probably means that the patch is not compatible with your pinball.
- Save your patched firmware and upgrade your pin with it
- Pinball Browser should now say that the communication is working when you redo the port test.
Untill now, this feature has only been tested on ACD165LE and STLE141 (If you try this feature on a different pinball, please post a message here so that I can update this information).
- More info here
- Pinball-Browser checks whether a newer version exists. If you don't want this, just disable the option "Check for updates at startup" (advanced tab)
- When you save a firmware without the option "Keep CRC consistent", do not verify the image when upgrading : The upgrade process will end with a message saying that there was a problem ("Update Failed - Error code 8"). This is normal and it works.
If this option is set, you will not have this error, but your high scores and configuration will be erased after the upgrade (but you can backup/restore them - See "High Scores" section above). Please note that you cannot see this option on some firmwares.
- As the boot loader is in prom (not in flash), it is very unlikely that you brick your pinball when you patch your firmware. However, I am not 100% sure. So don't blame me if this happens...
Support this project :
If you want to make a donation to support this project, just click on the Donation button in Pinball Browser.
In return, you'll receive a key that will enable all the features.
Please note that the license is for one computer; if you change your computer, you'll need a new key.
Without this key, the restrictions are :
- Images cannot be imported (but they can still be modified with the integrated editor).
- Videos (Spike) cannot be imported.
- Sounds that are longer than 10s cannot be imported.
- Macros cannot be played and patches cannot be loaded.
Here is an example with one of my photos :
Screen shots of the app :
Change Log :
v1.4 : Better motion on compressed images (no more missing pixels). As there is a kind of Mpeg-like compression, scrolling backward (or large moves) may not display correct images. The improvement is spectacular on Spider-man.
Renamed to 'Pinball-Browser'.
Version number is displayed in the window caption.
v1.41 : Bug Fix (no free memory found on AC/DC).
This whole post has been edited to make it clearer.
v1.42 : more animations in some firmwares (Tron)
v1.43 : Export of current image
Image size is displayed below the image scrollbar
Filename selection when patching firmware
Fix for odd width images
v1.44 : Support for earlier SAM games
v1.45 : Specific free memory check for TRN_174LE
v1.46 : Free memory detection is improved on all games
(No more specific check for TRN)
v1.50 : Major sound improvement
Sound track export
Firmware informations are displayed in the right window (name, version, statistics, ...)
Anaysis button has been removed (automatic when you select your file)
v1.51 : Sampling rate changed from 22050 Hz to 24000 Hz
v1.60 : You can now import WAV sounds Best result with 24000 Hz files
(encoding quality is not perfect : it will be improved in a future release)
You can import PNG, BMP, GIF, JPEG images; PNG is prefered
v1.61 : Sound duration is displayed (instead of its length)
v1.62 : Changed the way the patches are applied : you can now load a firmware, do all your imports (sound, images), and then save your modified firmware.
Added image and sound names : you can use the combo to directly access an item, and/or add/modify names.
v1.63 : Better sound quality for imported sounds
Fixed white bottom bar issue on compressed images
Added support for v1-images (WOF, WPT, FG, ...)
v1.64 : Sound requests have been added
Change in interface (tab control added)
v1.65 : Exported files are now in mono
v1.66 : Added sync between sound scripts scrollbar and sound requests list
Added 'Find next' button to find the next sound request using the current sound script
Fixed issue with the maximum value of scrollbars
v1.70 : Added a 'Messages' tab; you can list and modify the message table.
v1.80 : Added "Macros" to record automate changes
Added message number in message list
Edit message box : changed message length/max info
Added search button for messages
Current selection is kept when modifying a message
Added "Change Name" buttons for sounds and images
Parameters (Red colors, anti-aliasing) are saved in .xml file
v1.81 : Number of instance of a message added (in the Edit box)
It is now possible to modify one specific instance of a message that is used several times
v1.83 : Image Encoding/Decoding functions have been rewritten to support transparency
Added a 'Show Transparency' checkbox; When checked, transparent pixels are displayed in Yellow; When unchecked, they are really transparent.
Fixed the 'corrupted image bug in macros'
v1.84 : Added the ability to increase the message length
All pixels in motion frames are now exported (not only changed pixels)
Fixed the dmd when you jump or move backward to motion images
Renamed motion image types (compressed-x to motion-x)
Really fixed the 'corrupted image bug in macros'
v1.85 : Fixed a problem with free memory
v1.87 : Improved transparency
v1.90 : Added Adjustments list
Added macro 'CheckVersion' to warn when a macro is executed for a wrong firmware
Improved search in messages
v1.91 : Fixed a macro bug (related to Adjustments)
v1.92 : Raster-0 is not converted to Raster-12 anymore when you import an image. Necessary for games that does not support Raster-12.
v2.00 : Game-independant program patches can now be added to the firmware.
Any string can now be replaced (even if it's not listed in the message listbox); Click on 'Search Firmware' in the 'Messages Tab'
v2.01 : Program patches can now be associated with any pinball knocker.
v2.04 : Minor fixes
v2.10 : Added a "play" button for image animations
Added an "Auto next" feature for playing sounds
Added dmd color selection, including a Vga palette (SVGA on Stern pinball)
v2.15 : Major change in display rendering :
- Added a 'Leds' display mode
- Now using dmd non-linear light intensity for better rendering
- Dmd gamma value can be adjusted in Pinball-Browser.xml file
v2.18 : Fix for old games (POTC, FG, SHREK, WPT, ...)
v3.00 : SmartDmd feature
FG, POTC, WOF, WPT truncated sounds fix
v3.02 : SmartDmd configuration now supports Data East games
Pinball-Browser now checks for new version (See Misc section in the OP if you don't want this)
Increase the maximum number of images from 8194 to 16384 (fix missing font issue in ST140)
v3.03 : SmartDmd configuration now supports Bally/Williams games
v3.10: Communication with pinball through rs232 is now possible (Adjustments and High scores real-time modifications)
High scores tab has been added
Option to keep the firmware CRC consistent or not has been added (see "misc" section above)
v3.11: High scores fix for 32-bit-score games
v3.12 : Another High scores fix...
Option added to disable the check for a new version at startup
v3.13 : Button added to populate the adjustments and highscores lists with the pinball current values
This button will also generate macros for all the adjustments that are different from the factory values
Progression bar has been added for functions that takes time
v3.14 : Fixes for pinball current values (high scores & adjustments)
Header added in the High scores and Adjustments lists
v3.20 : MP3 and many other new sound formats can be imported *
Sound track from a video file can also be imported (but the process can be long !) *
Sounds can be edited (volume, startind and ending position) before being imported *
Macros will be generated for sound edition : running them will use the cropping and volume parameters *
Sounds are automatically converted to 24kHz/mono; No need to use Audacity anymore in most cases *
Some program patches can be loaded in the pinball ram instead of the flash (no need to upgrade) *
License button added (for those who made a donation)
The window size is restored when the program is launched
Communication with pinball can be done with a network/serial gateway (like HLK-RM04)
Communication speed with pinball has been increased
New firmwares can now be opened
v3.22: Fix for XMen151 and MTL151
Fix for sound issue with XP
Option to choose the Sound Engine in Advanced tab :
- Automatic : let Pinball Browser choose (depending on Windows version)
- MediaFoundation : can work with most formats (Windows Vista, 2000, 7, 8.x)
- WindowsMultimedia : can only work with WAV, MP3 (mainly for Windows XP)
- Legacy : same as older PB versions / only WAV - Use only in case the other methods doesn't work.
v3.23: Sound list can now be sorted by request, script or duration
Multilevel Undo/Redo in Image Editor*
v3.50: New GUI with bitmaps, icons and tooltips
Export multiple sounds or images at once*
Sounds and Images bookmarks online synchonization
New bookmark combo box features :
- Enter 0x123 into images combo box to jump to image 0x123
- Enter 0x123 into sounds combo box to jump to sound script 0x123
- Enter 123 into sounds combo box to jump to sound request 123
- Enter a Name and click on SetName to define a bookmark
Sound Requests and Scripts are displayed in the list for all sort orders
Macros are automatically saved and loaded in [FirmwareName].pbm
Communication patch is automatically loaded (can be disabled)
v3.51: Some minor fixes about bookmark sync
v3.52: Bookmark statistics (see Advanced tab)
Sound script analysis has been improved
Pinball communication has been improved
Fix an image editor issue
Fix for large images (0x9dc and 0xbe1 in STLE142)
v3.54: Fix for a crash when saving bookmarks
v3.55: Language selection is used to play sound
Language selection has been moved to the Advanced tab
Language selection is persistent
Fix: POTC firmware was corrupted when "auto install comm patch" was enabled
Fix: Multiple language sounds were not found during analysis
v3.58: Added "Replace Color" tool in image editor
Fix for an issue with transparency in Image editor
Fix issues with SmartDmd colorization
This version is ready for PinballMikeD AC/DC Interactive LCD MOD
v3.59: Macros for image editor
v3.60 & v3.61: Bug fixes in image editor
v3.62: Image editor has been improved :
- Zoom (400%, 600%, 800%)*
- Hotkeys (Ctrl-Z, Ctrl-Y, C, E, F, L, P, R, Z; see tool tips)
- Ctrl-click on palette to modify a color (SmartDmd has to be configured)
- Better pointing accuracy
- Other minor improvements
Images and sounds :
- Hotkeys + and - for images and sounds
- New sound script version (for XMEN1.1)
- Modified images are now compressed (no more type transcoding)
Memory management :
- Memory allocation has been optimized
- Gabarge collector to recover space from images
- Total free memory is now displayed
Image Editor :
- New zoom factors
- New hotkey A to change the current palette
- New hotkeys to select palette : 00 to 15 and 16 (transparent)
- Window size is persistent
SmartDmd configuration :
- Fix for SmartDmd when deleting palettes or backgrounds
- Ready for Whitestar support
v3.71: Improvement of compression for motion pictures (remove artefacts)
v4.00: Pinball Browser can now open WPC firmwares DMD image viewer only at present time.
v4.01: Communication protocol modified to support AC/DC v1.68 and similar firmwares
Modifications in patch loading to make it work with AC/DC v1.68
Display Stern logo as first image (if the firmware has one)
This version is ready for PinballMikeD AC/DC mod
v4.02: Fix for motion frame modification
Fix for smartdmd palette modification on small frames
v4.03: Fix to open MTL163
Fix for knocker sound in the latest firmwares (MTL162, STLE1-50)
v4.10: Firmware memory usage has been optimized
Memory can be extended in order to support complex colorizations*
Edit string now needs 3 letters instead of 4
Communication patch has been improved
v4.11: Macro line number is displayed
Macro "ExtendMemory" added
Warning messages added in SmartDmd configurator
v4.13: Temporary display palette for sprites
Search field for macros
Image Editor :
- New Zoom factors
- Scrollbars added
- Properties button
v4.20: Provision for SmartDmd side-channel colorization
SmartDmd boot screen option
v4.30: This version is the first to be localized (EN,FR,DE)
v4.32: Language fixes for FR and DE
v4.36: Image editor : new "Color Identify" tool
New 16x upscaling and Anti-Aliasing modes in SmartDmd configurator
Option to force an upscaling mode for a palette
Ctrl-P to copy palette from previous frame
v4.37: Added license in the SmartDmd Configurator
v4.38: Added macro "ShiftId" to shift ids (ie convert LE to PRO)
v4.40: Fix for new firmware ST-160
Improve SmartDmd network config
v4.41: Max number of SmartDmd palettes increased from 32 to 255
Pipe character | can be used for "carriage return" in messages
v4.42: New communication patch v1.17
PaletteComm macro added
v4.43: Fixes for Windows 10
v4.44: New communication patch to support more games
v5.00: Spike support with videos
Several fixes and improvements
All the features are now available in the free version except :
- Images cannot be imported (but they can still be modified with the integrated editor)
- Videos (Spike) cannot be imported
- Sounds that are longer than 10s cannot be imported
- Macros cannot be played and patches cannot be loaded
In all versions : it is not possible to export Image, videos and sound
v5.01: Fix for undersampled sounds
Parameter added to disabled online Bookmarks check
v5.10: Spanish language is now available (Thanks to pinsider the_barto)
SmartDmd configuration : persistent palette are always enabled when using the side-channel.
Fixed a memory leak when changing a palette on compressed/motion frames
Fix for GOT compatibility
v5.50: Support for Whitestar firmwares (sounds only - 6809 boards only)
New video option in SmartDmd configurator
v5.51: Fix for undersampled sounds in new firmwares
v5.52: Fix for Remote SmartDmd Display
v5.60: Low-pass filter added
v5.70: Support for Whitestar LOTR (Atmel sound board)
v5.71: Fix for LOTR
v5.75 : Fix for Whitestar/Elvis
v5.76 : Increase bookmark name length
v5.80 : New communication patch for MTL17LE
Export function for images
v5.90 : Pinball Browser can now read Spike SD-card images
v5.91 : Fix for Ghostbusters
v5.95 : Ghostbusters LCD animations can be viewed and replaced
Batman videos can be viewed (but cannot be not modified so far)
v5.97 : Fix for some memory leaks
v6.00 : See here for new features
v6.10 : Support for Spooky games
v6.11 : Minor fix for Tron17402
v6.20 : Added MacOS sound engine
Fix for ExtendMemory
v6.30 : Fix for AC/DC 1.70
v6.40 : Communication patch : Fix for AC/DC 1.70