Previous 199869 Revisions Next

r33849 Friday 12th December, 2014 at 18:01:16 UTC by Carl
(mess) pc9801: fix vram page (nw)
[src/mess/drivers]pc9801.c

trunk/src/mess/drivers/pc9801.c
r242360r242361
13761376   UINT16 mask = m_egc.regs[4] & mem_mask, out = 0;
13771377   bool dir = !(m_egc.regs[6] & 0x1000);
13781378   int dst_off = (m_egc.regs[6] >> 4) & 0xf;
1379   offset &= 0x3fff;
1379   offset &= 0x13fff;
13801380
13811381   if((((m_egc.regs[2] >> 11) & 3) == 1) || ((((m_egc.regs[2] >> 11) & 3) == 2) && !BIT(m_egc.regs[2], 10)))
13821382   {
13831383      // mask off the bits past the end of the blit
13841384      if(m_egc.count < 16)
1385         mask &= dir ? ((1 << (m_egc.count + 1)) - 1) : ~((1 << (16 - m_egc.count)) - 1);
1385         mask &= dir ? ((1 << m_egc.count) - 1) : ~((1 << (16 - m_egc.count)) - 1);
13861386
13871387      // mask off the bits before the start
13881388      if(m_egc.first)
13891389      {
13901390         m_egc.leftover[0] = m_egc.leftover[1] = m_egc.leftover[2] = m_egc.leftover[3] = 0;
1391         mask &= dir ? ~((1 << (16 - dst_off)) - 1) : ((1 << (dst_off + 1)) - 1);
1391         mask &= dir ? ~((1 << dst_off) - 1) : ((1 << (16 - dst_off)) - 1);
13921392      }
13931393   }
13941394
r242360r242361
14551455
14561456UINT16 pc9801_state::egc_blit_r(UINT32 offset, UINT16 mem_mask)
14571457{
1458   UINT16 plane_off = offset & 0x3fff;
1458   UINT16 plane_off = offset & 0x13fff;
14591459   if((m_egc.regs[2] & 0x300) == 0x100)
14601460   {
14611461      m_egc.pat[0] = m_video_ram_2[plane_off + 0x4000];
r242360r242361
14881488   {
14891489      int i;
14901490
1491      offset &= 0x3fff;
1491      offset &= 0x13fff;
14921492      res = 0;
14931493      for(i=0;i<4;i++)
14941494      {
r242360r242361
15141514   {
15151515      int i;
15161516      UINT8 *vram = (UINT8 *)m_video_ram_2.target();
1517      offset = (offset << 1) & 0x7fff;
1517      offset = (offset << 1) & 0x27fff;
15181518
15191519      if(m_grcg.mode & 0x40) // RMW
15201520      {


Previous 199869 Revisions Next


© 1997-2024 The MAME Team