diff --git a/scripts/src/bus.lua b/scripts/src/bus.lua index 643bf0e9101..777862802dc 100644 --- a/scripts/src/bus.lua +++ b/scripts/src/bus.lua @@ -1099,6 +1099,21 @@ if (BUSES["SPC1000"]~=null) then end +--------------------------------------------------- +-- +--@src/devices/bus/tiki100/exp.h,BUSES["TIKI100"] = true +--------------------------------------------------- + +if (BUSES["TIKI100"]~=null) then + files { + MAME_DIR .. "src/devices/bus/tiki100/exp.c", + MAME_DIR .. "src/devices/bus/tiki100/exp.h", + MAME_DIR .. "src/devices/bus/tiki100/8088.c", + MAME_DIR .. "src/devices/bus/tiki100/8088.h", + } +end + + --------------------------------------------------- -- --@src/devices/bus/tvc/tvc.h,BUSES["TVC"] = true @@ -2018,10 +2033,10 @@ if (BUSES["TI99X"]~=null) then MAME_DIR .. "src/devices/bus/ti99x/mecmouse.h", MAME_DIR .. "src/devices/bus/ti99x/ti99defs.h", MAME_DIR .. "src/devices/bus/ti99x/videowrp.c", - MAME_DIR .. "src/devices/bus/ti99x/videowrp.h", + MAME_DIR .. "src/devices/bus/ti99x/videowrp.h", } end - + --------------------------------------------------- -- --@src/devices/bus/ti99_peb/peribox.h,BUSES["TI99PEB"] = true diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua index 03cfa350280..a6841a0384e 100644 --- a/scripts/target/mame/mess.lua +++ b/scripts/target/mame/mess.lua @@ -645,6 +645,7 @@ BUSES["SNES_CTRL"] = true BUSES["SPC1000"] = true BUSES["TI99PEB"] = true BUSES["TI99X"] = true +BUSES["TIKI100"] = true BUSES["TVC"] = true BUSES["VBOY"] = true BUSES["VC4000"] = true @@ -1231,9 +1232,9 @@ files { } createMESSProjects(_target, _subtarget, "canon") -files { - MAME_DIR .. "src/mame/drivers/cat.c", - MAME_DIR .. "src/mame/drivers/x07.c", +files { + MAME_DIR .. "src/mame/drivers/cat.c", + MAME_DIR .. "src/mame/drivers/x07.c", MAME_DIR .. "src/mame/drivers/canon_s80.c", } @@ -1640,8 +1641,8 @@ files { } createMESSProjects(_target, _subtarget, "heurikon") -files { - MAME_DIR .. "src/mame/drivers/hk68v10.c", +files { + MAME_DIR .. "src/mame/drivers/hk68v10.c", } createMESSProjects(_target, _subtarget, "intel") @@ -1803,8 +1804,8 @@ files { } createMESSProjects(_target, _subtarget, "mizar") -files { - MAME_DIR .. "src/mame/drivers/mzr8105.c", +files { + MAME_DIR .. "src/mame/drivers/mzr8105.c", } createMESSProjects(_target, _subtarget, "morrow") diff --git a/src/devices/bus/tiki100/8088.c b/src/devices/bus/tiki100/8088.c new file mode 100644 index 00000000000..919f1d836aa --- /dev/null +++ b/src/devices/bus/tiki100/8088.c @@ -0,0 +1,152 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + TIKI-100 8/16 8088/8087 expansion card emulation + +**********************************************************************/ + +#include "8088.h" + + + +//************************************************************************** +// MACROS/CONSTANTS +//************************************************************************** + +#define I8088_TAG "u3" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type TIKI100_8088 = &device_creator; + + +//------------------------------------------------- +// ROM( tiki100_8088 ) +//------------------------------------------------- + +ROM_START( tiki100_8088 ) + ROM_REGION( 0x1000, I8088_TAG, 0 ) + ROM_LOAD( "boot 1.0.u3", 0x0000, 0x1000, CRC(436974aa) SHA1(837087b3ab982d047e4f15799fef3daa37dd6c01) ) + + ROM_REGION( 0x100, "u26", 0 ) + ROM_LOAD( "53ls140.u26", 0x000, 0x100, CRC(fc5902e1) SHA1(afb9cb54ab6fc449e7544ddb3cbebc3770c4f937) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *tiki100_8088_t::device_rom_region() const +{ + return ROM_NAME( tiki100_8088 ); +} + + +static ADDRESS_MAP_START( i8088_mem, AS_PROGRAM, 8, tiki100_8088_t ) + AM_RANGE(0xff000, 0xfffff) AM_ROM AM_REGION(I8088_TAG, 0) +ADDRESS_MAP_END + + +static ADDRESS_MAP_START( i8088_io, AS_IO, 8, tiki100_8088_t ) + AM_RANGE(0x7f, 0x7f) AM_READWRITE(read, write) +ADDRESS_MAP_END + + +//------------------------------------------------- +// MACHINE_CONFIG_FRAGMENT( tiki100_8088 ) +//------------------------------------------------- + +static MACHINE_CONFIG_FRAGMENT( tiki100_8088 ) + MCFG_CPU_ADD("maincpu", I8088, 4000000) + MCFG_CPU_PROGRAM_MAP(i8088_mem) + MCFG_CPU_IO_MAP(i8088_io) +MACHINE_CONFIG_END + + +//------------------------------------------------- +// machine_config_additions - device-specific +// machine configurations +//------------------------------------------------- + +machine_config_constructor tiki100_8088_t::device_mconfig_additions() const +{ + return MACHINE_CONFIG_NAME( tiki100_8088 ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// tiki100_8088_t - constructor +//------------------------------------------------- + +tiki100_8088_t::tiki100_8088_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, TIKI100_8088, "TIKI-100 8/16", tag, owner, clock, "tiki100_8088", __FILE__), + device_tiki100bus_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void tiki100_8088_t::device_start() +{ +} + + +//------------------------------------------------- +// device_reset - device-specific reset +//------------------------------------------------- + +void tiki100_8088_t::device_reset() +{ +} + + +//------------------------------------------------- +// tiki100bus_iorq_r - I/O read +//------------------------------------------------- + +UINT8 tiki100_8088_t::tiki100_iorq_r(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// tiki100bus_iorq_w - I/O write +//------------------------------------------------- + +void tiki100_8088_t::tiki100_iorq_w(address_space &space, offs_t offset, UINT8 data) +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +READ8_MEMBER( tiki100_8088_t::read ) +{ + return 0xff; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +WRITE8_MEMBER( tiki100_8088_t::write ) +{ +} diff --git a/src/devices/bus/tiki100/8088.h b/src/devices/bus/tiki100/8088.h new file mode 100644 index 00000000000..edc4607570c --- /dev/null +++ b/src/devices/bus/tiki100/8088.h @@ -0,0 +1,55 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + TIKI-100 8/16 8088/8087 expansion card emulation + +**********************************************************************/ + +#pragma once + +#ifndef __TIKI100_8088__ +#define __TIKI100_8088__ + +#include "emu.h" +#include "bus/tiki100/exp.h" +#include "cpu/i86/i86.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> tiki100_8088_t + +class tiki100_8088_t : public device_t, + public device_tiki100bus_card_interface +{ +public: + // construction/destruction + tiki100_8088_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + virtual machine_config_constructor device_mconfig_additions() const; + + DECLARE_READ8_MEMBER( read ); + DECLARE_WRITE8_MEMBER( write ); + +protected: + // device-level overrides + virtual void device_start(); + virtual void device_reset(); + + // device_tiki100bus_card_interface overrides + virtual UINT8 tiki100_iorq_r(address_space &space, offs_t offset, UINT8 data); + virtual void tiki100_iorq_w(address_space &space, offs_t offset, UINT8 data); +}; + + +// device type definition +extern const device_type TIKI100_8088; + + +#endif diff --git a/src/devices/bus/tiki100/exp.c b/src/devices/bus/tiki100/exp.c new file mode 100644 index 00000000000..c0461282fdf --- /dev/null +++ b/src/devices/bus/tiki100/exp.c @@ -0,0 +1,177 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + TIKI-100 expansion bus emulation + +**********************************************************************/ + +#include "exp.h" + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type TIKI100_BUS = &device_creator; +const device_type TIKI100_BUS_SLOT = &device_creator; + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// tiki100_bus_slot_t - constructor +//------------------------------------------------- + +tiki100_bus_slot_t::tiki100_bus_slot_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, TIKI100_BUS_SLOT, "TIKI-100 expansion bus slot", tag, owner, clock, "tiki100bus_slot", __FILE__), + device_slot_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void tiki100_bus_slot_t::device_start() +{ + m_bus = machine().device(TIKI100_BUS_TAG); + device_tiki100bus_card_interface *dev = dynamic_cast(get_card_device()); + if (dev) m_bus->add_card(dev); +} + + +//------------------------------------------------- +// tiki100_bus_t - constructor +//------------------------------------------------- + +tiki100_bus_t::tiki100_bus_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, TIKI100_BUS, "TIKI-100 expansion bus", tag, owner, clock, "tiki100bus", __FILE__), + m_irq_cb(*this), + m_nmi_cb(*this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void tiki100_bus_t::device_start() +{ + // resolve callbacks + m_irq_cb.resolve_safe(); + m_nmi_cb.resolve_safe(); +} + + +//------------------------------------------------- +// add_card - add card +//------------------------------------------------- + +void tiki100_bus_t::add_card(device_tiki100bus_card_interface *card) +{ + m_device_list.append(*card); + + card->m_bus = this; +} + + +//------------------------------------------------- +// mrq_r - memory read +//------------------------------------------------- + +UINT8 tiki100_bus_t::mrq_r(address_space &space, offs_t offset, UINT8 data, bool &mdis) +{ + device_tiki100bus_card_interface *entry = m_device_list.first(); + + while (entry) + { + data &= entry->tiki100_mrq_r(space, offset, data, mdis); + entry = entry->next(); + } + + return data; +} + + +//------------------------------------------------- +// mrq_w - memory write +//------------------------------------------------- + +WRITE8_MEMBER( tiki100_bus_t::mrq_w ) +{ + device_tiki100bus_card_interface *entry = m_device_list.first(); + + while (entry) + { + entry->tiki100_mrq_w(space, offset, data); + entry = entry->next(); + } +} + + +//------------------------------------------------- +// iorq_r - I/O read +//------------------------------------------------- + +UINT8 tiki100_bus_t::iorq_r(address_space &space, offs_t offset, UINT8 data) +{ + device_tiki100bus_card_interface *entry = m_device_list.first(); + + while (entry) + { + data &= entry->tiki100_iorq_r(space, offset, data); + entry = entry->next(); + } + + return data; +} + + +//------------------------------------------------- +// iorq_w - I/O write +//------------------------------------------------- + +WRITE8_MEMBER( tiki100_bus_t::iorq_w ) +{ + device_tiki100bus_card_interface *entry = m_device_list.first(); + + while (entry) + { + entry->tiki100_iorq_w(space, offset, data); + entry = entry->next(); + } +} + + + +//************************************************************************** +// DEVICE TIKI-100 BUS CARD INTERFACE +//************************************************************************** + +//------------------------------------------------- +// device_tiki100bus_card_interface - constructor +//------------------------------------------------- + +device_tiki100bus_card_interface::device_tiki100bus_card_interface(const machine_config &mconfig, device_t &device) : + device_slot_card_interface(mconfig, device) +{ + m_slot = dynamic_cast(device.owner()); +} + + +//------------------------------------------------- +// SLOT_INTERFACE( tiki100_cards ) +//------------------------------------------------- + +// slot devices +#include "8088.h" + +SLOT_INTERFACE_START( tiki100_cards ) + SLOT_INTERFACE("8088", TIKI100_8088) +SLOT_INTERFACE_END diff --git a/src/devices/bus/tiki100/exp.h b/src/devices/bus/tiki100/exp.h new file mode 100644 index 00000000000..7e3b3f39333 --- /dev/null +++ b/src/devices/bus/tiki100/exp.h @@ -0,0 +1,154 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + TIKI-100 expansion bus emulation + +********************************************************************** + + +**********************************************************************/ + +#pragma once + +#ifndef __TIKI100_BUS__ +#define __TIKI100_BUS__ + +#include "emu.h" + + + +//************************************************************************** +// CONSTANTS +//************************************************************************** + +#define TIKI100_BUS_TAG "tiki100bus" + + + +//************************************************************************** +// INTERFACE CONFIGURATION MACROS +//************************************************************************** + +#define MCFG_TIKI100_BUS_ADD() \ + MCFG_DEVICE_ADD(TIKI100_BUS_TAG, TIKI100_BUS, 0) + +#define MCFG_TIKI100_BUS_SLOT_ADD(_tag, _def_slot) \ + MCFG_DEVICE_ADD(_tag, TIKI100_BUS_SLOT, 0) \ + MCFG_DEVICE_SLOT_INTERFACE(tiki100_cards, _def_slot, false) + + +#define MCFG_TIKI100_BUS_IRQ_CALLBACK(_write) \ + devcb = &tiki100_bus_t::set_irq_wr_callback(*device, DEVCB_##_write); + +#define MCFG_TIKI100_BUS_NMI_CALLBACK(_write) \ + devcb = &tiki100_bus_t::set_nmi_wr_callback(*device, DEVCB_##_write); + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> tiki100_bus_slot_t + +class tiki100_bus_t; + +class tiki100_bus_slot_t : public device_t, + public device_slot_interface +{ +public: + // construction/destruction + tiki100_bus_slot_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // device-level overrides + virtual void device_start(); + +private: + // configuration + tiki100_bus_t *m_bus; +}; + + +// device type definition +extern const device_type TIKI100_BUS_SLOT; + + +class device_tiki100bus_card_interface; + + +// ======================> tiki100_bus_t + +class tiki100_bus_t : public device_t +{ +public: + // construction/destruction + tiki100_bus_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + ~tiki100_bus_t() { m_device_list.detach_all(); } + + template static devcb_base &set_irq_wr_callback(device_t &device, _Object object) { return downcast(device).m_irq_cb.set_callback(object); } + template static devcb_base &set_nmi_wr_callback(device_t &device, _Object object) { return downcast(device).m_nmi_cb.set_callback(object); } + + void add_card(device_tiki100bus_card_interface *card); + + // computer interface + UINT8 mrq_r(address_space &space, offs_t offset, UINT8 data, bool &mdis); + DECLARE_WRITE8_MEMBER( mrq_w ); + + UINT8 iorq_r(address_space &space, offs_t offset, UINT8 data); + DECLARE_WRITE8_MEMBER( iorq_w ); + + // peripheral interface + DECLARE_WRITE_LINE_MEMBER( irq_w ) { m_irq_cb(state); } + DECLARE_WRITE_LINE_MEMBER( nmi_w ) { m_nmi_cb(state); } + +protected: + // device-level overrides + virtual void device_start(); + +private: + devcb_write_line m_irq_cb; + devcb_write_line m_nmi_cb; + + simple_list m_device_list; +}; + + +// device type definition +extern const device_type TIKI100_BUS; + + +// ======================> device_tiki100bus_card_interface + +// class representing interface-specific live tiki100bus card +class device_tiki100bus_card_interface : public device_slot_card_interface +{ + friend class tiki100_bus_t; + +public: + // construction/destruction + device_tiki100bus_card_interface(const machine_config &mconfig, device_t &device); + virtual ~device_tiki100bus_card_interface() { } + + device_tiki100bus_card_interface *next() const { return m_next; } + + // memory access + virtual UINT8 tiki100_mrq_r(address_space &space, offs_t offset, UINT8 data, bool &mdis) { mdis = 1; return data; }; + virtual void tiki100_mrq_w(address_space &space, offs_t offset, UINT8 data) { }; + + // I/O access + virtual UINT8 tiki100_iorq_r(address_space &space, offs_t offset, UINT8 data) { return data; }; + virtual void tiki100_iorq_w(address_space &space, offs_t offset, UINT8 data) { }; + + tiki100_bus_t *m_bus; + tiki100_bus_slot_t *m_slot; + + device_tiki100bus_card_interface *m_next; +}; + + +SLOT_INTERFACE_EXTERN( tiki100_cards ); + + + +#endif diff --git a/src/devices/machine/atahle.c b/src/devices/machine/atahle.c index 3a1599a3eed..c5351994ea2 100644 --- a/src/devices/machine/atahle.c +++ b/src/devices/machine/atahle.c @@ -346,16 +346,19 @@ int ata_hle_device::bit_to_mode(UINT16 word) return -1; } +// Return the currently selected single word dma mode, -1 if none selected int ata_hle_device::single_word_dma_mode() { return bit_to_mode(m_identify_buffer[62]); } +// Return the currently selected multi word dma mode, -1 if none selected int ata_hle_device::multi_word_dma_mode() { return bit_to_mode(m_identify_buffer[63]); } +// Return the currently selected ultra dma mode, -1 if none selected int ata_hle_device::ultra_dma_mode() { return bit_to_mode(m_identify_buffer[88]); @@ -459,7 +462,7 @@ void ata_hle_device::read_buffer_empty() m_status &= ~IDE_STATUS_DRQ; - if (multi_word_dma_mode() >= 0) + if ((multi_word_dma_mode() >= 0) || (ultra_dma_mode() >= 0)) set_dmarq(CLEAR_LINE); fill_buffer(); @@ -471,7 +474,7 @@ void ata_hle_device::write_buffer_full() m_status &= ~IDE_STATUS_DRQ; - if (multi_word_dma_mode() >= 0) + if ((multi_word_dma_mode() >= 0) || (ultra_dma_mode() >= 0)) set_dmarq(CLEAR_LINE); process_buffer(); @@ -547,6 +550,10 @@ UINT16 ata_hle_device::read_dma() { logerror( "%s: %s dev %d read_dma ignored (!DMARQ)\n", machine().describe_context(), tag(), dev() ); } + else if (!m_dmarq && ultra_dma_mode() >= 0) + { + logerror("%s: %s dev %d read_dma ignored (!DMARQ)\n", machine().describe_context(), tag(), dev()); + } else if (m_status & IDE_STATUS_BSY) { logerror( "%s: %s dev %d read_dma ignored (BSY)\n", machine().describe_context(), tag(), dev() ); @@ -767,6 +774,10 @@ void ata_hle_device::write_dma( UINT16 data ) { logerror( "%s: %s dev %d write_dma %04x ignored (!DMARQ)\n", machine().describe_context(), tag(), dev(), data ); } + else if (!m_dmarq && ultra_dma_mode() >= 0) + { + logerror("%s: %s dev %d write_dma %04x ignored (!DMARQ)\n", machine().describe_context(), tag(), dev(), data); + } else if (m_status & IDE_STATUS_BSY) { logerror( "%s: %s dev %d write_dma %04x ignored (BSY)\n", machine().describe_context(), tag(), dev(), data ); diff --git a/src/devices/machine/idehd.c b/src/devices/machine/idehd.c index aa5517a1a3e..afc6de0c3de 100644 --- a/src/devices/machine/idehd.c +++ b/src/devices/machine/idehd.c @@ -149,7 +149,7 @@ void ata_mass_storage_device::ide_build_identify_device() m_identify_buffer[85] = 0x00; /* 85: command set/feature enabled */ m_identify_buffer[86] = 0x00; /* 86: command set/feature enabled */ m_identify_buffer[87] = 0x00; /* 87: command set/feature default */ - m_identify_buffer[88] = 0x00; /* 88: additional DMA modes */ + m_identify_buffer[88] = 0x00; /* 88: additional DMA modes (ultra dma) */ m_identify_buffer[89] = 0x00; /* 89: time required for security erase unit completion */ m_identify_buffer[90] = 0x00; /* 90: time required for enhanced security erase unit completion */ m_identify_buffer[91] = 0x00; /* 91: current advanced power management value */ diff --git a/src/devices/sound/digitalk.c b/src/devices/sound/digitalk.c index dcd0a965408..7f240879d53 100644 --- a/src/devices/sound/digitalk.c +++ b/src/devices/sound/digitalk.c @@ -516,6 +516,7 @@ void digitalker_device::digitalker_step() return; } } else if(m_stop_after == 1) { + digitalker_set_intr(1); m_bpos = 0xffff; m_zero_count = 81920; m_stop_after = 2; @@ -525,7 +526,6 @@ void digitalker_device::digitalker_step() m_repeats = 0; } else { m_stop_after = 0; - digitalker_set_intr(1); } } diff --git a/src/mame/drivers/tiki100.c b/src/mame/drivers/tiki100.c index 2503d624ee4..a35c9f1fc67 100644 --- a/src/mame/drivers/tiki100.c +++ b/src/mame/drivers/tiki100.c @@ -26,18 +26,18 @@ */ #include "includes/tiki100.h" -#include "bus/rs232/rs232.h" /* Memory Banking */ READ8_MEMBER( tiki100_state::read ) { - int mdis = 1; + bool mdis = 1; + + UINT8 data = m_exp->mrq_r(space, offset, 0xff, mdis); + offs_t prom_addr = mdis << 5 | m_vire << 4 | m_rome << 3 | (offset >> 13); UINT8 prom = m_prom->base()[prom_addr] ^ 0xff; - UINT8 data = 0xff; - if (prom & ROM0) { data = m_rom->base()[offset & 0x3fff]; @@ -65,7 +65,7 @@ READ8_MEMBER( tiki100_state::read ) WRITE8_MEMBER( tiki100_state::write ) { - int mdis = 1; + bool mdis = 1; offs_t prom_addr = mdis << 5 | m_vire << 4 | m_rome << 3 | (offset >> 13); UINT8 prom = m_prom->base()[prom_addr] ^ 0xff; @@ -80,6 +80,8 @@ WRITE8_MEMBER( tiki100_state::write ) { m_ram->pointer()[offset] = data; } + + m_exp->mrq_w(space, offset, data); } /* Read/Write Handlers */ @@ -621,6 +623,13 @@ static MACHINE_CONFIG_START( tiki100, tiki100_state ) MCFG_PALETTE_ADD("palette", 16) // pixel clock 20.01782 MHz + MCFG_TIKI100_BUS_ADD() + //MCFG_TIKI100_BUS_IRQ_CALLBACK() + //MCFG_TIKI100_BUS_NMI_CALLBACK() + MCFG_TIKI100_BUS_SLOT_ADD("slot1", "8088") + MCFG_TIKI100_BUS_SLOT_ADD("slot2", NULL) + MCFG_TIKI100_BUS_SLOT_ADD("slot3", NULL) + /* devices */ MCFG_Z80DART_ADD(Z80DART_TAG, XTAL_8MHz/4, 0, 0, 0, 0 ) MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd)) @@ -706,12 +715,6 @@ ROM_START( tiki100 ) ROM_REGION( 0x100, "u4", 0 ) ROM_LOAD( "53ls140.u4", 0x000, 0x100, CRC(894b756f) SHA1(429e10de0e0e749246895801b18186ff514c12bc) ) - - ROM_REGION( 0x1000, "8088", 0 ) - ROM_LOAD( "boot 1.0.u3", 0x0000, 0x1000, CRC(436974aa) SHA1(837087b3ab982d047e4f15799fef3daa37dd6c01) ) - - ROM_REGION( 0x100, "8088_proms", 0 ) - ROM_LOAD( "53ls140.u26", 0x000, 0x100, CRC(fc5902e1) SHA1(afb9cb54ab6fc449e7544ddb3cbebc3770c4f937) ) ROM_END /* System Drivers */ diff --git a/src/mame/includes/tiki100.h b/src/mame/includes/tiki100.h index cf1f9707a88..3536a7d31fa 100644 --- a/src/mame/includes/tiki100.h +++ b/src/mame/includes/tiki100.h @@ -5,9 +5,10 @@ #ifndef __TIKI100__ #define __TIKI100__ - #include "emu.h" #include "bus/centronics/ctronics.h" +#include "bus/rs232/rs232.h" +#include "bus/tiki100/exp.h" #include "cpu/z80/z80.h" #include "cpu/z80/z80daisy.h" #include "formats/tiki100_dsk.h" @@ -53,6 +54,7 @@ public: m_floppy1(*this, FD1797_TAG":1"), m_cassette(*this, CASSETTE_TAG), m_centronics(*this, CENTRONICS_TAG), + m_exp(*this, TIKI100_BUS_TAG), m_rom(*this, Z80_TAG), m_prom(*this, "u4"), m_video_ram(*this, "video_ram"), @@ -83,6 +85,7 @@ public: required_device m_floppy1; required_device m_cassette; required_device m_centronics; + required_device m_exp; required_memory_region m_rom; required_memory_region m_prom; optional_shared_ptr m_video_ram;