diff options
Diffstat (limited to 'src/devices/bus/sega8/sega8_slot.cpp')
-rw-r--r-- | src/devices/bus/sega8/sega8_slot.cpp | 91 |
1 files changed, 6 insertions, 85 deletions
diff --git a/src/devices/bus/sega8/sega8_slot.cpp b/src/devices/bus/sega8/sega8_slot.cpp index e897f6c53e8..3242654b829 100644 --- a/src/devices/bus/sega8/sega8_slot.cpp +++ b/src/devices/bus/sega8/sega8_slot.cpp @@ -40,16 +40,6 @@ DEFINE_DEVICE_TYPE(SEGA8_CART_SLOT, sega8_cart_slot_device, "sega8_cart_slot", "Sega Master System / Game Gear / SG-1000 Cartridge Slot") DEFINE_DEVICE_TYPE(SEGA8_CARD_SLOT, sega8_card_slot_device, "sega8_card_slot", "Sega Master System / Game Gear / SG-1000 Card Slot") -DEFINE_DEVICE_TYPE(SG1000_CART_SLOT, sg1000_cart_slot_device, "sg1000_cart_slot", "Sega SG-1000 Cartridge Slot") -DEFINE_DEVICE_TYPE(OMV_CART_SLOT, omv_cart_slot_device, "omv_cart_slot", "Tsukuda Original Othello Multivision FG-1000 / FG-2000 Cartridge Slot") -DEFINE_DEVICE_TYPE(SC3000_CART_SLOT, sc3000_cart_slot_device, "sc3000_cart_slot", "Sega SC-3000 Cartridge Slot") -DEFINE_DEVICE_TYPE(SG1000MK3_CART_SLOT, sg1000mk3_cart_slot_device, "sg1000mk3_cart_slot", "Sega SG-1000 Mark III Cartridge Slot") -DEFINE_DEVICE_TYPE(SMS_CART_SLOT, sms_cart_slot_device, "sms_cart_slot", "Sega Master System Cartridge Slot") -DEFINE_DEVICE_TYPE(GAMEGEAR_CART_SLOT, gamegear_cart_slot_device, "gamegear_cart_slot", "Sega Game Gear Cartridge Slot") - -DEFINE_DEVICE_TYPE(SMS_CARD_SLOT, sms_card_slot_device, "sms_card_slot", "Sega Master System Card Slot") -DEFINE_DEVICE_TYPE(SG1000_CARD_SLOT, sg1000_card_slot_device, "sg1000_card_slot", "Sega SG-1000 Card Slot") - //************************************************************************** // SMS cartridges Interface @@ -122,7 +112,10 @@ sega8_cart_slot_device::sega8_cart_slot_device(const machine_config &mconfig, de , device_image_interface(mconfig, *this) , device_slot_interface(mconfig, *this) , m_type(SEGA8_BASE_ROM) + , m_must_be_loaded(false) , m_is_card(is_card) + , m_interface("sms_cart") + , m_extensions("bin") , m_cart(nullptr) { } @@ -132,57 +125,11 @@ sega8_cart_slot_device::sega8_cart_slot_device(const machine_config &mconfig, co { } -sega8_card_slot_device::sega8_card_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, type, tag, owner, clock, true) -{ -} - sega8_card_slot_device::sega8_card_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_card_slot_device(mconfig, SEGA8_CARD_SLOT, tag, owner, clock) -{ -} - - -sg1000_cart_slot_device::sg1000_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, SG1000_CART_SLOT, tag, owner, clock) -{ -} - -omv_cart_slot_device::omv_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, OMV_CART_SLOT, tag, owner, clock) -{ -} - -sc3000_cart_slot_device::sc3000_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, SC3000_CART_SLOT, tag, owner, clock) -{ -} - -sg1000mk3_cart_slot_device::sg1000mk3_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, SG1000MK3_CART_SLOT, tag, owner, clock) -{ -} - -sms_cart_slot_device::sms_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, SMS_CART_SLOT, tag, owner, clock) + : sega8_cart_slot_device(mconfig, SEGA8_CARD_SLOT, tag, owner, clock, true) { } -gamegear_cart_slot_device::gamegear_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_cart_slot_device(mconfig, GAMEGEAR_CART_SLOT, tag, owner, clock) -{ -} - - -sms_card_slot_device::sms_card_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_card_slot_device(mconfig, SMS_CARD_SLOT, tag, owner, clock) -{ -} - -sg1000_card_slot_device::sg1000_card_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : sega8_card_slot_device(mconfig, SG1000_CARD_SLOT, tag, owner, clock) -{ -} //------------------------------------------------- // sega8_cart_slot_device - destructor @@ -231,9 +178,7 @@ static const sega8_slot slot_list[] = { SEGA8_MUSIC_EDITOR, "music_editor" }, { SEGA8_DAHJEE_TYPEA, "dahjee_typea" }, { SEGA8_DAHJEE_TYPEB, "dahjee_typeb" }, - { SEGA8_SEOJIN, "seojin" }, - { SEGA8_MULTICART, "multicart" }, - { SEGA8_MEGACART, "megacart" } + { SEGA8_SEOJIN, "seojin" } }; static int sega8_get_pcb_id(const char *slot) @@ -332,7 +277,7 @@ void sega8_cart_slot_device::setup_ram() m_cart->ram_alloc(0x800); m_cart->set_has_battery(false); } - else if (m_type == SEGA8_BASIC_L3 || m_type == SEGA8_MULTICART || m_type == SEGA8_MEGACART) + else if (m_type == SEGA8_BASIC_L3) { m_cart->ram_alloc(0x8000); m_cart->set_has_battery(false); @@ -639,14 +584,6 @@ int sega8_cart_slot_device::get_cart_type(const uint8_t *ROM, uint32_t len) cons type = SEGA8_MUSIC_EDITOR; } - // SC-3000 Survivors Multicart - if (len == 0x200000) - type = SEGA8_MULTICART; - - // SC-3000 Survivors Megacart - if (len == 0x400000) - type = SEGA8_MEGACART; - return type; } @@ -701,14 +638,6 @@ READ8_MEMBER(sega8_cart_slot_device::read_ram) return 0xff; } -READ8_MEMBER(sega8_cart_slot_device::read_io) -{ - if (m_cart) - return m_cart->read_io(space, offset); - else - return 0xff; -} - /*------------------------------------------------- write @@ -732,12 +661,6 @@ WRITE8_MEMBER(sega8_cart_slot_device::write_ram) m_cart->write_ram(space, offset, data); } -WRITE8_MEMBER(sega8_cart_slot_device::write_io) -{ - if (m_cart) - m_cart->write_io(space, offset, data); -} - /*------------------------------------------------- Internal header logging @@ -894,8 +817,6 @@ void sg1000_cart(device_slot_interface &device) device.option_add_internal("dahjee_typea", SEGA8_ROM_DAHJEE_TYPEA); device.option_add_internal("dahjee_typeb", SEGA8_ROM_DAHJEE_TYPEB); device.option_add_internal("cardcatcher", SEGA8_ROM_CARDCATCH); - device.option_add_internal("multicart", SEGA8_ROM_MULTICART); - device.option_add_internal("megacart", SEGA8_ROM_MEGACART); } void sg1000mk3_cart(device_slot_interface &device) |