UINT8 tms34061_device::xypixel_r(address_space &space, int offset) { /* determine the offset, then adjust it */ offs_t pixeloffs = m_regs[TMS34061_XYADDRESS]; if (offset) adjust_xyaddress(offset); /* adjust for the upper bits */ pixeloffs |= (m_regs[TMS34061_XYOFFSET] & 0x0f00) << 8; /* mask to the VRAM size */ pixeloffs &= m_vrammask; /* return the result */ return m_vram[pixeloffs]; }
static UINT8 xypixel_r(int offset) { /* determine the offset, then adjust it */ offs_t pixeloffs = tms34061.regs[TMS34061_XYADDRESS]; if (offset) adjust_xyaddress(offset); /* adjust for the upper bits */ pixeloffs |= (tms34061.regs[TMS34061_XYOFFSET] & 0x0f00) << 8; /* mask to the VRAM size */ pixeloffs &= tms34061.vrammask; /* return the result */ return tms34061.vram[pixeloffs]; }
static void xypixel_w(int offset, UINT8 data) { /* determine the offset, then adjust it */ offs_t pixeloffs = tms34061.regs[TMS34061_XYADDRESS]; if (offset) adjust_xyaddress(offset); /* adjust for the upper bits */ pixeloffs |= (tms34061.regs[TMS34061_XYOFFSET] & 0x0f00) << 8; /* mask to the VRAM size */ pixeloffs &= tms34061.vrammask; /* set the pixel data */ tms34061.vram[pixeloffs] = data; tms34061.latchram[pixeloffs] = tms34061.latchdata; }
void tms34061_device::xypixel_w(address_space &space, int offset, UINT8 data) { /* determine the offset, then adjust it */ offs_t pixeloffs = m_regs[TMS34061_XYADDRESS]; if (offset) adjust_xyaddress(offset); /* adjust for the upper bits */ pixeloffs |= (m_regs[TMS34061_XYOFFSET] & 0x0f00) << 8; /* mask to the VRAM size */ pixeloffs &= m_vrammask; if (VERBOSE) logerror("%s:tms34061 xy (%04x) = %02x/%02x\n", space.machine().describe_context(), pixeloffs, data, m_latchdata); /* set the pixel data */ m_vram[pixeloffs] = data; m_latchram[pixeloffs] = m_latchdata; }