From b601b7c79935f956f0d9545e71639cadbdc5a9b3 Mon Sep 17 00:00:00 2001 From: hap Date: Fri, 7 Nov 2014 01:46:35 +0100 Subject: added tms0970 device --- src/emu/cpu/tms0980/tms0980.c | 10 ++++++++-- src/emu/cpu/tms0980/tms0980.h | 8 ++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/emu/cpu/tms0980/tms0980.c b/src/emu/cpu/tms0980/tms0980.c index 06a438521a1..b08569c4a5f 100644 --- a/src/emu/cpu/tms0980/tms0980.c +++ b/src/emu/cpu/tms0980/tms0980.c @@ -10,7 +10,7 @@ though. The table below shows the differences between the different models. Mode | ROM | RAM | R pins | O pins | K pins | ids ---------+-----------+----------+--------+--------+--------|---------- -tms0970* | 1024 * 8 | 64 * 4 | | | | tms0972 +tms0970 | 1024 * 8 | 64 * 4 | | | | tms0972 tms0920* | 511?* 9 | 40 * 5 | | | | tmc0921 tms0980 | 2048 * 9 | 64 * 9 | | | | tmc0981 tms1000 | 1024 * 8 | 64 * 4 | 11 | 8 | 4 | tms1001 @@ -127,6 +127,7 @@ unknown cycle: CME, SSE, SSS const device_type TMS0980 = &device_creator; const device_type TMS1000 = &device_creator; +const device_type TMS0970 = &device_creator; const device_type TMS1070 = &device_creator; const device_type TMS1200 = &device_creator; const device_type TMS1270 = &device_creator; @@ -636,7 +637,7 @@ static const UINT8 tms1000_next_pc[64] = nand322 means if pc = 0x3f, output MUST be true hence, nand325 is if pc = 0x7f, false. if pc = 0x3f, true. if pc&0x60 is zero OR pc&0x60 is 0x60, true. otherwise, false. - tms0980_nect_pc below implements an indentical function to this in a somewhat more elegant way. + tms0980_next_pc below implements an indentical function to this in a somewhat more elegant way. */ void tms1xxx_cpu_device::next_pc() { @@ -1057,6 +1058,11 @@ offs_t tms1000_cpu_device::disasm_disassemble(char *buffer, offs_t pc, const UIN } +tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : tms1000_cpu_device( mconfig, TMS0970, "TMS0970", tag, owner, clock, 0x00ff, 0x07ff, "tms0970", __FILE__) +{ +} + tms1070_cpu_device::tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : tms1000_cpu_device( mconfig, TMS1070, "TMS1070", tag, owner, clock, 0x00ff, 0x07ff, "tms1070", __FILE__) { diff --git a/src/emu/cpu/tms0980/tms0980.h b/src/emu/cpu/tms0980/tms0980.h index 2dbdd89b3b4..c24dcacab25 100644 --- a/src/emu/cpu/tms0980/tms0980.h +++ b/src/emu/cpu/tms0980/tms0980.h @@ -162,6 +162,13 @@ protected: }; +class tms0970_cpu_device : public tms1000_cpu_device +{ +public: + tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); +}; + + class tms1070_cpu_device : public tms1000_cpu_device { public: @@ -209,6 +216,7 @@ extern const device_type TMS0980; /* 8-bit family */ extern const device_type TMS1000; +extern const device_type TMS0970; extern const device_type TMS1070; extern const device_type TMS1200; extern const device_type TMS1270; -- cgit v1.2.3