| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* use plural names for output finders when there are multiple outputs (nw)
* use plural names for output finders when there are multiple outputs (nw)
* use plural names for output finders when there are multiple outputs (nw)
|
| |
|
|
|
|
| |
was tripping my device_finder search. (nw)'
|
| |
|
| |
|
|
|
|
| |
input merger; general cleanup (nw)
|
| |
|
| |
|
|
|
|
|
|
| |
* Replace set_led_value and set_lamp_value with output_finders. [Wilbert Pol]
* segaufo: keep the 2 bit lamp outputs
|
|
|
|
|
|
| |
- PULSE_LINE is no longer a value. Existing uses have been changed to pulse_input_line with attotime::zero as the second argument.
- Formerly only INPUT_LINE_NMI and INPUT_LINE_RESET were allowed with PULSE_LINE. INPUT_LINE_NMI no longer receives special handling; instead, CPU devices must specify which of their input lines are edge-triggered and thus may be used with zero-width pulses by overriding the execute_input_edge_triggered predicate. INPUT_LINE_RESET is still special-cased, however.
- execute_default_irq_vector now allows a different default vector to be specified for each input line. This added flexibility may or may not prove useful.
|
|
|
|
| |
start overrides (nw)
|
| |
|
| |
|
|
|
|
| |
more (nw)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* leland.cpp : Cleanup duplicates, Add generic_latch_16_device for maincpu to soundcpu comms, Improve tags, Reduce runtime tag lookups, Make drawing function relate to cliprect
* leland.cpp : Fix compile
* leland.cpp : Fix compile(again)
* leland.cpp : Fix sound command
* leland.cpp : Fix error
* leland.cpp : Background is tilemap; Accurate this and reduce unnecessary things
|
|
|
|
|
|
|
|
|
|
|
|
| |
side effect of making machine-config overrides of these much"
This reverts commit c83e2a853d4e1643fcc85b68ada3c6f7f33adea4.
Revert "fix compile. (nw)"
This reverts commit a259ba3e366f442a22a9341755ff58163869860c.
GCC is being bad and allowing invalid C++ that other compilers reject.
|
|
|
|
|
|
| |
of making machine-config overrides of these much
uglier, but this is intended to discourage ongoing use, and will be gradually eliminated.
|
|
|
|
|
|
|
|
|
|
| |
* proposal: move z80daisy* to devices/machine
Seems to me this is a machine, not a CPU? Main reason was to stop the Z80 CPU from being dragged into systems that don't have one just because they use a Z80 family peripheral.
* missed this one (nw)
* missed a spot (nw)
|
|
|
|
| |
template on more information (data width, endianness) to make it possible to turn it into an handler cache eventually, and not just a memory block cache. Make it capable of large and unaligned accesses. [O. Galibert]
|
|
|
|
| |
(nw) remove more MCFG macros and make speaker config more explicit
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Current syntax: MCFG_DEVICE_REPLACE(tag_or_finder, TYPE, ...)
Next-generation syntax: TYPE(config.replace(), tag_or_finder, ...)
(nw) Kill off some more low-value macros that aren't needed any more,
and get rid of the token-pasting voodoo and casts in the discrete sound
macros.
|
|
|
|
| |
doesn't support derived clock, kill off some more low-value macros, add a validity check, fix changes to Okim M6295 pin 7 in vgmplay
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix MT06964
Fix µPD7759 class hierarchy, and reset callback before resolving it
(fixed assert in Sega C2)
Remove some more low-value device add indirection macros, default some
more clocks
Make cards inherit clock from slot by default
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Start replacing special device macros with additional constructors,
starting with ISA, INTELLEC 4 and RS-232 buses.
Allow an object finder to take on the target of another object finder.
(For a combination of the previous two things in action, see either the
INTELLEC 4 driver, or the Apple 2 PC Exporter card. Also check out
looping over a device finder array to instantiate devices in some
places. Lots of things no longer need to pass tags around.)
Start supplying default clocks for things that have a standard clock or
have all clocks internal.
Eliminate the separate DEV versions of the DEVCB_ macros. Previously,
the plain versions were a shortcut for DEVICE_SELF as the target. You
can now supply a string tag (relative to current device being
configured), an object finder (takes on the base and relative tag), or
a reference to a device/interface (only do this if you know the device
won't be replaced out from under it, but that's a safe assumption for
your subdevices). In almost all cases, you can get the effect you want
by supplying *this as the target.
Eliminate sound and CPU versions of macros. They serve no useful
purpose, provide no extra checks, make error messages longer, add
indirection, and mislead newbies into thinking there's a difference.
Remove a lot of now-unnecessary ":" prefixes binding things relative to
machine root.
Clean up some miscellaneous rot.
Examples of new functionality in use in (some more subtle than others):
* src/mame/drivers/intellec4.cpp
* src/mame/drivers/tranz330.cpp
* src/mame/drivers/osboren1.cpp
* src/mame/drivers/zorba.cpp
* src/mame/devices/smioc.cpp
* src/devices/bus/a2bus/pc_xporter.cpp
* src/devices/bus/isa/isa.h
* src/devices/bus/isa/isa.h
* src/devices/bus/intellec4/intellec4.h
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Allows defaulted clocks (see subtle example with vboy)
* Allows additional constructors (see RS232 port in tranz330)
* Allows use of device finder in place of tag in MCFG_DEVICE_ADD
* Requires out-of-line destructor for devices using incomplete types
* Requires XTAL or explicit u32 for clocks for devices with private types
Devices must still define the standard constructor. When writing
additional constructors, be aware that the constructor runs before
device_add_mconfig in the context of the existing device, not the new
device. See osborne1, zorba, tranz330, and vboy for examples of this in
use. Compilation is a bit slower, but this is temporary while
refactoring is in progress.
Eliminated the need for MCFG_SOUND_ROUTE_EX.
Removed macros from slot option configuration - they just obfuscated
code and slowed it down with needless dynamic casts, but didn't actually
simplify it.
|
| |
|
|
|
|
|
|
|
|
| |
Also, look Ma - no magic prologue!
Slot card additions run in the context of the slot itself, which isn't
entirely intuitive. Slot configuration needs a bunch of other cleanup
anyway.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the finder's owner. This meand you no longer need to care about the
your relationship to the object being configured and a lot of ^ and :
can disappear. There's a bit reduction in string pasting in macros from
this.
Yes, I have to make this apply to devcb etc. as well, but that's a job
for another day.
There's probably at least one thing broken by this where optional
objects are involved. Most things can be solved by just getting rid of
the now-problematic ^ and : prefixes.
|
|
|
|
| |
Make machine_config aware of device being configured so owner doesn't need to be passed everywhere.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
[Ryan Holtz]
|
|
|
|
| |
Holtz]
|
|
|
|
| |
IPT_SPECIAL for the UI. [smf]
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* es5510.* Updates :
Add notes
Fix dram read/write
Convert gpr, instr, dram into std::unique_ptr
Add save states
Minor cleanup
taito_en.* Updates :
Add notes
Move imperfect_features() into es5510.h
Verify ESP Input clock/output channels(from GunBuster Schematics, same in other PCBs?)
Add m_bankmask instead runtime tag lookups
* es5510.h : Add notes
* es5510.h : Fix compile
* es5510.h : Compile fixes
* esqpump.cpp : Split ES5506 case of interface, Add imperfect_features Because it has not perfectly emulated
esqasr.cpp, esqkt.cpp : Add esqpump for es5510 interface
taito_en.h : Restore imperfect_features Because sound emulation has still not perfect
* es5510.h : Moved imperfect_feature into esqpump.h from this, Add notes
* Revert "Moved imperfect_feature into esqpump.h from this", Because the current ES5510 core still has emulation issue
* esqpump.cpp : Cleanup unused m_otis/m_otto, Convert e[0x4000] into std::unique_ptr if used
* Fix compile
* esqkt.cpp : Fix company tags
|
| |
|
| |
|
| |
|
| |
|