diff options
Diffstat (limited to 'src/emu/devcpu.cpp')
-rw-r--r-- | src/emu/devcpu.cpp | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/emu/devcpu.cpp b/src/emu/devcpu.cpp index 00bac6ed1b0..43460235b19 100644 --- a/src/emu/devcpu.cpp +++ b/src/emu/devcpu.cpp @@ -9,6 +9,7 @@ ***************************************************************************/ #include "emu.h" +#include "emuopts.h" #include <ctype.h> @@ -25,7 +26,8 @@ cpu_device::cpu_device(const machine_config &mconfig, device_type type, const ch device_execute_interface(mconfig, *this), device_memory_interface(mconfig, *this), device_state_interface(mconfig, *this), - device_disasm_interface(mconfig, *this) + device_disasm_interface(mconfig, *this), + m_force_no_drc(false) { } @@ -37,3 +39,24 @@ cpu_device::cpu_device(const machine_config &mconfig, device_type type, const ch cpu_device::~cpu_device() { } + + +//------------------------------------------------- +// static_set_force_no_drc - configuration helper +// to disable DRC +//------------------------------------------------- + +void cpu_device::static_set_force_no_drc(device_t &device, bool value) +{ + downcast<cpu_device &>(device).m_force_no_drc = value; +} + + +//------------------------------------------------- +// allow_drc - return true if DRC is allowed +//------------------------------------------------- + +bool cpu_device::allow_drc() const +{ + return mconfig().options().drc() && !m_force_no_drc; +} |