k051960: remove 16-bit trampolines (nw)

This commit is contained in:
Alex W. Jackson 2014-10-16 04:42:34 +00:00
parent 15e90f0002
commit 43c4ec3478
3 changed files with 16 additions and 50 deletions

View File

@ -478,8 +478,8 @@ static ADDRESS_MAP_START( cuebrick_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x0b0400, 0x0b0401) AM_WRITE8(cuebrick_nvbank_w, 0xff00)
AM_RANGE(0x0c0000, 0x0c0003) AM_DEVREADWRITE8("ymsnd", ym2151_device, read, write, 0xff00)
AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w)
AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w)
AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w)
AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff)
AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff)
ADDRESS_MAP_END
@ -500,8 +500,8 @@ static ADDRESS_MAP_START( mia_main_map, AS_PROGRAM, 16, tmnt_state )
#endif
AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w)
// AM_RANGE(0x10e800, 0x10e801) AM_WRITENOP ???
AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w)
AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w)
AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff)
AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff)
ADDRESS_MAP_END
@ -521,8 +521,8 @@ static ADDRESS_MAP_START( tmnt_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x0c0000, 0x0c0001) AM_WRITE(tmnt_priority_w)
AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w)
// AM_RANGE(0x10e800, 0x10e801) AM_WRITENOP ???
AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w)
AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w)
AM_RANGE(0x140000, 0x140007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff)
AM_RANGE(0x140400, 0x1407ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff)
ADDRESS_MAP_END
@ -539,8 +539,8 @@ static ADDRESS_MAP_START( punkshot_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x0a0060, 0x0a007f) AM_DEVWRITE("k053251", k053251_device, lsb_w)
AM_RANGE(0x0a0080, 0x0a0081) AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x100000, 0x107fff) AM_READWRITE(k052109_word_noA12_r, punkshot_k052109_word_noA12_w)
AM_RANGE(0x110000, 0x110007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w)
AM_RANGE(0x110400, 0x1107ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w)
AM_RANGE(0x110000, 0x110007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff)
AM_RANGE(0x110400, 0x1107ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff)
AM_RANGE(0xfffffc, 0xffffff) AM_READ(punkshot_kludge_r)
ADDRESS_MAP_END
@ -985,8 +985,8 @@ static ADDRESS_MAP_START( thndrx2_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x500202, 0x500203) AM_READ(thndrx2_eeprom_r)
AM_RANGE(0x500300, 0x500301) AM_WRITENOP /* watchdog reset? irq enable? */
AM_RANGE(0x600000, 0x607fff) AM_READWRITE(k052109_word_noA12_r, k052109_word_noA12_w)
AM_RANGE(0x700000, 0x700007) AM_DEVREADWRITE("k051960", k051960_device, k051937_word_r, k051937_word_w)
AM_RANGE(0x700400, 0x7007ff) AM_DEVREADWRITE("k051960", k051960_device, k051960_word_r, k051960_word_w)
AM_RANGE(0x700000, 0x700007) AM_DEVREADWRITE8("k051960", k051960_device, k051937_r, k051937_w, 0xffff)
AM_RANGE(0x700400, 0x7007ff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0xffff)
ADDRESS_MAP_END

View File

@ -250,35 +250,18 @@ WRITE8_MEMBER( k051960_device::k051960_w )
m_ram[offset] = data;
}
READ16_MEMBER( k051960_device::k051960_word_r )
{
return k051960_r(space, offset * 2 + 1) | (k051960_r(space, offset * 2) << 8);
}
WRITE16_MEMBER( k051960_device::k051960_word_w )
{
if (ACCESSING_BITS_8_15)
k051960_w(space, offset * 2, (data >> 8) & 0xff);
if (ACCESSING_BITS_0_7)
k051960_w(space, offset * 2 + 1, data & 0xff);
}
/* should this be split by k051960? */
READ8_MEMBER( k051960_device::k051937_r )
{
if (m_readroms && offset >= 4 && offset < 8)
return k051960_fetchromdata(offset & 3);
else
{
if (offset == 0)
{
/* some games need bit 0 to pulse */
return (m_k051937_counter++) & 1;
}
//logerror("%04x: read unknown 051937 address %x\n", device->cpu->safe_pc(), offset);
return 0;
}
else if (offset == 0)
/* some games need bit 0 to pulse */
return (m_k051937_counter++) & 1;
//logerror("%04x: read unknown 051937 address %x\n", device->cpu->safe_pc(), offset);
return 0;
}
WRITE8_MEMBER( k051960_device::k051937_w )
@ -331,19 +314,6 @@ int k051960_device::k051960_is_nmi_enabled( )
}
READ16_MEMBER( k051960_device::k051937_word_r )
{
return k051937_r(space, offset * 2 + 1) | (k051937_r(space, offset * 2) << 8);
}
WRITE16_MEMBER( k051960_device::k051937_word_w )
{
if (ACCESSING_BITS_8_15)
k051937_w(space, offset * 2,(data >> 8) & 0xff);
if (ACCESSING_BITS_0_7)
k051937_w(space, offset * 2 + 1,data & 0xff);
}
/*
* Sprite Format
* ------------------

View File

@ -54,13 +54,9 @@ public:
DECLARE_READ8_MEMBER( k051960_r );
DECLARE_WRITE8_MEMBER( k051960_w );
DECLARE_READ16_MEMBER( k051960_word_r );
DECLARE_WRITE16_MEMBER( k051960_word_w );
DECLARE_READ8_MEMBER( k051937_r );
DECLARE_WRITE8_MEMBER( k051937_w );
DECLARE_READ16_MEMBER( k051937_word_r );
DECLARE_WRITE16_MEMBER( k051937_word_w );
void k051960_sprites_draw(bitmap_ind16 &bitmap, const rectangle &cliprect, bitmap_ind8 &priority_bitmap, int min_priority, int max_priority);
int k051960_is_irq_enabled();