mirror of
https://github.com/holub/mame
synced 2025-06-05 12:26:35 +03:00
abc80: Added keyboard PROM, and memory card IEC/Printer ROMs. [Curt Coder]
This commit is contained in:
parent
6a32d4bb44
commit
b58b0aa993
@ -81,13 +81,14 @@ ROM_START( abc_dos )
|
||||
ROMX_LOAD( "ufddos20.3d", 0x0000, 0x1000, CRC(69b09c0b) SHA1(403997a06cf6495b8fa13dc74eff6a64ef7aa53e), ROM_BIOS(2) )
|
||||
|
||||
ROM_REGION( 0x400, "iec", 0 )
|
||||
ROM_LOAD( "iec.4b", 0x000, 0x400, NO_DUMP )
|
||||
ROM_LOAD( "abc80-iec-option-4027-ver1.02.4b", 0x000, 0x400, CRC(b4998599) SHA1(1d46d1334599c31025cc8481daa4d38d470a7b48) )
|
||||
|
||||
ROM_REGION( 0x400, "opt", 0 )
|
||||
ROM_LOAD( "spare.4a", 0x000, 0x400, NO_DUMP )
|
||||
ROM_LOAD_OPTIONAL( "spare.4a", 0x000, 0x400, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x400, "prn", 0 )
|
||||
ROM_LOAD( "printer.3b", 0x000, 0x400, NO_DUMP )
|
||||
ROM_LOAD( "abc80-printer-option-9704.3b", 0x000, 0x400, CRC(f2f0d808) SHA1(6355495542e77411137426effbe1059532735bb2) )
|
||||
ROM_LOAD( "abc80-printer-option-9704-0.1.3b", 0x000, 0x400, CRC(5bfaee54) SHA1(fc62d8c27c69c7ca0870faa922ccd7aa1b650ecf) )
|
||||
ROM_END
|
||||
|
||||
|
||||
|
@ -539,7 +539,7 @@ void abc80_state::abc80(machine_config &config)
|
||||
ABCBUS_SLOT(config, m_bus, XTAL(11'980'800)/2/2, abc80_cards, "abcexp");
|
||||
|
||||
RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr);
|
||||
generic_keyboard_device &keyboard(GENERIC_KEYBOARD(config, KEYBOARD_TAG, 0));
|
||||
generic_keyboard_device &keyboard(GENERIC_KEYBOARD(config, "generic_kb", 0));
|
||||
keyboard.set_keyboard_callback(FUNC(abc80_state::kbd_w));
|
||||
|
||||
QUICKLOAD(config, "quickload", "bac", attotime::from_seconds(2)).set_load_callback(FUNC(abc80_state::quickload_cb));
|
||||
|
@ -72,7 +72,7 @@ public:
|
||||
m_csg(*this, SN76477_TAG),
|
||||
m_cassette(*this, "cassette"),
|
||||
m_bus(*this, "bus"),
|
||||
m_kb(*this, ABC80_KEYBOARD_TAG),
|
||||
m_kb(*this, KEYBOARD_TAG),
|
||||
m_ram(*this, RAM_TAG),
|
||||
m_rs232(*this, RS232_TAG),
|
||||
m_palette(*this, "palette"),
|
||||
|
@ -90,7 +90,7 @@ Notes:
|
||||
// DEVICE DEFINITIONS
|
||||
//**************************************************************************
|
||||
|
||||
DEFINE_DEVICE_TYPE(ABC80_KEYBOARD, abc80_keyboard_device, "abc80kb", "ABC-80 Keyboard")
|
||||
DEFINE_DEVICE_TYPE(ABC80_KEYBOARD, abc80_keyboard_device, "abc80kb", "ABC 80 Keyboard")
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -99,7 +99,10 @@ DEFINE_DEVICE_TYPE(ABC80_KEYBOARD, abc80_keyboard_device, "abc80kb", "ABC-80 Key
|
||||
|
||||
ROM_START( abc80_keyboard )
|
||||
ROM_REGION( 0x400, I8048_TAG, 0 )
|
||||
ROM_LOAD( "053.z5", 0x0000, 0x0400, NO_DUMP )
|
||||
ROM_LOAD( "30293b-013.z6", 0x000, 0x400, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x200, "prom", 0 )
|
||||
ROM_LOAD( "053.z5", 0x000, 0x200, CRC(add80359) SHA1(f88be4918bfd6230b73335c6a75a3010d33b2caa) )
|
||||
ROM_END
|
||||
|
||||
|
||||
@ -114,10 +117,20 @@ const tiny_rom_entry *abc80_keyboard_device::device_rom_region() const
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// ADDRESS_MAP( abc80_keyboard_io )
|
||||
// ADDRESS_MAP( keyboard_mem )
|
||||
//-------------------------------------------------
|
||||
|
||||
void abc80_keyboard_device::abc80_keyboard_io(address_map &map)
|
||||
void abc80_keyboard_device::keyboard_mem(address_map &map)
|
||||
{
|
||||
map(0x000, 0x3ff).rom().region(I8048_TAG, 0);
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// ADDRESS_MAP( keyboard_io )
|
||||
//-------------------------------------------------
|
||||
|
||||
void abc80_keyboard_device::keyboard_io(address_map &map)
|
||||
{
|
||||
}
|
||||
|
||||
@ -129,7 +142,8 @@ void abc80_keyboard_device::abc80_keyboard_io(address_map &map)
|
||||
void abc80_keyboard_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
I8048(config, m_maincpu, 4000000);
|
||||
m_maincpu->set_addrmap(AS_IO, &abc80_keyboard_device::abc80_keyboard_io);
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &abc80_keyboard_device::keyboard_mem);
|
||||
m_maincpu->set_addrmap(AS_IO, &abc80_keyboard_device::keyboard_io);
|
||||
m_maincpu->set_disable();
|
||||
}
|
||||
|
||||
@ -138,7 +152,7 @@ void abc80_keyboard_device::device_add_mconfig(machine_config &config)
|
||||
// INPUT_PORTS( abc80_keyboard )
|
||||
//-------------------------------------------------
|
||||
|
||||
INPUT_PORTS_START( abc80_keyboard )
|
||||
static INPUT_PORTS_START( abc80_keyboard )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
@ -12,13 +12,6 @@
|
||||
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// MACROS / CONSTANTS
|
||||
//**************************************************************************
|
||||
|
||||
#define ABC80_KEYBOARD_TAG "abc80kb"
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// TYPE DEFINITIONS
|
||||
//**************************************************************************
|
||||
@ -35,7 +28,9 @@ public:
|
||||
|
||||
uint8_t data_r();
|
||||
|
||||
void abc80_keyboard_io(address_map &map);
|
||||
void keyboard_mem(address_map &map);
|
||||
void keyboard_io(address_map &map);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_start() override;
|
||||
|
Loading…
Reference in New Issue
Block a user