with the following games
Time Scanner (TS 2.0, Magnet System, prototype)
Exzisus (EX 1.0, Magnet System, prototype)
Xain'd Sleena (SC 3.0, Magnet System, prototype)
this is a checkpoint, there is a sizeable ToDo list but I think this is a good enough state for initial inclusion before working out the remaining issues. ArcadeHacker has the hardware working for questions etc.
I would especially appreciate help with sound (haven't a clue how it hooks up, tried lots of things, no luck) and some help in going over the CPU comms, especially with the sprite CPU as I think I must be missing something important. Likewise help from somebody more familiar with the floppy code from MESS so that it can use that, I had no luck in getting it to work with the copy protection or from a rom region, I've kept all floppy related code in a device so it's very easy to swap out so for now what I've got isn't intrusive.
note, very weird idea for a system, they've ported 3 arcade games from other manufacturers, original titles were advertised, but it's likely nothing more of the system exists.
the system uses 5 PCBs, one Z80 on each and instead of having dedicated sprite / tilemap chips they have the Z80s doing software rendering, using 8bpp framebuffers. 2 of the boards are for background planes, 1 of the boards is for sprites. The hardware has various memory expansions which look like afterthoughts as they're addressed in strange ways.
This change generates a more unique device id for derect input devices
by incorporating the product unique identifier and instance unique
identifier. This allows for better disambiguation on device id when
mapping controllers via mapdevice config settings.
device_rtc_interface: Cleanups and refinements (nw)
- Give RTCs their own phase of machine initialization, right after NVRAM loading
- Make RTC feature flag overrides const, including one new one
- Make rtc_clock_updated a required override
- Add BS, Tab, 00, 000 keys common on add-on keypads as input items; SDL may recognize these, but DirectInput does not
- Assign Keypad 00 and Keypad 000 in several drivers' input lists
- Add SDL keycode for "cancel" key
- Add keypad keys as alternates to natural keyboard
- Move has_keyboard() out of the core; enabled() test is unnecessary now that all optional keyboards are slot devices (nw)
This is really a temporary workaround while Imgtool gets C++-ified; the real issue is the ad hoc nature of the existing semantics of image construction.
Add ticket_dispenser_device::motor_w as a proper WRITE_LINE method, first step towards eliminating the m_active_bit=0x80 nonsense (nw) (#1485 please take note)