mirror of
https://github.com/holub/mame
synced 2025-05-06 06:14:45 +03:00
vip2000: Some more progress (nw)
This commit is contained in:
parent
ec4ecd5ee8
commit
15f015d3bd
@ -524,6 +524,7 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_blit_ram(*this, "blit_ram"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_slavecpu(*this, "slavecpu"),
|
||||
m_palette(*this, "palette") { }
|
||||
|
||||
required_shared_ptr<uint16_t> m_blit_ram;
|
||||
@ -532,7 +533,16 @@ public:
|
||||
INTERRUPT_GEN_MEMBER(vblank_irq);
|
||||
INTERRUPT_GEN_MEMBER(unk_irq);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<cpu_device> m_slavecpu;
|
||||
required_device<palette_device> m_palette;
|
||||
|
||||
DECLARE_WRITE8_MEMBER(toslave_w);
|
||||
DECLARE_READ8_MEMBER(toslave_r);
|
||||
DECLARE_WRITE8_MEMBER(fromslave_w);
|
||||
DECLARE_READ8_MEMBER(fromslave_r);
|
||||
DECLARE_WRITE16_MEMBER(vip2000_outputs_w);
|
||||
u8 m_toslave;
|
||||
u8 m_fromslave;
|
||||
};
|
||||
|
||||
|
||||
@ -718,22 +728,51 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( vip2000_io, AS_IO, 16, bingor_state )
|
||||
AM_RANGE(0x0000, 0x0001) AM_READNOP // watchdog
|
||||
AM_RANGE(0x0080, 0x009f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
|
||||
AM_RANGE(0x0100, 0x0101) AM_READWRITE8(fromslave_r, toslave_w, 0x00ff)
|
||||
AM_RANGE(0x0280, 0x0281) AM_WRITE(vip2000_outputs_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(bingor_state::toslave_w)
|
||||
{
|
||||
m_toslave = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(bingor_state::toslave_r)
|
||||
{
|
||||
return m_toslave;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bingor_state::fromslave_w)
|
||||
{
|
||||
m_fromslave = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(bingor_state::fromslave_r)
|
||||
{
|
||||
return m_fromslave;
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(bingor_state::vip2000_outputs_w)
|
||||
{
|
||||
m_slavecpu->set_input_line(MCS51_INT0_LINE, BIT(data, 15) ? CLEAR_LINE : ASSERT_LINE);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, bingor_state )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( slave_io, AS_IO, 8, bingor_state)
|
||||
AM_RANGE(0x0000, 0x0000) AM_READWRITE(toslave_r, fromslave_w)
|
||||
AM_RANGE(0xc000, 0xcfff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static MACHINE_CONFIG_START( vip2000, bingor_state )
|
||||
MCFG_CPU_ADD("maincpu", I80186, XTAL_10MHz)
|
||||
MCFG_CPU_PROGRAM_MAP(vip2000_map)
|
||||
MCFG_CPU_IO_MAP(vip2000_io)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", bingor_state, vblank_irq)
|
||||
//MCFG_CPU_VBLANK_INT_DRIVER("screen", bingor_state, vblank_irq)
|
||||
MCFG_CPU_PERIODIC_INT_DRIVER(bingor_state, nmi_line_pulse, 30)
|
||||
MCFG_CPU_PERIODIC_INT_DRIVER(bingor_state, unk_irq, 30)
|
||||
//MCFG_CPU_PERIODIC_INT_DRIVER(bingor_state, unk_irq, 30)
|
||||
|
||||
MCFG_ATMEL_49F4096_ADD("flash")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user