summaryrefslogtreecommitdiffstats
path: root/src/lib/formats/st_dsk.cpp
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2019-07-06 00:23:20 +1000
committer Vas Crabb <vas@vastheman.com>2019-07-06 00:23:20 +1000
commitc38a3395e94e38a37cf6b8efdf9f49a5c9d415df (patch)
tree8ad5f6ee37953b4d19241ce31d11da23a712cc3e /src/lib/formats/st_dsk.cpp
parent7ee50ffec7afabd20a027f89e47f11b116301071 (diff)
Make layout format more flexible:
* There is no longer a concept of "layers" - there are only screens and elements. * Elements are now instantiated with <element ref="..."> * Screens and elements can have explicit blending mode specified with blend="..." * Default blending mode for screens is "add" and default for other elements is "alpha" * Other supported modes are "none" and "multiply" * This removes the options to enable/disable layers individually - use views instead * Legacy layouts can still be loaded, and support won't be removed for at least a year The current artwork model is over-stretched. It's based on a Space Invaders cabinet model, and isn't applicable to a lot of the systems MAME emulates now. The fact that MAME has to switch to an "alternate" mode to deal with games like Golly! Ghost! without requiring pre-matted bitmaps shows that the Space Invaders model wasn't even adequate for general arcade use. It shows in that for a lot of the systems that heavily depend on artwork, people just seem to randomly choose layers for elements until they get something that works. Also, the fact that MAME will switch to an alternate (Golly! Ghost!) mode depending on the combination of elements is a trap for people learning to make artwork. There are cases that the current approach of implying the blending mode from the layer doesn't work with. Examples include LEDs behind diffusers (requires additive blending for layout elements), and mutliple stacked LCD panels (requires RGB multiplication for screens). For configurability, it's now a lot easier to make multiple views using groups. For example, if you want to make it possible to hide the control panel section of your layout, you can put the control panel elements in a group and create views with and without it. I will gradually migrate the internal artwork to use the new approach. I have an XSLT stylesheet that helps with this, but I'm not comfortable adding it because it isn't a complete solution and it still requires manul steps. I wanted to get the re-worked pointer handling done sooner so I could push them both at the same time, but unfortunately various things have prevented me from progressing as quickly as I wanted to. Sorry guys, that stuff's going to have to wait.
Diffstat (limited to 'src/lib/formats/st_dsk.cpp')
0 files changed, 0 insertions, 0 deletions
td>1-5/+6 * Drop support for libc++ 6 altogether - it's missing std::unordered_map::extract. Vas Crabb2023-03-271-1/+4 * Retired the over-stretched "system type" flags. Vas Crabb2023-03-233-35/+25 * -luaengine.cpp: Expose UI controls toggle state. Vas Crabb2023-03-231-0/+2 * dimemory: Add the target address space to translate, wrap the constants Olivier Galibert2023-03-181-5/+8 * Lua engine: Better bindings for device_state_interface. Vas Crabb2023-03-121-0/+45 * Various updates, mostly around Lua: Vas Crabb2023-03-071-7/+28 * Input refactoring: Vas Crabb2023-02-187-59/+66 * Small batch of input refactoring: Vas Crabb2023-02-052-3/+7 * Cleaned up some recent changes. Vas Crabb2023-02-041-4/+4 * docs: Added an introduction to the input system for developers. Vas Crabb2023-02-032-0/+459 * docs: Clarified documentation of input options. Vas Crabb2023-02-032-19/+59 * Various input and OSD refactoring: Vas Crabb2023-01-292-5/+29 * Miscellaneous fixes and refactoring: Vas Crabb2023-01-282-36/+80 * Add -listbios command to list alternate BIOSes for drivers and devices AJR2023-01-242-2/+22 * osd: Added option to accept SDL game controller/joystick input when losing UI... Vas Crabb2023-01-145-43/+111 * docs: Updated default joystick providers. Vas Crabb2023-01-141-6/+6 * osd: Added support for mapping files to sdlgame joystick provider and made it... Vas Crabb2023-01-141-25/+50 * -osd: Better XInput and SDL game controller input enhancements: Vas Crabb2023-01-123-8/+11 * Bump dates to 2023 where appropriate Vas Crabb2023-01-023-3/+3 * Bump version to 0.251mame0251 Vas Crabb2022-12-301-2/+2 * C++ guidelins update and cleanup: Vas Crabb2022-12-222-16/+75 * docs: Fixed editing errors in C++ coding guidelines. Vas Crabb2022-12-221-2/+2 * docs: Added preliminary guide for would-be contributors. (#10717) [Ryan Holtz... Vas Crabb2022-12-227-71/+849 * Bump version to 0.250mame0250 Vas Crabb2022-11-291-2/+2 * docs: Fixed a markup error. Vas Crabb2022-11-261-1/+1 * docs: Update instructions for adding mame package repository in MSYS2 Vas Crabb2022-11-051-3/+4 * Bumped version to 0.249mame0249 Vas Crabb2022-10-271-2/+2 * docs: Removed obsolete paragraph about logged device IDs properly (GitHub #10... Vas Crabb2022-10-251-3/+0 * Bump version to 0.248mame0248 Vas Crabb2022-09-261-2/+2 * docs: Corrected parent menu for input devices menu. Vas Crabb2022-09-261-2/+2 * docs: Updated build prerequisite package names for newer Ubuntu versions. (#1...