Made explanation of interaction between device class enable options
(-[no]mouse, -[no]joystick, -[no]lightgun) and automatic device class
enable options (-*_device) more explicit. Also documented that
-mouse_device mouse is set by default in both relevant places.
Provided a better explanation of the purpose of -dual_lightgun.
* Sort screen chains by none, default, then collation order (rather than
whatever order the filesystem yields).
* Correctly persist settings across fullscreen toggle when explicit
screen chains are configured.
* If chains are specified for a single window only, apply them to all
windows.
* Treat empty string for screen chain as "default" rather than crashing.
* Changed default setting for bgfx_screen_chains to an empty string so
chain selection will be saved/restored per system with mame.ini file
created by -cc with no other settings.
- Transfer counter semantics were incorrect for async mode
- DRQ wasn't updated after all operations that could change it
Mac Quadra 700 now gets to "Welcome to Macintosh" from HDD, and SPARCStation-1 can still boot Solaris.
Don't ignore the return status of OSD module initialisation. Attempt to
fall back to an alternate module if the selected module fails to
initialise. Log more useful diagnostic information at verbose level.
Fixed BGFX crash on exit after toggling fullscreen. Also persist more
settings than just the selected chains across toggling fullscreen.
Turned video modules into OSD modules in the same sense as all the other
OSD modules. They now use the same selection/fallback mechanism as all
the other modules without special extra code in the OSD implementations.
Untangled some object ownership mess. Windows own renderers, OSD
objects own windows. Fixed a refrence loop that caused the first window
object to always leak.
Don't create renderer object until after underlying window has been
created. Fixed issues with order of creation/destruction when toggling
fullscreen or changing prescale in fullscreen with -switchres in SDL
builds.
Use more smart pointers in BGFX and Direct3D render modules. Most of
the code now reutrns a smart pointer when handing over ownership or a
naked pointer when retaining ownership. Fixed a few leaks and
simplified cleanup code.
Encapsulated various OSD modules better.