From: Toni Wilen Date: Wed, 27 Dec 2023 15:14:52 +0000 (+0200) Subject: TMS34010 test fixes. X-Git-Tag: 5200~119 X-Git-Url: https://git.unchartedbackwaters.co.uk/w/?a=commitdiff_plain;h=83e908def0eeeb85da7a45ec7689c5d2823201e0;p=francis%2Fwinuae.git TMS34010 test fixes. --- diff --git a/mame/tm34010/34010gfx.c b/mame/tm34010/34010gfx.c index a350be0e..592c03fb 100644 --- a/mame/tm34010/34010gfx.c +++ b/mame/tm34010/34010gfx.c @@ -1046,7 +1046,7 @@ void FUNCTION_NAME(tms340x0_device::pixblt)(int src_is_linear, int dst_is_linear /* fetch the initial source word */ srcword = (this->*word_read)(*m_program, srcwordaddr++ << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; readwrites++; /* fetch the initial dest word */ @@ -1066,7 +1066,7 @@ void FUNCTION_NAME(tms340x0_device::pixblt)(int src_is_linear, int dst_is_linear if (srcbit + BITS_PER_PIXEL > 16) { srcword |= (this->*word_read)(*m_program, srcwordaddr++ << 1) << 16; - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; readwrites++; } @@ -1421,7 +1421,7 @@ if ((daddr & (BITS_PER_PIXEL - 1)) != 0) osd_printf_debug("PIXBLT_R%d with odd d /* fetch the initial source word */ srcword = (this->*word_read)(*m_program, --swordaddr << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = PIXEL_MASK << ((saddr - BITS_PER_PIXEL) & 15); /* handle the right partial word */ @@ -1438,7 +1438,7 @@ if ((daddr & (BITS_PER_PIXEL - 1)) != 0) osd_printf_debug("PIXBLT_R%d with odd d if (srcmask == 0) { srcword = (this->*word_read)(*m_program, --swordaddr << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = PIXEL_MASK << (16 - BITS_PER_PIXEL); } @@ -1487,7 +1487,7 @@ if ((daddr & (BITS_PER_PIXEL - 1)) != 0) osd_printf_debug("PIXBLT_R%d with odd d if (srcmask == 0) { srcword = (this->*word_read)(*m_program, --swordaddr << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = PIXEL_MASK << (16 - BITS_PER_PIXEL); } @@ -1532,7 +1532,7 @@ if ((daddr & (BITS_PER_PIXEL - 1)) != 0) osd_printf_debug("PIXBLT_R%d with odd d if (srcmask == 0) { srcword = (this->*word_read)(*m_program, --swordaddr << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = PIXEL_MASK << (16 - BITS_PER_PIXEL); } @@ -1686,7 +1686,7 @@ void FUNCTION_NAME(tms340x0_device::pixblt_b)(int dst_is_linear) /* fetch the initial source word */ srcword = (this->*word_read)(*m_program, swordaddr++ << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = 1 << (saddr & 15); /* handle the left partial word */ @@ -1711,7 +1711,7 @@ void FUNCTION_NAME(tms340x0_device::pixblt_b)(int dst_is_linear) if (srcmask == 0) { srcword = (this->*word_read)(*m_program, swordaddr++ << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = 0x0001; } @@ -1749,7 +1749,7 @@ void FUNCTION_NAME(tms340x0_device::pixblt_b)(int dst_is_linear) if (srcmask == 0) { srcword = (this->*word_read)(*m_program, swordaddr++ << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = 0x0001; } @@ -1784,7 +1784,7 @@ void FUNCTION_NAME(tms340x0_device::pixblt_b)(int dst_is_linear) if (srcmask == 0) { srcword = (this->*word_read)(*m_program, swordaddr++ << 1); - srcword &= m_plane_mask_inv; + //srcword &= m_plane_mask_inv; srcmask = 0x0001; } diff --git a/mame/tm34010/tms34010.cpp b/mame/tm34010/tms34010.cpp index 58ecb5d7..c5d44720 100644 --- a/mame/tm34010/tms34010.cpp +++ b/mame/tm34010/tms34010.cpp @@ -1568,21 +1568,17 @@ WRITE16_MEMBER( tms340x0_device::host_w ) /* upper 16 bits of the address */ case TMS34010_HOST_ADDRESS_H: IOREG(REG_HSTADRH) = data; - // !LBL && !INCW - if (!(hstctlh & 0x2000) && !(hstctlh & 0x0800)) { - addr = (IOREG(REG_HSTADRH) << 16) | IOREG(REG_HSTADRL); - m_prefetch_data = TMS34010_RDMEM_WORD(TOBYTE(addr & 0xfffffff0)); - } + addr = (IOREG(REG_HSTADRH) << 16) | IOREG(REG_HSTADRL); + m_prefetch_data = TMS34010_RDMEM_WORD(TOBYTE(addr & 0xfffffff0)); break; /* lower 16 bits of the address */ case TMS34010_HOST_ADDRESS_L: IOREG(REG_HSTADRL) = data; - // LBL && !INCW - if ((hstctlh & 0x2000) && !(hstctlh & 0x0800)) { - addr = (IOREG(REG_HSTADRH) << 16) | IOREG(REG_HSTADRL); - m_prefetch_data = TMS34010_RDMEM_WORD(TOBYTE(addr & 0xfffffff0)); - } +#if 0 + addr = (IOREG(REG_HSTADRH) << 16) | IOREG(REG_HSTADRL); + m_prefetch_data = TMS34010_RDMEM_WORD(TOBYTE(addr & 0xfffffff0)); +#endif break; /* actual data */