out of whatsnew: the code is maybe not the ideal solution, but dipswitches were neither, imho. test mode shows no change in functionalities compared to the old code, but the new implementation makes a lot easier the actual use of shifter in-game
cpu_get_total_cycles() == cpudevice->total_cycles()
cpu_clocks_to_attotime() == cpudevice->cycles_to_attotime()
cpu_attotime_to_clocks() == cpudevice->attotime_to_cycles()
In some cases, I updated existing code that fetched and cached
devices to fetch them as cpu_device so that these can be called
without casting.
In other cases, I did the quick & dirty thing which was to downcast
a generic device to a cpu_device and then call the function.
Note that cpu_clocks_to_attotime() and cpu_attotime_to_clocks()
were previously mapping to the device-level functions
clocks_to_attotime() and attotime_to_clocks(). This was different
behavior than before the big devices change, so with this update
I have fixed it to match the previous behavior (i.e., map cycles
not clocks).
This may impact timing of drivers that used these functions on
CPUs that have clock dividers or multipliers.
cpu_get_total_cycles() which is now slow. Better to use the legacy_cpu_device
directly and call device->total_cycles() which avoids the dynamic_cast to find
the execute interface from a generic device.
Also added cycles_to_attotime() and attotime_to_cycles() which is more often
what is requested. (Clocks are the raw input clock, while cycles are internal
clock after dividers/multipliers.)
- always available now, just specify -profile <n> to enable it
- supports stack walking to uniquely identify call chains; the <n> parameter
to the -profile option specifies how deep to go
- automatically turns off throttling and multithreading, and sets the number of
processors available to 1 (since we only sample the main thread)
- output now uses the common symbol lookup, which actually uses the PDB for
MSVC builds and gives excellent results (may eventually figure out how to
extract gcc symbols someday)
- the top 30 unique call chains are output
running_machine definition and implementation.
Moved global machine-level operations and accessors into methods on the
running_machine class. For the most part, this doesn't affect drivers
except for a few occasional bits:
mame_get_phase() == machine->phase()
add_reset_callback() == machine->add_notifier(MACHINE_NOTIFY_RESET, ...)
add_exit_callback() == machine->add_notifier(MACHINE_NOTIFY_EXIT, ...)
mame_get_base_datetime() == machine->base_datetime()
mame_get_current_datetime() == machine->current_datetime()
Cleaned up the region_info class, removing most global region accessors
except for memory_region() and memory_region_length(). Again, this doesn't
generally affect drivers.
Comment: I was trying to get these now working sets 'running' (set up and configured) so I could write up the comments for the MAME FAQ. Does anyone have any experience with these?
this was wrong:
New games marked as GAME_NOT_WORKING
------------------------------------
Fire Trap (Japan)
correct:
New clones added
----------------
Fire Trap (Japan) [Guru]
this object which can be called multiple times to append new devices
after the initial machine configuration is set up. Updated member
variables to match new naming convention.
Changed the running_machine to take a constructed machine_config
object in the constructor, instead of creating one itself, for
consistency. Also added machine->total_colors() as a shortcut to
machine->config->m_total_colors.
New games added or promoted from NOT_WORKING
--------------------------------------------
Slap Fight (set 1) [Phil Bennett, Dr. Decapitator]
Alcon [Phil Bennett, Dr. Decapitator]
* Tagged kof2003h AES VERSION
* Tagged the following sets as MVS AND AES VERSION: aodk, lbowling
* Renamed P1 in sengoku3 to correct chip label
* Marked v2 in strhoop BAD_DUMP
* Marked P1 in flipshot BAD_DUMP
* Identified kof98n as AES version, renamed to kof98h
New games added or promoted from NOT_WORKING
--------------------------------------------
"The King of Fighters '98 - The Slugfest / King of Fighters '98 - dream match never ends (Korean board 2)