summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2015-05-04 18:20:51 +0200
committer Ivan Vangelista <mesgnet@yahoo.it>2015-05-04 18:20:51 +0200
commit80d82c03cd3ad341940dbe0bf5a9c395a0b1e21b (patch)
tree8da983663cea986954ce49c4998e99972f5b32d5
parent71a62252607fe6fe1dfccb983acf02fdfdca481b (diff)
tms34010.c: fixed a stupid error I did while moving this CPU core to inline config, fixes MT05911. MT05910 on the other hand start happening way before my screw-up. Will see if I can fix it or at least determine the commit which caused the regression (nw)
-rw-r--r--src/emu/cpu/tms34010/tms34010.c7
-rw-r--r--src/emu/cpu/tms34010/tms34010.h5
2 files changed, 7 insertions, 5 deletions
diff --git a/src/emu/cpu/tms34010/tms34010.c b/src/emu/cpu/tms34010/tms34010.c
index 53882e3a59e..54084f631f8 100644
--- a/src/emu/cpu/tms34010/tms34010.c
+++ b/src/emu/cpu/tms34010/tms34010.c
@@ -35,7 +35,7 @@ tms340x0_device::tms340x0_device(const machine_config &mconfig, device_type type
: cpu_device(mconfig, type, name, tag, owner, clock, shortname, __FILE__)
, device_video_interface(mconfig, *this)
, m_program_config("program", ENDIANNESS_LITTLE, 16, 32, 3)
- , m_reset_deferred(FALSE)
+ , m_halt_on_reset(FALSE)
, m_pixclock(0)
, m_pixperclock(0)
, m_output_int_cb(*this)
@@ -648,6 +648,8 @@ void tms340x0_device::device_reset()
/* HALT the CPU if requested, and remember to re-read the starting PC */
/* the first time we are run */
+ m_reset_deferred = m_halt_on_reset;
+
if (m_reset_deferred)
{
io_register_w(*m_program, REG_HSTCTLH, 0x8000, 0xffff);
@@ -714,11 +716,10 @@ void tms340x0_device::execute_run()
m_icount = 0;
return;
}
-
/* if the CPU's reset was deferred, do it now */
if (m_reset_deferred)
{
- m_reset_deferred = 0;
+ m_reset_deferred = FALSE;
m_pc = RLONG(0xffffffe0);
}
diff --git a/src/emu/cpu/tms34010/tms34010.h b/src/emu/cpu/tms34010/tms34010.h
index b9420def0ae..e46fbe29783 100644
--- a/src/emu/cpu/tms34010/tms34010.h
+++ b/src/emu/cpu/tms34010/tms34010.h
@@ -240,7 +240,7 @@ public:
// construction/destruction
tms340x0_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname);
- static void set_halt_on_reset(device_t &device, bool reset_deferred) { downcast<tms340x0_device &>(device).m_reset_deferred = reset_deferred; }
+ static void set_halt_on_reset(device_t &device, bool halt_on_reset) { downcast<tms340x0_device &>(device).m_halt_on_reset = halt_on_reset; }
static void set_pixel_clock(device_t &device, UINT32 pixclock) { downcast<tms340x0_device &>(device).m_pixclock = pixclock; }
static void set_pixels_per_clock(device_t &device, int pixperclock) { downcast<tms340x0_device &>(device).m_pixperclock = pixperclock; }
static void set_scanline_ind16_callback(device_t &device, scanline_ind16_cb_delegate callback) { downcast<tms340x0_device &>(device).m_scanline_ind16_cb = callback; }
@@ -327,7 +327,8 @@ protected:
INT32 m_gfxcycles;
UINT8 m_pixelshift;
UINT8 m_is_34020;
- bool m_reset_deferred; /* /HCS pin, which determines HALT state after reset */
+ bool m_reset_deferred;
+ bool m_halt_on_reset; /* /HCS pin, which determines HALT state after reset */
UINT8 m_hblank_stable;
UINT8 m_external_host_access;
UINT8 m_executing;