Pinball-Browser : Customize your game !

(Topic ID: 50742)

Pinball-Browser : Customize your game !


By oga83

5 years ago



Topic Stats

  • 3,059 posts
  • 497 Pinsiders participating
  • Latest reply 4 days ago by pekilica
  • Topic is favorited by 635 Pinsiders
  • Topic is sticky in its sub-forum

You

Linked Games

Topic Gallery

There have been 256 images uploaded to this topic. (View topic image gallery).

bandicam 2019-03-11 23-08-58-222 (resized).jpg
0x91D (resized).PNG
Capture (resized).PNG
0x91Da (resized).PNG
MET sparky splash logo (LED) (resized).jpg
ac-dc 0x6A7.jpg
Pinball Browser Not Showing BIN Files (resized).JPG
show hidden files (resized).JPG
Capture (resized).PNG
Capture (resized).PNG
low pass (resized).jpg
original puppy (resized).png
GOT (resized).png
PBv660 (resized).png
pasted_image (resized).png
Error (resized).JPG

Topic index (key posts)

24 key posts have been marked in this topic, showing the first 20

Post #1 Description of capabilities and download link. Posted by oga83 (5 years ago)

Post #300 List of Metallica song request locations and lengths. Posted by DugFreez (5 years ago)

Post #600 How to find the names of the lamp matrix locations. Posted by oga83 (5 years ago)

Post #858 Video on how to replace a song. Posted by Underspin (5 years ago)

Post #1058 Tron song and sound effect locations. Posted by tomdotcom (5 years ago)

Post #1072 Link to Star Trek sound information. Posted by nosro (5 years ago)

Post #1083 Spiderman sound information Posted by jamescardona (5 years ago)

Post #1203 Full length song locations for Metallica v1.51 Posted by RobertWinter (5 years ago)

Post #1432 Macro function explained. Posted by oga83 (4 years ago)

Post #1798 Kiss sounds information link. Posted by colonelsnow (3 years ago)

Post #1882 FAQ covering Pinball Browser and SmartDmd. Posted by oga83 (3 years ago)


Topic indices are generated from key posts and maintained by Pinside Editors. For more information, or to become an editor yourself read this post!

You're currently viewing posts by Pinsider oga83.
Click here to go back to viewing the entire thread.

602 posts in this topic match your search for posts by oga83. You are on page 1 of 3.
114
#1 5 years ago

"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.60 - 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 :
- Pinball-Browser.exe
- 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

Check out my other Pinball Browser related projects :
- SmartDmd
- Breakout Game
- Program modification

Happy mod !

Additional infos :

Check the FAQ

Language :
You can select your language between English, French, German or Spanish

Images :
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.

Sounds :
- 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

Videos
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.

Bookmarks
- 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

Messages :
- 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.

Adjustments :
- 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

Advanced tab :
- Program patches can be loaded. See Breakout Game, Program modification and "Communication with your pinball" below.

Macros :
- 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 :
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

Misc :
- 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 :
custom_image.png

Screen shots of the app :
pb1.png

pinball-browser.png

acdcbrowser2.png
acdcbrowser3.png


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
Anti-aliasing checkbox
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
----------
v3.70:
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
Several fixes
----------
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
----------
v6.42 : Communication patch : Fix for PinballMikeD's mod on AC/DC 1.70
----------
v6.50 : Fix for huge firmwares (like Deadwood)
----------
v6.51 : Fix for MTL180 serial link
----------
v6.60 : Modification for The Beatles
Fix in 'Search Firmware' function

#6 5 years ago

If you keep your mouse on the scrollbar, you'll have the motion
In my opinion, bricking is unlikely because the loader is in a Prom, not in the flash.

#14 5 years ago
Quoted from RacerRik:

Can you change songs? I want Shoot To Thrill for Encore!!!

Not yet...
I still have an issue with the coding method : you can play any sound that is embedded in the firmware, but the sound is not as good as on the pinball.

Anybody else interested in changing the songs ? If yes, I'll spend some time on it

#24 5 years ago
Quoted from flynnibus:

This is awesome - thx for the effort. If possible, plz make it 'portable' in that it can read more game ROMs.
There is a ton of video in here I've never seen in my game... like that entire concert sequence

I tried it with Avenger : I was surprised that some animations worked without any modification. However, firmware patch should not be used it only works on AC/DC Premium 1.65

#32 5 years ago
Quoted from flynnibus:

If possible, plz make it 'portable' in that it can read more game ROMs.

Here it is ! I have updated the first post.
I'm now working on the sounds

#48 5 years ago
Quoted from pmWolf:

I did run the Avengers sounds...they are hilariously sped-up. (Like, Hulk sounds like a munchkin version of himself). I'm sure that is because the program was designed for AC/DC...

I started with AC/DC because I own one and I'm familiar with it. So, it' easier to compare with what I find into the code.
I'm working on the sound issue... but there are several coding methods (4 for sounds, 6 for images in AC/DC)...

#49 5 years ago
Quoted from Max_Badazz:

So does this allow me to modify a pin ROM file on my PC, then upload it to my machine?

Yes

#50 5 years ago
Quoted from flynnibus:

until stern codes the system to only boot signed or properly CRC'd ROMs...
This is relatively easy for stern to make harder... it's hard to make full proof.. but it's easy for us right now because they just left the barn door open. If the activity on this picks up.. they could easily lock the ROMs down.

I agree, it is easy, but why would they do this ? There is nothing wrong here...

#54 5 years ago
Quoted from DugFreez:

Cool work.
...but crashes on Spider-Man 2.6 rom. "Unknown Firmware!"

Fixed. Link for new version updated in first post.

There was 2 additionnal compression types in Spider-man...
This also add several new images in AVGLE

There are still missing pixels in some compressed images; I'll try to fix it later. [EDIT]Fixed in v1.4

#55 5 years ago

New version 1.4 / Change log at the end of first post

#64 5 years ago
Quoted from jsalce:

Been playing around with this and trying to replace the Stern logo with a jpeg. No matter how small the image is (I went down to a 40x40 icon, just to test) and it says there is no free space with every image I try.
Any suggestions?

On which pinball ?
There might be no room at all on the one you are trying, or the app doesn't know where to place it.
Anyway, it should work on any Raster-12 image.

#68 5 years ago
Quoted from jsalce:

Same firmware version you are using in your OP that you replaced with the girls face . Does the JPEG have to be using a certain type of compression/size? Does the image have to be converted before hand?
The lowest size JPEG I used was a very small 40x40 icon. The highest was around 400x400.

Fixed in 1.41; Trying to make the app pinball-independant had this side effect

Regarding the 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, ...).

For raster-12 (mostly used for video), 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, the new image is stored in a free space (on AC/DC, you can replace around 5 images).

#71 5 years ago
Quoted from ChadH:

Was thinking maybe it's not detecting all the Tron video because most of it is not full screen and is instead only the right two thirds of the screen? Can you tweak it to detect that kind of video also?

Could you please take a photo of your DMD displaying an image you cannot find in the app ?
It would be even better if this image is part of an animation.

#72 5 years ago
Quoted from jsalce:

Same firmware version you are using in your OP that you replaced with the girls face . Does the JPEG have to be using a certain type of compression/size? Does the image have to be converted before hand?
The lowest size JPEG I used was a very small 40x40 icon. The highest was around 400x400.

Did you have a better result with version 1.41 ?

#74 5 years ago
Quoted from luvthatapex2:

Its not one photo, its like 75 percent of the video is missing in when you load tron. There are only the arcade, flynn sequences and the scoring,startup. Load the rom and see what you get. Perhaps tron has another compression section that is getting bypassed so you cant see the screens? Maybe all of the split screen stern games have this too. Like ij4 and Wheel of Fortune....

Fixed in 1.42 - You now have 8182 images

#76 5 years ago
Quoted from luvthatapex2:

So the Stern Logo is compressed-7, you can't put in your own logo then right? It must be Raster-12 type? There are probably only 10 frames in the whole rom that are Raster-12

The format of your logo does not matter : it will be automatically converted (format, size, resolution and colors).
You can replace any image you want : if the original image is raster-12, it will be modified 'in place', otherwise (raster-0, compressed-x) it will be moved to free memory (if available).

#77 5 years ago
Quoted from luvthatapex2:

Metallica 1.06 works fine, I just loaded it. What doesn't work for you the audio or the DMD display images? Yes, a very cool tool for sure.

On the screen shot, 4427 images are found.
Please try v1.42 to see if this number increases.

#98 5 years ago
Quoted from MadPole:

Has anybody else had their anti-virus software remove this app? My Symantec is identifying it at as a trojan virus SONAR.Heuristic.
It quarantines then removes the file.

No trojan in it. To feel more comfortable, you can block it with your firewall (the app doesn't use network at all).

#99 5 years ago
Quoted from DugFreez:

oga83, any thoughts on export functions?

Great idea ! I'll do it soon

#100 5 years ago
Quoted from PEN:

Can we remove and add sound clips or music yet? This would be the better than LEDs

Not yet, but I'm working hard on it. Sounds are far more complicated than images, and it will take more time than I first expected.

#102 5 years ago
Quoted from jackal2001:

All I get is static garbage on the pc at work when trying to listen to audio. maybe because it is using onboard audio. I can try at home later.

Depending on the firmware, the sounds can be located at different places.
So, you might be listening at portions of code...
When I figure out how sounds are implemented, I'll post a new version.

-1
#103 5 years ago
Quoted from ChadH:

oga83, any chance of getting the audio clips to play back at the correct speed? On Tron, some play really fast, some play just right, some play slow. I'm guessing it's different sample rates and the program needs to account for that.

You're right, but I'm still missing some informations to make it work well.
When it works, I'll commit all my changes (regarding sounds) in a new version.

#104 5 years ago
Quoted from DugFreez:

Here is the description of the issue I have. Keep in mind that in all examples I have used the same picture (a 100 x 100 pixel 96 dpi 24 bit .jpeg).
test 1 is of the pic just as I loaded it in the ROM and patched it.
test 2 is what the pic looks like when I reload that patched ROM with the browser.
test 3 is the same pic loaded to a different location on the ROM but when I just loaded it.
test 4 is that same pic after I reloaded that patched ROM.
I have a few questions. since the first smaller picture is skewed after being patched in on the browser...will it also be skewed (and looks as it does in the browser) if flashed to the game?
What is making the small pic replacement skewed and the bigger one is fine? Is it the size? Is it because the small original pic was "Raster-0" and the bigger one was "Compressed-7"?

Thanks for this, it is very clear.
For tests 1 and 2, your are trying to patch very low resolution image (17 x 23); Converting a 100x100 image to this format will always involve a great loss. However, I tried with a 17x23 image, and there is still an issue (similar to tests 3&4). I think it' an anti-aliasing issue and it should not be a big deal to fix. I'll also add the image size on next version.
[EDIT]I confirm that it's an anti-aliasing issue, but also a problem with odd width images (17).

#105 5 years ago

New version 1.43 is online
See the change log at the end of the original post.
http://pinside.com/pinball/forum/topic/acdc-display-and-modify-dot-matrix-images

I have also edited the OP to make things clearer about image replacement : you can replace any image you want (compressed or not). The only limitation is free memory for compressed images. Tell me whether it is now clear or not...

In the future, it might be possible to replace compressed images "in place", but it requires the full index table to be recalculated and written (because the size will probably not be the same). I can do this, but I prefer not untill the current version is fully tested.

#109 5 years ago
Quoted from Russo121:

It works!!! (image is of patched ROM - no free memory on Tron, so replaced a few frames in the gem finger animation which was raster-0)

What do you mean by "no free memory on Tron" ? Do you get this message for the first image you try to replace ?
Raster-0 has the same limitation than compressed images : it is not saved in-place (it could be, because the length is always the same, but I didn't do the conversion to this format).

Did you get an error at the end of the upgrade ?

#110 5 years ago
Quoted from SteveP3:

Would it be possible that this could support earlier SAM games? For example I was unable to get 24 or CSI loading up. Just curious, this is very cool.

It works with v1.44

#113 5 years ago
Quoted from Russo121:

What i mean is that i cant replace compressed-7 images (like the stern logo). When i try, i get an error message: Error-free memory has already been used)

On TRN_174LE, there are only 768 bytes left at the (safe) place I'm looking at...
and the 128x73 logo needs more than 4k in raster format

#117 5 years ago
Quoted from Russo121:

Needs a way to delete some sections to fit more in for Tron. I made a pretty cool Gem animation and it would only let me upload just one picture frame. If i could upload multiple pics, i would use them as frames to replace the animations.

EDIT: I might be able to get a short version of the animation working, but i will have to reduce the quality quite a bit.

Looks good !
Ok, let's try a specific memory test for TRN_174LE...
I compiled v1.45 for you : you should now have a lot of free memory (170k)
However, I cannot test it in real; so let me know how it works.

#119 5 years ago
Quoted from Russo121:

As far as i'm aware you cant delete anything (really need to do that to make anything good) I could try overwriting the arcade video with this gem image by inserting one frame at a time. So, it would go like this:
Insert frame at beginning of arcade video sequence
>
patch firmware
>
Reload patched firmware
>
Insert next frame at next frame point in arcade video sequence
>
patch the patched firmware
>
etc...
A ball ache of tedium to do, but the only way i could see how to replace the animations.
If we could insert multiple images at every next frame point, then click on 'patch firmware' it could possibly work. When i try to do that it patches the firmware with the first image in the sequence only. The only way i thought to get the rest of the images in there was to patch the patched firmware, then patch the second patched firmware and so on until all the frames were loaded. Sadly, it would not let me load up more than one image that way.

You can simplify this a lot : just choose the same file when you save your patched firmware (remove "-patched" in the suggested file name).
Be sure to make a backup of your original file.

#121 5 years ago
Quoted from Russo121:

Just tried the new 1.45 and its still the same. I cannot load more than one image into the gem video sequence. It does appear that i can only load the images into raster-12 locations.
All images in the gem video sequence are raster-0. It does allow me to change just one image in that cluster of raster-0 images, but when i patch the firmware and reload it for playback, the image is not in the place i selected and is now a singular 'raster-12' image amongst the raster-0 images.
If i import an image then move onto the next frame and try to import another, the first image is forgotton and only the next selected image will appear.
I also tried repatching a patched ROM again, and still get the 'memory has already been used' error.

It works on my side with my image (replacement of 0x1FA8).
Can you please PM me one of your images, so that I can test it ?

#123 5 years ago
Quoted from oga83:

It works on my side with my image (replacement of 0x1FA8).
Can you please PM me one of your images, so that I can test it ?

One aditional thing : the test is specific to TRN_174LE
The filename must be TRN_174LE.BIN

#125 5 years ago
Quoted from Russo121:

Ah, i c. I am using TRN_174.BIN for the pro (i dont have an LE). I will try with that, but i wont be able to try it on my pro machine. Will i?

What's your filename ? I will try with it. [EDIT]Forget the question

#127 5 years ago
Quoted from Russo121:

Not sure what you mean? The file i am trying to modify is: TRN_174.BIN
The image format of my gem images is .jpg (the only format the pinball browser will let me upload).

In v1.45, the specific Tron memory test is based on the file name.
That's why the app is not working with your file.

Just rename your file to TRN_174LE.BIN, and it will work (I made the test).

In next release, I'll check for TRN_174* (and not only TRN_174LE.BIN), and it won't be necessary to rename it.

#128 5 years ago
Quoted from Russo121:

Not sure what you mean? The file i am trying to modify is: TRN_174.BIN
The image format of my gem images is .jpg (the only format the pinball browser will let me upload).

It should also work with .PNG and .BMP
Exports are in PNG.

#136 5 years ago

It does work now, but only with raster-12 images. I can place a single image with a raster-0, but not a succesion of images. Why is this?
I have managed to get my little animation into the ROM, but its where the FLYNN sign sequence starts @ 0x832.
The modified ROM with the gem animation in it can be downloaded here (for the pro):
http://speedy.sh/FxJYe/TRN-174.bin

You did a nice animation !

I works on my side : I have replaced the 6 raster-0 images starting at 0x1fa8 with yours (see screen shot below).
How I did :
- rename TRN_174.BIN to TRN_174LE.BIN (with an underscore, not a dash)
- Select and analyse TRN_174LE.BIN
- load, patch 1st image, and save to the same file
- (no need to re-analyse the firmware in between)
- scroll 1 image right (0x1fab)
- load, patch 1st image, and save to the same file
- ... same process for all images

Again, if the filename is not TRN_174LE.BIN, you'll have a "no free memory" message.
[EDIT]Starting with version 1.46, the filename does not matter anymore; no need to rename it.

gifanim.png

#137 5 years ago
Quoted from metallik:

Does swapping modified code (of the same nominal version) cause a reset of stats and scores on a machine?

It didn't on my AC/DC : All the scores and audits were here after the update.
But I don't know if it's because of the version number that didn't change, or because the file crc is wrong (the upgrade process ends with an error even if it works).

#138 5 years ago
Quoted from DugFreez:

Wondering what specific games this means.

CSI, 24, ...

#139 5 years ago
Quoted from zucot:

Could this eventually be used to customize rules? I'd love to see an IJ4 update.

No. Modifying the code would be far more difficult...

#141 5 years ago
Quoted from vid1900:

Does anyone think that the audio might be stored in the sped up form to save memory space?
I remember back when musical instrument samplers had tiny memories, that the samples would be "stretched" at a lower pitches because it saved a lot of memory.

I don't think so as it would be necessary to modify the embedded codecs.

#142 5 years ago

For those who cannot replace images because there is not enough memory, version 1.46 is available for download.

#145 5 years ago
Quoted from Russo121:

Awesome. I'm working on a much better animation for the gem finger sequence and this makes my life a lot easier. Thanks.

It would be great if you could post a small video of what you get on your pinball !

#147 5 years ago
Quoted from luvthatapex2:

Can you upload this modified rom for us to try? The one Russo121 modified is giving me a crc error and won't load. Perhaps the way you inserted the frames overwriting the other frames will be succesful.

- I did not change anything in the frame replacement algorithm. I have just improved the way the app is looking for free memory. Previous versions were only looking at the place where I found free memory in AC/DC. New version is looking in the whole firmware.

- As I don't have any Tron pinball around, I just tried the app, not the upgrade. Sorry if that was not clear.

- The error at the end of the download is normal. That what I got on my AC/DC too.
But even if it says something like "upgrade failed", the images have been upgraded.
As it was working, I did not investigate on this; if this is an issue on some pinballs, I will.
The easiet thing to do is to replace the Stern logo and try the upgrade.

Let me know how it works for you.

#155 5 years ago
Quoted from Russo121:

I just realised i can replace the compressed-7 image where the stern logo is on the Tron ROM. WOOHOO!!!

Again, you can replace any image, compressed or not.
The only difference is that, for a compressed image, you will consume free memory.

#156 5 years ago
Quoted from Russo121:

There sure is a massive amount of space to make something cool for it though i'm sure.

...and when you use all the free memory, it is highly possible that it increases again. In AC/DC and Tron (and probably others), there are at least 2 non-contiguous blocks of free memory; only the first one is reported by the firmware analysis procedure; when it's full, the app will then use the next one

#158 5 years ago

oga83, any idea as to why luvthatapex2 can open Spider-Man 2.6 (see a few posts before this) with your browser and I continue to get an error when attempting to open it?
The Spider-Man firmware is named the same and I'm using 1.46 of your browser.

I can also open SPD.
Try to download it again, it might be corrupted.
What message do you have when you click on "Firmware Analysis" ?

spd.png

#167 5 years ago

Pinball Browser v1.5 is now online
It has some great improvements on sounds (features and quality).
See the original post for download link and change log :
http://pinside.com/pinball/forum/topic/acdc-display-and-modify-dot-matrix-images#op
Let me know what you think about it !

Some in-depth explanations :
First of all, there are 'Sound Requests'. A sound request is related to an action (Drain for example).
Each sound request has 1 or more "Sound script".
Each sound script is a list of actions; The most interesting action is "play sound fragment"...
To make things a little more complicated, the script functions are not the same in all firmwares
The app will show you how many sound requests, scripts and fragments there are (and also the script version).

For example, when you drain, the sound request "Drain" is executed :
It has several associated sound scripts : "Draino", "byebye", "looooser", "ahaha"...
In this example, each sound script only has 1 fragment, but it is not always the case : some songs have more than 100 fragments...

Pinball browser v1.50 is now able to decode the sound scripts; thus it can group sound fragments in one single sound track.
This sound track can be played or exported
I did not implemented "sound requests" as they are less interesting than "sound scripts".
However, the sound requests are internally analysed in order to list all the scripts.

I also understood how the sounds fragment are encoded. So, quality has been improved and sounds that could not be played are now working well.
There are 4 different coding methods (displayed as Type 0 to 3 in the app).
Type 0 and 4 are not implemented yet because I did not find any firmware using them.
If you find these types and they don't play, let me know where !

Next step will be sound track replacement by one of your choice...

#178 5 years ago
Quoted from luvthatapex2:

I loaded the exported wave into audacity and the same song extracted from CD in wav format. I chose Unforgiven to compare.
When I exported sound-301 (unforgiven), it was slightly slow and a bit flat.
In Audacity, I increased the speed 2.0 percent and increased the pitch 2 half steps and it sounds pretty close to the original. Maybe this helps with your calculation?
Very very fun tool.

I also did the same (on sound-19e, Whole lotta rosie) with audacity to adjust the duration to the one measured on the pinball jukebox. The difference was around 5%, that yields to a sampling rate of 23kHz, which sounds weird; To avoid compatibility issue on some players, I kept the standard 22050 Hz and that's why it sounds "flat and slow".
I did the test again this morning on Whole Lotta Rosie, and I found a sampling rate of 23.6khz which is closer to the well known 24kHz...
So, I recompiled the app with this, and it's better (although a little too quick and sharp)
Please try v1.51, and tell me

#184 5 years ago
Quoted from rockinganker:

I love this program, thanks for your efforts. I was going searching the ACDC Premium code and there is a very long concert segment. Is this in game atm?

Which number ?

#190 5 years ago

Thank you for your remarks.

Quoted from DugFreez:

I only had an option to import a jpg
[...]
Why only allow the import of jpg when png is the export format?

PNG is ok : just type *.png, Enter, and select your file. I'll add the pattern in the next version, so that both extensions are listed.
And you're right, PNG should be used rather than JPEG.

Quoted from DugFreez:

I noticed in an earlier version it would rename and save the patched firmware in a different folder. Why did you decide to change that. It seems over writing an original firmware by mistake could happen much easier now.

Because it's much easier to use when you replace several images : you don't have to open your firmware again once it's patched, because it's the same file (Just click import, patch, validate the filename, and do the same for the next image).
Moreover, in the previous version, it was not saved in a different folder : the suffix "_patched" was added to the original filename... that you could easily lead to files like xxx_patched.bin, xxx_patched_patched.bin, xxx_patched_patched_patched.bin, ...
Anyway, you can choose a different filename when you patch your firmware, or make a copy of the original one.

#192 5 years ago

I can't wait until it's fully tested...
v1.60 can now import sounds

The file to import must be a WAV file.
You'll have better result with 24000 Hz sample rate because I don't resample (Audacity does it better than I ever would). Otherwise, the speed and pitch will be wrong.

Until now, I only have tested Type1 sounds (AC/DC has no Type2) on single-fragment sounds.
Enjoy, and give me your feedback !

#193 5 years ago
Quoted from DugFreez:

I was also wondering about the white bar that is on a lot of the DMD frames. Is this caused by your program or is this the way the info in the firmware is? I was thinking maybe this bottom line of each image is not displayed by the DMD at all?

You are correct again : there is a partial bottom line (or right column) depending on the compression method. I noticed this but I was not able to correct it until now (but I did not spent a lot of time on this). Anyway, when you replace an image, it will always be a Raster-12... for which there is no problem.

#198 5 years ago
Quoted from oga83:

I can't wait until it's fully tested...
v1.60 can now import sounds
The file to import must be a WAV file.
You'll have better result with 24000 Hz sample rate because I don't resample (Audacity does it better than I ever would). Otherwise, the speed and pitch will be wrong.
Until now, I only have tested Type1 sounds (AC/DC has no Type2) on single-fragment sounds.
Enjoy, and give me your feedback !

I have also tested that multi-fragments sounds can also be replaced.
Some precisions :
- 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.
- To get a 24000 Hz WAV file, you can use Audacity : open your file, choose 'Project at 24000' at the bottom left of the window, and then 'Export to WAV' in the File menu.

#204 5 years ago
Quoted from pmWolf:

Do you have to find a sound clip that is the exact same length? Can you replace shorter clips with longer ones?
EDIT: Answered above as I was typing. Too long, and it gets cut. Too short, and you get deadspace.

To make things easier, I have added the sound track duration in v1.61

#206 5 years ago
Quoted from flashburn:

Is that something that can be fixed? Or is this just an inherit design with the ROM layout that cannot be changed?
For a game like Metallica, that uses segments of songs for some stuff, does it actually pull those segments from the entire song track, or does it duplicate just those segments? I have a feeling that for most songs in Metallica it will be very difficult (or impossible) to replace some tracks without it screwing stuff up.
I'm simply amazed at the progress you've been making since you started this. Incredible, and you deserve a round of applause (as well as a round or two of beer).

Thanks you !
For duration, I'm afraid it won't be possible : a sound script can have several actions between fragments (see explanation about scripts somewhere in this thread)... I can remove or add fragments, but I'm pretty sure there would be side effects... I guess that some actions are related to image/sound sync.
About segments, you are correct : the same fragment can be used in different sound scripts; however, I did not check yet whether it is the case or not.

#235 5 years ago
Quoted from swampfire:

Okay, I just burned my new CSI ROM with replaced sound, and it worked great.
oga83, YOU DA MAN!!!

Congrats !

#236 5 years ago
Quoted from pmWolf:

The code obviously pieces these parts together, so he can say entire phrases...like"Hawkeye...Intelligence...Average!", or "Tony Stark...Intelligence...Super Genius", or "Black Widow...Strength...athletic!"
[...]
I'm making a map of the sounds now.

I'll add a list of 'sound requests' soon. A 'sound request' is a kind of group of 'sound scripts' (ie sounds) related to the same action.
I'll also try to add a fragment cross-ref table that will show in which 'sound script' a 'sound fragment' is used.

#237 5 years ago
Quoted from jsalce:

So it looks like upon import of a WAV at 24000Hz, whether it's exported from the original firmware or something you provide from a movie rip, the import function is adding noise into the file you are trying to import.
Edit - Ah yes, this is a type 2 file, which oga83 said has not been tested yet, so hopefully this helps.

I noticed that also. I don't know yet whether it's normal or not. I would rather say there is still a bug in my encoding functions...
However, a little noise seems normal to me :
- Type1 sounds are Adpcm encoded. For those who are not familiar with it, it is a sound compressing algorithm that is mainly used in telephony. The compression ratio is a fixed 1:4 (a 16-bit WAV sample is compressed to a 4-bit sample). Although it is very efficient, there is a loss of quality; so, if you extract and reinject the same sound, you will double the loss...
- Type2 sounds are compressed with a custom Adpcm-based algorithm. The compression ratio is 1:8 (fixed) ! ...with, of course, additional loss. I found how to decode it, but I did not figure out how to encode it until now.
I'll check my encoding functions again to see if I can improve the noise.

#238 5 years ago

Feel free to make your suggestions for the next version !

What I have already planned :
- cross-check reference for sound fragments (to see if they are used in several sound scripts)
- list of sound requests (to see which are the sounds related to the same action)
- crc adjustment (to remove the error at the end of the upgrade process)

#240 5 years ago
Quoted from DugFreez:

I was wondering if you knew what is the best way to describe these DMD image requirements to make them look as good as standard?

By order of importance :
1- Keep the original image size (otherwise, the app will resize it)
2- Do not use a lossy compression format : prefer PNG or BMP.
3- Use a gray scale image (the app will convert the image to 4-bit gray scale)

#245 5 years ago

v1.62 can be downloaded (nothing has changed on the sounds in this one...)

I have 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. It now work like a standard File/Open/Save software, and it's much more easier to use...

I have added a combo box for the image and sound names : you can use the combo to directly access an item. You can also add or modify a name : type the name and press Enter.
The names are stored in a file "xxx.dat" where 'xxx' is the firmware filename (ACD165LE.DAT for example). We can share the content of this file on the forum (It can be edited with notepad)
The format is very basic :
[ImageNames]
0x630=Jukebox
0x5A6=AC/DC animation
0x5A5=Stern Logo
[SoundNames]
0x9=Ting
0xC=Explosion 1
0x12=Small deceleration
0x13=Deceleration
0x14=Buzzer
0x196=TNT
0x19B=Whole Lotta Rosie - Intro
0x19C=Whole Lotta Rosie

#253 5 years ago
Quoted from DugFreez:

I have tried all of the current SAM game codes with the program. If a Pro and LE / Premium was available I just tried the LE / Premium code. I found a few that I couldn't get to load:
Family Guy
Pirates of the Caribbean
Wheel of Fortune
World Poker Tour
Kooky Carnival Redemption (not a pin but I thought it would be fun to poke around in it)
Shrek I could get to load, but it didn't have any game specific DMD images showing, just general menu icons and fonts.

Thanks for theses tests.
Fixed in v1.63

#254 5 years ago

I have uploaded v1.63 !

I rewrote the sound encoding routine. Now, the imported sounds are much better
I also rewrote the compressed image routines to solve the bottom white bar issue.

Games like WOF, WPT, FG have different image headers. I modified the code to handle them.
The image version is now listed in the info window (for example : v1 for WOF, v2 for TRON).
For these games, some of the script actions (ScriptV1) are different and not compatible (because scripts are variable-length records, and the length is different). It was already the case with some other games (RS:ScriptsV2, ACDC:ScriptsV3). The bad thing is that there is a mean to automatically detect v2 or v3, but not v1... As a result (only for these games), some sound fragments won't be found by the app.

[EDIT]All DMD images are now found for Shrek

#255 5 years ago
Quoted from SteveP3:

try creating a palette file for photoshop (or your image tool of choice) that can be loaded when converting the image to 'dot matrix' color levels. For example, we used something like (RGB values shown)
0,0,0
100,0,0
150,0,0
200,0,0
250,0,0
You create the palette file in photoshop first, using only those colors (color mode, indexed color, custom - then create a palette). For oga's tool, you may need to use something like :
0,0,0
100,100,100
150,150,150
200,200,200
250,250,250
Save the palette to a file/place you will know where it is, you'll have to re-load it every time photoshop restarts when you want to convert things.

This is a good hint !

As the images are 4-bit encoded, you can use a 16 level palette.
Although I did not test it, the one below should give good results (low nibble is just ignored to convert each color to 4-bit)
0,0,0
16,16,16
32,32,32
48,48,48
64,64,64
80,80,80
96,96,96
112,112,112
128,128,128
144,144,144
160,160,160
176,176,176
192,192,192
208,208,208
224,224,224
240,240,240

#267 5 years ago

v1.64 can be uploaded :
I have added the sound requests list of scripts. You can double-click on a script to play it.

#269 5 years ago
Quoted from DugFreez:

oga83, much improvement with the sound quality as far as exporting a sound from one place and importing it to another.
I did a pretty heavy job on my X-Men adding sounds from other games and also music from my MP3s. It all came out pretty well. I did see after my first attempt that I needed to take better care with balancing the volumes on each sound and song.
I was also wondering...I notice that the WAV files that are exported are stereo. This seems strange since SAM games are only mono. Are the sounds in the firmwares true stereo, just 2 mono tracks (fake stereo) or are the wavs that are output just stereo because of the way your program exports them.
I was wondering if converting a stereo mp3 to a mono wav would be beneficial over converting it to a stereo wav to import?...or would that be a bad thing?

This is correct; exported files are stereo (the 2 channels being identical). It is only because, at first, I thought that the tracks were stored in stereo, but I was wrong. I'll modify this in a future release to export them as mono.
[EDIT] Fixed in v1.65

For imports, whatever the number of channels in your file, the app will always use the first one (and only the first one).

#270 5 years ago
Quoted from DugFreez:

I tried this and ran into a small problem that I thought I would share. I used Audacity to conver a MP3 I had. After I chose to export it (as a WAV) a box popped up that had tag information about the song (track name, artist name, ripped with itunes, ect). So I just clicked OK and let it ride.
Then when I went to import the WAV the Pinball Browser gave me a "this wav file is empty" "Can not use" error or something like that. So I checked the file and it played fine with Windoes Media Player. The I opened it again with Audacity and it showed as a 24000 hz WAV and played fine. I went to export again and this time when I got the the popup window with the tag information I cleared everything from the tag (there was a clear button) then saved it.
After removing the tag info from the wav it imported fine in Pinball Browser.
So just a little tip to pass on to anyone if they have this problem when importing.

It's because I'm expecting a very basic WAV file format... If there are tags in the file, it won't import.

#275 5 years ago
Quoted from DugFreez:

oga83, I have another suggestion.
I see in version 1.65 that you have the the window that shows the lumped together sound requests. When you select the sound request from that window by highlighting it....it automatically moves the slider above it to the correct position for that sound.
I was wondering if you could have the same thing, but in reverse.

The problem is that the same script (at a unique scrollbar position) can be used in several sound requests (more than 1 line in the list). I'll try to add a kind of 'next' button that will move to the next line of the same script.

Quoted from DugFreez:

I posted a basic tutorial on converting sound files to the compatible format to import in the Pinball Browser here:
http://pinside.com/pinball/forum/topic/tips-for-getting-sound-files-ready-for-pinball-browser#post-910706

You did a really good job !

Quoted from DugFreez:

It looks like the slider doesn't go far enough to the right or something.

Thank you. I will fix it.

#276 5 years ago
Quoted from Don1:

Really hoping that no manufacturers are threatened by this and put in methods of stopping this in the future

Why would they ? there is nothing wrong with this and I think that this kind of tool is making their games even more attractive, isn't it ?

#278 5 years ago

v1.66 is online :
- 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

Thanks again to DugFreez for his suggestions and bug report.

#280 5 years ago
Quoted from luvthatapex2:

oga, about the sounds requests. I noticed you can have many audio files tied to sound request. Is it the programming that decides which audio file from the sound request to play?

Yes, a 'sound request' is defined in the firmware : it is a group of 'sound scripts' related to the same action (for example, when you drain). In many case, the software plays them sequentialy when the action comes again (for example, 1 script for 1st drain, 2 script for 2nd drain, ...)
See sound request 103 in AC/DC : you'll have all the sound calls that are played when you drain (draino, hahaha, byebye, ...) !

Quoted from luvthatapex2:

Is there anyway to export a group of images instead of one at a time?

No, but it's very easy to do it in sequence : Scroll, Export, Enter, Scroll, Export, Enter, ...

Quoted from luvthatapex2:

Whats the little drop down box next to the image name?

You can name your sound scripts. See below :

Quoted from oga83:

v1.62 can be downloaded
[...]
I have added a combo box for the image and sound names : you can use the combo to directly access an item. You can also add or modify a name : type the name and press Enter.
The names are stored in a file "xxx.dat" where 'xxx' is the firmware filename (ACD165LE.DAT for example). We can share the content of this file on the forum (It can be edited with notepad)
The format is very basic :
[ImageNames]
0x630=Jukebox
0x5A6=AC/DC animation
0x5A5=Stern Logo
[SoundNames]
0x9=Ting
0xC=Explosion 1
0x12=Small deceleration
0x13=Deceleration
0x14=Buzzer
0x196=TNT
0x19B=Whole Lotta Rosie - Intro
0x19C=Whole Lotta Rosie

#308 5 years ago
Quoted from DugFreez:

I was also wondering....oga83? Do you think Pinball Browser game specific discussion is good on this thread or would you rather this thread stay Pinball Browser "general discussion" and other threads be started with specifics?

I think it is a good place : the app is still young and this kind of discussion gives new ideas. For example, changing the song names...

#309 5 years ago
Quoted from DugFreez:

That's kinda good and kinda bad I guess. I was hoping the songs I was replacing were ones that just played at certain times.
I don't know anything, but I'm guessing changing the coding to actually display the name of the replaced song isn't going to be happening anytime soon. That seems like it would be in a whole different area of modifying the software...but who knows. This program come out of nowhere and has grown / evolved / got polished so much in a 2 or 3 week period. Maybe a program to "change everything" is right around the corner.

Good idea, and not so complicated from what I know. I'm on a professional trip this week, but I will have a look at it this week end...

#312 5 years ago
Quoted from pmWolf:

I never got an error after the update...it rewrote everything, with all settings/scores lost.
I thought the program was changed so it WOULDN'T have an error. Would almost rather keep the error, and save the audits/settings.
Pete

This is weird as nothing was changed about this...

#314 5 years ago
Quoted from DugFreez:

I know oga83 mentioned working on getting rid of the post flash error, but I never saw it mentioned again or showing as being added in any of the versions.

When I figure out how to do, I'll use a checkbox so that we can choose to keep the error or not.

#335 5 years ago
Quoted from DugFreez:

I have flashed my X-Men LE 3 times and I still have all of my settings and scores.

Same behaviour on my AC/DC

#349 5 years ago
Quoted from flashburn:

Is there any way you can add a notation next to each request that is tied to another request? That way we know exactly which requests are tied to the same track? It seems like this should be possible since if you update the longest one, they all update.

If I understand well what you are asking for, you can already give a name to your sound scripts. If you do so, the name will also be displayed in the list (of sound requests)
In brief, select your sound script, enter your name in the combo box and press Enter.
More details :

Quoted from oga83:

v1.62 can be downloaded (nothing has changed on the sounds in this one...)
I have 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. It now work like a standard File/Open/Save software, and it's much more easier to use...
I have added a combo box for the image and sound names : you can use the combo to directly access an item. You can also add or modify a name : type the name and press Enter.
The names are stored in a file "xxx.dat" where 'xxx' is the firmware filename (ACD165LE.DAT for example). We can share the content of this file on the forum (It can be edited with notepad)
The format is very basic :
[ImageNames]
0x630=Jukebox
0x5A6=AC/DC animation
0x5A5=Stern Logo
[SoundNames]
0x9=Ting
0xC=Explosion 1
0x12=Small deceleration
0x13=Deceleration
0x14=Buzzer
0x196=TNT
0x19B=Whole Lotta Rosie - Intro
0x19C=Whole Lotta Rosie

#358 5 years ago
Quoted from DugFreez:

I don't know anything, but I'm guessing changing the coding to actually display the name of the replaced song isn't going to be happening anytime soon. That seems like it would be in a whole different area of modifying the software...but who knows.

With version 1.70, you can modify the message table

Most of the texts are in this table (mainly the ones that are multi-lingual), but some are not.
Go to the 'Messages' tab, choose you language, double-click on a message and enter a new text.
The length of a message can be shortened, and sometimes enlarged (there is a constraint on the entry so that you cannot enter too long text). Never remove 'printf' patterns like %d, %lu, %s, ... or the pinball program will crash...

#365 5 years ago
Quoted from DugFreez:

Great job, once again. I do have a quick suggestion for an added feature after flipping through the messages feature a bit.
Could you add a "find" feature for the messages tab? A window to type in what you are looking for and also a "next" and "previous" button to cycle through found results?

I was pretty sure that somebody would ask for this

#379 5 years ago
Quoted from SteveP3:

Just out of curiosity, what does it mean in the message window (when you double click a message to change it) when it says something like (X/Y) "14/15" or "17/19" at the bottom? I'm guessing that means the message is using X characters of Y available, and that the message cannot be longer than Y?
Very nice work oga83!

You are right !

#387 5 years ago

v1.80 has new features :

- You can create, record and run macros. They can be used to share mods
When you patch something (sound, image, message), a new line is added in the macro list.
You can save this list in a PBM file (Pinball Browser Macro, but it's a text file) and reload it later.
You can also modify the list by hand, provided you comply with the existing syntax. This can be used to add comments (a line starting with --).
Of course, it is possible to run the macros to re-apply all the changes you made
This will help with potential license issues (do not distribute firmwares, sounds, ..., that you don't own)
Share your macros !

- Message list : Search field, Search-Next button, Message number

- Some minor changes/fixes listed in the change log

As usual, the download link and the change log are in the OP.

#388 5 years ago
Quoted from toyotaboy:

If you replace a song, and it's longer it gets cut off, if it's too short you get dead air at the end
I'm assuming if you replace animation, it has to be the same number of frames?

Yes

#389 5 years ago
Quoted from DugFreez:

Great job, once again. I do have a quick suggestion for an added feature after flipping through the messages feature a bit.
Could you add a "find" feature for the messages tab? A window to type in what you are looking for and also a "next" and "previous" button to cycle through found results?

Thanks.
Another valuable suggestion
Done in v1.80

#390 5 years ago
Quoted from pinballlooking:

And it just keeps getting better. Thanks for adding the ability to change text!!!
Here is my new song title.

Good job !
Could you please tell us which message number and sound number you had to replace ?
Or better, share a v1.80 macro for this mod ?
Thanks in advance

#393 5 years ago
Quoted from jeffspinballpalace:

oga83 -
Can these revised changes be easily saved into a FOM? For instance when dirty deeds song and title to are changed in above thread, can that person burn changes to ROM file using a software front end so others only need to upload it rather than recreate? Removing these steps of installing extra software and having to do it replicate same shanges may seem trivial, but these are additional barriers to those of us who are not computer literate, but who can install a memory stick and flip a dip switch to upload code.

Do you mean something like bsdiff/bspatch that will apply changes to a genuine firmware ?
These tools are easy to use and run under linux and windows (http://sites.inka.de/tesla/download/bsdiff4.3-win32.zip). They are also very efficient for the kind of modifications made by the pinball browser. But I'm afraid you could have a license issue because you could distribute songs and firmwares without the right to do it.

The purpose of macros in v1.80 is for this : to share mods, you just have to publish the macro script and your custom/personnal (ie license free) images/songs.
If somebody wants to apply your changes, he only has to load the script, and run it on a genuine firmware with the pinball browser (the app will then ask for the path of each sound/image file if it is not found). I agree it is not as easy as bspatch, but you don't break any license.

BTW, what is a FOM ?

#394 5 years ago
Quoted from luvthatapex2:

Its truly amazing what you have accomplished oga83 with this tool. Thanks for your continued work.
Is it possible to see the rules programmed in the rom? I understand it's a compile, but it would be very cool to peek inside and see the rules or the programming logic even if it was impossible to change the code. It would help to understand the complexity and marvel of these games.

I agree, but understanding the rules is another step
Maybe in the future...

#397 5 years ago
Quoted from DugFreez:

The next step was to replace the text "WOLVERINE" in the Xavier mode section to "SHADOWCAT". That changed fine...but what I noticed is it also changed the text "WOLVERINE" that was any place in the software with "SHADOWCAT" instead of just replacing the one location I needed changed.
In this case...that would pretty much wreck the software...as "WOLVERINE" is used a lot and it should only be changed to "SHADOWCAT" in the one specific place.
So is there anyway to make it so the changed text is only changed in the specified location that a user manually changes it?

This is because each message is made of 5 pointers (1 for each language), and several pointers can point to the same string. I'll see what can be done (using free memory), however it would be very difficult to know where each message is used in the game.

#402 5 years ago
Quoted from DugFreez:

So is there anyway to make it so the changed text is only changed in the specified location that a user manually changes it?

v1.81 is for you

The number of instance for a message is displayed in the Edit box.
When there are several instances, you can check the box to make the message unique (provided there is free memory in the firmware) :

EditForm.png

#403 5 years ago

Sorry for duplicate post. I had a "slow down ! you're moving too fast" error message from pinside on my first click

#404 5 years ago
Quoted from DugFreez:

I'm also guessing since all imported images are Raster-12 maybe they can not have these transparencies???

Could you please export your 0xD0C image and import it again without any other modification ? this way, it is simply converted from Compressed-1 to Raster-12.
If it does not work, we'll know it's because of compression.
Otherwise, it could be the color of the surrounding pixels that have changed (it could be your image modification, but also the way I convert them in case you don't use a 4-bit palette).
Thanks in advance.
I'm sure we'll find a solution

#415 5 years ago
Quoted from DugFreez:

...
I'm guessing the game is using a transparency around these heads. When they are exported the transparency is lost (or just not exported).
...

Thank you for all these tests. It will help.

I think you are correct : it's definetely a question of transparency.
I had a review of my code, and it seems that I am making a mistake with the white color. I am applying a 4-bit mask (to remove bits I didn't understand :- and that's why transparent pixels are displayed in white. I will investigate deeper on this.

#416 5 years ago
Quoted from DugFreez:

oga83, it looks like the cannon firing images would be a good place on AC/DC to check out the things I am experiencing. Not too many frames to swap and an easy animation to see in the game.
If you were to export and re-import 0x1229 - 0x1239 images. I believe the cannon animation on the game would just appear all white on the left side of the DMD....when normally it would show the background images of 0x123A - 0x1268. I think what is seen as white on these frames in Pinball Browser are actually transparencies (or where they should be).

Same thing will all the fonts

#420 5 years ago
Quoted from DugFreez:

I saved the Macro.
I close down the program and restart it. I load X-Men LE 2.4. Load the Macro and run it. It seems that the message was changed fine and the sound was imported into the right location and plays fine, but there is a problem with the picture that was changed.

I think it's because there is a message definition after the image definition in the macro.
The bug is that the message is stored at the same location than the image
I'll fix it in next release; in the meantime, moving all the message definitions at the begining of the macro will solve this issue (it would be great if you can confirm this !).

[EDIT]v1.83 is available and should fix it

#422 5 years ago
Quoted from Crash:

Holy crap how did I miss this thread? This is some excellent work! This only works for Stern SAM games? I would be willing to bet that Stern Whitestar games (pre Pirates) have a very similar if not the same data structures. So obviously you must rip the ROMs yourself until Stern comes out with their new system. How are the images compressed? Is the algorithm documented? I'm assuming raster-12 is a 12-bit bitmap format?

It only works with SAM boards.
The formats are not documented and proprietary (sounds, images, ...).
Raster-12 is a 4-bit color bitmap + alpha channel.
'12' is just the internal type id.

#423 5 years ago

v1.83 now supports transparency.

When the 'Show transparency' checkbox is checked, transparent pixels are displayed in yellow.
Here is an example with Photoshop :

Transparency.png

#429 5 years ago
Quoted from DugFreez:

But then when I go to the display system and browse to location 0x695...the image is skewed.
Strangely...if you do the exact same steps....except you first browse to location 0x695 on the display system and THEN you run the macro....it will re-import and display fine.

Fixed in v1.84
Thank you, it helped a lot to fix this issue

#430 5 years ago

v1.84 can be uploaded !
[EDIT]v1.85

Change log :
- 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' (at least, I hope so !)
- [EDIT] Fixed a problem with free memory

#431 5 years ago

v2 is looming...
Can you guess what will be the new feature(s) ? bets are open...

Or maybe I'm just looking for some ideas

#434 5 years ago
Quoted from docquest:

I've never player Sterns World Poker Tour, but it seems to get some love. At the same time a lot of people think the theme and art were a bit lacking. Seems like that would be a good candidate fro a re-theme.
Does the pinball_broswer utility work with Stern games from that era?

Yes, but not tested in depth

#438 5 years ago
Quoted from DugFreez:

I figured I would post my first real macro post for X-Men

Very nice !

#442 5 years ago

Tranparency on animations has been hard to figure out.
But I think this has been solved in v1.87 !
Many thanks to Dug for all the tests he did.

#443 5 years ago
Quoted from Crash:

WPC support?

No

#444 5 years ago
Quoted from Crash:

What format are the sounds in, OKI/IMA ADPCM or something less archaic?

- Type1 sounds are Adpcm encoded. For those who are not familiar with it, it is a sound compressing algorithm that is mainly used in telephony. The compression ratio is a fixed 1:4 (a 16-bit WAV sample is compressed to a 4-bit sample).
- Type2 sounds are compressed with a custom Adpcm-based algorithm. The compression ratio is 1:8 (fixed) !

Additional infos here :

#447 5 years ago

Thank you !

Quoted from DugFreez:

it also seems to refresh the images much better, if you are holding the left scroll button and browsing them in reverse, than any previous version.

This is correct as I redraw all the motion frames starting from the keyframe.

Quoted from DugFreez:

Have you approached Stern for a job? I think they could really use your help.

No, but I'm looking for a job at this time

#449 5 years ago
Quoted from Arcade:

Is WPC support something you would consider in the future?
Or is their system too proprietary or locked down to make it a viable option?

Do you mean Bally WPC ?
I've never seen this game.
I suppose it is a quite different firmware, and it would be too difficult to support it without owning one.

#454 5 years ago

v1.90 is online !

I was fed up having to adjust the sound volume, time format, FreePlay, Language ... each time the pin was reset to factory settings...
So I decided to add the list of all "Adjustments"; of course, this list can be edited
The most interesting is that you can change the 'default' setting.

Other changes :
- Added macro 'CheckVersion' to warn when a macro is executed for a wrong firmware
- Improved search in messages

#458 5 years ago
Quoted from DugFreez:

I'm not really understanding the adjustments. We have DEFAULT, MINIMUM, MAXIMUM and INCREMENTS?
I was initially thinking Inc was INCLUDE and 1 = On / 0 = Off to turn the actual setting to appear or not appear in the games setting menu, but the 1,000,000s and 100 threw off that idea.
It also appears that the Inc column needs moved over a bit. It seems that column Max gets a little too big halfway down and bumps Inc's numbers over too far right.
I like the improvement to the search in the Messages window.

I should have mentionned it :
- 'Default' is the value 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.

I'll increase the 'Max' column width in next version. [EDIT] Done in v1.91
If 'Inc' gets out of the window, you can resize the main window to enlarge the list.

#462 5 years ago
Quoted from sixsixtie:

I've got a question for someone, I'm hacking up a POTC and when I extract an 800byte png and then upload a 639byte one in its place and it ends up using some of the free memory. Anyone know what gives?

All image formats are propriatory. Compressed and motion images are converted to raster during importation. They cannot be imported in place and are moved to free memory.
More infos earlier in this thread and also in the op.

#465 5 years ago
Quoted from movingpictures:

Finally had some time to flash MET.

Great job !

Quoted from movingpictures:

If anyone wants to replace the tracks I did, they can be found at the following locations in v1.13:
FADE TO BLACK - 539
SAD BUT TRUE - 809
UNFORGIVEN - 1023

It's easier to share the macro (just copy/past the Macro tab content).
If anyone wants to do the same mod, he just has to run the macro
Something like this :
-- Pinball-Browser Macro for METALLICA v1.06
CheckVersion,"METALLICA",0x106
SoundScript,0x539,"C:\tmp\song1.wav"
SoundScript,0x809,"C:\tmp\song2.wav"
SoundScript,0x1023,"C:\tmp\song3.wav"

#466 5 years ago
Quoted from RTS:

Is it possible to implement something like this?
It would be brilliant if it were possible to redefine how much space is used when switching sound files without having to edit or choose a song/sound file to fit the existing space to loop normally (avoiding abrupt cuts or prolonged silence).

Very difficult. As I already explained, a 'song request' is made of 'sound scripts'.
A sound script has several actions (I don't know what is most of them; display synchro ? lamp & flash infos ? ...). The only one I have decoded is 'Play fragment', and a song is generally divided in many fragments... Moreover, the flash memory is not linear, rather paginated.
In brief, a single song is a not a monolithic block of data : it is splitted in many memory structures. Changing the duration of a song would require a very deep modification...
Using Audacity for this is much easier :-;

#468 5 years ago
Quoted from sixsixtie:

Ok, I hacked POTC last night. I had changed a bunch of dmd stuff, messages, and sounds.
The messages and sounds all worked fine but most of the dmd stuff would crash the game.
I found anything that uploads as raster-12 will cause the game to crash when it tries to display it. If however it updates as raster-0 it works fine.
I spent like 8 hours hacking so much DMD stuff only to have to pull everything out but a single image change.

I'll check this tomorrow

#469 5 years ago
Quoted from sixsixtie:

Ok, I hacked POTC last night. I had changed a bunch of dmd stuff, messages, and sounds.
The messages and sounds all worked fine but most of the dmd stuff would crash the game.
I found anything that uploads as raster-12 will cause the game to crash when it tries to display it. If however it updates as raster-0 it works fine.
I spent like 8 hours hacking so much DMD stuff only to have to pull everything out but a single image change.

There are only Raster-0 images in POTC. I assume that this game is not able to use Raster-12...
I changed the import function so that Raster-0 are preserved, and not converted to Raster-12 anymore (I did the conversion before because Raster-12 is 2 times smaller than Raster-0).

It should now work with v1.92.
Could you please re-run you macro and check that it doesn't crash anymore ?

#473 5 years ago
Quoted from Crash:

You'll get in some hot water modifying these on location, I would suggest retracting those edits immediately before Stern gives you a call.

It's just a mod like any other one... Did they ask anybody to remove an AC/DC canon mod, cliffy protectors, led bulbs, ... ?

#486 5 years ago
Quoted from Arcade:

Here is the studio song list locations for AC/DC to make it easy on everyone
The first number is the location in the program.
300 Back in Black 4:09
301 For those about to rock 5:43
302 He'll ain't a bad place to be 4:12
303 Hells Bells 5:13
304 Highway to Hell 3:31
305 Let there be Rock 5:59
306 Rock and Roll Train 4:18
307 Thunderstruck 4:51
308 TNT 3:33
309 War Machine 3:07
310 Rosie 5:19
311 You shook me all night 3:20

If you enter the song names in the combo box (right next to the scrollbar), you will have a direct access to them when you select the corresponding line.
The names will be saved in a .DAT file (same name and directory than the firmware you have loaded).
As this file is a text file, you can share it on the forum

Example for ACDC165LE.DAT :
[ImageNames]
0x630=Jukebox
0x5A6=AC/DC animation
0x5A5=Stern Logo
[SoundNames]
0x9=Ting
0xC=Explosion 1
0x12=Small descelleration
0x13=Descelleration
0x14=Buzzer
0x196=TNT
0x19B=Whole Lotta Rosie - Intro
0x19C=Whole Lotta Rosie

Of course, anybody else can copy/past your shared sequence back into a .DAT file (it can created with notepad). The combo boxes will be automatically filled

#495 5 years ago
Quoted from spandol:

I'm trying to replace the Rosie images in AC/DC. All I tried was replacing those images with others in the ROM, but I run out of free memory. Is there a way just to change the pointers in the ROM? For example, I thought I would just use a crowd animation on the ROM instead of the Rosie one but there's not enough free memory to replace them, which I thought was strange since I'm switching one image with another. But, if I could just change the pointers to the images, maybe this would work? Anyway, if you have any help on this, let me know.
Thanks.

It's not possible to change the pointers.
However, there are some hints to optimize memory :
- Raster-1 and raster-12 images will not consume memory when you replace them.
- If you replace the same image several times, it will consume memory for each try. To prevent this, use macros... After you last try, clean the macro of all the tests you made (and you don't want to keep), and re-run it on the original firmware; it will only use the minimum required memory.

For example, the macro :
Image,0x5A5,"DSC08042.JPG"
Image,0x5A5,"DSC08043.JPG"
Image,0x5A5,"DSC08044.JPG"

should simplified to keep only the last change for image 0x5a5 :
Image,0x5A5,"DSC08044.JPG"

#518 5 years ago

Pinball-Browser can also be used to modify the program...
I have added a Tennis game to my AC/DC :
http://pinside.com/pinball/forum/topic/acdc-program-modification-proof-of-concept-1

#568 5 years ago
Quoted from RTS:

Has anyone figured out the "song champion text mystery" yet?

Quoted from pinballlooking:

I wonder if song champion text is hard coded in the code.
If you change it to French dose the song champion text change to French?
Maybe the new version that can change code will help us.

It's in a different table that is not (yet) processed by the app

#575 5 years ago
Quoted from Kcpinballfan:

Im hoping that new table shows up very soon. Oga83 youre a genius.

Not in the next days I'm working on a new feature...

#576 5 years ago
Quoted from Leachdude:

My first attempt on my AC/DC booted up and said this game can not be played in this country, please contact your distributor. Anyone know the reason for this error?
Chris

Are you sure that you've taken the correct firmware (PRO/LE) ?
Or maybe changed the wrong dip switches ?

#577 5 years ago
Quoted from Arcade:

A bunch of people have my BIN file now. If you want to try it out just send me a PM and I will give you a Dropbox invite so you can grab it. The file is 114 MB and a bit too large for an email attachment.

IMO, it would be better to share macros instead of binaries (and songs).
Macros are just text that can be used to do the same mods than you did.
All you have to do is save (or copy/paste) your macro list when your mods are completed.

#585 5 years ago
Quoted from RTS:

If one just copies a macro with new song titles and locations, will the bin file still work?
I thought you would need the bin file because it contains the new imported songs. The macro is just the line info, isn't it?

This is correct, but when you run the macro, it will ask for any song/image path that is needed.
If somebody wants to replace a song with, let's say, Dirty Deeds, there are chances that he already have the sound track.
But of course, if it is a brand new composition of your own (sound or image), you have to provide it.

#589 5 years ago
Quoted from pinballlooking:

Do you think you might add this table to a future update?
Just wondering. This App seriously rocks! Thanks so much for sharing!

Yes, I found a way to do this, although it's not perfect : I'll add a function to rename any string you want into the firmware, provided you know it (there will be no list for those strings).
New release tomorrow

#593 5 years ago

v2.00 can be downloaded

The main new feature is the possibility to load game-independant patches (like Tennis game) on most recent SAM boards. Pinball-Browser will adjust the patch to the game when it loads it (it looks easy, but it was a lot of work to acheive this !).
The only exist patch at this time is : http://pinside.com/pinball/forum/topic/acdc-program-modification-proof-of-concept-1
I have tested it on AC/DC; some tests are currently running on X-Men and MTLE. Anyone interested to test it ?

I have also added a 'string replacement' feature for any string that is not listed in the Message tab.
No more "song champion text mystery" !
Be aware that the search function is case sensitive.

Some of you asked for it, but I'm sorry, it is not possible to change the sound duration when you import a new one

#600 5 years ago
Quoted from herg:

I might be the only person who would use this, but is it possible to extract the names of the lamp matrix locations? I can find them using the new Messages->Search Firmware feature, but being able to export a file containing a list would be very useful for me.

Search for one string with Pinball Browser : it will give you its file offset (0x...)
Then, use an hex editor (www.wxhexeditor.org is a good one) and go to the file offset : all the strings you're looking for will be around

#601 5 years ago
Quoted from Kcpinballfan:

Awesome Oga I can't wait to get home to mess with it. Stellar update as always. You said its not possible to change song length at this time, does that mean it will never happen with your program or you're still trying to figure out how to do it?

It really seems a big step ahead today, but nothing is impossible...

#602 5 years ago
Quoted from sixsixtie:

This is awesome. Good work!
Did you program it in c? Can you give any other sort of information? I have pretty good programming knowledge. I know java,python,js etc, etc I've only messed with c syntax stuff while working in linux. I know if I put some time in I could figure it out but I'm not sure where to start. Could you post the uncompiled tennis game so I can poke around? I understand if you don't want to.
Anyway really just wanted to say great work though.

Pinball browser is programmed in C#
Program mod (tennis game) is in C (and a few lines of assembly) : I'll post the sources and a tuto asap, when I have the feedback of pinsiders who are testing it on MTLE and X-Men.
I'm still trying to figure out how to integrate tennis in the middle of a pinball game.

#610 5 years ago
Quoted from Arcade:

However, one song I am trying to replace has a longer title than the original.
There does not seem to be a way to use spare memory like in the original search.
Would this be possible to add or am I just missing something simple.
My Dirty Deeds and Shoot to Thrill are not a problem but Girls got Rhythm is more letters than War Machine.

No, it's not possible as we are not dealing here with pointers (to strings) : the program doesn't know which code is using a specific string, and thus cannot move it. However, it is possible to use the trailing spaces; the 2nd column in the list displays the used space versus the available one (for example 17/20 "WHOLE LOTTA ROSIE" means 17 char used among 20 available).

#625 5 years ago
Quoted from Crash:

Would it be possible to fragment messages/songs to allow them to expand into previously unallocated space? This would allow people to use blank space without remapping the pointers of every asset past the expanded resource.

Unfortunately, no : the sound structures are too complex.
I only figured out how was working a very limited part of them...
More info here :
http://pinside.com/pinball/forum/topic/acdc-display-and-modify-dot-matrix-images/page/4#post-901765

#636 5 years ago

v2.01 is online !

It can be used to associate a patch to any knocker.
[EDIT]A 'knocker' is a solenoid that will lock/eject the ball (this is the way Stern calls them).
Some solenoids are not knockers : left and right flippers, slingshots, ...

Here is an example with X-Men :
knocker.png

For a patch example, see the breakout game :
http://pinside.com/pinball/forum/topic/acdc-breakout-game#post-982139

#639 5 years ago
Quoted from flashburn:

Here's an idea for a future version. How about a "bookmark" option. Something where you can label/group different sound offsets.
So for instance, you could take offset 340 in the Metallica LE rom and label it "Battery" and also have it listed in a separate list, that way we can easily navigate to the same offsets each time we replace songs. Make it so it's a separate file so others can share it.

Are you talking about this : http://pinside.com/pinball/forum/topic/acdc-display-and-modify-dot-matrix-images/page/10#post-951655 ?
It also works for images
Here is my ACD165LE.DAT file (rename .txt to .dat and save it in the same directory than you .bin file).
// Error: Image 115265 not found //

#642 5 years ago
Quoted from luvthatapex2:

Knocker? you mean solenoid?
So if I understand this, you can associate the breakout game to play when you hit a certain solenoid, like a VUK, scoop, trough, etc...

That's correct (but not for all solenoids)
A 'knocker' is a solenoid that will lock/eject the ball (this is the way Stern calls them).

AC/DC : Jukebox, bell eject, cannon, trough
X-Men : Center lockup, left eject, left upper vuk, trough
MTLE : Snake eject, right eject, coffin lockup, trough

Some solenoids are not knockers : left and right flippers, slingshots, ...

#644 5 years ago
Quoted from flashburn:

Haha very nice! I need to poke around with the software a bit more it looks like.

I recently modified the original post to add some hints and explanations.
Any suggestions about it are welcome !

#653 5 years ago
Quoted from chocho:

dear oga and other user,
i have added some songs and custom speech on my Avengers pro software!while update progress erverything works fine!after update there is an error 8 shown on display and i can't reboot the pinball!display shows nothing!only chance is to restart the pinball in update modus again try update again!also can't update with the original software after that error!pinball doesn't start after same error message!please help what is my failing!what should i do?i have replaced the cpu board from another machine but same problem!please help to solve my problem!
thanks a lot
chocho

Check again that you are using the correct firmware (Pro/Premium ?)
Most likely it's not the correct one for your pinball : you can't have the same issue on 2 different cpu boards.

#663 5 years ago
Quoted from chocho:

thanks for help, now it works!have added some sound file double,that was my mistake!great program oga!very nice work!gratulations!

That's good news
What do you mean by 'have added some sound file double' ?
Whatever the sound file you import, that should not lead to a black dmd at boot time.

#664 5 years ago
Quoted from Jdawg4422:

this is not true. on my WPT there was no error. I wish there was so i could have kept my high scores.

It seems that the checksum is only used on recent games

#665 5 years ago
Quoted from Kcpinballfan:

There is always an error after update. After update is installed press the white reset button on your board in the backbox then shut the machine off then back on after you've moved the dipswitch back to normal.

You can simplify : after the update, put the dip switches back to normal and press the white reset button.

The dip switches can even be restored to normal position during the update process.

#667 5 years ago
Quoted from Crash:

Can you change the pointers around if a song is extended, moving data further down the ROM given that there is enough unallocated space at the end? If so you can implement a function to defragment the ROM's unallocated space and move it all to the end for overwriting with useful data.

That's what I do for images and messages, but it's not possible for songs :
A song is not made of pointers;
Rather, it is described by a script (that's why an elementary sound is called a 'sound-script').
A script is a list of actions (up to 17 different actions, depending on the firmware version).
I only understood 1 of these actions which is 'play sound fragment'.
For example, hell's Bells (0x182) has 122 fragments and 100's of other actions...
To extend or reduce a song, it would be necessary to understand all of these actions.
So, I'm sorry but at this point, it is not possible to change the duration of a song

2 weeks later
#672 5 years ago

I'm looking for new ideas :
So, what kind of feature would you like to see in Pinball Browser ?

#680 5 years ago
Quoted from DugFreez:

Glad to see you are back.

Well, I'm still on holidays, but I keep an eye on pinside
I was in Santa Fe, NM, yesterday; I wish I lived in the US !

Quoted from DugFreez:

I still vote for an auto play button on the audio and display tabs.
For the display, just holding down on the right arrow to let it scroll is fine (but I still think an auto play would be nice).
As far as the sounds go.....an auto play would be really nice. As it is now....it's click, enter, click, enter, click, enter,...........
It would be nice to just click a button and have Pinball Browser automatically start playing the display animations or sounds effects from where it is.

I like this idea !

#681 5 years ago
Quoted from Goldentee:

Very cool program. Is it possible to add sounds to things like slingshots, etc. or is there no code in place for such events? Asking about AC/DC.

A slingshot switch triggers an event (which in turn triggers the coil). This is where the new code should be added. So, I think it could be possible.

#682 5 years ago
Quoted from Kevin_LHeureux:

I'd like to see it run in OS X natively. That would be a nice feature.

Did you try mono ?
I did on Linux, so it should work on mac os.

I did the test a while ago and had to make some modifications in Pinball Browser to make it work fine.
I didn't tried with the latest version and if corrections are needed, I'll do them; just let me know if you get any errors with mono on mac os (with details as I don't have any mac to run it).

2 weeks later
#692 5 years ago
Quoted from Russo121:

Another suggestion for adding to this software could be the ability to colour the frames individually by hand. Of course, i have no idea how hard this would be to implement but would be super cool to be able to make colour images from new stern machines image output. With advancements in dmd replacements such as lcd screens would make this the ultimate Stern mod +1.

I'm already working on it :-;

#693 5 years ago
Quoted from Crash:

Exporting of sequenced music either in raw format or MIDI format?

What do you mean by "raw" format ? Wav is already a kind of raw format.
If you mean "Internal Stern format", it would not be usable by any mmplayer because 1- there is no adequate header and 2- most of the songs are divided in several sound fragments

IMO, exporting to MIDI is not worth it as sounds are not internally stored in MIDI format.

1 month later
#727 5 years ago
Quoted from Zitt:

Anyone else tested it against this wonderful tool?

I'm still investigating but as far as I could see there is no change in the internal structures.
So, Pinball Browser should work as it does for other pins.

However, I don't know whether the bin crc has been strengthened or not. Let's wait until somebody tries a patched firmware :-;

#731 5 years ago

Does anybody know why I can't edit the original post ? (edit link has been removed a few days ago)
Post is too old maybe ?
[EDIT]Fixed; Many thanks to Robin.

#734 5 years ago
Quoted from j_m_:

oga83:
I would start a new thread and reference this thread in the 1st post of the new thread

Thanks, I did and Robin has fixed this

#741 5 years ago
Quoted from Arcade:

That would probably be a good idea.
I'm sure Star Trek will go through many quick code updates and each one will erase any work you have done. Plus Stern always moves the music tracks on each code update and you have to search them all out again every time.

Use Pinball Browser macro : you can easily run your mods on a new firmware version, provided that the sound requests/displays have the same id (which is the case on what I saw so far).

#742 5 years ago

v2.10 can be downloaded at http://www.sendspace.com/file/m87nfw

I have added features to play image animations and to play sounds in sequence.

I have also added a selection of dmd colors, including the ones used with the Vga interface (http://pinside.com/pinball/forum/topic/svga-on-stern-flipper). Next version will probably include an editor to colorize images.

Let me know what you think of this !

#758 5 years ago

v2.15 is ready to download !

There are a major changes in display rendering :
I have added a 'Leds' display mode (see photo below)
I am now using the non-linear, true dmd light intensity (measured from hardware).
I think that the result is now close from reality

The gamma value can also be adjusted in the Pinball-Browser.xml file (but IMO the default value is ok and you don't need to change it).

First image : previous version
Second image : v2.15 with dmd light intensity
Third image : same in 'leds' mode

changes.png