fix ti99_4p blowing up (evpc and hsgpl missing from peb card choices) (nw)

This commit is contained in:
Vas Crabb 2017-05-28 12:33:51 +10:00
parent 297bea495d
commit 4cce790d68
2 changed files with 51 additions and 69 deletions

View File

@ -491,22 +491,22 @@ void peribox_device::device_config_complete()
}
SLOT_INTERFACE_START( peribox_slot )
SLOT_INTERFACE("32kmem", TI99_32KMEM)
SLOT_INTERFACE("32kmem", TI99_32KMEM)
SLOT_INTERFACE("myarcmem", TI99_MYARCMEM)
SLOT_INTERFACE("samsmem", TI99_SAMSMEM)
SLOT_INTERFACE("pcode", TI99_P_CODE)
SLOT_INTERFACE("hsgpl", TI99_HSGPL)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("bwg", TI99_BWG)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE("samsmem", TI99_SAMSMEM)
SLOT_INTERFACE("pcode", TI99_P_CODE)
SLOT_INTERFACE("hsgpl", TI99_HSGPL)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("bwg", TI99_BWG)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE_END
MACHINE_CONFIG_START( peribox_device )
MACHINE_CONFIG_MEMBER( peribox_device::device_add_mconfig )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT2, peribox_slot )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT3, peribox_slot )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT4, peribox_slot )
@ -516,11 +516,6 @@ MACHINE_CONFIG_START( peribox_device )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT8, peribox_slot )
MACHINE_CONFIG_END
machine_config_constructor peribox_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( peribox_device );
}
/****************************************************************************
A variant of the box used for the TI-99/4A with EVPC.
*****************************************************************************/
@ -532,23 +527,23 @@ peribox_ev_device::peribox_ev_device(const machine_config &mconfig, const char *
}
SLOT_INTERFACE_START( peribox_slotv )
SLOT_INTERFACE("32kmem", TI99_32KMEM)
SLOT_INTERFACE("evpc", TI99_EVPC )
SLOT_INTERFACE("evpc", TI99_EVPC )
SLOT_INTERFACE("32kmem", TI99_32KMEM)
SLOT_INTERFACE("myarcmem", TI99_MYARCMEM)
SLOT_INTERFACE("samsmem", TI99_SAMSMEM)
SLOT_INTERFACE("pcode", TI99_P_CODE)
SLOT_INTERFACE("hsgpl", TI99_HSGPL)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("bwg", TI99_BWG)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE("samsmem", TI99_SAMSMEM)
SLOT_INTERFACE("pcode", TI99_P_CODE)
SLOT_INTERFACE("hsgpl", TI99_HSGPL)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("bwg", TI99_BWG)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE_END
MACHINE_CONFIG_START( peribox_ev_device )
MACHINE_CONFIG_MEMBER( peribox_ev_device::device_add_mconfig )
MCFG_PERIBOX_SLOT_ADD_DEF( PEBSLOT2, peribox_slotv, "evpc" )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT3, peribox_slotv )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT4, peribox_slotv )
@ -558,11 +553,6 @@ MACHINE_CONFIG_START( peribox_ev_device )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT8, peribox_slotv )
MACHINE_CONFIG_END
machine_config_constructor peribox_ev_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( peribox_ev_device );
}
/****************************************************************************
A variant of the box used for the Geneve.
*****************************************************************************/
@ -580,17 +570,17 @@ peribox_gen_device::peribox_gen_device(const machine_config &mconfig, const char
// logic (see bwg.c)
SLOT_INTERFACE_START( peribox_slotg )
SLOT_INTERFACE("memex", TI99_MEMEX)
SLOT_INTERFACE("memex", TI99_MEMEX)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE_END
MACHINE_CONFIG_START( peribox_gen_device )
MACHINE_CONFIG_MEMBER( peribox_gen_device::device_add_mconfig )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT2, peribox_slotg )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT3, peribox_slotg )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT4, peribox_slotg )
@ -600,11 +590,6 @@ MACHINE_CONFIG_START( peribox_gen_device )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT8, peribox_slotg )
MACHINE_CONFIG_END
machine_config_constructor peribox_gen_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( peribox_gen_device );
}
/****************************************************************************
A variant of the box used for the SGCPU (aka TI-99/4P).
*****************************************************************************/
@ -616,20 +601,22 @@ peribox_sg_device::peribox_sg_device(const machine_config &mconfig, const char *
}
SLOT_INTERFACE_START( peribox_slotp )
SLOT_INTERFACE("pcode", TI99_P_CODE)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("evpc", TI99_EVPC )
SLOT_INTERFACE("myarcmem", TI99_MYARCMEM)
SLOT_INTERFACE("samsmem", TI99_SAMSMEM)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("bwg", TI99_BWG)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE("samsmem", TI99_SAMSMEM)
SLOT_INTERFACE("pcode", TI99_P_CODE)
SLOT_INTERFACE("hsgpl", TI99_HSGPL)
SLOT_INTERFACE("tirs232", TI99_RS232)
SLOT_INTERFACE("speech", TI99_SPEECH)
SLOT_INTERFACE("horizon", TI99_HORIZON)
SLOT_INTERFACE("ide", TI99_IDE)
SLOT_INTERFACE("usbsm", TI99_USBSM)
SLOT_INTERFACE("bwg", TI99_BWG)
SLOT_INTERFACE("hfdc", TI99_HFDC)
SLOT_INTERFACE("tifdc", TI99_FDC)
SLOT_INTERFACE_END
MACHINE_CONFIG_START( peribox_sg_device )
MACHINE_CONFIG_MEMBER( peribox_sg_device::device_add_mconfig )
MCFG_PERIBOX_SLOT_ADD_DEF( PEBSLOT2, peribox_slotp, "evpc" )
MCFG_PERIBOX_SLOT_ADD_DEF( PEBSLOT3, peribox_slotp, "hsgpl" )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT4, peribox_slotp )
@ -639,11 +626,6 @@ MACHINE_CONFIG_START( peribox_sg_device )
MCFG_PERIBOX_SLOT_ADD( PEBSLOT8, peribox_slotp )
MACHINE_CONFIG_END
machine_config_constructor peribox_sg_device::device_mconfig_additions() const
{
return MACHINE_CONFIG_NAME( peribox_sg_device );
}
/***************************************************************************
Implementation of a slot within the box.
****************************************************************************/

View File

@ -69,7 +69,7 @@ protected:
virtual void device_start() override;
virtual void device_config_complete() override;
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
// Next three methods call back the console via slot 1
devcb_write_line m_slot1_inta; // INTA line (Box to console)
@ -118,7 +118,7 @@ public:
peribox_sg_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
/*
@ -130,7 +130,7 @@ public:
peribox_ev_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
@ -143,7 +143,7 @@ public:
peribox_gen_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
virtual machine_config_constructor device_mconfig_additions() const override;
virtual void device_add_mconfig(machine_config &config) override;
};
/*****************************************************************************