z80scc: Remove generic device type (which nothing was using) and custom MCFG_SCCXXXX_ADD macros (nw)

This commit is contained in:
AJR 2018-05-27 16:57:22 -04:00
parent fb2012ed3f
commit 6652225def
17 changed files with 78 additions and 122 deletions

View File

@ -405,7 +405,7 @@ MACHINE_CONFIG_START(mpcb828_device::device_add_mconfig)
MCFG_DEVICE_ADD("ramdac", BT458, 83'020'800)
MCFG_SCC8530_ADD("scc", 4.9152_MHz_XTAL, 0, 0, 0, 0)
MCFG_DEVICE_ADD("scc", SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(DEVICE_SELF, mpcb828_device, scc_irq))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("kbd", interpro_keyboard_port_device, write_txd))
@ -440,7 +440,7 @@ MACHINE_CONFIG_START(mpcb849_device::device_add_mconfig)
MCFG_DEVICE_ADD("ramdac", BT458, 0) // unconfirmed clock
MCFG_SCC8530_ADD("scc", 4.9152_MHz_XTAL, 0, 0, 0, 0)
MCFG_DEVICE_ADD("scc", SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(DEVICE_SELF, mpcb849_device, scc_irq))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("kbd", interpro_keyboard_port_device, write_txd))
@ -486,7 +486,7 @@ MACHINE_CONFIG_START(msmt094_device::device_add_mconfig)
//MCFG_DEVICE_ADD("dsp3", TMS32030, 40_MHz_XTAL)
// FIXME: actually Z0853006VSC
MCFG_SCC8530_ADD("scc", 4.9152_MHz_XTAL, 0, 0, 0, 0)
MCFG_DEVICE_ADD("scc", SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(DEVICE_SELF, msmt094_device, scc_irq))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("kbd", interpro_keyboard_port_device, write_txd))

View File

@ -38,30 +38,30 @@ DEFINE_DEVICE_TYPE(NUBUS_QUADRALINK, nubus_quadralink_device, "nb_qdlink", "Appl
//-------------------------------------------------
MACHINE_CONFIG_START(nubus_quadralink_device::device_add_mconfig)
MCFG_SCC8530_ADD("scc1", XTAL(3'686'400), 0, 0, 0, 0)
MCFG_DEVICE_ADD("scc1", SCC8530N, 3.6864_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("serport0", rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE("serport1", rs232_port_device, write_txd))
MCFG_SCC8530_ADD("scc2", XTAL(3'686'400), 0, 0, 0, 0)
MCFG_DEVICE_ADD("scc2", SCC8530N, 3.6864_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("serport2", rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE("serport3", rs232_port_device, write_txd))
MCFG_DEVICE_ADD( "serport0", RS232_PORT, isa_com, nullptr )
MCFG_DEVICE_ADD("serport0", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("scc1", z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("scc1", z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc1", z80scc_device, ctsa_w))
MCFG_DEVICE_ADD( "serport1", RS232_PORT, isa_com, nullptr )
MCFG_DEVICE_ADD("serport1", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("scc1", z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("scc1", z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc1", z80scc_device, ctsb_w))
MCFG_DEVICE_ADD( "serport2", RS232_PORT, isa_com, nullptr )
MCFG_DEVICE_ADD("serport2", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("scc2", z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("scc2", z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc2", z80scc_device, ctsa_w))
MCFG_DEVICE_ADD( "serport3", RS232_PORT, isa_com, nullptr )
MCFG_DEVICE_ADD("serport3", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("scc2", z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("scc2", z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc2", z80scc_device, ctsb_w))

View File

@ -357,7 +357,6 @@ enum : uint8_t
// DEVICE DEFINITIONS
//**************************************************************************
// device type definition
DEFINE_DEVICE_TYPE(Z80SCC, z80scc_device, "z80scc", "Z80 SCC")
DEFINE_DEVICE_TYPE(Z80SCC_CHANNEL, z80scc_channel, "z80scc_channel", "Z80 SCC Channel")
DEFINE_DEVICE_TYPE(SCC8030, scc8030_device, "scc8030", "Zilog Z8030 SCC")
DEFINE_DEVICE_TYPE(SCC80C30, scc80c30_device, "scc80c30", "Zilog Z80C30 SCC")
@ -424,11 +423,6 @@ z80scc_device::z80scc_device(const machine_config &mconfig, device_type type, co
elem = 0;
}
z80scc_device::z80scc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: z80scc_device(mconfig, Z80SCC, tag, owner, clock, TYPE_Z80SCC)
{
}
scc8030_device::scc8030_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: z80scc_device(mconfig, SCC8030, tag, owner, clock, TYPE_SCC8030)
{

View File

@ -44,45 +44,6 @@
#define Z80SCC_USE_LOCAL_BRG 0
/* Variant ADD macros - use the right one to enable the right feature set! */
#define MCFG_SCC8030_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC8030, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC80C30_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC80C30, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC80230_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC80230, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC8530_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC8530N, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC85C30_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC85C30, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC85230_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC85230, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC85233_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC85233, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
#define MCFG_SCC8523L_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, SCC8523L, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
/* generic ADD macro - Avoid using it directly, see above for correct variant instead */
#define MCFG_Z80SCC_ADD(_tag, _clock, _rxa, _txa, _rxb, _txb) \
MCFG_DEVICE_ADD(_tag, Z80SCC, _clock) \
MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb)
/* Generic macros */
#define MCFG_Z80SCC_OFFSETS(_rxa, _txa, _rxb, _txb) \
downcast<z80scc_device &>(*device).configure_channels(_rxa, _txa, _rxb, _txb);
@ -418,9 +379,6 @@ class z80scc_device : public device_t, public device_z80daisy_interface
friend class z80scc_channel;
public:
// construction/destruction
z80scc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
template <unsigned N, class Object> devcb_base &set_out_txd_callback(Object &&cb) { return m_out_txd_cb[N].set_callback(std::forward<Object>(cb)); }
template <unsigned N, class Object> devcb_base &set_out_dtr_callback(Object &&cb) { return m_out_dtr_cb[N].set_callback(std::forward<Object>(cb)); }
template <unsigned N, class Object> devcb_base &set_out_rts_callback(Object &&cb) { return m_out_rts_cb[N].set_callback(std::forward<Object>(cb)); }
@ -513,7 +471,6 @@ protected:
// Variants in the SCC family
enum
{
TYPE_Z80SCC = 0x001,
TYPE_SCC8030 = 0x002,
TYPE_SCC80C30 = 0x004,
TYPE_SCC80230 = 0x008,
@ -614,7 +571,6 @@ public:
};
// device type definition
DECLARE_DEVICE_TYPE(Z80SCC, z80scc_device)
DECLARE_DEVICE_TYPE(Z80SCC_CHANNEL, z80scc_channel)
DECLARE_DEVICE_TYPE(SCC8030, scc8030_device)
DECLARE_DEVICE_TYPE(SCC80C30, scc80c30_device)

View File

@ -394,7 +394,7 @@ MACHINE_CONFIG_START(apple2gs_state::apple2gs)
MCFG_IWM_ADD("fdc", apple2_fdc_interface)
/* SCC */
MCFG_SCC85C30_ADD(SCC_TAG, APPLE2GS_14M/2, 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC_TAG, SCC85C30, APPLE2GS_14M/2)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))

View File

@ -128,7 +128,8 @@ MACHINE_CONFIG_START(c900_state::c900)
MCFG_DEVICE_ADD("cio", Z8036, 6'000'000)
//MCFG_SCC8030_ADD("scc", 6'000'000, 326400, 0, 326400, 0)
//MCFG_DEVICE_ADD("scc", SCC8030, 6'000'000)
//MCFG_Z80SCC_OFFSETS(326400, 0, 326400, 0)
/* Port A */
//MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("rs232a", rs232_port_device, write_txd))
//MCFG_Z80SCC_OUT_DTRA_CB(WRITELINE("rs232a", rs232_port_device, write_dtr))

View File

@ -186,7 +186,7 @@
#define FUNCNAME __PRETTY_FUNCTION__
#endif
#define BAUDGEN_CLOCK XTAL(19'660'800) /* Raltron */
#define BAUDGEN_CLOCK 19.6608_MHz_XTAL /* Raltron */
#define SCC_CLOCK (BAUDGEN_CLOCK / 4) /* through a 74LS393 counter */
class hk68v10_state : public driver_device
@ -339,23 +339,23 @@ static void hk68_vme_cards(device_slot_interface &device)
*/
MACHINE_CONFIG_START(hk68v10_state::hk68v10)
/* basic machine hardware */
MCFG_DEVICE_ADD ("maincpu", M68010, XTAL(10'000'000))
MCFG_DEVICE_ADD("maincpu", M68010, 10_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP (hk68v10_mem)
MCFG_DEVICE_ADD("cio", Z8536, SCC_CLOCK)
/* Terminal Port config */
MCFG_SCC8530_ADD("scc", SCC_CLOCK, 0, 0, 0, 0 )
MCFG_DEVICE_ADD("scc", SCC8530N, SCC_CLOCK)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("rs232trm", rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_DTRA_CB(WRITELINE("rs232trm", rs232_port_device, write_dtr))
MCFG_Z80SCC_OUT_RTSA_CB(WRITELINE("rs232trm", rs232_port_device, write_rts))
MCFG_DEVICE_ADD ("rs232trm", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("scc", scc8530_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("scc", scc8530_device, ctsa_w))
MCFG_DEVICE_ADD("rs232trm", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("scc", scc8530_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc", scc8530_device, ctsa_w))
MCFG_VME_DEVICE_ADD("vme")
MCFG_VME_SLOT_ADD ("vme", 1, hk68_vme_cards, nullptr)
MCFG_VME_SLOT_ADD("vme", 1, hk68_vme_cards, nullptr)
MACHINE_CONFIG_END
/* ROM definitions */

View File

@ -349,13 +349,15 @@ WRITE_LINE_MEMBER(lwriter_state::scc_int)
m_via->write_ca1(state);
}*/
#define CPU_CLK (XTAL(22'321'000) / 2) // Based on pictures form here: http://picclick.co.uk/Apple-Postscript-LaserWriter-IINT-Printer-640-4105-M6009-Mainboard-282160713108.html#&gid=1&pid=7
#define CPU_CLK (22.321_MHz_XTAL / 2) // Based on pictures form here: http://picclick.co.uk/Apple-Postscript-LaserWriter-IINT-Printer-640-4105-M6009-Mainboard-282160713108.html#&gid=1&pid=7
#define RXC_CLK ((CPU_CLK.value() - (87 * 16 * 70)) / 3) // Tuned to get 9600 baud according to manual, needs rework based on real hardware
MACHINE_CONFIG_START(lwriter_state::lwriter)
MCFG_DEVICE_ADD("maincpu", M68000, CPU_CLK)
MCFG_DEVICE_PROGRAM_MAP(maincpu_map)
MCFG_SCC8530_ADD("scc", CPU_CLK, RXC_CLK, 0, RXC_CLK, 0)
MCFG_DEVICE_ADD("scc", SCC8530N, CPU_CLK)
MCFG_Z80SCC_OFFSETS(RXC_CLK, 0, RXC_CLK, 0)
/* Port A */
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_DTRA_CB(WRITELINE("rs232a", rs232_port_device, write_dtr))
@ -368,13 +370,13 @@ MACHINE_CONFIG_START(lwriter_state::lwriter)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE("via", via6522_device, write_ca1))
//MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, lwriter_state, scc_int))
MCFG_DEVICE_ADD ("rs232a", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("scc", scc8530_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("scc", scc8530_device, ctsa_w))
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("scc", scc8530_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc", scc8530_device, ctsa_w))
MCFG_DEVICE_ADD ("rs232b", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("scc", scc8530_device, rxb_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("scc", scc8530_device, ctsb_w))
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("scc", scc8530_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("scc", scc8530_device, ctsb_w))
#if TPI
MCFG_DEVICE_ADD("tpi", TPI6525, 0)

View File

@ -1350,11 +1350,12 @@ MACHINE_CONFIG_START(mac128_state::mac512ke)
MCFG_SOUND_ROUTE(0, DAC_TAG, 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, DAC_TAG, -1.0, DAC_VREF_NEG_INPUT)
/* devices */
MCFG_RTC3430042_ADD("rtc", XTAL(32'768))
MCFG_RTC3430042_ADD("rtc", 32.768_kHz_XTAL)
MCFG_IWM_ADD("fdc", mac_iwm_interface)
MCFG_LEGACY_FLOPPY_SONY_2_DRIVES_ADD(mac_floppy_interface)
MCFG_SCC85C30_ADD("scc", C7M, C3_7M, 0, C3_7M, 0)
MCFG_DEVICE_ADD("scc", SCC85C30, C7M)
MCFG_Z80SCC_OFFSETS(C3_7M, 0, C3_7M, 0)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, mac128_state, set_scc_interrupt))
MCFG_DEVICE_ADD("via6522_0", VIA6522, 1000000)

View File

@ -302,31 +302,31 @@ void micro3d_state::soundmem_io(address_map &map)
MACHINE_CONFIG_START(micro3d_state::micro3d)
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(32'000'000) / 2)
MCFG_DEVICE_ADD("maincpu", M68000, 32_MHz_XTAL / 2)
MCFG_DEVICE_PROGRAM_MAP(hostmem)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", micro3d_state, micro3d_vblank)
MCFG_DEVICE_ADD("vgb", TMS34010, XTAL(40'000'000))
MCFG_DEVICE_ADD("vgb", TMS34010, 40_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(vgbmem)
MCFG_VIDEO_SET_SCREEN("screen")
MCFG_TMS340X0_HALT_ON_RESET(false) /* halt on reset */
MCFG_TMS340X0_PIXEL_CLOCK(XTAL(40'000'000) / 8) /* pixel clock */
MCFG_TMS340X0_PIXEL_CLOCK(40_MHz_XTAL / 8) /* pixel clock */
MCFG_TMS340X0_PIXELS_PER_CLOCK(4) /* pixels per clock */
MCFG_TMS340X0_SCANLINE_IND16_CB(micro3d_state, scanline_update) /* scanline updater (indexed16) */
MCFG_TMS340X0_OUTPUT_INT_CB(WRITELINE(*this, micro3d_state, tms_interrupt))
MCFG_DEVICE_ADD("drmath", AM29000, XTAL(32'000'000) / 2)
MCFG_DEVICE_ADD("drmath", AM29000, 32_MHz_XTAL / 2)
MCFG_DEVICE_PROGRAM_MAP(drmath_prg)
MCFG_DEVICE_DATA_MAP(drmath_data)
MCFG_SCC8530_ADD("scc", XTAL(32'000'000) / 2 / 2, 0, 0, 0, 0)
MCFG_DEVICE_ADD("scc", SCC8530N, 32_MHz_XTAL / 2 / 2)
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE("monitor_drmath", rs232_port_device, write_txd))
MCFG_DEVICE_ADD("monitor_drmath", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("scc", z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("scc", z80scc_device, dcdb_w)) MCFG_DEVCB_XOR(1)
MCFG_DEVICE_ADD("audiocpu", I8051, XTAL(11'059'200))
MCFG_DEVICE_ADD("audiocpu", I8051, 11.0592_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(soundmem_prg)
MCFG_DEVICE_IO_MAP(soundmem_io)
MCFG_MCS51_PORT_P1_IN_CB(READ8(*this, micro3d_state, micro3d_sound_p1_r))
@ -336,7 +336,7 @@ MACHINE_CONFIG_START(micro3d_state::micro3d)
MCFG_MCS51_SERIAL_TX_CB(WRITE8(*this, micro3d_state, data_from_i8031))
MCFG_MCS51_SERIAL_RX_CB(READ8(*this, micro3d_state, data_to_i8031))
MCFG_DEVICE_ADD("duart", MC68681, XTAL(3'686'400))
MCFG_DEVICE_ADD("duart", MC68681, 3.6864_MHz_XTAL)
MCFG_MC68681_IRQ_CALLBACK(WRITELINE(*this, micro3d_state, duart_irq_handler))
MCFG_MC68681_A_TX_CALLBACK(WRITELINE("monitor_host", rs232_port_device, write_txd))
MCFG_MC68681_B_TX_CALLBACK(WRITELINE(*this, micro3d_state, duart_txb))
@ -359,11 +359,11 @@ MACHINE_CONFIG_START(micro3d_state::micro3d)
MCFG_PALETTE_FORMAT(BBBBBRRRRRGGGGGx)
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_RAW_PARAMS(XTAL(40'000'000)/8*4, 192*4, 0, 144*4, 434, 0, 400)
MCFG_SCREEN_RAW_PARAMS(40_MHz_XTAL/8*4, 192*4, 0, 144*4, 434, 0, 400)
MCFG_SCREEN_UPDATE_DEVICE("vgb", tms34010_device, tms340x0_ind16)
MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("uart", MC2661, XTAL(40'000'000) / 8) // actually SCN2651
MCFG_DEVICE_ADD("uart", MC2661, 40_MHz_XTAL / 8) // actually SCN2651
MCFG_MC2661_TXD_HANDLER(WRITELINE("monitor_vgb", rs232_port_device, write_txd))
MCFG_DEVICE_ADD("monitor_vgb", RS232_PORT, default_rs232_devices, nullptr)
@ -385,7 +385,7 @@ MACHINE_CONFIG_START(micro3d_state::micro3d)
.add_route(ALL_OUTPUTS, "lspeaker", 0.35)
.add_route(ALL_OUTPUTS, "rspeaker", 0.35);
YM2151(config, "ym2151", XTAL(3'579'545))
YM2151(config, "ym2151", 3.579545_MHz_XTAL)
.add_route(0, "lspeaker", 0.35)
.add_route(1, "rspeaker", 0.35);

View File

@ -184,7 +184,7 @@
#endif
/* from documentataion: http://www.m88k.com/Docs/147/147aih.pdf but crystal and divider not known */
#define BAUDGEN_CLOCK XTAL(5'000'000)
#define BAUDGEN_CLOCK 5_MHz_XTAL
#define SCC_CLOCK (BAUDGEN_CLOCK) /* This gives prompt at the RS232 terminal device (9600) */
class mvme147_state : public driver_device
@ -650,24 +650,24 @@ static void mvme147_vme_cards(device_slot_interface &device)
*/
MACHINE_CONFIG_START(mvme147_state::mvme147)
/* basic machine hardware */
MCFG_DEVICE_ADD ("maincpu", M68030, XTAL(16'000'000))
MCFG_DEVICE_PROGRAM_MAP (mvme147_mem)
MCFG_DEVICE_ADD("maincpu", M68030, 16_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(mvme147_mem)
MCFG_VME_DEVICE_ADD("vme")
MCFG_VME_SLOT_ADD ("vme", 1, mvme147_vme_cards, nullptr)
MCFG_VME_SLOT_ADD("vme", 1, mvme147_vme_cards, nullptr)
MCFG_M48T02_ADD("m48t18") /* t08 differs only in accepted voltage levels compared to t18 */
/* Terminal Port config */
MCFG_SCC85C30_ADD("scc", SCC_CLOCK, 0, 0, 0, 0 )
MCFG_DEVICE_ADD("scc", SCC85C30, SCC_CLOCK)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE("rs232trm", rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_DTRA_CB(WRITELINE("rs232trm", rs232_port_device, write_dtr))
MCFG_Z80SCC_OUT_RTSA_CB(WRITELINE("rs232trm", rs232_port_device, write_rts))
MCFG_DEVICE_ADD ("rs232trm", RS232_PORT, default_rs232_devices, "terminal")
MCFG_DEVICE_ADD("rs232trm", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("scc", scc85c30_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("scc", scc85c30_device, ctsa_w))
MCFG_SCC85C30_ADD("scc2", SCC_CLOCK, 0, 0, 0, 0 )
MCFG_DEVICE_ADD("scc2", SCC85C30, SCC_CLOCK)
MACHINE_CONFIG_END
/* ROM definitions */

View File

@ -611,7 +611,7 @@ void sun2_state::machine_reset()
MACHINE_CONFIG_START(sun2_state::sun2vme)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68010, XTAL(19'660'800) / 2) // or XTAL(24'000'000) / 2 by jumper setting
MCFG_DEVICE_ADD("maincpu", M68010, 19.6608_MHz_XTAL / 2) // or 24_MHz_XTAL / 2 by jumper setting
MCFG_DEVICE_PROGRAM_MAP(sun2_mem)
MCFG_RAM_ADD(RAM_TAG)
@ -653,7 +653,7 @@ MACHINE_CONFIG_START(sun2_state::sun2vme)
MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 900-1)
MCFG_SCREEN_REFRESH_RATE(72)
MCFG_DEVICE_ADD("timer", AM9513A, XTAL(19'660'800) / 4)
MCFG_DEVICE_ADD("timer", AM9513A, 19.6608_MHz_XTAL / 4)
MCFG_AM9513_FOUT_CALLBACK(WRITELINE("timer", am9513_device, gate1_w))
MCFG_AM9513_OUT1_CALLBACK(INPUTLINE("maincpu", M68K_IRQ_7))
MCFG_AM9513_OUT2_CALLBACK(WRITELINE("irq5", input_merger_device, in_w<0>))
@ -664,8 +664,8 @@ MACHINE_CONFIG_START(sun2_state::sun2vme)
MCFG_INPUT_MERGER_ANY_HIGH("irq5") // 74LS05 open collectors
MCFG_INPUT_MERGER_OUTPUT_HANDLER(INPUTLINE("maincpu", M68K_IRQ_5))
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(19'660'800) / 4, 0, 0, 0, 0)
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(19'660'800) / 4, 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 19.6608_MHz_XTAL / 4)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 19.6608_MHz_XTAL / 4)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_INT_CB(INPUTLINE("maincpu", M68K_IRQ_6))
@ -683,7 +683,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(sun2_state::sun2mbus)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68010, XTAL(39'321'600) / 4)
MCFG_DEVICE_ADD("maincpu", M68010, 39.3216_MHz_XTAL / 4)
MCFG_DEVICE_PROGRAM_MAP(sun2_mem)
MCFG_RAM_ADD(RAM_TAG)
@ -725,7 +725,7 @@ MACHINE_CONFIG_START(sun2_state::sun2mbus)
MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 900-1)
MCFG_SCREEN_REFRESH_RATE(72)
MCFG_DEVICE_ADD("timer", AM9513, XTAL(39'321'600) / 8)
MCFG_DEVICE_ADD("timer", AM9513, 39.3216_MHz_XTAL / 8)
MCFG_AM9513_FOUT_CALLBACK(WRITELINE("timer", am9513_device, gate1_w))
MCFG_AM9513_OUT1_CALLBACK(INPUTLINE("maincpu", M68K_IRQ_7))
MCFG_AM9513_OUT2_CALLBACK(WRITELINE("irq5", input_merger_device, in_w<0>))
@ -736,8 +736,8 @@ MACHINE_CONFIG_START(sun2_state::sun2mbus)
MCFG_INPUT_MERGER_ANY_HIGH("irq5") // 74LS05 open collectors
MCFG_INPUT_MERGER_OUTPUT_HANDLER(INPUTLINE("maincpu", M68K_IRQ_5))
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(39'321'600) / 8, 0, 0, 0, 0)
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(39'321'600) / 8, 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 39.3216_MHz_XTAL / 8)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 39.3216_MHz_XTAL / 8)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_INT_CB(INPUTLINE("maincpu", M68K_IRQ_6))
@ -752,7 +752,7 @@ MACHINE_CONFIG_START(sun2_state::sun2mbus)
MCFG_RS232_DCD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, ctsb_w))
MCFG_DEVICE_ADD("rtc", MM58167, XTAL(32'768))
MCFG_DEVICE_ADD("rtc", MM58167, 32.768_kHz_XTAL)
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -1016,13 +1016,13 @@ MACHINE_CONFIG_START(sun3_state::sun3)
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer", sun3_state, sun3_timer, attotime::from_hz(100))
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(KEYBOARD_TAG, sun_keyboard_port_device, write_txd))
MCFG_DEVICE_ADD(KEYBOARD_TAG, SUNKBD_PORT, default_sun_keyboard_devices, "type3hle")
MCFG_SUNKBD_RXD_HANDLER(WRITELINE(SCC1_TAG, z80scc_device, rxa_w))
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))
@ -1121,13 +1121,13 @@ MACHINE_CONFIG_START(sun3_state::sun3_50)
MCFG_ADDRESS_MAP_BANK_DATA_WIDTH(32)
MCFG_ADDRESS_MAP_BANK_STRIDE(0x80000000)
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(KEYBOARD_TAG, sun_keyboard_port_device, write_txd))
MCFG_DEVICE_ADD(KEYBOARD_TAG, SUNKBD_PORT, default_sun_keyboard_devices, "type3hle")
MCFG_SUNKBD_RXD_HANDLER(WRITELINE(SCC1_TAG, z80scc_device, rxa_w))
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))

View File

@ -589,13 +589,13 @@ MACHINE_CONFIG_START(sun3x_state::sun3_80)
MCFG_M48T02_ADD(TIMEKEEPER_TAG)
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(KEYBOARD_TAG, sun_keyboard_port_device, write_txd))
MCFG_DEVICE_ADD(KEYBOARD_TAG, SUNKBD_PORT, default_sun_keyboard_devices, "type3hle")
MCFG_SUNKBD_RXD_HANDLER(WRITELINE(SCC1_TAG, z80scc_device, rxa_w))
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))
@ -636,8 +636,8 @@ MACHINE_CONFIG_START(sun3x_state::sun3_460)
MCFG_M48T02_ADD(TIMEKEEPER_TAG)
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))

View File

@ -486,7 +486,7 @@
#define DMA_CTRL (0)
#define DMA_ADDR (1)
#define DMA_BYTE_COUNT (2)
#define DMA_XTAL (XTAL(25'000'000))
#define DMA_XTAL (25_MHz_XTAL)
namespace
{
@ -1938,7 +1938,7 @@ MACHINE_CONFIG_START(sun4_state::sun4)
MCFG_ADDRESS_MAP_BANK_STRIDE(0x80000000)
// Keyboard/mouse
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, sun4_state, scc1_int))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(KEYBOARD_TAG, sun_keyboard_port_device, write_txd))
@ -1946,7 +1946,7 @@ MACHINE_CONFIG_START(sun4_state::sun4)
MCFG_SUNKBD_RXD_HANDLER(WRITELINE(SCC1_TAG, z80scc_device, rxa_w))
// RS232 serial ports
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, sun4_state, scc2_int))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))
@ -2003,7 +2003,7 @@ MACHINE_CONFIG_START(sun4_state::sun4c)
MCFG_ADDRESS_MAP_BANK_STRIDE(0x80000000)
// Keyboard/mouse
MCFG_SCC8530_ADD(SCC1_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC1_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, sun4_state, scc1_int))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(KEYBOARD_TAG, sun_keyboard_port_device, write_txd))
@ -2011,7 +2011,7 @@ MACHINE_CONFIG_START(sun4_state::sun4c)
MCFG_SUNKBD_RXD_HANDLER(WRITELINE(SCC1_TAG, z80scc_device, rxa_w))
// RS232 serial ports
MCFG_SCC8530_ADD(SCC2_TAG, XTAL(4'915'200), 0, 0, 0, 0)
MCFG_DEVICE_ADD(SCC2_TAG, SCC8530N, 4.9152_MHz_XTAL)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, sun4_state, scc2_int))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(RS232B_TAG, rs232_port_device, write_txd))

View File

@ -17,10 +17,10 @@
/*static*/ const char *ioc2_device::RS232A_TAG = "rs232a";
/*static*/ const char *ioc2_device::RS232B_TAG = "rs232b";
/*static*/ const XTAL ioc2_device::SCC_PCLK = XTAL(10'000'000);
/*static*/ const XTAL ioc2_device::SCC_RXA_CLK = XTAL(3'686'400); // Needs verification
/*static*/ const XTAL ioc2_device::SCC_PCLK = 10_MHz_XTAL;
/*static*/ const XTAL ioc2_device::SCC_RXA_CLK = 3.6864_MHz_XTAL; // Needs verification
/*static*/ const XTAL ioc2_device::SCC_TXA_CLK = XTAL(0);
/*static*/ const XTAL ioc2_device::SCC_RXB_CLK = XTAL(3'686'400); // Needs verification
/*static*/ const XTAL ioc2_device::SCC_RXB_CLK = 3.6864_MHz_XTAL; // Needs verification
/*static*/ const XTAL ioc2_device::SCC_TXB_CLK = XTAL(0);
DEFINE_DEVICE_TYPE(SGI_IOC2_GUINNESS, ioc2_guinness_device, "ioc2g", "SGI IOC2 (Guiness)")
@ -49,7 +49,8 @@ ioport_constructor ioc2_device::device_input_ports() const
}
MACHINE_CONFIG_START(ioc2_device::device_add_mconfig)
MCFG_SCC85230_ADD(SCC_TAG, SCC_PCLK, SCC_RXA_CLK.value(), SCC_TXA_CLK.value(), SCC_RXB_CLK.value(), SCC_TXB_CLK.value())
MCFG_DEVICE_ADD(SCC_TAG, SCC85230, SCC_PCLK)
MCFG_Z80SCC_OFFSETS(SCC_RXA_CLK.value(), SCC_TXA_CLK.value(), SCC_RXB_CLK.value(), SCC_TXB_CLK.value())
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_DTRA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_dtr))
MCFG_Z80SCC_OUT_RTSA_CB(WRITELINE(RS232A_TAG, rs232_port_device, write_rts))

View File

@ -46,7 +46,8 @@ MACHINE_CONFIG_START(iteagle_fpga_device::device_add_mconfig)
// RS232 serial ports
// The console terminal (com1) operates at 38400 baud
MCFG_SCC85C30_ADD(AM85C30_TAG, XTAL(7'372'800).value(), XTAL(7'372'800).value(), 0, XTAL(7'372'800).value(), 0)
MCFG_DEVICE_ADD(AM85C30_TAG, SCC85C30, 7.3728_MHz_XTAL)
MCFG_Z80SCC_OFFSETS((7.3728_MHz_XTAL).value(), 0, (7.3728_MHz_XTAL).value(), 0)
MCFG_Z80SCC_OUT_INT_CB(WRITELINE(*this, iteagle_fpga_device, serial_interrupt))
MCFG_Z80SCC_OUT_TXDA_CB(WRITELINE(COM2_TAG, rs232_port_device, write_txd))
MCFG_Z80SCC_OUT_TXDB_CB(WRITELINE(COM1_TAG, rs232_port_device, write_txd))