* screen: validate crystal values used for set_raw
* driver: get rid of sound start/reset overrides in machine configuration
* vrender0.cpp, nexus3d.cpp: corrected pixel clock crystal value
* mw8080bw.cpp: turned several audio subsystems into devices
* bus/sat_ctrl: don't start subdevices in device_start - the machine does it for you
* mb14241.cpp: simplify handlers
* fgoal.cpp: updated for simplified handlers
* devfind, screen: repair some doxy comments that had rotted with refactoring
* doxygen: disable warnings for undocumented things - it's most of our codebase
* snowbros.cpp: restore an output level setting lost in MCFG removal
There's an outstanding validation error from the HP98543 DIO video card
not using a valid crystal value. Someone needs to find a picture of the
card and confirm or deny the existence of the 39.504MHz crystal.
The various start/reset overrides are bugs waiting to happen. It's not
immediately obvious that the ones run earlier can end up being called
multiple times if subsequent ones throw missing dependencies exceptions.
They're a relic of when everything from the old C-style drivers was
thrown into classes all jumbled together.
I haven't tested the hh_sm510.cpp changes very well yet - I'll give it
another review soon, and test it some more before the end of the month.
I'm not sure about whether any of the B or BA handlers should be in the
base config methods for G&W. I've left them there for some
configurations that always have them, but I might rip them out of the
common methods altogether. It's not like Tiger where all the games use
them.
sid.cpp : Reduce duplicates, Add postload function
sidvoice.cpp : Fix type value when DIRECT_FIXPOINT defined
sidenvel.cpp, sidvoice.cpp, sid.cpp : Fix spacings
* tms34020: Fix out of bounds read, when extra logging is enabled
* tms34020: Annotate unimplemented clip opcode
* tms34020: Implement CLIP instruction
* fmtowns: bring machine configurations a bit closer to real hardware
- Separated the SCSI controller from the base machine configuration and
turned it into an optional device, since the first-generation models and
the Marty don't have one.
- Changed the CPU of the FM Towns II SJ to a 66 MHz 486DX2 instead of a
Pentium.
- Added comments describing the RAM expansion possibilities in each
model, and modified the user-selectable options accordingly.
- Added a separate machine configuration for the FM Towns II MX, since
it has a different CPU and more RAM options than the HR.
- Corrected memory maps for the 386SX-based models so the VRAM is
accessible at 0xb00000 in packed format. Fixes several instances of
graphics being garbled on the UX and Marty.
- Configured the Marty with just one floppy drive and 2 MB of RAM.
- Added a couple of sanity checks to prevent MAME from crashing when
selecting 1 MB of RAM or a single floppy drive. This makes it possible
to emulate something reasonably close to the functionality of an
original FM Towns Model 1, though the real Model 1/2 ROMs still need to
be dumped.
* accidentally broke floppy change detection (nw)
* move SCSI-related member functions to protected (nw)
* tabs (nw)
* gamate: fix power up RAM contents
According to reports in the cc65 project, it appears that the RAM contains
0xFFs at power up. See https://github.com/cc65/cc65/issues/941.
Adapt the driver to account for this.
* gamate.c: don't use magical number for memory size