mirror of
https://github.com/holub/mame
synced 2025-07-03 00:56:03 +03:00
abc800: Cleanup. (nw)
This commit is contained in:
parent
e9a3601dbb
commit
f43edc73b1
@ -141,16 +141,15 @@ Notes:
|
|||||||
|
|
||||||
TODO:
|
TODO:
|
||||||
|
|
||||||
- cassette
|
- abc802 video is all black
|
||||||
- abc806 RTC
|
- abc806 RTC
|
||||||
- abc806 disks except ufd631 won't boot
|
- abc806 disks except ufd631 won't boot
|
||||||
|
- cassette
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "includes/abc80x.h"
|
#include "includes/abc80x.h"
|
||||||
#include "softlist.h"
|
|
||||||
#include "speaker.h"
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -181,20 +180,6 @@ READ8_MEMBER( abc800_state::pling_r )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//-------------------------------------------------
|
|
||||||
// pling_r - speaker read
|
|
||||||
//-------------------------------------------------
|
|
||||||
|
|
||||||
READ8_MEMBER( abc802_state::pling_r )
|
|
||||||
{
|
|
||||||
m_pling = !m_pling;
|
|
||||||
|
|
||||||
m_discrete->write(space, NODE_01, m_pling);
|
|
||||||
|
|
||||||
return 0xff;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// MEMORY BANKING
|
// MEMORY BANKING
|
||||||
@ -587,7 +572,7 @@ void abc802_state::abc802_io(address_map &map)
|
|||||||
map(0x03, 0x03).mirror(0x18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c2_w));
|
map(0x03, 0x03).mirror(0x18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c2_w));
|
||||||
map(0x04, 0x04).mirror(0x18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c3_w));
|
map(0x04, 0x04).mirror(0x18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c3_w));
|
||||||
map(0x05, 0x05).mirror(0x18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c4_w));
|
map(0x05, 0x05).mirror(0x18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c4_w));
|
||||||
map(0x05, 0x05).mirror(0x08).r(this, FUNC(abc802_state::pling_r));
|
map(0x05, 0x05).mirror(0x18).r(this, FUNC(abc800_state::pling_r));
|
||||||
map(0x07, 0x07).mirror(0x18).r(ABCBUS_TAG, FUNC(abcbus_slot_device::rst_r));
|
map(0x07, 0x07).mirror(0x18).r(ABCBUS_TAG, FUNC(abcbus_slot_device::rst_r));
|
||||||
map(0x20, 0x23).mirror(0x0c).rw(m_dart, FUNC(z80dart_device::ba_cd_r), FUNC(z80dart_device::ba_cd_w));
|
map(0x20, 0x23).mirror(0x0c).rw(m_dart, FUNC(z80dart_device::ba_cd_r), FUNC(z80dart_device::ba_cd_w));
|
||||||
map(0x31, 0x31).mirror(0x06).r(m_crtc, FUNC(mc6845_device::register_r));
|
map(0x31, 0x31).mirror(0x06).r(m_crtc, FUNC(mc6845_device::register_r));
|
||||||
@ -637,6 +622,7 @@ void abc806_state::abc806_io(address_map &map)
|
|||||||
map(0x03, 0x03).mirror(0xff18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c2_w));
|
map(0x03, 0x03).mirror(0xff18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c2_w));
|
||||||
map(0x04, 0x04).mirror(0xff18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c3_w));
|
map(0x04, 0x04).mirror(0xff18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c3_w));
|
||||||
map(0x05, 0x05).mirror(0xff18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c4_w));
|
map(0x05, 0x05).mirror(0xff18).w(ABCBUS_TAG, FUNC(abcbus_slot_device::c4_w));
|
||||||
|
map(0x05, 0x05).mirror(0xff18).r(this, FUNC(abc800_state::pling_r));
|
||||||
map(0x06, 0x06).mirror(0xff18).w(this, FUNC(abc806_state::hrs_w));
|
map(0x06, 0x06).mirror(0xff18).w(this, FUNC(abc806_state::hrs_w));
|
||||||
map(0x07, 0x07).mirror(0xff18).r(ABCBUS_TAG, FUNC(abcbus_slot_device::rst_r)).w(this, FUNC(abc806_state::hrc_w));
|
map(0x07, 0x07).mirror(0xff18).r(ABCBUS_TAG, FUNC(abcbus_slot_device::rst_r)).w(this, FUNC(abc806_state::hrc_w));
|
||||||
map(0x20, 0x23).mirror(0xff0c).rw(m_dart, FUNC(z80dart_device::ba_cd_r), FUNC(z80dart_device::ba_cd_w));
|
map(0x20, 0x23).mirror(0xff0c).rw(m_dart, FUNC(z80dart_device::ba_cd_r), FUNC(z80dart_device::ba_cd_w));
|
||||||
@ -747,12 +733,6 @@ WRITE_LINE_MEMBER( abc800_state::ctc_z1_w )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE_LINE_MEMBER( abc800_state::ctc_z2_w )
|
|
||||||
{
|
|
||||||
m_dart->rxca_w(state);
|
|
||||||
m_dart->txca_w(state);
|
|
||||||
}
|
|
||||||
|
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
// Z80SIO
|
// Z80SIO
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
@ -1146,31 +1126,22 @@ QUICKLOAD_LOAD_MEMBER( abc800_state, bac )
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
// MACHINE_CONFIG( abc800c )
|
// MACHINE_CONFIG( common )
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
MACHINE_CONFIG_START(abc800c_state::abc800c)
|
MACHINE_CONFIG_START(abc800_state::common)
|
||||||
// basic machine hardware
|
// basic machine hardware
|
||||||
MCFG_DEVICE_ADD(Z80_TAG, Z80, ABC800_X01/2/2)
|
MCFG_DEVICE_ADD(Z80_TAG, Z80, ABC800_X01/2/2)
|
||||||
MCFG_Z80_DAISY_CHAIN(abc800_daisy_chain)
|
MCFG_Z80_DAISY_CHAIN(abc800_daisy_chain)
|
||||||
MCFG_DEVICE_OPCODES_MAP(abc800_m1)
|
MCFG_DEVICE_OPCODES_MAP(abc800_m1)
|
||||||
MCFG_DEVICE_PROGRAM_MAP(abc800c_mem)
|
|
||||||
MCFG_DEVICE_IO_MAP(abc800c_io)
|
|
||||||
|
|
||||||
// video hardware
|
|
||||||
abc800c_video(config);
|
|
||||||
|
|
||||||
// sound hardware
|
|
||||||
SPEAKER(config, "mono").front_center();
|
|
||||||
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
|
|
||||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
|
||||||
|
|
||||||
// peripheral hardware
|
// peripheral hardware
|
||||||
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, ABC800_X01/2/2)
|
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, ABC800_X01/2/2)
|
||||||
MCFG_Z80CTC_INTR_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
MCFG_Z80CTC_INTR_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
||||||
MCFG_Z80CTC_ZC0_CB(WRITELINE(*this, abc800_state, ctc_z0_w))
|
MCFG_Z80CTC_ZC0_CB(WRITELINE(*this, abc800_state, ctc_z0_w))
|
||||||
MCFG_Z80CTC_ZC1_CB(WRITELINE(*this, abc800_state, ctc_z1_w))
|
MCFG_Z80CTC_ZC1_CB(WRITELINE(*this, abc800_state, ctc_z1_w))
|
||||||
MCFG_Z80CTC_ZC2_CB(WRITELINE(*this, abc800_state, ctc_z2_w))
|
MCFG_Z80CTC_ZC2_CB(WRITELINE(Z80DART_TAG, z80dart_device, rxca_w))
|
||||||
|
MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(Z80DART_TAG, z80dart_device, txca_w))
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
|
MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
|
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
|
||||||
@ -1180,7 +1151,7 @@ MACHINE_CONFIG_START(abc800c_state::abc800c)
|
|||||||
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
||||||
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
|
MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
|
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
|
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
|
||||||
@ -1188,7 +1159,7 @@ MACHINE_CONFIG_START(abc800c_state::abc800c)
|
|||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(ABC_KEYBOARD_PORT_TAG, abc_keyboard_port_device, txd_w))
|
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(ABC_KEYBOARD_PORT_TAG, abc_keyboard_port_device, txd_w))
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
||||||
|
|
||||||
MCFG_CASSETTE_ADD("cassette")
|
MCFG_CASSETTE_ADD(CASSETTE_TAG)
|
||||||
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
|
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
||||||
@ -1201,22 +1172,54 @@ MACHINE_CONFIG_START(abc800c_state::abc800c)
|
|||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, dcda_w))
|
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, dcda_w))
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, ctsa_w))
|
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, ctsa_w))
|
||||||
|
|
||||||
MCFG_ABC_KEYBOARD_PORT_ADD(ABC_KEYBOARD_PORT_TAG, "abc800")
|
MCFG_ABC_KEYBOARD_PORT_ADD(ABC_KEYBOARD_PORT_TAG, nullptr)
|
||||||
MCFG_ABC_KEYBOARD_OUT_RX_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxb_w))
|
MCFG_ABC_KEYBOARD_OUT_RX_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxb_w))
|
||||||
MCFG_ABC_KEYBOARD_OUT_TRXC_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxtxcb_w))
|
MCFG_ABC_KEYBOARD_OUT_TRXC_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxtxcb_w))
|
||||||
MCFG_ABC_KEYBOARD_OUT_KEYDOWN_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcdb_w))
|
MCFG_ABC_KEYBOARD_OUT_KEYDOWN_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcdb_w))
|
||||||
|
|
||||||
// ABC bus
|
MCFG_ABCBUS_SLOT_ADD(ABCBUS_TAG, abcbus_cards, nullptr)
|
||||||
MCFG_ABCBUS_SLOT_ADD(ABCBUS_TAG, abcbus_cards, "abc830")
|
|
||||||
|
// sound hardware
|
||||||
|
SPEAKER(config, "mono").front_center();
|
||||||
|
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
|
||||||
|
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||||
|
|
||||||
|
// software list
|
||||||
|
MCFG_SOFTWARE_LIST_ADD("flop_list", "abc800")
|
||||||
|
MCFG_SOFTWARE_LIST_ADD("hdd_list", "abc800_hdd")
|
||||||
|
|
||||||
|
// quickload
|
||||||
|
MCFG_QUICKLOAD_ADD("quickload", abc800_state, bac, "bac", 2)
|
||||||
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
|
//-------------------------------------------------
|
||||||
|
// MACHINE_CONFIG( abc800c )
|
||||||
|
//-------------------------------------------------
|
||||||
|
|
||||||
|
MACHINE_CONFIG_START(abc800c_state::abc800c)
|
||||||
|
common(config);
|
||||||
|
|
||||||
|
// basic machine hardware
|
||||||
|
MCFG_DEVICE_MODIFY(Z80_TAG)
|
||||||
|
MCFG_DEVICE_PROGRAM_MAP(abc800c_mem)
|
||||||
|
MCFG_DEVICE_IO_MAP(abc800c_io)
|
||||||
|
|
||||||
|
// video hardware
|
||||||
|
abc800c_video(config);
|
||||||
|
|
||||||
|
// peripheral hardware
|
||||||
|
MCFG_DEVICE_MODIFY(ABC_KEYBOARD_PORT_TAG)
|
||||||
|
MCFG_SLOT_DEFAULT_OPTION("abc800")
|
||||||
|
MCFG_SLOT_FIXED(true)
|
||||||
|
|
||||||
|
MCFG_DEVICE_MODIFY(ABCBUS_TAG)
|
||||||
|
MCFG_SLOT_DEFAULT_OPTION("abc830")
|
||||||
|
|
||||||
// internal ram
|
// internal ram
|
||||||
MCFG_RAM_ADD(RAM_TAG)
|
MCFG_RAM_ADD(RAM_TAG)
|
||||||
MCFG_RAM_DEFAULT_SIZE("16K")
|
MCFG_RAM_DEFAULT_SIZE("16K")
|
||||||
MCFG_RAM_EXTRA_OPTIONS("32K")
|
MCFG_RAM_EXTRA_OPTIONS("32K")
|
||||||
|
|
||||||
// software list
|
|
||||||
MCFG_SOFTWARE_LIST_ADD("flop_list", "abc800")
|
|
||||||
MCFG_SOFTWARE_LIST_ADD("hdd_list", "abc800_hdd")
|
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
@ -1225,75 +1228,28 @@ MACHINE_CONFIG_END
|
|||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
MACHINE_CONFIG_START(abc800m_state::abc800m)
|
MACHINE_CONFIG_START(abc800m_state::abc800m)
|
||||||
|
common(config);
|
||||||
|
|
||||||
// basic machine hardware
|
// basic machine hardware
|
||||||
MCFG_DEVICE_ADD(Z80_TAG, Z80, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(Z80_TAG)
|
||||||
MCFG_Z80_DAISY_CHAIN(abc800_daisy_chain)
|
|
||||||
MCFG_DEVICE_OPCODES_MAP(abc800_m1)
|
|
||||||
MCFG_DEVICE_PROGRAM_MAP(abc800m_mem)
|
MCFG_DEVICE_PROGRAM_MAP(abc800m_mem)
|
||||||
MCFG_DEVICE_IO_MAP(abc800m_io)
|
MCFG_DEVICE_IO_MAP(abc800m_io)
|
||||||
|
|
||||||
// video hardware
|
// video hardware
|
||||||
abc800m_video(config);
|
abc800m_video(config);
|
||||||
|
|
||||||
// sound hardware
|
|
||||||
SPEAKER(config, "mono").front_center();
|
|
||||||
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
|
|
||||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
|
||||||
|
|
||||||
// peripheral hardware
|
// peripheral hardware
|
||||||
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(ABC_KEYBOARD_PORT_TAG)
|
||||||
MCFG_Z80CTC_INTR_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
MCFG_SLOT_DEFAULT_OPTION("abc800")
|
||||||
MCFG_Z80CTC_ZC0_CB(WRITELINE(*this, abc800_state, ctc_z0_w))
|
MCFG_SLOT_FIXED(true)
|
||||||
MCFG_Z80CTC_ZC1_CB(WRITELINE(*this, abc800_state, ctc_z1_w))
|
|
||||||
MCFG_Z80CTC_ZC2_CB(WRITELINE(*this, abc800_state, ctc_z2_w))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(ABCBUS_TAG)
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
|
MCFG_SLOT_DEFAULT_OPTION("abc830")
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
|
|
||||||
MCFG_Z80DART_OUT_RTSA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
|
|
||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
|
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
|
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
|
|
||||||
MCFG_Z80DART_OUT_RTSA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
|
|
||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(ABC_KEYBOARD_PORT_TAG, abc_keyboard_port_device, txd_w))
|
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
|
|
||||||
MCFG_CASSETTE_ADD("cassette")
|
|
||||||
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
|
||||||
MCFG_RS232_RXD_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxa_w))
|
|
||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcda_w))
|
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, ctsa_w))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
|
||||||
MCFG_RS232_RXD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, rxa_w))
|
|
||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, dcda_w))
|
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, ctsa_w))
|
|
||||||
|
|
||||||
MCFG_ABC_KEYBOARD_PORT_ADD(ABC_KEYBOARD_PORT_TAG, "abc800")
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_RX_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxb_w))
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_TRXC_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxtxcb_w))
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_KEYDOWN_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcdb_w))
|
|
||||||
|
|
||||||
// ABC bus
|
|
||||||
MCFG_ABCBUS_SLOT_ADD(ABCBUS_TAG, abcbus_cards, "abc830")
|
|
||||||
|
|
||||||
// internal ram
|
// internal ram
|
||||||
MCFG_RAM_ADD(RAM_TAG)
|
MCFG_RAM_ADD(RAM_TAG)
|
||||||
MCFG_RAM_DEFAULT_SIZE("16K")
|
MCFG_RAM_DEFAULT_SIZE("16K")
|
||||||
MCFG_RAM_EXTRA_OPTIONS("32K")
|
MCFG_RAM_EXTRA_OPTIONS("32K")
|
||||||
|
|
||||||
// software list
|
|
||||||
MCFG_SOFTWARE_LIST_ADD("flop_list", "abc800")
|
|
||||||
MCFG_SOFTWARE_LIST_ADD("hdd_list", "abc800_hdd")
|
|
||||||
|
|
||||||
MCFG_QUICKLOAD_ADD("quickload", abc800_state, bac, "bac", 2)
|
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
@ -1302,74 +1258,30 @@ MACHINE_CONFIG_END
|
|||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
MACHINE_CONFIG_START(abc802_state::abc802)
|
MACHINE_CONFIG_START(abc802_state::abc802)
|
||||||
|
common(config);
|
||||||
|
|
||||||
// basic machine hardware
|
// basic machine hardware
|
||||||
MCFG_DEVICE_ADD(Z80_TAG, Z80, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(Z80_TAG)
|
||||||
MCFG_Z80_DAISY_CHAIN(abc800_daisy_chain)
|
|
||||||
MCFG_DEVICE_OPCODES_MAP(abc800_m1)
|
|
||||||
MCFG_DEVICE_PROGRAM_MAP(abc802_mem)
|
MCFG_DEVICE_PROGRAM_MAP(abc802_mem)
|
||||||
MCFG_DEVICE_IO_MAP(abc802_io)
|
MCFG_DEVICE_IO_MAP(abc802_io)
|
||||||
|
|
||||||
// video hardware
|
// video hardware
|
||||||
abc802_video(config);
|
abc802_video(config);
|
||||||
|
|
||||||
// sound hardware
|
|
||||||
SPEAKER(config, "mono").front_center();
|
|
||||||
MCFG_DEVICE_ADD(DISCRETE_TAG, DISCRETE, abc800_discrete)
|
|
||||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
|
||||||
|
|
||||||
// peripheral hardware
|
// peripheral hardware
|
||||||
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(Z80DART_TAG)
|
||||||
MCFG_Z80CTC_INTR_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
MCFG_Z80CTC_ZC0_CB(WRITELINE(*this, abc800_state, ctc_z0_w))
|
|
||||||
MCFG_Z80CTC_ZC1_CB(WRITELINE(*this, abc800_state, ctc_z1_w))
|
|
||||||
MCFG_Z80CTC_ZC2_CB(WRITELINE(*this, abc800_state, ctc_z2_w))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
|
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
|
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
|
|
||||||
MCFG_Z80DART_OUT_RTSA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
|
|
||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
|
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
|
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
|
|
||||||
MCFG_Z80DART_OUT_RTSA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
|
|
||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(ABC_KEYBOARD_PORT_TAG, abc_keyboard_port_device, txd_w))
|
|
||||||
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc802_state, lrs_w))
|
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc802_state, lrs_w))
|
||||||
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc802_state, mux80_40_w))
|
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc802_state, mux80_40_w))
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
|
|
||||||
MCFG_CASSETTE_ADD("cassette")
|
MCFG_DEVICE_MODIFY(ABC_KEYBOARD_PORT_TAG)
|
||||||
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
|
MCFG_SLOT_DEFAULT_OPTION("abc55")
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
MCFG_DEVICE_MODIFY(ABCBUS_TAG)
|
||||||
MCFG_RS232_RXD_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxa_w))
|
MCFG_SLOT_DEFAULT_OPTION("abc834")
|
||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcda_w))
|
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, ctsa_w))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
|
||||||
MCFG_RS232_RXD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, rxa_w))
|
|
||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, dcda_w))
|
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, ctsa_w))
|
|
||||||
|
|
||||||
MCFG_ABC_KEYBOARD_PORT_ADD(ABC_KEYBOARD_PORT_TAG, "abc55")
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_RX_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxb_w))
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_TRXC_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxtxcb_w))
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_KEYDOWN_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcdb_w))
|
|
||||||
|
|
||||||
// ABC bus
|
|
||||||
MCFG_ABCBUS_SLOT_ADD(ABCBUS_TAG, abcbus_cards, "abc834")
|
|
||||||
|
|
||||||
// internal ram
|
// internal ram
|
||||||
MCFG_RAM_ADD(RAM_TAG)
|
MCFG_RAM_ADD(RAM_TAG)
|
||||||
MCFG_RAM_DEFAULT_SIZE("64K")
|
MCFG_RAM_DEFAULT_SIZE("64K")
|
||||||
|
|
||||||
// software list
|
|
||||||
//MCFG_SOFTWARE_LIST_ADD("flop_list", "abc802")
|
|
||||||
MCFG_SOFTWARE_LIST_ADD("hdd_list", "abc800_hdd")
|
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
@ -1378,10 +1290,10 @@ MACHINE_CONFIG_END
|
|||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
MACHINE_CONFIG_START(abc806_state::abc806)
|
MACHINE_CONFIG_START(abc806_state::abc806)
|
||||||
|
common(config);
|
||||||
|
|
||||||
// basic machine hardware
|
// basic machine hardware
|
||||||
MCFG_DEVICE_ADD(Z80_TAG, Z80, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(Z80_TAG)
|
||||||
MCFG_Z80_DAISY_CHAIN(abc800_daisy_chain)
|
|
||||||
MCFG_DEVICE_OPCODES_MAP(abc800_m1)
|
|
||||||
MCFG_DEVICE_PROGRAM_MAP(abc806_mem)
|
MCFG_DEVICE_PROGRAM_MAP(abc806_mem)
|
||||||
MCFG_DEVICE_IO_MAP(abc806_io)
|
MCFG_DEVICE_IO_MAP(abc806_io)
|
||||||
|
|
||||||
@ -1391,46 +1303,14 @@ MACHINE_CONFIG_START(abc806_state::abc806)
|
|||||||
// peripheral hardware
|
// peripheral hardware
|
||||||
MCFG_E0516_ADD(E0516_TAG, ABC806_X02)
|
MCFG_E0516_ADD(E0516_TAG, ABC806_X02)
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, ABC800_X01/2/2)
|
MCFG_DEVICE_MODIFY(Z80DART_TAG)
|
||||||
MCFG_Z80CTC_INTR_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
MCFG_Z80CTC_ZC0_CB(WRITELINE(*this, abc800_state, ctc_z0_w))
|
|
||||||
MCFG_Z80CTC_ZC1_CB(WRITELINE(*this, abc800_state, ctc_z1_w))
|
|
||||||
MCFG_Z80CTC_ZC2_CB(WRITELINE(*this, abc800_state, ctc_z2_w))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
|
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
|
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
|
|
||||||
MCFG_Z80DART_OUT_RTSA_CB(WRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
|
|
||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(*this, abc800_state, sio_txdb_w))
|
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
|
|
||||||
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
|
|
||||||
MCFG_Z80DART_OUT_DTRA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
|
|
||||||
MCFG_Z80DART_OUT_RTSA_CB(WRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
|
|
||||||
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(ABC_KEYBOARD_PORT_TAG, abc_keyboard_port_device, txd_w))
|
|
||||||
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc806_state, keydtr_w))
|
MCFG_Z80DART_OUT_DTRB_CB(WRITELINE(*this, abc806_state, keydtr_w))
|
||||||
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
MCFG_DEVICE_MODIFY(ABC_KEYBOARD_PORT_TAG)
|
||||||
MCFG_RS232_RXD_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxa_w))
|
MCFG_SLOT_DEFAULT_OPTION("abc77")
|
||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcda_w))
|
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, ctsa_w))
|
|
||||||
|
|
||||||
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
MCFG_DEVICE_MODIFY(ABCBUS_TAG)
|
||||||
MCFG_RS232_RXD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, rxa_w))
|
MCFG_SLOT_DEFAULT_OPTION("abc832")
|
||||||
MCFG_RS232_DCD_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, dcda_w))
|
|
||||||
MCFG_RS232_CTS_HANDLER(WRITELINE(Z80SIO_TAG, z80dart_device, ctsa_w))
|
|
||||||
|
|
||||||
MCFG_ABC_KEYBOARD_PORT_ADD(ABC_KEYBOARD_PORT_TAG, "abc77")
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_RX_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxb_w))
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_TRXC_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, rxtxcb_w))
|
|
||||||
MCFG_ABC_KEYBOARD_OUT_KEYDOWN_HANDLER(WRITELINE(Z80DART_TAG, z80dart_device, dcdb_w))
|
|
||||||
|
|
||||||
// ABC bus
|
|
||||||
MCFG_ABCBUS_SLOT_ADD(ABCBUS_TAG, abcbus_cards, "abc832")
|
|
||||||
|
|
||||||
// internal ram
|
// internal ram
|
||||||
MCFG_RAM_ADD(RAM_TAG)
|
MCFG_RAM_ADD(RAM_TAG)
|
||||||
@ -1438,8 +1318,7 @@ MACHINE_CONFIG_START(abc806_state::abc806)
|
|||||||
MCFG_RAM_EXTRA_OPTIONS("512K")
|
MCFG_RAM_EXTRA_OPTIONS("512K")
|
||||||
|
|
||||||
// software list
|
// software list
|
||||||
MCFG_SOFTWARE_LIST_ADD("flop_list", "abc806")
|
MCFG_SOFTWARE_LIST_ADD("flop_list2", "abc806")
|
||||||
MCFG_SOFTWARE_LIST_ADD("hdd_list", "abc800_hdd")
|
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
@ -1716,7 +1595,7 @@ ROM_END
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS
|
// YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS
|
||||||
COMP( 1981, abc800c, 0, 0, abc800c, abc800, abc800c_state, 0, "Luxor Datorer AB", "ABC 800 C/HR", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE )
|
COMP( 1981, abc800c, 0, 0, abc800c, abc800, abc800c_state, 0, "Luxor Datorer AB", "ABC 800 C/HR", MACHINE_SUPPORTS_SAVE )
|
||||||
COMP( 1981, abc800m, abc800c, 0, abc800m, abc800, abc800m_state, 0, "Luxor Datorer AB", "ABC 800 M/HR", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE )
|
COMP( 1981, abc800m, abc800c, 0, abc800m, abc800, abc800m_state, 0, "Luxor Datorer AB", "ABC 800 M/HR", MACHINE_SUPPORTS_SAVE )
|
||||||
COMP( 1983, abc802, 0, 0, abc802, abc802, abc802_state, 0, "Luxor Datorer AB", "ABC 802", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE )
|
COMP( 1983, abc802, 0, 0, abc802, abc802, abc802_state, 0, "Luxor Datorer AB", "ABC 802", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE )
|
||||||
COMP( 1983, abc806, 0, 0, abc806, abc806, abc806_state, 0, "Luxor Datorer AB", "ABC 806", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE )
|
COMP( 1983, abc806, 0, 0, abc806, abc806, abc806_state, 0, "Luxor Datorer AB", "ABC 806", MACHINE_SUPPORTS_SAVE )
|
||||||
|
@ -21,6 +21,8 @@
|
|||||||
#include "sound/discrete.h"
|
#include "sound/discrete.h"
|
||||||
#include "video/mc6845.h"
|
#include "video/mc6845.h"
|
||||||
#include "video/saa5050.h"
|
#include "video/saa5050.h"
|
||||||
|
#include "softlist.h"
|
||||||
|
#include "speaker.h"
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// MACROS / CONSTANTS
|
// MACROS / CONSTANTS
|
||||||
@ -55,6 +57,7 @@
|
|||||||
#define Z80SIO_TAG "z80sio"
|
#define Z80SIO_TAG "z80sio"
|
||||||
#define Z80DART_TAG "z80dart"
|
#define Z80DART_TAG "z80dart"
|
||||||
#define DISCRETE_TAG "discrete"
|
#define DISCRETE_TAG "discrete"
|
||||||
|
#define CASSETTE_TAG "cassette"
|
||||||
#define RS232_A_TAG "rs232a"
|
#define RS232_A_TAG "rs232a"
|
||||||
#define RS232_B_TAG "rs232b"
|
#define RS232_B_TAG "rs232b"
|
||||||
#define ABC_KEYBOARD_PORT_TAG "kb"
|
#define ABC_KEYBOARD_PORT_TAG "kb"
|
||||||
@ -75,8 +78,8 @@ public:
|
|||||||
m_ctc(*this, Z80CTC_TAG),
|
m_ctc(*this, Z80CTC_TAG),
|
||||||
m_dart(*this, Z80DART_TAG),
|
m_dart(*this, Z80DART_TAG),
|
||||||
m_sio(*this, Z80SIO_TAG),
|
m_sio(*this, Z80SIO_TAG),
|
||||||
m_discrete(*this, "discrete"),
|
m_discrete(*this, DISCRETE_TAG),
|
||||||
m_cassette(*this, "cassette"),
|
m_cassette(*this, CASSETTE_TAG),
|
||||||
m_ram(*this, RAM_TAG),
|
m_ram(*this, RAM_TAG),
|
||||||
m_rom(*this, Z80_TAG),
|
m_rom(*this, Z80_TAG),
|
||||||
m_video_ram(*this, "video_ram"),
|
m_video_ram(*this, "video_ram"),
|
||||||
@ -124,7 +127,6 @@ public:
|
|||||||
DECLARE_WRITE8_MEMBER( hrc_w );
|
DECLARE_WRITE8_MEMBER( hrc_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( ctc_z0_w );
|
DECLARE_WRITE_LINE_MEMBER( ctc_z0_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( ctc_z1_w );
|
DECLARE_WRITE_LINE_MEMBER( ctc_z1_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( ctc_z2_w );
|
|
||||||
DECLARE_WRITE_LINE_MEMBER( sio_txdb_w );
|
DECLARE_WRITE_LINE_MEMBER( sio_txdb_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( sio_dtrb_w );
|
DECLARE_WRITE_LINE_MEMBER( sio_dtrb_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( sio_rtsb_w );
|
DECLARE_WRITE_LINE_MEMBER( sio_rtsb_w );
|
||||||
@ -156,6 +158,7 @@ public:
|
|||||||
// timers
|
// timers
|
||||||
emu_timer *m_ctc_timer;
|
emu_timer *m_ctc_timer;
|
||||||
emu_timer *m_cassette_timer;
|
emu_timer *m_cassette_timer;
|
||||||
|
void common(machine_config &config);
|
||||||
void abc800_m1(address_map &map);
|
void abc800_m1(address_map &map);
|
||||||
void abc800c_io(address_map &map);
|
void abc800c_io(address_map &map);
|
||||||
void abc800m_io(address_map &map);
|
void abc800m_io(address_map &map);
|
||||||
@ -243,12 +246,10 @@ public:
|
|||||||
virtual void machine_reset() override;
|
virtual void machine_reset() override;
|
||||||
|
|
||||||
virtual void video_start() override;
|
virtual void video_start() override;
|
||||||
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
|
||||||
|
|
||||||
void bankswitch();
|
void bankswitch();
|
||||||
|
|
||||||
DECLARE_READ8_MEMBER( m1_r ) override;
|
DECLARE_READ8_MEMBER( m1_r ) override;
|
||||||
DECLARE_READ8_MEMBER( pling_r );
|
|
||||||
DECLARE_WRITE_LINE_MEMBER( lrs_w );
|
DECLARE_WRITE_LINE_MEMBER( lrs_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( mux80_40_w );
|
DECLARE_WRITE_LINE_MEMBER( mux80_40_w );
|
||||||
DECLARE_WRITE_LINE_MEMBER( vs_w );
|
DECLARE_WRITE_LINE_MEMBER( vs_w );
|
||||||
|
@ -186,19 +186,6 @@ void abc802_state::video_start()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//-------------------------------------------------
|
|
||||||
// SCREEN_UPDATE( abc802 )
|
|
||||||
//-------------------------------------------------
|
|
||||||
|
|
||||||
uint32_t abc802_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
|
||||||
{
|
|
||||||
// draw text
|
|
||||||
m_crtc->screen_update(screen, bitmap, cliprect);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
// MACHINE_CONFIG_START( abc802_video )
|
// MACHINE_CONFIG_START( abc802_video )
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
@ -211,7 +198,7 @@ MACHINE_CONFIG_START(abc802_state::abc802_video)
|
|||||||
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, abc802_state, vs_w))
|
MCFG_MC6845_OUT_VSYNC_CB(WRITELINE(*this, abc802_state, vs_w))
|
||||||
|
|
||||||
MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::amber())
|
MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::amber())
|
||||||
MCFG_SCREEN_UPDATE_DRIVER(abc802_state, screen_update)
|
MCFG_SCREEN_UPDATE_DEVICE(MC6845_TAG, mc6845_device, screen_update)
|
||||||
MCFG_SCREEN_RAW_PARAMS(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xf0)
|
MCFG_SCREEN_RAW_PARAMS(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xf0)
|
||||||
|
|
||||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||||
|
Loading…
Reference in New Issue
Block a user