maygay m1a, MCU bones, commuication not hooked up yet.

This commit is contained in:
David Haywood 2016-08-15 18:00:38 +01:00
parent 77e0098cf4
commit ee236be2e9
3 changed files with 68 additions and 4 deletions

View File

@ -447,6 +447,53 @@ static ADDRESS_MAP_START( m1_memmap, AS_PROGRAM, 8, maygay1b_state )
ADDRESS_MAP_END
WRITE8_MEMBER(maygay1b_state::mcu_port0_w)
{
logerror("%s: mcu_port0_w %02x\n",machine().describe_context(),data);
}
WRITE8_MEMBER(maygay1b_state::mcu_port1_w)
{
logerror("%s: mcu_port1_w %02x\n",machine().describe_context(),data);
}
WRITE8_MEMBER(maygay1b_state::mcu_port2_w)
{
logerror("%s: mcu_port2_w %02x\n",machine().describe_context(),data);
}
WRITE8_MEMBER(maygay1b_state::mcu_port3_w)
{
logerror("%s: mcu_port3_w %02x\n",machine().describe_context(),data);
}
READ8_MEMBER(maygay1b_state::mcu_port0_r)
{
logerror("%s: mcu_port0_r\n", machine().describe_context());
return rand();
}
READ8_MEMBER(maygay1b_state::mcu_port1_r)
{
logerror("%s: mcu_port1_r\n", machine().describe_context());
return rand();
}
static ADDRESS_MAP_START( maygay_mcu_map, AS_PROGRAM, 8, maygay1b_state )
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( maygay_mcu_io, AS_IO, 8, maygay1b_state )
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE( mcu_port0_r, mcu_port0_w )
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE( mcu_port1_r, mcu_port1_w )
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_WRITE( mcu_port2_w )
AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_WRITE( mcu_port3_w )
ADDRESS_MAP_END
/*************************************************
*
* NEC uPD7759 handling (used as OKI replacement)
@ -600,6 +647,12 @@ MACHINE_CONFIG_START( maygay_m1, maygay1b_state )
MCFG_CPU_ADD("maincpu", M6809, M1_MASTER_CLOCK/2)
MCFG_CPU_PROGRAM_MAP(m1_memmap)
MCFG_CPU_ADD("mcu", I80C51, 2000000) // EP840034.A-P-80C51AVW
MCFG_CPU_PROGRAM_MAP(maygay_mcu_map)
MCFG_CPU_IO_MAP(maygay_mcu_io)
// MCFG_MCS51_SERIAL_TX_CB(WRITE8(maygay1b_state, mcs51_tx_callback))
MCFG_MC68681_ADD("duart68681", M1_DUART_CLOCK)
MCFG_MC68681_IRQ_CALLBACK(WRITELINE(maygay1b_state, duart_irq_handler))
MCFG_MC68681_INPORT_CALLBACK(READ8(maygay1b_state, m1_duart_r))
@ -625,10 +678,13 @@ MACHINE_CONFIG_START( maygay_m1, maygay1b_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MCFG_TIMER_DRIVER_ADD_PERIODIC("nmitimer", maygay1b_state, maygay1b_nmitimer_callback, attotime::from_hz(75)) // freq?
MCFG_DEVICE_ADD("i8279", I8279, M1_MASTER_CLOCK/4) // unknown clock
MCFG_I8279_OUT_SL_CB(WRITE8(maygay1b_state, scanlines_w)) // scan SL lines
MCFG_I8279_OUT_DISP_CB(WRITE8(maygay1b_state, lamp_data_w)) // display A&B
MCFG_I8279_IN_RL_CB(READ8(maygay1b_state, kbd_r)) // kbd RL lines
// there is no 2nd u8279!
MCFG_DEVICE_ADD("i8279_2", I8279, M1_MASTER_CLOCK/4) // unknown clock
MCFG_I8279_OUT_DISP_CB(WRITE8(maygay1b_state, lamp_data_2_w)) // display A&B

View File

@ -3334,8 +3334,8 @@ GAME( 1994, m1luxorc ,m1luxor ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "G
/* missing or different sound system? */
ROM_START( m1cashc ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "cash classic sa1-082 5p.bin", 0x0000, 0x010000, CRC(42d68675) SHA1(ed191e03bc7b42ae1884657b4559588eeedbdf31) ) m1_cashc_sound ROM_END
ROM_START( m1cashca ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "cash classic 2p sa1-083.bin", 0x0000, 0x010000, CRC(36a45c0d) SHA1(51eb91e42297894ae575502903833e219ac5add9) ) m1_cashc_sound ROM_END
ROM_START( m1cashc ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "cash classic sa1-082 5p.bin", 0x0000, 0x010000, CRC(42d68675) SHA1(ed191e03bc7b42ae1884657b4559588eeedbdf31) ) m1_cashc_sound ROM_END_M1A_MCU
ROM_START( m1cashca ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "cash classic 2p sa1-083.bin", 0x0000, 0x010000, CRC(36a45c0d) SHA1(51eb91e42297894ae575502903833e219ac5add9) ) m1_cashc_sound ROM_END_M1A_MCU
GAME( 1994, m1cashc ,0 ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Cash Classic (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
GAME( 1994, m1cashca ,m1cashc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Cash Classic (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
@ -3382,6 +3382,6 @@ ROM_START( m1atunk )
ROM_LOAD( "grm_pl_2.bin", 0x0000, 0x010000, CRC(a26a6345) SHA1(70ededa58b92d32e0968bb326d6579146c3bd6cb) )
ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00 )
ROM_END
ROM_END_M1A_MCU
GAME( 19??, m1atunk ,0 ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Avantime?", "Random Runner (Avantime?)",GAME_FLAGS )

View File

@ -23,7 +23,7 @@
#include "sound/okim6376.h"
#include "machine/nvram.h"
#include "sound/upd7759.h"
#include "cpu/mcs51/mcs51.h"
#include "sound/okim6295.h"
class maygay1b_state : public driver_device
@ -32,6 +32,7 @@ public:
maygay1b_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_mcu(*this, "mcu"),
m_vfd(*this, "vfd"),
m_ay(*this, "aysnd"),
m_msm6376(*this, "msm6376"),
@ -53,6 +54,7 @@ public:
{}
required_device<cpu_device> m_maincpu;
required_device<i80c51_device> m_mcu;
optional_device<s16lf01_t> m_vfd;
required_device<ay8910_device> m_ay;
optional_device<okim6376_device> m_msm6376;
@ -118,6 +120,12 @@ public:
DECLARE_WRITE8_MEMBER(nec_bank1_w);
DECLARE_WRITE_LINE_MEMBER(duart_irq_handler);
DECLARE_READ8_MEMBER(m1_duart_r);
DECLARE_WRITE8_MEMBER(mcu_port0_w);
DECLARE_WRITE8_MEMBER(mcu_port1_w);
DECLARE_WRITE8_MEMBER(mcu_port2_w);
DECLARE_WRITE8_MEMBER(mcu_port3_w);
DECLARE_READ8_MEMBER(mcu_port0_r);
DECLARE_READ8_MEMBER(mcu_port1_r);
DECLARE_DRIVER_INIT(m1);
DECLARE_DRIVER_INIT(m1common);
DECLARE_DRIVER_INIT(m1nec);