tms1000: cleanup memmap declarations (nw)

This commit is contained in:
hap 2018-02-13 18:46:53 +01:00
parent d742874bbd
commit 95bbca218f
12 changed files with 37 additions and 36 deletions

View File

@ -21,17 +21,6 @@ DEFINE_DEVICE_TYPE(TMS0270, tms0270_cpu_device, "tms0270", "TMS0270") // 40-pin
// TMS0260 is same or similar?
// internal memory maps
ADDRESS_MAP_START(tms1k_base_device::program_11bit_9)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1k_base_device::data_144x4)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0x8f) AM_RAM AM_MIRROR(0x70) // DAM
ADDRESS_MAP_END
// device definitions
tms0270_cpu_device::tms0270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
: tms0980_cpu_device(mconfig, TMS0270, tag, owner, clock, 16 /* o pins */, 16 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, address_map_constructor(FUNC(tms0270_cpu_device::program_11bit_9), this), 8 /* data width */, address_map_constructor(FUNC(tms0270_cpu_device::data_144x4), this))

View File

@ -30,6 +30,16 @@ DEFINE_DEVICE_TYPE(TMS0980, tms0980_cpu_device, "tms0980", "TMS0980") // 28-pin
DEFINE_DEVICE_TYPE(TMS1980, tms1980_cpu_device, "tms1980", "TMS1980") // 28-pin DIP, 7 O pins, 10 R pins, high voltage
// internal memory maps
ADDRESS_MAP_START(tms0980_cpu_device::program_11bit_9)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms0980_cpu_device::data_144x4)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0x8f) AM_RAM AM_MIRROR(0x70) // DAM
ADDRESS_MAP_END
// device definitions
tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)

View File

@ -22,6 +22,9 @@ public:
protected:
tms0980_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);
void program_11bit_9(address_map &map);
void data_144x4(address_map &map);
// overrides
virtual u32 decode_fixed(u16 op);
virtual u32 decode_micro(u8 sel) override;

View File

@ -37,19 +37,19 @@ DEFINE_DEVICE_TYPE(MC141200, mc141200_cpu_device, "mc141200", "MC141200") // CMO
// internal memory maps
ADDRESS_MAP_START(tms1k_base_device::program_10bit_8)
ADDRESS_MAP_START(tms1000_cpu_device::program_10bit_8)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1k_base_device::program_9bit_8)
AM_RANGE(0x000, 0x1ff) AM_MIRROR(0x200) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1k_base_device::data_64x4)
ADDRESS_MAP_START(tms1000_cpu_device::data_64x4)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1k_base_device::data_32x4)
ADDRESS_MAP_START(tms1000_cpu_device::program_9bit_8)
AM_RANGE(0x000, 0x1ff) AM_MIRROR(0x200) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1000_cpu_device::data_32x4)
AM_RANGE(0x00, 0x3f) AM_RAM
AM_RANGE(0x08, 0x0f) AM_MIRROR(0x30) AM_NOP // override
ADDRESS_MAP_END

View File

@ -22,6 +22,11 @@ public:
protected:
tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);
void program_10bit_8(address_map &map);
void data_64x4(address_map &map);
void program_9bit_8(address_map &map);
void data_32x4(address_map &map);
// overrides
virtual void device_reset() override;
virtual void device_add_mconfig(machine_config &config) override;

View File

@ -22,11 +22,11 @@ DEFINE_DEVICE_TYPE(TMS1370, tms1370_cpu_device, "tms1370", "TMS1370") // high vo
// internal memory maps
ADDRESS_MAP_START(tms1k_base_device::program_11bit_8)
ADDRESS_MAP_START(tms1100_cpu_device::program_11bit_8)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1k_base_device::data_128x4)
ADDRESS_MAP_START(tms1100_cpu_device::data_128x4)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END

View File

@ -22,6 +22,9 @@ public:
protected:
tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);
void program_11bit_8(address_map &map);
void data_128x4(address_map &map);
// overrides
virtual void device_reset() override;

View File

@ -27,10 +27,11 @@ DEFINE_DEVICE_TYPE(TMS1670, tms1670_cpu_device, "tms1670", "TMS1670") // high vo
// internal memory maps
ADDRESS_MAP_START(tms1k_base_device::program_12bit_8)
ADDRESS_MAP_START(tms1400_cpu_device::program_12bit_8)
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
// device definitions
tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
: tms1400_cpu_device(mconfig, TMS1400, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 12 /* prg width */, address_map_constructor(FUNC(tms1400_cpu_device::program_12bit_8), this), 7 /* data width */, address_map_constructor(FUNC(tms1400_cpu_device::data_128x4), this))

View File

@ -22,6 +22,8 @@ public:
protected:
tms1400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);
void program_12bit_8(address_map &map);
// overrides
virtual void device_reset() override;
virtual void device_add_mconfig(machine_config &config) override;

View File

@ -96,16 +96,6 @@ public:
u8 debug_peek_o_index() { return m_o_index; } // get output PLA index, for debugging (don't use in emulation)
void data_128x4(address_map &map);
void data_144x4(address_map &map);
void data_192x4(address_map &map);
void data_32x4(address_map &map);
void data_64x4(address_map &map);
void program_10bit_8(address_map &map);
void program_11bit_8(address_map &map);
void program_11bit_9(address_map &map);
void program_12bit_8(address_map &map);
void program_9bit_8(address_map &map);
protected:
// construction/destruction
tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);

View File

@ -27,11 +27,7 @@ DEFINE_DEVICE_TYPE(TP0320, tp0320_cpu_device, "tp0320", "TP0320") // 28-pin SDIP
// internal memory maps
ADDRESS_MAP_START(tms1k_base_device::program_11bit_9)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
ADDRESS_MAP_START(tms1k_base_device::data_192x4)
ADDRESS_MAP_START(tp0320_cpu_device::data_192x4)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0xbf) AM_RAM AM_MIRROR(0x40) // DAM
ADDRESS_MAP_END

View File

@ -20,6 +20,8 @@ public:
tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
protected:
void data_192x4(address_map &map);
// overrides
//virtual void device_start() override;