| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
this better fits the drivers from MESS (which have always illogically used the GAME_ flags despite not being games) and also fits fine with arcade machines.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
output [Fabio Priuli]
out of whatsnew:
I fear no proper and clean solution is possible as long as the
driver has such a privileged role in the MAME core structure,
because stuff that is not attached to a root_device (=driver)
is hard to parse. Anyway, there should be no more missing
roms from -lx output (until people starts adding them as
sub-sub-subdevices... ;) )
|
|
|
|
|
|
| |
Too prone to abuse, we're afraid.
This reverts commit 198c77327e08cb6f0dfa2183d6fa226f8908294d.
|
| |
|
|
|
|
| |
Drivers/core where made (still) recognisable contributions as non-primary author. Any objections, feel free to revert.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[Aaron Giles]
* these classes now no longer take a resource_pool; everything is
managed globally -- this means that objects added to lists must be
allocated with global_alloc
* added new auto_pointer<> template which wraps a pointer and auto-frees
it upon destruction; it also defaults to NULL so it doesn't need to
be explicitly initialized
* moved tagged_list template to tagmap.h
Redo of the low-level memory tracking system: [Aaron Giles]
* moved low-level tracking out of emu\emualloc into lib\util\corealloc
so it can be shared among all components and used by core libraries
* global_alloc and friends no longer use a resource pool to track
allocations; turns out this was a wholly redundant system that wasted
a lot of memory
* removed global_resource_pool entirely
* added global_free_array to delete arrays allocated with
global_alloc_array
* added tracking of object versus array allocation; we will now error
if you use global_free on an array, or global_free_array on an object
Added new utility helper const_string_pool which can be used to
efficiently accumulate strings that are not intended to be modified.
Used by updated makelist and software list code. [Aaron Giles]
Updated png2bdc and makelist tools to not leak memory and use more modern
techniques (no more MAX_DRIVERS in makelist, for example). [Aaron Giles]
Deprecated auto_strdup and removed all uses by way of caller-managed
astrings and the software list rewrite. [Aaron Giles]
Rewrote software list management: [Aaron Giles]
* removed the notion of a software_list that is separate from a
software_list_device; they are one and the same now
* moved several functions into device_image_interface since they really
didn't belong in the core software list class
* lots of simplification as a result of the above changes
Additional notes (no whatsnew):
Moved definition of FPTR to osdcomm.h.
Some changes happened in the OSD code to fix issues, especially regarding
freeing arrays. SDL folks may need to fix up some of these.
The following devices still are using tokens and should be modernized
(I found them because they kept their token as void * and tried to
delete it, which you can't):
namco_52xx_device (mame/audio/namco52.c)
namco_54xx_device (mame/audio/namco54.c)
namco_06xx_device (mame/machine/namco06.c)
namco_50xx_device (mame/machine/namco50.c)
namco_51xx_device (mame/machine/namco51.c)
namco_53xx_device (mame/machine/namco53.c)
voodoo_device (emu/video/voodoo.c)
mos6581_device (emu/sound/mos6581.c)
aica_device (emu/sound/aica.c)
scsp_device (emu/sound/scsp.c)
dmadac_sound_device (emu/sound/dmadac.c)
s3c2440_device (emu/machine/s3c2440.c)
wd1770_device (emu/machine/wd17xx.c)
latch8_device (emu/machine/latch8.c)
duart68681_device (emu/machine/68681.c)
s3c2400_device (emu/machine/s3c2400.c)
s3c2410_device (emu/machine/s3c2410.c)
strataflash_device (mess/machine/strata.c)
hd63450_device (mess/machine/hd63450.c)
tap_990_device (mess/machine/ti99/990_tap.c)
omti8621_device (mess/machine/omti8621.c)
vdt911_device (mess/video/911_vdt.c)
apollo_graphics_15i (mess/video/apollo.c)
asr733_device (mess/video/733_asr.c)
|
|
|
|
| |
-listxml output. [Curt Coder]
|
|
|
| |
note: Aaron please give more descriptive text for release log I have no more strength :)
|
| |
|
|
|
|
| |
support for old configuration uses MCFG_FRAGMENT_ADD, which required changing so the current device could be updated by the fragment. [smf]
|
|
|
|
|
|
| |
- Small fix for -listxml dumps regarding output of DIP switches. [Andreas Singer]
- Atari 7800 palette value fix (nw)
|
|
|
|
| |
to new license tagged form.
|
| |
|
|
|
|
|
|
|
| |
Out of whatsnew: This is to provide some definition of the structure of input
ports as they are logged in INP files. Would allow external programs to
determine how many input ports there are, and under which ports analog ports
are located.
|
|
|
|
| |
first attached sample in xml (nw)
|
| |
|
|
|
|
| |
are in) and references to them (nw)
|
| |
|
|
|
|
|
| |
samples due
to currently undumpable NEC D7755C/D7756C)
|
|
|
|
| |
those having shortname (nw)
|
| |
|
|
|
|
| |
DEBUG build by about 40%) (nw)
|
| |
|
| |
|
| |
|
|
|
|
| |
only slot options (for MESS) (no whatsnew)
|
| |
|
|
|
|
|
|
| |
identify which screens depend
on optional devices (mostly of use in MESS, for its slot options, but eventually handy for PC-based
arcades too) [Fabio Priuli]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
intended differences from previous behavior. For drivers,
the main change is that input_port_read() no longer exists.
Instead, the port must be fetched from the appropriate device,
and then read() is called.
For member functions, this is actually simpler/cleaner:
value = ioport("tag")->read()
For legacy functions which have a driver_data state, it goes:
value = state->ioport("tag")->read()
For other legacy functions, they need to fetch the root device:
value = machine.root_device().ioport("tag")->read()
The other big change for drivers is that IPT_VBLANK is gone.
Instead, it has been replaced by a device line callback on the
screen device. There's a new macro PORT_VBLANK("tag") which
automatically points things to the right spot.
Here's a set of imperfect search & replace strings to convert
the input_port_read calls and fix up IPT_VBLANK:
input_port_read( *\( *)(machine\(\)) *, *([^)]+ *\))
ioport\1\3->read\(\)
input_port_read( *\( *)(.*machine[()]*) *, *([^)]+ *\))
\2\.root_device\(\)\.ioport\1\3->read\(\)
(state = .*driver_data[^}]+)space->machine\(\)\.root_device\(\)\.
\1state->
(state = .*driver_data[^}]+)device->machine\(\)\.root_device\(\)\.
\1state->
input_port_read_safe( *\( *)(machine\(\)) *, *([^,]+), *([^)]+\))
ioport\1\3->read_safe\(\4\)
IPT_VBLANK( *\))
IPT_CUSTOM\1 PORT_VBLANK("screen")
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
work + renamed slot "shortname" attribute to "devname" to make clear it is the name of the device to be mounted. no whatsnew.
|
| |
|
|
|
|
| |
according to shortname (nw)
|
|
|
|
|
|
| |
- enforced short names for slot card devices
- updated validation, romverify and listxml output accordingly
- slotoptions now also contain shortnames so it's possible to link
slot option and device
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- appended to xml info about devices which can be optionally mounted to slots
- added a description attribute to slotoption to show which devices can be mounted
in each slot
- added to xml info of cpus/inputs/image/slots which are relative to devices (e.g. CPUs
or Dipswitches in the device itself)
- tags of elements directly attached to the root_device do not display anymore the
root colon (slot tags were already behaving in this way); elements attached to optional
devices use tags starting with colon (to be interpreted as a relative tags which gets
appended to the device tag, when such a device is selected in a slot)
- modified when necessary output routines to pass a root_device and a root_tag as
parameters, in order to simplify output of relative devices and avoid duplicated code
- updated DTD according to the new elements and attributes
These changes allow frontends to know in advance how drivers can be configured
through the various slot options (by matching option descriptions with device
descriptions), without the need to run -lx with the various slot combinations. This is
especially of use if a device adds e.g. dipswitches or image devices (like additional
floppy drives or additional slot expansions), but also if one wants to know e.g. how many
sound channels a soundcard would add to a pc driver, or which kind of screen parameters
would be added by a specific choice of video card.
|