diff options
Diffstat (limited to 'src/devices/machine/input_merger.cpp')
-rw-r--r-- | src/devices/machine/input_merger.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/devices/machine/input_merger.cpp b/src/devices/machine/input_merger.cpp index 3e0570d82b0..51c052fc096 100644 --- a/src/devices/machine/input_merger.cpp +++ b/src/devices/machine/input_merger.cpp @@ -14,8 +14,15 @@ Default initial input pin(s) state: - ALL_LOW: 0 TODO: -- call output handler at reset? eg. a NAND gate whose inputs are low at - power-on should output 1. +- Change the strange initial input state, eg. right now it's all 1 for an AND + gate. All 0 for all devices would be more intuitive, but that would need a + config handler for setting the number of input pins since otherwise it can't + know if the state is active or not. +- Call m_output_handler at reset, eg. a NOR gate whose inputs are low at power-on + should output 1 (to avoid surprises, this should be done after machine_reset). +- Related to currently not calling m_output_handler at reset, if the hardware + 1st value written equals the initial state, m_output_handler is not called, + eg. writing 1 to an AND gate pin when the default initial state is 1. ***************************************************************************/ @@ -79,7 +86,6 @@ input_merger_device::~input_merger_device() void input_merger_device::device_start() { - m_output_handler.resolve_safe(); save_item(NAME(m_state)); m_state = m_initval; } |