Previous 199869 Revisions Next

r31808 Wednesday 27th August, 2014 at 14:37:11 UTC by David Haywood
worse for now, but prep further work (nw)
[src/mame/drivers]segaybd.c
[src/mame/includes]segaybd.h

trunk/src/mame/drivers/segaybd.c
r31807r31808
667667   logerror("link2_w %04x\n", data);
668668}
669669
670READ8_MEMBER(segaybd_state::linkram_r)
671{
672   return m_linkram[offset];
673}
674
675WRITE8_MEMBER(segaybd_state::linkram_w)
676{
677   m_linkram[offset] = data;
678}
679
670680//**************************************************************************
671681//  MAIN CPU ADDRESS MAPS
672682//**************************************************************************
r31807r31808
686696ADDRESS_MAP_END
687697
688698static ADDRESS_MAP_START( main_map_link, AS_PROGRAM, 16, segaybd_state )
689   AM_RANGE(0x190000, 0x190fff) AM_RAM // ram to share with link CPU?
699   AM_RANGE(0x190000, 0x190fff) AM_READWRITE8(linkram_r, linkram_w, 0x00ff) // ram to share with link CPU?
690700   AM_RANGE(0x191000, 0x191001) AM_READ(link_r)
691701   AM_RANGE(0x192000, 0x192001) AM_READWRITE(link2_r, link2_w)
692702
r31807r31808
752762   AM_RANGE(0x0000, 0x0fff) AM_ROM
753763   AM_RANGE(0x2000, 0x2fff) AM_RAM
754764   AM_RANGE(0x3000, 0x3fff) AM_RAM
755   AM_RANGE(0x4000, 0x47ff) AM_RAM
765   AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("linkram")
756766ADDRESS_MAP_END
757767
758768static ADDRESS_MAP_START( link_portmap, AS_IO, 8, segaybd_state )
r31807r31808
11281138   PORT_DIPSETTING(    0xc0, DEF_STR( 5C_1C ) )
11291139   PORT_DIPSETTING(    0xb0, DEF_STR( 6C_1C ) )
11301140   PORT_DIPSETTING(    0x00, "Free Play (if Coin A too) or 1/1" )
1141
1142   PORT_START("LinkDSW")
1143   PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
1144   PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
1145   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1146   PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
1147   PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
1148   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1149   PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
1150   PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
1151   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1152   PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
1153   PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
1154   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1155   PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
1156   PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
1157   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1158   PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
1159   PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
1160   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1161   PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
1162   PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
1163   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1164   PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
1165   PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
1166   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
11311167INPUT_PORTS_END
11321168
11331169
r31807r31808
13011337   MCFG_CPU_ADD("linkcpu", Z80, LINK_CLOCK/4 ) // ?? mhz
13021338   MCFG_CPU_PROGRAM_MAP(link_map)
13031339   MCFG_CPU_IO_MAP(link_portmap)
1340   // valid code at 0x28 and 0x38
13041341MACHINE_CONFIG_END
13051342
13061343//**************************************************************************
trunk/src/mame/includes/segaybd.h
r31807r31808
3333         m_irq2_scanline(0),
3434         m_timer_irq_state(0),
3535         m_vblank_irq_state(0),
36         m_tmp_bitmap(512, 512)
36         m_tmp_bitmap(512, 512),
37         m_linkram(*this, "linkram")
3738   {
3839      memset(m_analog_data, 0, sizeof(m_analog_data));
3940      memset(m_misc_io_data, 0, sizeof(m_misc_io_data));
r31807r31808
4849   DECLARE_READ16_MEMBER( io_chip_r );
4950   DECLARE_WRITE16_MEMBER( io_chip_w );
5051   DECLARE_WRITE16_MEMBER( sound_data_w );
51   DECLARE_READ16_MEMBER(link_r);
52   DECLARE_READ16_MEMBER(link2_r);
53   DECLARE_WRITE16_MEMBER(link2_w);
5452
5553   // sound Z80 CPU read/write handlers
5654   DECLARE_READ8_MEMBER( sound_data_r );
r31807r31808
116114   UINT8           m_vblank_irq_state;
117115   UINT8           m_misc_io_data[0x10];
118116   bitmap_ind16    m_tmp_bitmap;
117
118public:
119   // linkpcb support
120   DECLARE_READ16_MEMBER(link_r);
121   DECLARE_READ16_MEMBER(link2_r);
122   DECLARE_WRITE16_MEMBER(link2_w);
123
124   DECLARE_READ8_MEMBER(linkram_r);
125   DECLARE_WRITE8_MEMBER(linkram_w);
126
127   optional_shared_ptr<UINT8> m_linkram;
119128};

Previous 199869 Revisions Next


© 1997-2024 The MAME Team