Jump to content

Recommended Posts

Posted

Again, I'm kinda new to this, but I've been setting up many tables to my liking, and relatively trouble-free.  But I encountered this today: After selecting to use external DMD (in F1 menu), and then attempting to change the color of the DMD script, by right clicking on the script and getting the "Customize DMD Style" menu,  I change the color, and apply it to that table (only), and save.  Works for that table, but then also makes the same change on  another table.   In other words, seems to be changing globally, when I have not asked it to (not deliberately, anyway).

 

Anyone know what's going on?  I've been going back and forth with this with two tables, particularly: Cirkus Voltaire and The Who's Tommy.  The both will be the same color no matter what I do.

 

Thanks,

N. 

Posted

I just rechecked this: Changes are definitely being saved globally, not to the particular table, despite my "Save" settings.  I suspect that some setting in VPinMame needs to change, but I have no idea where to find it.  Hope someone can help.   Thanks, N.

Posted

Still hoping someone can help with this.  There are so many DMD configuration and .ini files withing PinMame.  I’ve looked at many, and tried to discover a relevant setting, but fruitlessly.  Basically, the problem is that the DMD Extensions program will not save customizations for a single table locally (but only globally).  I mean, it saves position fine, but not changes to color.  Thanks, N.

Posted (edited)

@Nordfinn


Open DMDdevice.ini in a txt editor and scroll down.
You will find sections like this:


[mb_106b]
virtualdmd left = 43
virtualdmd top = 184
virtualdmd width = 427
virtualdmd height = 106

 

First line is the rom name of your table. the next lines are the positions of your external DMD.

 

backup this file if you want to edit it. its important. This is where individual position settings and color themes of your external DMD are saved locally. 

 

Global and some ROM-related config (registry)

VPinMAME also stores configuration in the Windows Registry.

Location:

HKEY_CURRENT_USER └─ Software └─ Freeware └─ Visual PinMAME

This includes:

Default options

Some per-ROM flags

Controller options

Debug / display options

I strongly recommend not messing around with Windows registry if you don't really know what you're doing. 

grafik.png.411ca27fcd4e7bf66d9cb641437a0f62.png

 

Edited by Tikimaster
Posted

In DMDdevice.ini, under the roms for individual tables,  I see only position and size specs and, for a few tables, "virtualdmd style = default" or "virtualdmd style = legacy."  Nothing specific to color, though the way DMD Extensions is set up, one would think that specs for color are saved here.  

Posted (edited)
1 hour ago, Nordfinn said:

one would think that specs for color are saved here.  

In DMDext you can use color themes with alphanumeric display. There are no other colors with dmdext to save. (External DMD) Vpinmame saves the colors in the registry. As I wrote above:
 

vpxregedit.jpg

 

What VPinMAME actually does

VPinMAME:

Emulates the real pinball machine hardware

Generates the raw DMD dot data

Knows which ROM is running

Knows how colors should be applied

Because of this, VPinMAME:

Has per-ROM settings

Needs to remember user choices (color on/off, palette, etc.)

Uses the Windows Registry as its built-in storage system

So when you enable color DMD in VPinMAME:

It saves that choice in the registry

Next time that ROM runs, VPinMAME reloads those settings automatically

👉 VPinMAME owns the DMD logic, so it owns the settings.

 

 

What dmdext actually does (and does NOT do)

dmdext:

Does not emulate anything

Does not know which ROM is running

Does not decide colors - only with alphanumerics

Does only store locations per-ROM configuration - and only colors of alphanumerics, if you changed it. 

Its job is very simple:

“Take DMD frames from somewhere and show them on a screen or device.”

dmdext can:

Display dots

Forward dots to real hardware

Apply colors only if instructed externally

But:

It has no internal memory of ROMs

It has no registry system

It assumes something else already decided the colors

👉 dmdext is a viewer, not a controller.

 

Where the colors REALLY come from

There are two common cases:

1️⃣ Color is handled by VPinMAME

VPinMAME loads the ROM

VPinMAME loads the color data (palettes / colorization)

VPinMAME saves the “use color” setting in the registry

dmdext just displays what it’s given

✔ Colors saved
✔ Registry used

 

2️⃣ Color is handled externally (Freezy / device mode / files)

Color files exist on disk (.pal, .vni, .pac)

dmdext reads them at runtime

Nothing is “saved” — files already define the colors

✔ No registry
✔ No settings to remember - only positions and colors of alphanumerics are saved
✔ Restart = same result

Why dmdext doesn’t save colors (by design)

If dmdext tried to save colors:

It would need to track ROM names

It would duplicate VPinMAME logic

It would conflict with existing color systems

It would break portability (cab → cab)

So instead:

Files define colors

Emulators decide behavior

dmdext stays stateless

This is intentional and correct design.

One-sentence summary

VPinMAME saves DMD colors in the registry because it emulates the machine and owns per-ROM settings, while dmdext is only a display tool and has nothing to save.

To all:
If I have made a mistake in this description, please correct me so that I can change it.

Edited by Tikimaster

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...