mirror of
https://github.com/holub/mame
synced 2025-06-06 12:53:46 +03:00
(MESS) mackbd: dumped correct ROM, prep for actual emulation [Lord Nightmare, R. Belmont]
This commit is contained in:
parent
fb31a90efb
commit
dac144a74b
@ -44,6 +44,8 @@
|
||||
---x Data to Mac
|
||||
|
||||
The T1 line is "Option".
|
||||
|
||||
There is a later M0110 keyboard version which uses a GI PIC1657; we do not have a dump of that version.
|
||||
*/
|
||||
|
||||
|
||||
@ -63,10 +65,12 @@
|
||||
|
||||
const device_type MACKBD = &device_creator<mackbd_device>;
|
||||
|
||||
// typed in from the listing in the above-cited "IM Underground", but the PDF on Bitsavers is missing a page :(
|
||||
ROM_START( mackbd )
|
||||
ROM_REGION(0x400, MACKBD_CPU_TAG, 0)
|
||||
ROM_LOAD( "mackbd.bin", 0x0000, 0x0400, BAD_DUMP CRC(c9af25a5) SHA1(4a6f81da036b071d2ea090cbde78e11c43a3b3b3) )
|
||||
ROM_REGION(0x800, MACKBD_CPU_TAG, 0)
|
||||
// original Mac keyboard and optional external keypad
|
||||
ROM_LOAD( "ip8021h_2173.bin", 0x000000, 0x000400, CRC(5fbd9a94) SHA1(32a3b58afb445a8675b12a4de3aec2fa00c99222) )
|
||||
// Mac Plus all-in-one keyboard (not yet supported)
|
||||
ROM_LOAD( "341-0332-a.bin", 0x000400, 0x000400, CRC(6554f5b6) SHA1(a80404a122d74721cda13b285c412057c2c78bd7) )
|
||||
ROM_END
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -74,7 +78,15 @@ ROM_END
|
||||
//-------------------------------------------------
|
||||
|
||||
static ADDRESS_MAP_START( mackbd_map, AS_PROGRAM, 8, mackbd_device )
|
||||
// AM_RANGE(0x0000, 0x03ff) AM_ROM AM_REGION(MACKBD_CPU_TAG, 0)
|
||||
AM_RANGE(0x0000, 0x03ff) AM_ROM AM_REGION(MACKBD_CPU_TAG, 0)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( mackbd_io_map, AS_IO, 8, mackbd_device )
|
||||
AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(p0_r)
|
||||
AM_RANGE(0x2f, 0x2f) AM_WRITE(p0_w)
|
||||
AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_READWRITE(p1_r, p1_w)
|
||||
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(p2_r, p2_w)
|
||||
AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(t1_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -84,7 +96,7 @@ ADDRESS_MAP_END
|
||||
static MACHINE_CONFIG_FRAGMENT( mackbd )
|
||||
MCFG_CPU_ADD(MACKBD_CPU_TAG, I8021, 100000) // "100,000 operations per second"?
|
||||
MCFG_CPU_PROGRAM_MAP(mackbd_map)
|
||||
MCFG_DEVICE_DISABLE()
|
||||
MCFG_CPU_IO_MAP(mackbd_io_map)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
@ -140,3 +152,35 @@ void mackbd_device::device_config_complete()
|
||||
m_shortname = "mackbd";
|
||||
}
|
||||
|
||||
READ8_MEMBER(mackbd_device::p0_r)
|
||||
{
|
||||
return 0x20; // 0x20 indicates we're a keyboard rather than the keypad
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(mackbd_device::p0_w)
|
||||
{
|
||||
}
|
||||
|
||||
READ8_MEMBER(mackbd_device::p1_r)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(mackbd_device::p1_w)
|
||||
{
|
||||
}
|
||||
|
||||
READ8_MEMBER(mackbd_device::p2_r)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(mackbd_device::p2_w)
|
||||
{
|
||||
}
|
||||
|
||||
READ8_MEMBER(mackbd_device::t1_r)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -38,6 +38,14 @@ public:
|
||||
// construction/destruction
|
||||
mackbd_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
DECLARE_READ8_MEMBER(p0_r);
|
||||
DECLARE_WRITE8_MEMBER(p0_w);
|
||||
DECLARE_READ8_MEMBER(p1_r);
|
||||
DECLARE_WRITE8_MEMBER(p1_w);
|
||||
DECLARE_READ8_MEMBER(p2_r);
|
||||
DECLARE_WRITE8_MEMBER(p2_w);
|
||||
DECLARE_READ8_MEMBER(t1_r);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_start();
|
||||
|
Loading…
Reference in New Issue
Block a user