-Updated a few more internal layouts, mostly bezel-only ones.
* brkball wasn't using the DMD dots at all (it has a screen).
* The Aristocrat layouts could use collections to allow buttons and
tower lamps to be enabled/disabled independently.
These are mostly automatically generated/converted fruit machine
layouts. They were fortuitously triggering the "alternate" layout mode
by having multiple background elements without overlays, so alpha
blending mode was used for all elements.
These layouts had bezel elements only. It makes no sense to allow
turning off all elements in a layout leaving the user with a blank
window. (It's possible some of them are suited to breaking up using
collections, but that's a bigger job.)
Changed name of element to "collection" and initial visibility attribute
to "visible", and added them to documentation. Also added them to
complay.py.
Fixed issue with collection inside group, and improved initial view
selection behaviour.
Updated some internal layouts to demonstrate new features, including
et3400, irrmaze, ltcasino, mekd3/mekd4, seawolf and vgmplay.
Removed all uses of cpanel, marquee and overlay from internal layouts
and removed them from complay.py to actively discourage use. Also
cleaned up view names in layouts that were using them in place of
spaces, and removed some superfluous name attributes on elements that
won't do anything useful with an output value anyway.
Made vgmplay cycle visualiser modes when visualiser screen is clicked.
Fixed a copy/paste error in bus/rs232/hlemouse.cpp while I'm at it.
- Sprite color values are masked to their 15 least significant bits
before they are rendered to VRAM.
- Pixels on the bottom layer (or in single-layer mode) are always drawn,
even if the transparency bit is set to 1.
* rename some misleading type names
* remove callback_t and replace by better scalable approach
* hide implementations details
* move sources classes from putil.h to psources.h
* reduce code complexity
* improve parsing performance, parsing netlists now is twice as fast.
* fix issues around multi-byte string support
* moved psplit into pstrutil.h
The previous behaviour was unintuitive - parsing an XML file and writing
it out immediately would produce invalid XML if the file contained any
characters that needed escaping. It makes far more sense to escape on
writing rather than expecting the user to escape input.
-Add preliminary support for visibility toggles to artwork system.
This allows the user to show/hide related elements in a view, with
nesting. The view can specify whether elements are shown or hidden by
default. Settings are saved per host window/screen per view. There is
no way to set the initial visibility state on the command line. Legacy
"Space Invaders cabinet model" layers are mapped onto visibility
toggles.
This is not stable yet. In particular, the XML element/attribute names
have not been finalised. The new features have not been added to
complay.py to prevent them from being used before they're finalised.
-----
Super Game 7-in-1 (TimeTop SuperGame) (PAL) [Takashi Omoto, Sean Riddle]
new NOT WORKING machine
-----
Frogger (MSI Plug & Play, white joystick) [Sean Riddle]
* possible unsp20 fixes
* better
* tidy ups
* reorgainize
* force it to run interrupt instead of simulating behavior
* more guesses
* change how hack works while we figure this out
* some kind of external devcice seems to manage the game selection number.
* some cleanups of old HLE
* modify logging
* stop menu crashing, sim code is still very rough tho