mirror of
https://github.com/holub/mame
synced 2025-04-19 15:11:37 +03:00
(nw) removed some trampolines
This commit is contained in:
parent
0a1d77707a
commit
0a2e23e0b0
@ -36,18 +36,13 @@
|
||||
class c68ksbc_state : public driver_device
|
||||
{
|
||||
public:
|
||||
c68ksbc_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_acia(*this, "acia")
|
||||
{
|
||||
}
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
c68ksbc_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
{ }
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<acia6850_device> m_acia;
|
||||
};
|
||||
|
||||
static ADDRESS_MAP_START(c68ksbc_mem, AS_PROGRAM, 16, c68ksbc_state)
|
||||
@ -64,12 +59,6 @@ static INPUT_PORTS_START( c68ksbc )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
WRITE_LINE_MEMBER(c68ksbc_state::write_acia_clock)
|
||||
{
|
||||
m_acia->write_txc(state);
|
||||
m_acia->write_rxc(state);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( c68ksbc )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", M68000, 8000000) // text says 8MHz, schematic says 10MHz
|
||||
@ -84,7 +73,8 @@ static MACHINE_CONFIG_START( c68ksbc )
|
||||
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("acia", acia6850_device, write_cts))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(c68ksbc_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* ROM definition */
|
||||
|
@ -34,23 +34,17 @@
|
||||
class altair_state : public driver_device
|
||||
{
|
||||
public:
|
||||
altair_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_mc6850(*this, "mc6850"),
|
||||
m_ram(*this, "ram")
|
||||
{
|
||||
}
|
||||
altair_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_ram(*this, "ram")
|
||||
{ }
|
||||
|
||||
DECLARE_QUICKLOAD_LOAD_MEMBER(altair);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
|
||||
protected:
|
||||
virtual void machine_reset() override;
|
||||
|
||||
private:
|
||||
virtual void machine_reset() override;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<acia6850_device> m_mc6850;
|
||||
required_shared_ptr<uint8_t> m_ram;
|
||||
};
|
||||
|
||||
@ -67,8 +61,8 @@ static ADDRESS_MAP_START(altair_io, AS_IO, 8, altair_state)
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
// TODO: Remove AM_MIRROR() and use SIO address S0-S7
|
||||
AM_RANGE( 0x00, 0x00 ) AM_MIRROR(0x10) AM_DEVREADWRITE("mc6850", acia6850_device, status_r, control_w)
|
||||
AM_RANGE( 0x01, 0x01 ) AM_MIRROR(0x10) AM_DEVREADWRITE("mc6850", acia6850_device, data_r, data_w)
|
||||
AM_RANGE( 0x00, 0x00 ) AM_MIRROR(0x10) AM_DEVREADWRITE("acia", acia6850_device, status_r, control_w)
|
||||
AM_RANGE( 0x01, 0x01 ) AM_MIRROR(0x10) AM_DEVREADWRITE("acia", acia6850_device, data_r, data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/* Input ports */
|
||||
@ -90,12 +84,6 @@ QUICKLOAD_LOAD_MEMBER( altair_state,altair)
|
||||
return image_init_result::PASS;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER(altair_state::write_acia_clock)
|
||||
{
|
||||
m_mc6850->write_txc(state);
|
||||
m_mc6850->write_rxc(state);
|
||||
}
|
||||
|
||||
void altair_state::machine_reset()
|
||||
{
|
||||
// Set startup address done by turn-key
|
||||
@ -109,17 +97,18 @@ static MACHINE_CONFIG_START( altair )
|
||||
MCFG_CPU_IO_MAP(altair_io)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_DEVICE_ADD("mc6850", ACIA6850, 0)
|
||||
MCFG_DEVICE_ADD("acia", ACIA6850, 0)
|
||||
MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("rs232", rs232_port_device, write_txd))
|
||||
MCFG_ACIA6850_RTS_HANDLER(DEVWRITELINE("rs232", rs232_port_device, write_rts))
|
||||
|
||||
MCFG_RS232_PORT_ADD("rs232", default_rs232_devices, "terminal")
|
||||
MCFG_RS232_RXD_HANDLER(DEVWRITELINE("mc6850", acia6850_device, write_rxd))
|
||||
MCFG_RS232_DCD_HANDLER(DEVWRITELINE("mc6850", acia6850_device, write_dcd))
|
||||
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("mc6850", acia6850_device, write_cts))
|
||||
MCFG_RS232_RXD_HANDLER(DEVWRITELINE("acia", acia6850_device, write_rxd))
|
||||
MCFG_RS232_DCD_HANDLER(DEVWRITELINE("acia", acia6850_device, write_dcd))
|
||||
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("acia", acia6850_device, write_cts))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600) // TODO: this is set using jumpers S3/S2/S1/S0
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(altair_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
|
||||
/* quickload */
|
||||
MCFG_QUICKLOAD_ADD("quickload", altair_state, altair, "bin", 0)
|
||||
|
@ -81,7 +81,7 @@ public:
|
||||
, m_cass(*this, "cassette")
|
||||
, m_speaker(*this, "speaker")
|
||||
, m_ym2203(*this, "ym2203")
|
||||
, m_acia6850(*this, "acia6850")
|
||||
, m_acia(*this, "acia")
|
||||
, m_palette(*this, "palette")
|
||||
{
|
||||
}
|
||||
@ -111,7 +111,6 @@ public:
|
||||
DECLARE_WRITE_LINE_MEMBER(bml3_acia_tx_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(bml3_acia_rts_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(bml3_acia_irq_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
|
||||
DECLARE_READ8_MEMBER(bml3_a000_r); DECLARE_WRITE8_MEMBER(bml3_a000_w);
|
||||
DECLARE_READ8_MEMBER(bml3_c000_r); DECLARE_WRITE8_MEMBER(bml3_c000_w);
|
||||
@ -161,7 +160,7 @@ private:
|
||||
required_device<cassette_image_device> m_cass;
|
||||
required_device<speaker_sound_device> m_speaker;
|
||||
optional_device<ym2203_device> m_ym2203;
|
||||
required_device<acia6850_device> m_acia6850;
|
||||
required_device<acia6850_device> m_acia;
|
||||
required_device<palette_device> m_palette;
|
||||
};
|
||||
|
||||
@ -400,9 +399,9 @@ static ADDRESS_MAP_START(bml3_mem, AS_PROGRAM, 8, bml3_state)
|
||||
AM_RANGE(0x0400, 0x43ff) AM_READWRITE(bml3_vram_r,bml3_vram_w)
|
||||
AM_RANGE(0x4400, 0x9fff) AM_RAM
|
||||
AM_RANGE(0xff40, 0xff46) AM_NOP // lots of unknown reads and writes
|
||||
AM_RANGE(0xffc0, 0xffc3) AM_DEVREADWRITE("pia6821", pia6821_device, read, write)
|
||||
AM_RANGE(0xffc4, 0xffc4) AM_DEVREADWRITE("acia6850", acia6850_device, status_r, control_w)
|
||||
AM_RANGE(0xffc5, 0xffc5) AM_DEVREADWRITE("acia6850", acia6850_device, data_r, data_w)
|
||||
AM_RANGE(0xffc0, 0xffc3) AM_DEVREADWRITE("pia", pia6821_device, read, write)
|
||||
AM_RANGE(0xffc4, 0xffc4) AM_DEVREADWRITE("acia", acia6850_device, status_r, control_w)
|
||||
AM_RANGE(0xffc5, 0xffc5) AM_DEVREADWRITE("acia", acia6850_device, data_r, data_w)
|
||||
AM_RANGE(0xffc6, 0xffc7) AM_READWRITE(bml3_6845_r,bml3_6845_w)
|
||||
// KBNMI - Keyboard "Break" key non-maskable interrupt
|
||||
AM_RANGE(0xffc8, 0xffc8) AM_READ(bml3_keyb_nmi_r) // keyboard nmi
|
||||
@ -745,7 +744,7 @@ TIMER_DEVICE_CALLBACK_MEMBER( bml3_state::bml3_p )
|
||||
if (cass_ws != m_cass_data[0])
|
||||
{
|
||||
m_cass_data[0] = cass_ws;
|
||||
m_acia6850->write_rxd((m_cass_data[1] < 12) ? 1 : 0);
|
||||
m_acia->write_rxd((m_cass_data[1] < 12) ? 1 : 0);
|
||||
m_cass_data[1] = 0;
|
||||
}
|
||||
}
|
||||
@ -923,12 +922,6 @@ WRITE_LINE_MEMBER( bml3_state::bml3_acia_irq_w )
|
||||
logerror("%02x TAPE IRQ\n",state);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( bml3_state::write_acia_clock )
|
||||
{
|
||||
m_acia6850->write_txc(state);
|
||||
m_acia6850->write_rxc(state);
|
||||
}
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER( bml3_state::bml3_c )
|
||||
{
|
||||
m_cass_data[3]++;
|
||||
@ -994,16 +987,17 @@ static MACHINE_CONFIG_START( bml3_common )
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("bml3_c", bml3_state, bml3_c, attotime::from_hz(4800))
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("bml3_p", bml3_state, bml3_p, attotime::from_hz(40000))
|
||||
|
||||
MCFG_DEVICE_ADD("pia6821", PIA6821, 0)
|
||||
MCFG_DEVICE_ADD("pia", PIA6821, 0)
|
||||
MCFG_PIA_WRITEPA_HANDLER(WRITE8(bml3_state, bml3_piaA_w))
|
||||
|
||||
MCFG_DEVICE_ADD("acia6850", ACIA6850, 0)
|
||||
MCFG_DEVICE_ADD("acia", ACIA6850, 0)
|
||||
MCFG_ACIA6850_TXD_HANDLER(WRITELINE(bml3_state, bml3_acia_tx_w))
|
||||
MCFG_ACIA6850_RTS_HANDLER(WRITELINE(bml3_state, bml3_acia_rts_w))
|
||||
MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(bml3_state, bml3_acia_irq_w))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 9600) // 600 baud x 16(divider) = 9600
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(bml3_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
|
||||
MCFG_CASSETTE_ADD( "cassette" )
|
||||
|
||||
|
@ -496,12 +496,6 @@ READ8_MEMBER( bw2_state::ppi_pc_r )
|
||||
// pit8253_config pit_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
WRITE_LINE_MEMBER( bw2_state::pit_out0_w )
|
||||
{
|
||||
m_uart->write_txc(state);
|
||||
m_uart->write_rxc(state);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( bw2_state::mtron_w )
|
||||
{
|
||||
m_mtron = state;
|
||||
@ -595,7 +589,8 @@ static MACHINE_CONFIG_START( bw2 )
|
||||
// devices
|
||||
MCFG_DEVICE_ADD(I8253_TAG, PIT8253, 0)
|
||||
MCFG_PIT8253_CLK0(XTAL_16MHz/4) // 8251 USART TXC, RXC
|
||||
MCFG_PIT8253_OUT0_HANDLER(WRITELINE(bw2_state, pit_out0_w))
|
||||
MCFG_PIT8253_OUT0_HANDLER(DEVWRITELINE(I8251_TAG, i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(I8251_TAG, i8251_device, write_rxc))
|
||||
MCFG_PIT8253_CLK1(11000) // LCD controller
|
||||
MCFG_PIT8253_OUT1_HANDLER(DEVWRITELINE(I8253_TAG, pit8253_device, write_clk2))
|
||||
MCFG_PIT8253_CLK2(0) // Floppy /MTRON
|
||||
|
@ -74,7 +74,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(port60_w);
|
||||
DECLARE_WRITE8_MEMBER(port70_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(txdata_callback);
|
||||
DECLARE_WRITE_LINE_MEMBER(uart_clock_w);
|
||||
DECLARE_DRIVER_INIT(fc100);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(timer_c);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(timer_p);
|
||||
@ -419,12 +418,6 @@ WRITE_LINE_MEMBER( fc100_state::txdata_callback )
|
||||
m_cass_state = state;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( fc100_state::uart_clock_w )
|
||||
{
|
||||
m_uart->write_txc(state);
|
||||
m_uart->write_rxc(state);
|
||||
}
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER( fc100_state::timer_c )
|
||||
{
|
||||
m_cass_data[3]++;
|
||||
@ -548,7 +541,9 @@ static MACHINE_CONFIG_START( fc100 )
|
||||
MCFG_DEVICE_ADD("uart", I8251, 0)
|
||||
MCFG_I8251_TXD_HANDLER(WRITELINE(fc100_state, txdata_callback))
|
||||
MCFG_DEVICE_ADD("uart_clock", CLOCK, XTAL_4_9152MHz/16/16) // gives 19200
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(fc100_state, uart_clock_w))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("uart", i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart", i8251_device, write_rxc))
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_c", fc100_state, timer_c, attotime::from_hz(4800)) // cass write
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_p", fc100_state, timer_p, attotime::from_hz(40000)) // cass read
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_k", fc100_state, timer_k, attotime::from_hz(300)) // keyb scan
|
||||
|
@ -63,11 +63,11 @@ class h8_state : public driver_device
|
||||
{
|
||||
public:
|
||||
h8_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_uart(*this, "uart"),
|
||||
m_cass(*this, "cassette"),
|
||||
m_beep(*this, "beeper")
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_uart(*this, "uart")
|
||||
, m_cass(*this, "cassette")
|
||||
, m_beep(*this, "beeper")
|
||||
{ }
|
||||
|
||||
DECLARE_READ8_MEMBER(portf0_r);
|
||||
@ -76,10 +76,10 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(h8_status_callback);
|
||||
DECLARE_WRITE_LINE_MEMBER(h8_inte_callback);
|
||||
DECLARE_WRITE_LINE_MEMBER(txdata_callback);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_cassette_clock);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(h8_irq_pulse);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(h8_c);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(h8_p);
|
||||
|
||||
private:
|
||||
uint8_t m_digit;
|
||||
uint8_t m_segment;
|
||||
@ -271,12 +271,6 @@ WRITE_LINE_MEMBER( h8_state::txdata_callback )
|
||||
m_cass_state = state;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( h8_state::write_cassette_clock )
|
||||
{
|
||||
m_uart->write_txc(state);
|
||||
m_uart->write_rxc(state);
|
||||
}
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(h8_state::h8_c)
|
||||
{
|
||||
m_cass_data[3]++;
|
||||
@ -330,7 +324,8 @@ static MACHINE_CONFIG_START( h8 )
|
||||
MCFG_I8251_TXD_HANDLER(WRITELINE(h8_state, txdata_callback))
|
||||
|
||||
MCFG_DEVICE_ADD("cassette_clock", CLOCK, 4800)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(h8_state, write_cassette_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("uart", i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart", i8251_device, write_rxc))
|
||||
|
||||
MCFG_CASSETTE_ADD("cassette")
|
||||
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_PLAY | CASSETTE_MOTOR_ENABLED | CASSETTE_SPEAKER_ENABLED)
|
||||
|
@ -22,32 +22,27 @@
|
||||
#include "machine/pit8253.h"
|
||||
#include "machine/terminal.h"
|
||||
|
||||
#define TERMINAL_TAG "terminal"
|
||||
|
||||
class imsai_state : public driver_device
|
||||
{
|
||||
public:
|
||||
imsai_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_terminal(*this, TERMINAL_TAG),
|
||||
m_uart(*this, "uart"),
|
||||
m_pit(*this, "pit")
|
||||
{
|
||||
}
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_terminal(*this, "terminal")
|
||||
, m_pit(*this, "pit")
|
||||
{ }
|
||||
|
||||
void kbd_put(u8 data);
|
||||
DECLARE_READ8_MEMBER(keyin_r);
|
||||
DECLARE_READ8_MEMBER(status_r);
|
||||
DECLARE_WRITE8_MEMBER(control_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_uart_clock);
|
||||
|
||||
private:
|
||||
uint8_t m_term_data;
|
||||
virtual void machine_reset() override;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<generic_terminal_device> m_terminal;
|
||||
required_device<i8251_device> m_uart;
|
||||
required_device<pit8253_device> m_pit;
|
||||
};
|
||||
|
||||
@ -63,13 +58,13 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START(imsai_io, AS_IO, 8, imsai_state)
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x02, 0x02) AM_READ(keyin_r) AM_DEVWRITE(TERMINAL_TAG, generic_terminal_device, write)
|
||||
AM_RANGE(0x02, 0x02) AM_READ(keyin_r) AM_DEVWRITE("terminal", generic_terminal_device, write)
|
||||
AM_RANGE(0x03, 0x03) AM_READ(status_r)
|
||||
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
|
||||
AM_RANGE(0x05, 0x05) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
|
||||
AM_RANGE(0x12, 0x12) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
|
||||
AM_RANGE(0x13, 0x13) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
|
||||
AM_RANGE(0x14, 0x14) AM_READ(keyin_r) AM_DEVWRITE(TERMINAL_TAG, generic_terminal_device, write)
|
||||
AM_RANGE(0x14, 0x14) AM_READ(keyin_r) AM_DEVWRITE("terminal", generic_terminal_device, write)
|
||||
AM_RANGE(0x15, 0x15) AM_READ(status_r)
|
||||
AM_RANGE(0xf3, 0xf3) AM_WRITE(control_w)
|
||||
ADDRESS_MAP_END
|
||||
@ -95,12 +90,6 @@ void imsai_state::kbd_put(u8 data)
|
||||
m_term_data = data;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER(imsai_state::write_uart_clock)
|
||||
{
|
||||
m_uart->write_txc(state);
|
||||
m_uart->write_rxc(state);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER( imsai_state::control_w )
|
||||
{
|
||||
}
|
||||
@ -117,7 +106,7 @@ static MACHINE_CONFIG_START( imsai )
|
||||
MCFG_CPU_IO_MAP(imsai_io)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_DEVICE_ADD(TERMINAL_TAG, GENERIC_TERMINAL, 0)
|
||||
MCFG_DEVICE_ADD("terminal", GENERIC_TERMINAL, 0)
|
||||
MCFG_GENERIC_TERMINAL_KEYBOARD_CB(PUT(imsai_state, kbd_put))
|
||||
|
||||
/* Devices */
|
||||
@ -125,7 +114,8 @@ static MACHINE_CONFIG_START( imsai )
|
||||
|
||||
MCFG_DEVICE_ADD("pit", PIT8253, 0)
|
||||
MCFG_PIT8253_CLK0(XTAL_6MHz / 3) /* Timer 0: baud rate gen for 8251 */
|
||||
MCFG_PIT8253_OUT0_HANDLER(WRITELINE(imsai_state, write_uart_clock))
|
||||
MCFG_PIT8253_OUT0_HANDLER(DEVWRITELINE("uart", i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart", i8251_device, write_rxc))
|
||||
MCFG_PIT8253_CLK1(XTAL_6MHz / 3) /* Timer 1: user */
|
||||
MCFG_PIT8253_CLK2(XTAL_6MHz / 3) /* Timer 2: user */
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -95,12 +95,12 @@ public:
|
||||
};
|
||||
|
||||
mekd2_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_pia_s(*this, "pia_s"),
|
||||
m_pia_u(*this, "pia_u"),
|
||||
m_acia(*this, "acia"),
|
||||
m_cass(*this, "cassette")
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_pia_s(*this, "pia_s")
|
||||
, m_pia_u(*this, "pia_u")
|
||||
, m_acia(*this, "acia")
|
||||
, m_cass(*this, "cassette")
|
||||
{ }
|
||||
|
||||
DECLARE_READ_LINE_MEMBER(mekd2_key40_r);
|
||||
@ -113,10 +113,8 @@ public:
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(mekd2_c);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(mekd2_p);
|
||||
|
||||
protected:
|
||||
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
|
||||
|
||||
private:
|
||||
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
|
||||
uint8_t m_cass_data[4];
|
||||
uint8_t m_segment;
|
||||
uint8_t m_digit;
|
||||
|
@ -27,10 +27,10 @@ class mephisto_pinball_state : public driver_device
|
||||
{
|
||||
public:
|
||||
mephisto_pinball_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_aysnd(*this, "aysnd"),
|
||||
m_soundbank(*this, "soundbank")
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_aysnd(*this, "aysnd")
|
||||
, m_soundbank(*this, "soundbank")
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE8_MEMBER(shift_load_w);
|
||||
@ -41,24 +41,16 @@ public:
|
||||
DECLARE_READ8_MEMBER(ay8910_inputs_r);
|
||||
DECLARE_WRITE8_MEMBER(sound_rombank_w);
|
||||
|
||||
protected:
|
||||
|
||||
// devices
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<ay8910_device> m_aysnd;
|
||||
required_memory_bank m_soundbank;
|
||||
|
||||
// driver_device overrides
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
|
||||
// internal data
|
||||
private:
|
||||
u8 m_ay8910_data;
|
||||
bool m_ay8910_bdir;
|
||||
bool m_ay8910_bc1;
|
||||
|
||||
private:
|
||||
void ay8910_update();
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<ay8910_device> m_aysnd;
|
||||
required_memory_bank m_soundbank;
|
||||
};
|
||||
|
||||
|
||||
|
@ -147,29 +147,6 @@ INPUT_PORTS_END
|
||||
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// DEVICE CONFIGURATION
|
||||
//**************************************************************************
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// COM8116_INTERFACE( dbrg_intf )
|
||||
//-------------------------------------------------
|
||||
|
||||
WRITE_LINE_MEMBER( ob68k1a_state::rx_tx_0_w )
|
||||
{
|
||||
m_acia0->write_txc(state);
|
||||
m_acia0->write_rxc(state);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( ob68k1a_state::rx_tx_1_w )
|
||||
{
|
||||
m_acia1->write_txc(state);
|
||||
m_acia1->write_rxc(state);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// MACHINE INITIALIZATION
|
||||
//**************************************************************************
|
||||
@ -247,8 +224,10 @@ static MACHINE_CONFIG_START( ob68k1a )
|
||||
MCFG_RS232_CTS_HANDLER(DEVWRITELINE(MC6850_1_TAG, acia6850_device, write_cts))
|
||||
|
||||
MCFG_DEVICE_ADD(COM8116_TAG, COM8116, XTAL_5_0688MHz)
|
||||
MCFG_COM8116_FR_HANDLER(WRITELINE(ob68k1a_state, rx_tx_0_w))
|
||||
MCFG_COM8116_FT_HANDLER(WRITELINE(ob68k1a_state, rx_tx_1_w))
|
||||
MCFG_COM8116_FR_HANDLER(DEVWRITELINE(MC6850_0_TAG, acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(MC6850_0_TAG, acia6850_device, write_rxc))
|
||||
MCFG_COM8116_FT_HANDLER(DEVWRITELINE(MC6850_1_TAG, acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(MC6850_1_TAG, acia6850_device, write_rxc))
|
||||
|
||||
// internal ram
|
||||
MCFG_RAM_ADD(RAM_TAG)
|
||||
|
@ -48,21 +48,18 @@ class poly_state : public driver_device
|
||||
{
|
||||
public:
|
||||
poly_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_pia0(*this, "pia0"),
|
||||
m_pia1(*this, "pia1"),
|
||||
m_acia(*this, "acia"),
|
||||
m_ptm(*this, "ptm"),
|
||||
m_speaker(*this, "speaker"),
|
||||
m_videoram(*this, "videoram")
|
||||
{
|
||||
}
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_pia0(*this, "pia0")
|
||||
, m_pia1(*this, "pia1")
|
||||
, m_ptm(*this, "ptm")
|
||||
, m_speaker(*this, "speaker")
|
||||
, m_videoram(*this, "videoram")
|
||||
{ }
|
||||
|
||||
void kbd_put(u8 data);
|
||||
DECLARE_READ8_MEMBER(pia1_b_in);
|
||||
DECLARE_READ8_MEMBER(videoram_r);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
DECLARE_WRITE_LINE_MEMBER( ptm_o2_callback );
|
||||
DECLARE_WRITE_LINE_MEMBER( ptm_o3_callback );
|
||||
|
||||
@ -73,7 +70,6 @@ private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<pia6821_device> m_pia0;
|
||||
required_device<pia6821_device> m_pia1;
|
||||
required_device<acia6850_device> m_acia;
|
||||
required_device<ptm6840_device> m_ptm;
|
||||
required_device<speaker_sound_device> m_speaker;
|
||||
required_shared_ptr<uint8_t> m_videoram;
|
||||
@ -135,12 +131,6 @@ void poly_state::kbd_put(u8 data)
|
||||
m_pia1->cb1_w(0);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( poly_state::write_acia_clock )
|
||||
{
|
||||
m_acia->write_txc(state);
|
||||
m_acia->write_rxc(state);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( poly_state::ptm_o2_callback )
|
||||
{
|
||||
m_ptm->set_c1(state);
|
||||
@ -194,8 +184,9 @@ static MACHINE_CONFIG_START( poly )
|
||||
//MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("rs232", rs232_port_device, write_txd))
|
||||
//MCFG_ACIA6850_RTS_HANDLER(DEVWRITELINE("rs232", rs232_port_device, write_rts))
|
||||
|
||||
//MCFG_DEVICE_ADD("acia_clock", CLOCK, 1)
|
||||
//MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(poly_state, write_acia_clock))
|
||||
//MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
//MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
//MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
|
||||
MCFG_DEVICE_ADD("adlc", MC6854, 0)
|
||||
|
||||
|
@ -41,23 +41,18 @@ ToDo:
|
||||
class sdk86_state : public driver_device
|
||||
{
|
||||
public:
|
||||
sdk86_state(const machine_config &mconfig, device_type type, const char *tag) :
|
||||
driver_device(mconfig, type, tag) ,
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_usart(*this, I8251_TAG)
|
||||
{
|
||||
}
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<i8251_device> m_usart;
|
||||
sdk86_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE8_MEMBER(scanlines_w);
|
||||
DECLARE_WRITE8_MEMBER(digit_w);
|
||||
DECLARE_READ8_MEMBER(kbd_r);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( write_usart_clock );
|
||||
|
||||
private:
|
||||
uint8_t m_digit;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
};
|
||||
|
||||
static ADDRESS_MAP_START(sdk86_mem, AS_PROGRAM, 16, sdk86_state)
|
||||
@ -131,12 +126,6 @@ READ8_MEMBER( sdk86_state::kbd_r )
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( sdk86_state::write_usart_clock )
|
||||
{
|
||||
m_usart->write_txc(state);
|
||||
m_usart->write_rxc(state);
|
||||
}
|
||||
|
||||
static DEVICE_INPUT_DEFAULTS_START( terminal )
|
||||
DEVICE_INPUT_DEFAULTS( "RS232_TXBAUD", 0xff, RS232_BAUD_4800 )
|
||||
DEVICE_INPUT_DEFAULTS( "RS232_RXBAUD", 0xff, RS232_BAUD_4800 )
|
||||
@ -167,7 +156,8 @@ static MACHINE_CONFIG_START( sdk86 )
|
||||
MCFG_DEVICE_CARD_DEVICE_INPUT_DEFAULTS("terminal", terminal)
|
||||
|
||||
MCFG_DEVICE_ADD("usart_clock", CLOCK, 307200)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(sdk86_state, write_usart_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE(I8251_TAG, i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(I8251_TAG, i8251_device, write_rxc))
|
||||
|
||||
MCFG_DEVICE_ADD("i8279", I8279, 2500000) // based on divider
|
||||
MCFG_I8279_OUT_SL_CB(WRITE8(sdk86_state, scanlines_w)) // scan SL lines
|
||||
|
@ -85,11 +85,6 @@ static SLOT_INTERFACE_START( swtpc09_floppies )
|
||||
SLOT_INTERFACE("35hd", FLOPPY_35_HD) // flex 1.44mb disk from swtpc emu (emulator only?)
|
||||
SLOT_INTERFACE_END
|
||||
|
||||
WRITE_LINE_MEMBER(swtpc09_state::write_acia_clock)
|
||||
{
|
||||
m_acia->write_txc(state);
|
||||
m_acia->write_rxc(state);
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
Machine definitions
|
||||
@ -124,7 +119,8 @@ static MACHINE_CONFIG_START( swtpc09 )
|
||||
MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(swtpc09_state, acia_interrupt))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(swtpc09_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
|
||||
MCFG_FD1793_ADD("fdc", XTAL_1MHz)
|
||||
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(swtpc09_state, fdc_intrq_w))
|
||||
@ -164,7 +160,8 @@ static MACHINE_CONFIG_START( swtpc09i )
|
||||
MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(swtpc09_state, acia_interrupt))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(swtpc09_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
|
||||
MCFG_FD1793_ADD("fdc", XTAL_1MHz)
|
||||
|
||||
@ -213,7 +210,8 @@ static MACHINE_CONFIG_START( swtpc09d3 )
|
||||
MCFG_ACIA6850_IRQ_HANDLER(INPUTLINE("maincpu", M6809_IRQ_LINE))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(swtpc09_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
|
||||
MCFG_FD1793_ADD("fdc", XTAL_1MHz)
|
||||
|
||||
|
@ -80,7 +80,6 @@ public:
|
||||
, m_floppy0(*this, "fdc:0")
|
||||
, m_beep(*this, "beeper")
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_acia(*this, "acia")
|
||||
, m_palette(*this, "palette")
|
||||
, m_p_chargen(*this, "chargen")
|
||||
{
|
||||
@ -96,7 +95,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(ds_w);
|
||||
DECLARE_MACHINE_RESET(cpu09);
|
||||
DECLARE_MACHINE_RESET(ivg09);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
MC6845_UPDATE_ROW(crtc_update_row);
|
||||
|
||||
private:
|
||||
@ -109,7 +107,6 @@ private:
|
||||
optional_device<floppy_connector> m_floppy0;
|
||||
optional_device<beep_device> m_beep;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<acia6850_device> m_acia;
|
||||
optional_device<palette_device> m_palette;
|
||||
optional_region_ptr<u8> m_p_chargen;
|
||||
};
|
||||
@ -291,12 +288,6 @@ void tavernie_state::kbd_put(u8 data)
|
||||
m_pia_ivg->cb1_w(1);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( tavernie_state::write_acia_clock )
|
||||
{
|
||||
m_acia->write_txc(state);
|
||||
m_acia->write_rxc(state);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( cpu09 )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu",M6809E, XTAL_4MHz)
|
||||
@ -334,7 +325,8 @@ static MACHINE_CONFIG_START( cpu09 )
|
||||
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("acia", acia6850_device, write_cts))
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(tavernie_state, write_acia_clock))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia", acia6850_device, write_rxc))
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( ivg09, cpu09 )
|
||||
|
@ -33,13 +33,10 @@ public:
|
||||
, m_maincpu(*this, "maincpu")
|
||||
, m_palette(*this, "palette")
|
||||
, m_crtc(*this, "crtc")
|
||||
, m_uart17(*this, "uart_u17")
|
||||
, m_uart18(*this, "uart_u18")
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER(drq_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(irq_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(clock_w);
|
||||
I8275_DRAW_CHARACTER_MEMBER( crtc_display_pixels );
|
||||
|
||||
private:
|
||||
@ -50,8 +47,6 @@ private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<palette_device> m_palette;
|
||||
required_device<i8275_device> m_crtc;
|
||||
required_device<i8251_device> m_uart17;
|
||||
required_device<i8251_device> m_uart18;
|
||||
};
|
||||
|
||||
static ADDRESS_MAP_START(tim100_mem, AS_PROGRAM, 8, tim100_state)
|
||||
@ -159,14 +154,6 @@ WRITE_LINE_MEMBER( tim100_state::irq_w )
|
||||
m_maincpu->set_input_line(I8085_RST65_LINE, CLEAR_LINE);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( tim100_state::clock_w )
|
||||
{
|
||||
m_uart17->write_txc(state);
|
||||
m_uart17->write_rxc(state);
|
||||
m_uart18->write_txc(state);
|
||||
m_uart18->write_rxc(state);
|
||||
}
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( tim100 )
|
||||
/* basic machine hardware */
|
||||
@ -216,7 +203,10 @@ static MACHINE_CONFIG_START( tim100 )
|
||||
MCFG_DEVICE_CARD_DEVICE_INPUT_DEFAULTS("terminal", tim100 )
|
||||
|
||||
MCFG_DEVICE_ADD("uart_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(tim100_state, clock_w))
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("uart_u17", i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart_u17", i8251_device, write_rxc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart_u18", i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("uart_u18", i8251_device, write_rxc))
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* ROM definition */
|
||||
|
@ -75,8 +75,6 @@ public:
|
||||
, m_fdc(*this, "fdc")
|
||||
, m_floppy0(*this, "fdc:0")
|
||||
, m_speaker(*this, "speaker")
|
||||
, m_acia0(*this, "acia0")
|
||||
, m_acia1(*this, "acia1")
|
||||
, m_palette(*this, "palette")
|
||||
, m_p_videoram(*this, "videoram")
|
||||
, m_p_chargen(*this, "chargen")
|
||||
@ -91,7 +89,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(v6809_address_w);
|
||||
DECLARE_WRITE8_MEMBER(v6809_register_w);
|
||||
void kbd_put(u8 data);
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
DECLARE_MACHINE_RESET(v6809);
|
||||
MC6845_UPDATE_ROW(crtc_update_row);
|
||||
MC6845_ON_UPDATE_ADDR_CHANGED(crtc_update_addr);
|
||||
@ -108,8 +105,6 @@ private:
|
||||
required_device<mb8876_device> m_fdc;
|
||||
required_device<floppy_connector> m_floppy0;
|
||||
required_device<speaker_sound_device> m_speaker;
|
||||
required_device<acia6850_device> m_acia0;
|
||||
required_device<acia6850_device> m_acia1;
|
||||
required_device<palette_device> m_palette;
|
||||
required_region_ptr<u8> m_p_videoram;
|
||||
required_region_ptr<u8> m_p_chargen;
|
||||
@ -238,14 +233,6 @@ void v6809_state::kbd_put(u8 data)
|
||||
m_pia0->cb1_w(1);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( v6809_state::write_acia_clock )
|
||||
{
|
||||
m_acia0->write_txc(state);
|
||||
m_acia0->write_rxc(state);
|
||||
m_acia1->write_txc(state);
|
||||
m_acia1->write_rxc(state);
|
||||
}
|
||||
|
||||
READ8_MEMBER( v6809_state::pb_r )
|
||||
{
|
||||
uint8_t ret = m_term_data;
|
||||
@ -348,8 +335,11 @@ static MACHINE_CONFIG_START( v6809 )
|
||||
|
||||
MCFG_DEVICE_ADD("acia1", ACIA6850, 0)
|
||||
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 10)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(v6809_state, write_acia_clock))
|
||||
MCFG_DEVICE_ADD("acia_clock", CLOCK, 153600)
|
||||
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("acia0", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia0", acia6850_device, write_rxc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia1", acia6850_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("acia1", acia6850_device, write_rxc))
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MM58274C, 0)
|
||||
// this is all guess
|
||||
|
@ -361,20 +361,6 @@ static INPUT_PORTS_START( xor100 )
|
||||
PORT_CONFSETTING( 0x01, "Disabled" )
|
||||
INPUT_PORTS_END
|
||||
|
||||
/* COM5016 Interface */
|
||||
|
||||
WRITE_LINE_MEMBER( xor100_state::com5016_fr_w )
|
||||
{
|
||||
m_uart_a->write_txc(state);
|
||||
m_uart_a->write_rxc(state);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( xor100_state::com5016_ft_w )
|
||||
{
|
||||
m_uart_b->write_txc(state);
|
||||
m_uart_b->write_rxc(state);
|
||||
}
|
||||
|
||||
/* Printer 8255A Interface */
|
||||
|
||||
WRITE_LINE_MEMBER( xor100_state::write_centronics_busy )
|
||||
@ -540,8 +526,10 @@ static MACHINE_CONFIG_START( xor100 )
|
||||
MCFG_DEVICE_CARD_DEVICE_INPUT_DEFAULTS("terminal", terminal)
|
||||
|
||||
MCFG_DEVICE_ADD(COM5016_TAG, COM8116, XTAL_5_0688MHz)
|
||||
MCFG_COM8116_FR_HANDLER(WRITELINE(xor100_state, com5016_fr_w))
|
||||
MCFG_COM8116_FT_HANDLER(WRITELINE(xor100_state, com5016_ft_w))
|
||||
MCFG_COM8116_FR_HANDLER(DEVWRITELINE(I8251_A_TAG, i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(I8251_A_TAG, i8251_device, write_rxc))
|
||||
MCFG_COM8116_FT_HANDLER(DEVWRITELINE(I8251_B_TAG, i8251_device, write_txc))
|
||||
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(I8251_B_TAG, i8251_device, write_rxc))
|
||||
|
||||
MCFG_DEVICE_ADD(I8255A_TAG, I8255A, 0)
|
||||
MCFG_I8255_OUT_PORTA_CB(DEVWRITE8("cent_data_out", output_latch_device, write))
|
||||
|
@ -72,7 +72,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER( ppi_pc_w );
|
||||
DECLARE_READ8_MEMBER( ppi_pc_r );
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( pit_out0_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( mtron_w );
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( fdc_drq_w );
|
||||
|
@ -55,8 +55,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER( com8116_w );
|
||||
DECLARE_READ8_MEMBER( pia_r );
|
||||
DECLARE_WRITE8_MEMBER( pia_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( rx_tx_0_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( rx_tx_1_w );
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -58,7 +58,6 @@ public:
|
||||
DECLARE_WRITE_LINE_MEMBER( ptm_irq );
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( acia_interrupt );
|
||||
DECLARE_WRITE_LINE_MEMBER( write_acia_clock );
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
|
||||
DECLARE_WRITE_LINE_MEMBER( fdc_drq_w );
|
||||
|
@ -60,8 +60,6 @@ public:
|
||||
void fdc_intrq_w(bool state);
|
||||
void fdc_drq_w(bool state);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER(com5016_fr_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(com5016_ft_w);
|
||||
DECLARE_READ8_MEMBER(i8255_pc_r);
|
||||
DECLARE_WRITE_LINE_MEMBER(ctc_z0_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(ctc_z1_w);
|
||||
|
Loading…
Reference in New Issue
Block a user