There are multiple issues with what MAME was doing, but the most glaring
is that it violates the DirectInput interface contract that requires the
window associated with an open device must not be destroyed. See
documentation for IDirectInputDevice8::SetCooperativeLevel: "This
parameter must be a valid top-level window handle that belongs to the
process. The window associated with the device must not be destroyed
while it is still active in a DirectInput device."
The previous code also prevented DirectInput controllers from working
when using multiple windows if any window other than the first window
had focus.
Also fixed SDL builds not correctly recognising when all windows lose
focus, and save state menu not appearing.
New working systems
-------------------
Sphinx Galaxy (v2.03) [hap, Mr. Lars]
New working clones
------------------
Sphinx Galaxy (v2.00) [hap, Mr. Lars]
Sphinx Galaxy (v1.03) [hap, Mr. Lars]
New working software list items
-------------------------------
saitek_egr: Endgame ROM (ver. 1, set 2) [Mr. Lars]
saitek_kso: Kasparov Selected Openings (set 2) [Mr. Lars]
* Removed SDL2 source.
* Updated gradle.
* Updated SDL2 Java support glue code.
* Increased minimum supported Android API version to 24.
* Updated required asset files for Android app.
* Added proper tag for Android logging.
* Added SDL2 hint to make BGFX work on Android.
-----------------------------------
x68k_flop: Last Tempest (older)
ibm5150.xml: Replaced disk 1 of sq2 with a fresh mfm conversion, the previous one was twice as large as necessary (40 track disk dumped as 80 track). [Justin Kerk]
* Added callbacks for card detect, battery voltage and write protect to the PCCard interface.
* Added helpers to read/write data swapped (similar to the existing support in the ATA device).
* Add support for 2 MB and 4 MB SRAM PCMCIA models from Centennial with built-in EEPROM storage for CIS information.
* machine/linflash.cpp: Updated the linear Flash PCMCIA card emulation to use the new card detection support.
* machine/gayle.cpp: Rewrote the Amiga Gayle emulation, adding support for PCMCIA.
* Fixed an issue with Amiga interrupts arriving at the wrong time.
* Render sprites to intermediate buffer buffer and blend when mixing (fixes sprite/sprite priorities).
* Implemented mesh/checkerboard fake transparency (previously sprites using this were skipped).
* Improved precision of sprite scaling (fixes gaps and smoothness of scale in many places).
* Improved floor layer rendering for buriki and fatfurwa.
* Added preliminary sprite mosaic effect support.